www.ypnh.net > hADoop分布式计算中,使用HivE查询HBAsE数据慢的问题

hADoop分布式计算中,使用HivE查询HBAsE数据慢的问题

首先,节点规模上去,或者硬件配置上去才能让hadoop引擎转起来.配置很低,一看就知道是科技项目,或者小作坊的做法,你的需求是很不合理的.在这配置下是没优化空间.另一方面,HIVE原理上只是基本的SQL转义,换句话说,当你云计算规模上去后,HIVE优化的本质就是让你优化SQL,而不是HIVE多强.

虚拟机的速度本身就非常慢, 还有就是hive的用法也很重要,不是随便写写就可以的 ,同样一种查询方法 ,写法不一样 算法和时间也都会不同

第一步,启动hadoop,命令:./start-all.sh 第二步,启动hive,命令:./hive --auxpath /home/dream-victor/hive-0.6.0/lib/hive_hbase-handler.jar,/home/dream-victor/hive-0.6.0/lib/hbase-0.20.3.jar,/home/dream-victor/hive-0.6.0/lib/zookeeper-3.2.2.jar

两种方式:一,建立一个hive和hbase公用的表,这样可以使用hive操作hbase的表,但是插入数据较慢,不建议这样做.二,手写mapreduce,把hive里面的数据转换为hfile,然后倒入.hbase的mapreduce接口里面好像也有对应的api可以直接导入的.

应该是Hadoop在hbase和Hive中的作用吧. hbase与hive都是架构在hadoop之上的.都是用hadoop作为底层存储.而hbase是作为分布式数据库,而hive是作为分布式数据仓库.当然hive还是借用hadoop的MapReduce来完成一些hive中的命令的执行.而hbase与hive都是单独安装的.你需要哪个安装哪个,所以不存在重复信息.

将原始数据大小为260M的txt文件放入hdfs.并配置了Hive环境做数据查询测试.由于原始数据太小,要做GB以上的文件测试.并且分别拷贝10、50、100、200、300、400、500份原始数据做成对应的大数据文件.分别对这些数据使用hiveQL查询相同的数据,然后记录不同大小的数据查询的结果.做成一个图表.然后再添加一个slave计算节点,负载均衡后再使用相同的hiveQL语言查询相同的数据集,记录对应的结果.

1.8亿条要看你的查询需求,如果需要查询速度快的话用hadoop+hbase.如果需要分析的复杂操作,groupby、join等等用hadoop+hive.目前这两种组合都能轻松hold住海量数据.机器数量3-5台足够.以后不够再平滑扩展

利用选项2, 先打通Hive对HBase指定表的全表访问, 再建立一个新的空表, 把查询出来的数据全部导入到新表当中, 以后的所有数据分析操作在新表中完成.说干就干, 让我们试一个简单的例子.首先在HBase里面建一个表, 名为 student

1.hadoop是分布式平台,就把计算和存储都由hadoop自动调节分布到接入的计算机单元中2.hbase是hadoop上实现的kv数据库3.hbase+hadoop无需再与mysql搭配了, 而且kv数据库与传统关系数据库区别很大4.hadoop+hbase是分布式计算与分布式数据库存储的组合5.增删查改都是真的hbase的,

1.jpg 理论上是的,这些需要做一些特殊的处理.他们的安装过程都是差不多的.如果不熟悉,则需要按照官网的配置,这样不容易出问题.他们的之间的对应关系,可以参考hadoop、hbase、hive版本对应关系

网站地图

All rights reserved Powered by www.ypnh.net

copyright ©right 2010-2021。
www.ypnh.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com