本次新增与改动如下:
1,支持多个merger servrer
为了应对集群规模越来越大造成的单节点的merger server压力过大,可以通过 ydb.request.split: 4参数,随机选择一定数量的worker担任merger server.
2,ydb on spark支持多集群
ydb on spark可以支持同一个表,跨多个ydb集群查询,用以应对单个ydb集群在集群规模达百台规模以后hdfs与zookeeper等系统响应变慢等因素,通过这种方式ydb可以支持线性扩展到数千台集群规模,额不用担心到达这个规模后zookeeper,namenode的问题。
3.完善ydb on spark是使用用例
SparkExampleBasic 为ydb on spark基本使用用例
SparkExampleJoin 为ydb on spark中的高性能的join使用用例
4.添加参数,可以配置当有部分worker失效依然可以查询
允许部分对数据准确性不敏感的业务使用。可以通过ydb.topoplgy.worker.allowfail.count来配置,在某一时间允许出现多少个worker宕机后依然可以查询ydb.
5.重构核心代码,提升计算性能。
6.通过文件导入数据不在要求用户来控制数据粒度,不在要求用户保持均衡,而是自动进行文件切分,保证多个节点之间的数据均衡。
新的json导入接口为
http://127.0.0.1:8080/insertdir?hdfsdir=/data/myntest/jsondata_example.txt
新的按照分隔符导入配置与接口为
可以在ydb_site.yaml里添加如下配置
ydb.reader.list: "default,filesplit"
ydb.reader.read.class.filesplit: "cn.net.ycloud.ydb.server.reader.HdfsTxtDataReader"
ydb.reader.parser.class.filesplit: "cn.net.ycloud.ydb.server.reader.FileSplitParser"
然后调用如下的接口完成批量导入
http://127.0.0.1:8080/insertdir?reader=filesplit&tablename=ydb_example_shu&partion=20160110&splitInfo=,&hdfsdir=/data/ydb/shu_discp
7,读与写的buffer合并,原先是分开的,现在在索引创建完毕后,刚刚生成的索引文件是在buffer中的,这样就不需要在读取这个索引的时候,再次从hdfs中读取索引了,从而提升查询效率。
8,在页面中添加表的数据预览功能sql view
9,优化删分区数据的处理逻辑
10,修正实时导数据会有百万分之一数据丢失的BUG
bug原因为,原先的数据ID时根据crc32生成的,偶尔会碰到crc32碰撞,导致数据被覆盖。
YDB下载地址:
(您必须同意授权使用协议才允许使用该软件 授权协议下载)
当前版本v1.0.7
https://yunpan.cn/cuTv9KjLbNCYg 访问密码 b612