什么是非关系型数据库
谈到非关系型数据库设计的难点,朱海峰说:“我们可以从一些场景来看这个问题。一般数据库设计人员以前更多的是处理传统的业务应用,那么对于非关系型数据,可能是新业务的引入,也可能是一些新需求的提出,要求我们的IT系统能够支持更多数据类型的应用,从整个系统架构角度来看,可能更多的是要求系统架构师能够更好的适应和理解新业务的特点,那么相应的数据库开发人员所面临的新挑战,就是如何去支持系统架构师、程序员去实现新业务的需求。
比如说处理媒体数据类型、文档数据类型,以往关系数据库在很多场景中也能够提供这种支持,但是是在媒体数据类型相对比较少的情况下,那时存储成本也很高,信息处理速度也不那么快,这也就意味着储量的数据量并不那么大。然而IT发展到现在变化非常快,在我们业务处理过程中大量引入了流媒体、PDF、图片等等数据信息的处理,这就要求数据库或者数据库平台也能支持这样的处理性能。
数据库开发设计人员首先一个方面,他要能很好的理解业务需求,定位这种应用采取哪种数据类型才是比较适合它的业务特点,当然你可能会说我要支持所有的数据类型,但是实际上从系统架构角度来说,某些业务场合可能会有最佳适合这种业务类型,这是设计者和开发人员所要面临的问题。
那么从另一个方面,数据库的角度来看,开发和设计人员要更好的理解我们的数据平台,以及相关产品,并能够充分的理解其相应的新的功能特性,是怎样和它的业务结合在一起的,这也是一个最大的挑战,实际上功能都是有的,而且在一定程度是强大的,但是我们的开发设计人员怎么理解和应用这些新功能,就需要一定的时间去熟悉,熟悉完以后把这些新的功能引入到自己的系统中进行应用,更好的为应用系统服务。这两方面的结合才有可能成功。