修炼离线:(二)sqoop插入hbase 脚本(增量)

一:mysql创建表,插入数据。

二:hbase创建表。

sql 复制代码
habse shell
create 'aa'(表名),'cf'(列族)

三:mysql_hbase脚本。

sql 复制代码
#!/bin/sh

mysqlHost=$1
mysqlUserName=$2
mysqlUserPass=$3
mysqlDbName=$4
myqlTbName=$5
hbaseTbName=$6
hbaseTbRowkey=$7
hbaseTbRowfamily=$8
mysqlUpdateField=$9
lastMonthDealDate=${10}
p_dt=${11}

echo ${mysqlHost}
echo ${mysqlUserName}
echo ${mysqlUserPass}
echo ${mysqlDbName}
echo ${myqlTbName}
echo ${hbaseTbName}
echo ${hbaseTbRowkey}
echo ${hbaseTbRowfamily}
echo ${mysqlUpdateField}
echo ${lastMonthDealDate}
echo ${p_dt}


sqoop import "-Dorg.apache.sqoop.splitter.allow_text_splitter=true" \
"-Dsqoop.hbase.add.row.key=true"  \
--connect jdbc:mysql://${mysqlHost}/${mysqlDbName} \
--username ${mysqlUserName} \
--password ${mysqlUserPass} \
--table ${myqlTbName} \
--hbase-table ${hbaseTbName} \
--hbase-row-key ${hbaseTbRowkey} \
--column-family ${hbaseTbRowfamily} \
--where "date_format(${mysqlUpdateField},'%Y-%m-%d') between '${lastMonthDealDate}' and '${p_dt}'"

#--num-mappers 16

四:shell脚本。

sql 复制代码
sh mysql_hbase.sh 27.155.84.54 root 123456 aaa(mysql库名) bbb(mysql表名)  MANUFACTURER,BLE_ID(hbase的rowkey) cf(hbase列族) edit_time(mysql更新字段) 2021-09-01(开始日期) 2023-09-19(结束日期)
相关推荐
网络豆9 天前
Apache HBase 鸿蒙 PC 适配全记录:用 Qt 原生客户端打通 REST 管理与数据读写
apache·hbase·harmonyos
Highcharts.js23 天前
Highcharts 下钻(Drilldown)柱状图 Demo
数据库·信息可视化·hbase·highcharts·drilldown·js模块·下钻图表
吴声子夜歌1 个月前
Java面试——HBase原理及应用
java·面试·hbase
Waay1 个月前
什么是HBase?它和Hive有什么区别?
大数据·数据库·hive·hadoop·hdfs·hbase
hopsky1 个月前
《HBase 权威指南》 Lars George
大数据·数据库·hbase
神王宝宝 王者小学1 个月前
HBase: 看上去很美
大数据·数据库·hbase
2601_960906722 个月前
地球或逃逸到相对安全的日心轨道
kafka·hbase·flume·storm
2501_942389552 个月前
为支撑持续攀升的AI资本开支
人工智能·oracle·hbase·database·storm
2601_960906722 个月前
网络防御等最先进AI模型领域
人工智能·json·hbase·flume·storm
一招合理2 个月前
Accordion:一种HBase内存压缩算法
大数据·数据库·hbase