繁体   English   中英

如何使用flume从mysql读取数据?

[英]How to use flume to read data from mysql?

如何使用flume从mysql连续读取加载到hbase?

我熟悉sqoop但我需要从mysql源继续这样做。 是否需要有自定义源来执行此操作?

有很多方法可以做到这一点,但我会编写一个脚本,从MySQL获取数据并为每个生成Avro事件。

然后,您可以使用内置Avro源接收此数据,并将其发送到HDFS接收器。

Sqoop适用于从RDBMS到HDFS / Hive / HBase的批量导入。 如果它只是一次导入,它非常好,它做了它在纸上的承诺。 但是,当您想要实时增量更新时,问题就出现了。 Sqoop支持两种类型的增量更新:

附加,这个允许您重新运行sqoop作业,并且每个新作业从最后一个旧作业结束的地方开始。 例如。 第一个sqoop作业只导入行0-100,然后下一个作业将从101开始 - 基于--last-value = 100。 但即使0-100已更新,追加模式也不会再覆盖它们。

最后修改过,这个更糟糕的是恕我直言,它要求源表有一个时间戳字段,表示该行何时上次更新。 然后根据时间戳,它执行增量更新导入。 如果源表没有这样的东西,那么这个没用。

我会说,如果您确实掌握了源数据库,可以使用Sqoop进行最后修改模式。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM