importTSV工具导入数据到hbase

本文详细介绍了如何在HBase中创建表并导入CSV文件数据,包括表结构设计、数据文件准备、使用ImportTsv工具进行数据导入的具体步骤及注意事项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.建立目标表test,确定好列族信息。

create'test','info','address'

2.建立文件编写要导入的数据并上传到hdfs上

touch a.csv

vi a.csv

数据内容:

2018-09-29,value1,value2

将文件上传到hdfs目录下。

3.在linux命令行执行命令

hbase org.apache.hadoop.hbase.mapreduce.ImportTsv -Dimporttsv.separator="," -Dimporttsv.columns=HBASE_ROW_KEY,info:c1,address:c1 表名 /data/a.csv

3-1.新建的列名在执行命令里面标注 -Dimporttsv.columns=HBASE_ROW_KEY,info:c1,address:c1  根据这处列族列的规定插入对应的数据,info:c1对应value1,address:c1对应value2

如果是多个列族和列:info:c1,info:c2,address:c1,address:c2   ===对应数据为 20180929,value1,value2,value2,value4===value与指定的列族列对应即可。

4.-Dimporttsv.separator="," 

这个是按照指定的分隔符号插入数据,当遇到value里面有你指定分隔符的符号时,可以修改此处和数据内的分隔符。

当遇到value里面有你指定分隔符的符号时,执行不会报错没有任何提示,数据也不会进入hbase,所以多注意。

转载于:https://www.cnblogs.com/lccyb/p/9723109.html

可以通过以下两种方式将HDFS中的数据导入HBase中: 1. 使用HBase提供的工具类:HBase提供了hbase org.apache.hadoop.hbase.mapreduce.ImportTsv这个工具类,可以将TSV、CSV、SequenceFile等格式的数据导入HBase中。 使用该工具进行数据导入的步骤如下: (1) 将待导入数据转化为逗号分隔的文本文件(CSV文件),例如: id,name,age 1,张三,18 2,李四,20 3,王五,22 (2) 使用以下命令进行数据导入: $ hadoop jar /path/to/hbase.jar \ org.apache.hadoop.hbase.mapreduce.ImportTsv \ -Dimporttsv.separator=',' \ -Dimporttsv.columns=HBASE_ROW_KEY,cf:name,cf:age \ test_table \ /path/to/data.csv 其中,-Dimporttsv.separator=','表示CSV文件中字段之间的分隔符为逗号;-Dimporttsv.columns=HBASE_ROW_KEY,cf:name,cf:age表示将CSV文件中的第一列作为行键,第二列和第三列分别放入名为cf:name和cf:age的列族中。 2. 使用自定义MapReduce程序:如果需要对数据进行自定义转换或多步处理,可以使用自定义的MapReduce程序将数据从HDFS中导入HBase中。 具体步骤如下: (1) 编写自定义Mapper类,将HDFS中的数据转换为HBase中的数据格式。 (2) 编写自定义Reducer类,将Mapper阶段输出的键值对写入HBase中。 (3) 配置MapReduce作业,并提交到Hadoop集群上运行。在作业配置中指定HBase表的名称、列族以及行键。 (4) 等待MapReduce作业完成,检查HBase中的数据是否正确导入
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值