7月13日,TBase重磅发布了开源版本2.1.0,代码已上传至github:https://github.com/Tencent/TBase。同时开展大规模公测,体验地址为:https://github.com/Tencent/TBase 体验包括分布式数据自动shard分片、分布式数据库复制表关联查询、分布式事务全局一致性、高性能自研分区表、冷热分离存储、多核并行计算能力、子查询转化join能力等,作为国内首屈一指的国产开源数据库,其优良性能足以打动广大开源爱好者共同参与到此项活动中,作为开源思想传播者者及高校学生的身份,本身的研究方向就为分布式计算,tbase的分布式数据自动shard分片功能深深吸引了我,迫不及待的来试用下。
自动数据分片技术不同于传统数据库,它实现了将整体数据自动分摊到多个存储设备上,这样每个存储设备的数据量相对就会小很多,以满足系统的高性能需求。提起自动分片技术,不得不提voltDB,VoltDB作为一款新兴的数据库产品,有着其自身特有的技术特点,VoltDB引入了“分区表”和“表复制”的概念,并利用“串行单线程序处理”的方法,以解决自动数据分片工作。VoltDB在运行时,会通过分析和预编译存储过程中的数据访问逻辑,使其中与之相关集群的每个节点都可以自主处理和分发数据。这样,群集的每个节点都包含一个独特的“数据片”,并提供数据处理能力。虽然目前还未深入了解Tbase数据分片技术具体实现,但不妨碍实际先体验其分片功能。
(1) 创建测试表
(2) 写入数据,通过UDF写入,当记录数超过100000时,实现自动切片分区。
(3) 启动测试
(4) 测试结果查看
实验结果表明TBase内部自动实现了shard分片,将数据分散到各个不同节点上,相比传统其他分片系统,应用层无需考虑分库分表,减少应用层开发的复杂度.相信这是一个非常深入人心的功能。后面会持续跟大家分享相关学习经历。