【发布时间】:2013-07-24 07:04:08
【问题描述】:
我已经在 3 台机器上配置了 hadoop1.0.3 和完全分布式模式。在下面的第一台机器上,作业正在运行:
1)
4316 SecondaryNameNode4006 NameNode
4159 DataNode
4619 TaskTracker
4425 JobTracker
2)
2794 TaskTracker
2672 DataNode
3)
3338 DataNode
3447 TaskTracker
现在,当我在其上运行简单的 map reduce 作业时,执行 map reducejob 需要更长的时间。所以我在 Hadoop 上安装了 HBASE 层。现在我在 3 个集群上为 HBASE 提供了以下进程。
1) 5115 HQuorumPeer 5198 HMaster 5408 HRegionServer
2) 3719 HRegionServer 3617 HQuorumPeer
3) 2937 HQuorumPeer 2719 HRegionServer
当我在 HBASE 上为 1,00,000 个数据运行 map-reduce 作业时,它需要 1 分钟,而对于 1,00,00,000 个数据也是如此。现在我希望在几毫秒内得到结果。我应该采取哪些措施来改进?
我是新手,所以请帮助我或建议在 HBASE 或 hadoop 上进行一些分层,以便我可以在几毫秒内得到结果。
我正在总结以下记录:
hbase(main):007:0> describe 'weblog'
DESCRIPTION ENABLED
'weblog', {NAME => 'info', DATA_BLOCK_ENCODING => 'NONE', BLOOMFILTER => true
'NONE', REPLICATION_SCOPE => '0', VERSIONS => '3', COMPRESSION => 'NONE'
, MIN_VERSIONS => '0', TTL => '2147483647', KEEP_DELETED_CELLS =>
'false', BLOCKSIZE => '65536', IN_MEMORY => 'false',
ENCODE_ON_DISK => 'true', BLOCKCACHE => 'true'}
在博客表中 -> info:category,info:hits 是列。
info:category info:hits
web 2
mail 10
ftp 1
web 3
mail 11
ftp 2
数据将在 map reduce 中汇总并存储在另一个表中。
hbase(main):004:0> put 'weblog', 'row1', 'info:category', 'web'
0 row(s) in 0.0560
hbase(main):004:0> put 'weblog', 'row1', 'info:hits', '2'
0 row(s) in 0.0560
请对此提供帮助。因为我在 Google 上搜索了很多,但找不到任何对我有帮助的东西。
【问题讨论】:
-
我真的不知道你真正想做什么。你想提高你的 hadoop 速度吗?您想提高 HBASE 数据的一致性吗?你能澄清一下吗?
-
我只想要以毫秒为单位的数据检索速度。所以我在 hadoop 上应用了 HBASE 层。
-
由于启动 MapReduce 作业通常需要几秒钟,因此很难将延迟降低到毫秒
-
没错,但如果我可以将它减少到
-
首先取决于您的硬件配置。例如,您每个节点的磁盘数量可以大大提高您的性能。请参阅cmg.org/measureit/issues/mit97/m_97_3.pdf 和您可以在网上找到的其他链接