She*_*jie 6 streaming hadoop sqoop apache-kafka
我们已经使用Sqoop实现了一个解决方案,用于将数据从RDBMS加载到我们的hadoop集群,仅用于附加数据,当维度数据到hbase时,它转到hive.
现在我们正在建立两个相同的Hadoop集群,它们是彼此的备份集群.我们希望将数据从RDBMS加载到两个集群.Sqoop不允许我们这样做.我们已经看到了一些流式解决方案,如流集或nifi,它允许从一个地方提取数据并一次性将其发送到多个目的地.此外,我们正在考虑使用sqoop将数据加载到一个集群,然后设置同步向上作业以定期将数据复制到另一个集群,考虑到我们拥有的数据量巨大,这听起来更合适.
有人可以分享一些真实的生活经历吗?
我看到有两种选择可以做到这一点:
设置两个 diff Sqoop 作业以复制到每个集群中。这更像是两组活动数据而不是备份,因为两者都是从源更新的。这将在关系数据库系统上造成额外的过载,因为将创建 x2(大约)个连接来执行数据复制。
使用单个 Sqoop 作业将数据加载到一个集群中。使用 distcp -update (或)distcp -append 从那里复制到其他集群。这种方法的一些优点:
这应该会减少关系数据库系统的负载。
您可以利用 MR 的强大功能来更快地复制黑白集群数据。
您可以选择使用 Oozie 安排备份频率。
您可以处理活动副本或备份副本。
让我知道您的想法,如果您已经确定了任何解决方案,请分享。
归档时间: |
|
查看次数: |
414 次 |
最近记录: |