您的位置:首页 > 大数据

[大数据搜索数据库YDB]YDB新功能介绍-异构存储

2018-02-06 16:19 591 查看
在YDB1.1.9.3版本发布之后,大家惊喜的发现YDB多了一项新的功能——异构存储

众所周知SSD的性能是普通SATA 盘的百倍以上,但是SSD真是太贵太贵了,

100T的存储用SATA盘可能才五六万块钱,同样大小即使最廉价的三星SSD也需要50~60万才能下来,如果是十台呢?二十台呢?

如何用SATA盘的成本,让延云YDB有着近似于SSD 的性能?

答案就是————



让我们先来了解下如何通过异构存储来节约我们的存储成本.

YDB的文件存储由两部分组成,分别为数据部分与索引部分

索引部分对整体的数据检索性能起着至关重要的影响,而数据则相对来说差一些.

如果:将数据部分存储在SATA盘,而将索引部分存储在SSD盘上, 这样就可以有效的降低存储成本

以某生产项目为例,索引部分只占整体存储的五分之一,如果做2份冗余,冗余部分只需要存储在SATA盘上,那么SSD部分仅需整体存储的十分之一,如果数据可以按照冷热数据区分,那么我们可以将近期的数据可以使用SSD存储,根据时间的推移慢慢的将数据转移到SATA盘中。

废话不多说,接下来给大家介绍如何给我们的YDB配置异构环境

1.首先我们要确保目前使用的YDB版本是YDB1.1.9.3(含)以上版本,在此之前的版本是不支持异构存储的。

2.如果您使用的是HDP版本的Hadoop的话,需要在ambari中指定Datanode中那几块盘是SSD,那几块盘是SATA



ps:关于Hadoop异构存储部分配置,您可以通过以下进行了解

Hadoop异构存储配置

3.创建异构文件目录

hadoop  fs -mkdir  /data/ycloud/ydb/ydbpath/ssdindex
hadoop  fs -mkdir  /data/ycloud/ydb/ydbpath/ssdindex2
hadoop  fs -mkdir  /data/ycloud/ydb/ydbpath/ssdindex3
hadoop  fs -mkdir  /data/ycloud/ydb/ydbpath/ssdindex4


4.指定异构存储策略 :One_SSD

hdfs storagepolicies -setStoragePolicy -path /data/ycloud/ydb/ydbpath/ssdindex  -policy One_SSD
hdfs storagepolicies -setStoragePolicy -path /data/ycloud/ydb/ydbpath/ssdindex2 -policy One_SSD
hdfs storagepolicies -setStoragePolicy -path /data/ycloud/ydb/ydbpath/ssdindex3 -policy One_SSD
hdfs storagepolicies -setStoragePolicy -path /data/ycloud/ydb/ydbpath/ssdindex4 -policy One_SSD


5.在ydb_site.yaml里设置,索引部分存储在SSD路径上

ydb.index.ssd.ext: “tim,skp@doc,fdx,tip@dvm,fdt,dvd,pos”

如果想只配置具体的某一个表,可以

ydb.index.ssd.ext.xxx表名: “tim,skp@doc,fdx,tip@dvm,fdt,dvd,pos”

配置完成后重启ydb

每种拓展名的解释



6.创建测试表

create ydbtable czy_quickstart(
phonenum dblikebig,
usernick string,
ydb_sex string,
ydb_province string,
ydb_grade string,
ydb_age string,
ydb_blood string,
ydb_zhiye string,
ydb_earn string,
ydb_prefer string,
ydb_consume string,
ydb_day string,
amtdouble tdouble,
amtlong tlong,
content dblikebig
)


7.导入数据

./bin/ydbimport.sh -t czy_quickstart -p 20180206 -tp txt  -f /data/example/quickstart -sp , -fl phonenum,usernick,ydb_sex,ydb_province,ydb_grade,ydb_age,ydb_blood,ydb_zhiye,ydb_earn,ydb_prefer,ydb_consume,ydb_day,amtdouble,amtlong,content


8.进入ya100/sbin目录,打开mover.sh脚本,将红框内修改为您想要设置的表名,并执行该脚本。



有关YDB异构存储就介绍到这里了,如果您对于YDB的功能及产品还存有疑问可以通过以下方式获取试用及技术支持

(如果您无法获取清晰的二维码信息,可单击下图放大↓)

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐