* 转载请注明出处 - yosql473 - 格物致知,经世致用
mysql -> HBase + Phoenix
1.总体方案有哪些?
1)通过Sqoop直接从服务器(JDBC方式)抽取数据到HBase中
因为数据量非常大,因此优先考虑用Sqoop和MR抽取。
使用Sqoop抽取数据有一个问题,就是Phoenix插入的数据和HBase插入的数据是不同的:
例如,使用Phoenix插入这么一条数据:
upsert into tb_collector_log_143 values ( '2018-07-02 18:34:52_c37b03789c5e43ddb800ff90c27e5a44','2182a29047f3435885fc3fb9f7212189','server','server','2018-07-02 18:34:52','2018-07-02 18:34:52','8a5381604b4443ecb1b73d362f756483','c37b03789c5e43ddb800ff90c27e5a44','0560337357604a258a19adb8cc8849c6','2018-07-02 18:34:52','1','02','117.61.15.14:45067','4da7408331794910aa3523b6a9741df5');
在HBase中“2018-07-02 18:34:52”这个字段值(在phoenix中是date类型)就是字节码“\x80\x00\x01d\x5CF\xA8\xE0“:
2018-07-02 18:34:52_c37b03789c5e4