Phoenix组件和原生Hbase查询的时间性能对比
-
原生Hbase查询时间:
-
count ‘mysql_data‘
-
enter image description here
Hbase查询时间为3856秒大约1小时7分钟
-
Hbase查询优化
-
count ‘mysql_data‘, INTERVAL => 10000000
-
每隔一千万查询一次:
enter image description here
间隔查询3372.5740秒,大约耗时:56分钟。
-
协处理器
enter image description here
耗时:1874188毫秒=1874.188s秒,大约31分钟。
-
Phoenix查询时间:
可以看到Hbase查询时间为3956秒大约1小时多一点。
而Phoenix查询时间为2015.033秒,大约33分钟左右。
综上可得出,速度快慢**:协处理器>Phoenix查询>间隔count>普通count>全表scan**。
同步效率对比
sqoop导入,大约50h左右。kafka-thrift单条插入约等于sqoop导入。kafka-thrift批量插入,大约7h。kafka-flink,大约3-7h。
不同的同步方式,大家可以看到效率有着明显的差别,其中使用Flink效率最高,并且如果自己电脑是集群模式,那么效率就会更加的高!
优化点:Flink窗口收集设置,上游插入速度调整,下游接收调整等。
最后,几点策略总结如下:
-
大数据需分割、批量插入
-
插入有序
-
phoenix大数据查询需设超时时间。
-
Flink最稳定、效率最高、根据计算机性能影响。
-
Python thrift,可以批量与单条插入结合。
-
Sqoop需切分、虚拟内存需关闭。
-
HBase若崩溃,赶紧查Zookeeper。
本节到此,就结束了,如果你能坚持看到这里,就表示你学会了很多同步与插入方法,本节比较适合上手实践,欢迎大家与我进行交流!