我必须实现hadoop,所以它可以处理呼叫详细记录的数据?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我必须实现hadoop,所以它可以处理呼叫详细记录的数据?相关的知识,希望对你有一定的参考价值。

我已经配置了HDFS,Datanode和namenode以及hbase。我在HDFS中存储了一个CDR csv文件。那么如何将其与Hbase映射并准备好进行处理呢?

答案

您可以使用importtsv工具将CSV文件批量加载到HBase中。这是一个关于如何做到这一点的体面教程:http://blog.cloudera.com/blog/2013/09/how-to-use-hbase-bulk-loading-and-why/

以下是博客文章的摘要:

首先,创建表:

hbase shell 
create 'cdr', {NAME => 'f'},   {SPLITS => ['g', 'm', 'r', 'w']} 

NAME指定列族的名称。 Splits只是预先分裂所以它更快一点。如果这是CDR并且ROWKEY将是一个电话号码或类似的东西,你想要分割数字,而不是字符。您只想选择实际将数据拆分为块的拆分。

然后,使用importtsv从cdr数据cdr.csv加载数据:

hadoop jar /usr/lib/hbase/hbase-xxx.jar importtsv
-Dimporttsv.separator=,
-Dimporttsv.bulk.output=output
-Dimporttsv.columns=HBASE_ROW_KEY,f:col2,f:col3,f:col4,... cdr cdr.csv

然后,完成它:

hbase org.apache.hadoop.hbase.mapreduce.LoadIncrementalHFiles output wordcount 

注意:你应该考虑一下你的rowkey是什么。挑选第一列可能不是正确的选择。请记住,HBase不是关系数据库。做一些在HBase中有意义的事情。

以上是关于我必须实现hadoop,所以它可以处理呼叫详细记录的数据?的主要内容,如果未能解决你的问题,请参考以下文章

Hadoop 和 MPP 的比较详细

storm与hadoop的对照

Mysql 性能调优问题

Hadoop与Spark的关系,Spark集群必须依赖Hadoop吗?

hadoop学习记录HDFS

快捷键2:可以抛出呼叫,但未将其标记为“ try”,并且未处理错误