时间:2021-07-01 10:21:17 帮助过:74人阅读
本系统负责将Hive处理后的数据导出到MySQL服务器上,采用 主/从
架构。zeus2将待导出的数据信息放到zookeeper上,Zookeeper将该信息发送给master。master通过JobWatcher接收待处理的表信息,将这些信息转换为任务,并分发给client处理。当client处理完成时,会更新MySQL上数据处理表,表示该部分任务已经处理完成
master
A
导出到 MySQL1
上,这个月,还得将站点 A
的数据导出到节点 MySQL1
上。 MYSQL1
上,明天的数据可能导出到MySQL2上。而SMALL_SITE的数据均导出到一台MYSQL服务器上。 /user/hive/warehouse/ptmind_data.db/${tableName}_${tableType}/sitetz=${timezone}/partdt=${date}/partsid=${sid}
/user/hive/warehouse/ptmind_data.db/sum_page_visits_stats_olap_d/sitetz=E0800/partdt=2014-06-02/partsid=56fbce4e
private String getTabType(String tableName) {if (tableName.equals(Constant.TB_1)) { return x;}else { return d;}}
client
/tmp/ptbalancer/data/${tableName}_${tableType}_${date}_${当前时间戳}
节点间通信
中间件 netty
master ServerBootstrap
client ClientBootstrap
传输数据 PB
相比XML,PB有更好的传输效率、压缩率更高、解析速度更快