9月13日,北京,巨杉数据库主办的“极客Cool” 沙龙第一期圆满结束。沙龙上,开源数据库的三个重要代表SequoiaDB巨杉数据库CTO王涛(NoSQL),阿里云RDS for PostgreSQL/PPAS 专家 萧少聪(PostgreSQL),PingCAP创始人刘奇(NewSQL),分别作了进行了分享,最后也针对新一代的数据库的应用、发展进行了圆桌讨论。
本次活动也特别感谢开源中国对本次活动的支持。
SequoiaDB核心架构与应用场景
王涛的分享,首先介绍了SequoiaDB的技术架构以及功能上的特点,之后结合最流行的大数据架构Spark/Hadoop,结合了SequoiaDB的应用场景,进行了详细的介绍。
其中,王涛提到了SequoiaDB目前正在努力的实现“数据湖(Data Lake)”这一全新的概念。
“这数据湖是什么意思呢,就跟我有一大堆水似的,我可以把数据比如这边蓝墨水、红墨水我都可以一股脑倒进去,倒到池子,把所有数据都对接进去了,这池子里面数据怎么找呢”。
事实上,数据湖就是将数据存储进行大大简化,不再需要按照以往的分表规划存储,结合JSON的存储,数据可以统一的储存在一个地方,只需要在调用、分析、查找的时候进行一定的处理就可以进行分类处理。这样不仅大大节约了成本,更是大大减少了开发人员的时间成本。
SequoiaDB使用的是JSON的文档型存储,因为JSON自描述以及可嵌套的结构,十分适合对于多样的数据的统一存储,也就是十分的适合“数据湖”这一应用,再结合Spark/Hadoop等分析架构,可以说是全新的大数据平台的不二之选。
NewSQL的发展历史和趋势
PingCAP创始人刘奇,自己研发的一款NewSQL数据库,TiDB,是一款基于MySQL的分布式新型NewSQL数据库,已经于近期开源。刘奇从数据库发展的角度,介绍了NewSQL这一新的流行方向的发展历程与趋势。同时介绍了NewSQL数据库的特点,以及与其他数据库的对比和不同适用场景。
“很重要一点就是说到底是用NoSQL还是NewSQL,大家争论到底哪个好,哪个不好,简单理解,如果大家有编程的经验的话,NoSQL就是动态语言,NewSQL就是静态语言,静态语言拥有完整的检查,拥有很好的重构支持,动态语言我们看不到非常大的动态语言写的项目。
另外这个趋势,很有意思的趋势大家可以关注一下现在还在提NoSQL、NewSQL,大家也注意到NewSQL也是这个JSON,最近大家支持相对完善一点。静态语言相对更适合大型项目。
如今,两者发展的趋势其实是彼此靠近的,NewSQL渐渐支持动态schema变更,NoSQL也更多开始提供分布式事务支持。”
JSON in PostgresPlay with SequoiaDB
阿里云RDS for PostgreSQL/PPAS 专家 萧少聪。萧老师的演讲主要向大家分享了PostgreSQL近期的一项重大更新,也就是开始全面的支持JSON格式。曾经作为一款学院派的传统关系型数据库,PG此番大大加强对于JSON的支持,可以说也是向非关系的存储格式的一种拥抱。除了带来了PG发展的历程和应用案例以外,萧老师还带来了SequoiaDB与PG的FDW的相关介绍。
“JSON我觉得是一个行业的标准,未来肯定是一个需要去发展的东西。那你会看到就是说我今天的话题上面讲到Postgre可以去支持JSON,而且支持的非常好,那为什么要做这件事情,Postgre是一个非常传统,我不谈那些变种的数据库,Postgre本身非常传统的(英文),而且的话它是针对于强OLTP(英文)这样的一个结构。
这个时候JSON也需要使用加进来,遇到这样一个问题,这个JSON不罗嗦了,相信大家在座的话听这一场在座会比较理解,我是很灵活的结构,你有什么东西都可以写进来。”
圆桌讨论
问:企业的数据库选型?
刘奇:我之前在京东,萧老师在阿里,首先性能要考虑的,迫不得已可以提升一致性换取性能。
王涛:我是没有做互联网公司,我原来是IBM一直做企业级这块,实际上我觉得企业级跟互联网之间有一个比较大的区别,企业级要做的第一个稳定性数据可靠性一定不能丢,这块跟互联网很大区别,互联网可以A+P,比如说数据丢个用户头像丢就丢了吧,银行不能说丢笔钱,决定不能这样。
萧少聪:我到阿里时间不长,其实从我感觉上面来说归结一些客户,最重要一个字是快,这个快到不是性能的快,而是说一上来啪啪两下把应用结束了,我应用开发出来上不了线融不了资,改善不了第二套系统
问:在做数据库过程中遇到的坑?
刘奇:相对而言互联网多一点,用MySQL坑比较少,大部分被前人踩过了,相对还少。互联网公司都会遇到一些还是用比较熟悉一点的,就被广泛认证过告诉你哪些坑不要踩这样相对好一点。
王涛:我觉得在大数据这个领域,很多东西是新的,我觉得没有办法完全避免踩坑,踩坑是必要的,计划踩坑。
萧少聪:计划踩坑我完全认同,一个客户,他们说的话我挺感慨,PG一定有坑,我踩完填上我可以继续做,踩完不成我就丢失一个项目而已。事实上哪个系统没有坑,你必须得踩。
问:从RDBMS、NoSQL、NewSQL的角度,对开源数据库发展怎么看?
刘奇:TB NewSQL是趋势,应该在各个方向都会有他们自己的东西。
王涛:其实我觉得SQL或者非SQL就都是接口层的问题,不是最核心的东西,现在大家讲的新的数据库,可以用PC服务器,实际上核心就是我的计算跟我的存储方一起了。NoSQL把东西先分了再说,NewSQL它的想法又不一样了,他说我这玩意必须有人用才能成熟,基于已有架构慢慢分,这样都要解决同一个问题,只不过两个不同路线,现在我们也看到这两个从NoSQL引擎基本成熟了不管像(英文)基本走到这个路,单引擎基本算脱铺了,执行层面把大家用的SQL支撑起来,所以我觉得这两者到了最后肯定是走上统一条路基于分布式数据库的能够支持SQL或者支持其他接口的一种架构。
萧少聪:我会思考这么一个问题,因为我一直在做PG的这个推广,所以说不停的在什么时间什么数据库诞生出现什么东西,你会发现很好玩的一件事情,其实当年先不谈现在,现在是百花齐放,百家争鸣的情况打的都乱套了,各种东西都进来。有很多事情技术是一个方面,另外一块就是整个市场的接受度是不是由我们厂商去大力推广这件事情,让更多人去接受,今天所有人都接受了NewSQL就是未来100%的方向,而且跳出来大厂商说我们搞定,如果有大厂商跳出来说那个东西不行,然后整个市场声音变化的,支持另外一个话题的话,这件事情就不明朗,我不是做技术人员,我能看到市场变化情况。
王涛:基本上现在所谓的传统技术跟新的技术有最大的区别到底是集中式计算还是分布式计算,这个是核心,两者不能说到底哪个是最终的趋势,因为两者是交替的,过去的话从大机中向分布式来走,会不会到未来一个时刻在硬件发展起来,比如说我有一个技术就是在一个盒里嵌了一千个内核可以把几十个TB扔在一个机器里面,回归到大机年代,这个东西是交互式的,硬件达到一定程度,肯定软件需求不断提升造成硬件不可用,会导致新的机制,我们用这种方式搞定,这种方式未来发现一堆坑,又有人发现以前技术会循环,未来能够看到两三年或者五年会分布式的趋势,那我觉得就是说既然咱们这样继续往下走呗,未来十年又变回来那是以后的事情,至少把现在做到。
文章转载自 开源中国社区[https://www.oschina.net]