<人力资源/><代码> 代码>
<代码> - sqoop 代码>
<代码>——数据同步 ——hbase 代码>
使用sqoop将数据从mysql同步到hbase
知识点hbase初体验
知识点——愉快地通过节俭访问hbase
知识点-HBaseClient (Java)
目前机器使用的sqoop版本
引用><代码类=" language-shell "> # sqoop版本 警告:/usr/hdp/2.5.3.0-37/accumulo不存在!Accumulo进口将会失败。 请设置$ ACCUMULO_HOME Accumulo安装的根源。 17/12/13 sqoop 22:34:23信息。Sqoop:运行Sqoop版本:1.4.6.2.5.3.0-37 Sqoop 1.4.6.2.5.3.0-37 16 c017e90fdde118be73d46eff10cf2c068387e9 git commit id 编制的詹金斯> sqoop进口“-Dorg.apache.sqoop.splitter.allow_text_splitter=true"\ ——司机com.mysql.jdbc。司机\ ——连接jdbc: mysql://主持人:3306/数据库名\ ——用户名根\ ——密码根\ ——查询“选择一个。id,一个。create_date从1=1和table_a \ CONDITIONS"美元;\ ——hbase表test_sqoop \ ——列族& # 39;fts # 39;\ ——hbase-row-key id分割了create_date - m 3 代码>7.2.13。将数据导入到HBase
——HBase表指定HBase表。
每一行输入的数据都会转换为HBase的把操作作为输出到HBase表的行。
默认情况下,Sqoop会使用,分割了的列(上面的create_date]作为rowkey。
也可以通过——hbase-row-key指定作为rowkey的列。
每一个输出行都会放在同一个列族中,必须通过——列族指定列族。
不能使用,直接【会冲突。
——hbase-row-key也可以指定复合行健,中间使用逗号隔开。
默认如果HBase表和列族不存在,Sqoop会直接报错退出,所以需要在Sqoop执行之前创建好HBase表和列族。
如果指定——hbase-create-table和列族,HBase表不存在则会自动创建。
Sqoop会序列化所有的值,以字符串形式转化为utf - 8的字节数组存到HBase中。
Sqoop会跳过除了行健之外所有为考虑的列。
指定——hbase-bulkload可以采用大批量加载来替代直接写入HBase引用>
利用sqoop将数据从mysql同步到hbase的简单方法