一、数据库开发难度数据库研发是和操作系统相提并论的高难度工作。参考对数据库和分布式很感兴趣,学习路线是什么?这篇文章里说到了很多学习过程,从学术上就能看到其复杂度。然而这还只是万里长征的开始,学术到产品还有道巨大的鸿沟。数据库是基础性软件,好比汽车的引擎一样,是系统的关键部件,具有“牵一发而动全身“的特性。这就要求数据库具有相当高的成熟度。这种成熟度需要在技术、产品、工程、支持以及行业经验上具有相当长时间的积累。传统的关系型数据库中,例如Oracle、IBM DB2等,都历经几十年才达到现在的版本。任何一款数据库从研发到产品都是一个历经磨难的过程,一般需要6年以上的时间才能走出0到1 的阶段,然后再在行业和实际应用场景中不断地历炼打磨,逐步过渡到成熟期。开源数据库我们也能过一遍数据库的历史。老一点的,Mysql第一个版本到如今历经22年了;Postgres是1986年开始学术研究,1996年第一个版本。新一点的,Cassandra是2008年第一个initial release,发布open source版本,11年底1.0;到目前是3.11的版本;MongoDB: 2007年就开始开发,到目前3.4的版本;VoltDB是09年开始,7年后才开始出来见人。另外,金融级数据库产品面对的是诸如银行、证券、保险等头部行业大型企业,对产品上的复杂度和成熟度又提出了更高层次的要求。因此,其生命周期还要更长。二、数据库产品化的难度产品的研发是一个不断前进积累打磨的过程。还是拿汽车行业做案例,同样是引擎,跑车的引擎和家用车引擎差别在哪里?为什么F1赛车经久不衰,就是厂商知道,产品需要不断精益求精,不断地挑战,不断地应对日益增长的需求场景变化。再拿产品测试做案例,巨杉SequoiaDB经过6年的发展,测试用例有12000多个,自动化测试覆盖率超过99%,测试开发团队和产品开发团队人员1:1,有过之无不及,测试的开发水平要求高过大部分的研发工程师。每一个小迭代,基本要跑一周,机房的测试服务器从来没有停过。但这又怎样,和Oracle、DB2比是小巫见大巫。再拿需求到产品转化过程来看。应用产品客户的需求很容易理解,而数据库这种基础产品,客户一句话的需求转化到技术产品的语言是一道巨大的鸿沟,不同用户的需求就交织在一起,如何将需求转而到定义产品开发的功能,“这是一个问题”。所有这些不历经没日没夜地现场支持也没法实现。另外,如何能够严格把控核心代码和控制产品发展路线也至关重要,毕竟是产品,不能靠技术支持堆人力。我想“赢在细节,输在格局”这句话对每个产品都适用。三、中国数据库发展的缺点和优势先说缺点,大的还是技术传承和基因。拿Michael Stonebraker老爷子做案例,一生经历了Ingres,Postgres,Informix,C-Store, H-Store再到VoltDB。其他的数据库也是如此,都是几十年一种传帮带的基因。中国因为近年来才开始发展数据库,主要还是从开源产品诸如Mysql和Postgres里吸取养分;也有收购引入Informix再开始的;创新从来也不是瞬间的事情,站在巨人的肩膀无可厚非。只不过需要有个积累的过程。我们自己也是从北美DB2的基因派生出来,到中国本土又结合了华为的基因,才落地生根。说到优点,就是中国是个巨大的市场土壤,想想中国的用户数,手机使用频率,应用场景的多样化,在中国的环境里打磨出来的产品适用于任何地方,这点信心是有的,我们在和Gartner探讨数据库发展方向时感受特别明显。现在是中国数据库发展的黄金期,也祝愿所有的同行一起来推动自主数据库的发展
目前创新互联公司已为上1000+的企业提供了网站建设、域名、虚拟空间、网站托管、服务器租用、企业网站设计、城厢网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。听说还有一匹黑马公司叫万里开源,自主研发数据库及操作系统20余年,万里开源分布式数据库GreatDB,支撑了运营商海量数据的存储和处理,从2013年中国移动某省大数据平台第一次选用万里开源分布式集群数据库至今,万里开源已在电信行业多个业务场景中应用。未来,伴随着5G、物联网等技术的发展,国产化工作的进一步推进,万里开源的分布式数据库将会在更多的业务场景中替换国外数据库!