数据库开发是干什么的?
在大数据开发中,以小编较熟悉的Java程序为例,完成的大部分代码逻辑都是不断的与数据库交互。数据库是后端系统里面较重要的存储组件。它与大数据有关,也需要涉及分布式技术。
关于什么是数据库开发?我们大致可以分为四个阶段:基础、框架、调优和架构阶段。
1、基础阶段
在基础阶段,我们首先接触到JDBC,它是Java程序访问数据库的较基本工具,它封装了与数据库交互的繁琐协议。掌握JDBC的正确使用,以及在一些典型的具体场景中使用JDBC是非常重要的。
2、框架阶段
框架阶段解决了代码的可维护性、可重用性、可扩展性和可读性问题。
框架的本质是将设计模式的思想固化到应用程序中的整体结构类和对象关系中。使用框架的目的是让开发者可以专注于解决业务逻辑,而不用关注代码结构设计,改进代码开发效率,同时确保代码具有高质量。
数据库是后端或主要的持久组件。数据库的请求处理能力和响应时间决定了应用程序的整体性能。因此,数据库性能优化成为下一阶段需要解决的重要问题。数据库性能优化,包括数据库访问优化、SQL优化、死锁处理与解决。
3、调优阶段
SQL调优主要针对程序开发者编写的SQL语句进行优化,包括SQL语句是否被索引,索引选择是否。掌握基本的排查方法,慢SQL语句、查看执行计划、查看索引判别等,并根据检查结果完成SQL调优。
4、架构阶段
架构阶段需要在更高的层次来考虑数据库的可用性、可靠性和可扩展性的问题。
在一个成熟的系统中,必须有一套完整的数据库高可用解决方案。目前业界现有的高可用解决方案包括基于复制的主从数据同步技术、MHA、DRBD、Galera、NDB等,各有优缺点,关键还是要看具体的业务应用场景选择合适的解决方案。