使用flume将数据从mysql复制到hbase:如何?

mm5n2pyu  于 2021-06-03  发布在  Flume
关注(0)|答案(2)|浏览(404)

我有一个很大的mysql数据库,负载很重,我想把这个数据库中的数据复制到hbase上,以便对它进行分析。
edit:我希望数据能够相对快速地复制,并且没有任何模式更改(没有时间戳行等)
我已经读到,这可以通过flume来完成,mysql作为源,可能是mysql bin日志,hbase作为接收器,但是还没有找到任何细节(高或低级别)。这项工作的主要任务是什么?
之前也有人问过和回答过类似的问题,但并没有真正解释如何或指向可以:
flume将数据从mysql迁移到hadoop
从mysql到hbase的连续数据迁移

uqzxnwby

uqzxnwby1#

你最好用sqoop来实现这个目的,imho。它正是为了这个目的而开发的。Flume是为了一个完全不同的目的,如聚集日志数据,从传感器生成的数据等。
请参阅此以了解更多详细信息。

iyzzxitl

iyzzxitl2#

到目前为止,有三种选择值得考虑:
sqoop:初始批量导入后,支持两种类型的增量udpates导入:append、last modfied。但话说回来,它不会给您提供实时甚至接近实时的复制。这并不是因为sqoop不能运行那么快,而是因为你不想插入一个sqoop管道到你的mysql服务器,每隔1到2分钟就发送一次数据。
触发器:这是一个快速的脏解决方案,通过向源rdbms添加触发器,并根据需要更新hbase。这个给你实时的满足感。但是您必须通过添加触发器来破坏源数据库。作为一个暂时的解决方案,这也许是可以的,但从长远来看,这是行不通的。
Flume:这一个,你将需要投入最大的开发努力。它不需要接触数据库,也不向数据库添加读取流量(它跟踪事务日志)。
就我个人而言,我会选择flume,它不仅将数据从rdbms传输到hbase,而且还可以在数据通过flume管道传输时对其进行处理(e、 g.转换、通知、警报等)

相关问题