我们正在使用mapr,我们想部署一个新的(datalab)集群,我想问一下将数据从生产集群传输到datalab集群的最佳方法是什么?我们在两个集群之间使用了镜像,但是有了这个选项,我们只能读取数据实验室中的数据,那么我们如何实时传输数据呢?
wztqucjr1#
如果您只想要一个fs.a==>fs.b“实时”管道,我知道最好的选择是apachenifi或streamset,因为不需要编码。flume可能是另一种选择,因为它已经在大多数hadoop供应商环境中可用。如果你更倾向于开发,你可以使用spark或flink。oozie时间表上的distcp是故障安全解决方案
qojgxg4l2#
您可以使用以下选项:但在同一个目录中支持某些协议。请参阅此处如果您使用的是hbase,则可以使用快照功能。请参阅此处或者,您可以使用database实用程序创建转储。例如,如果您使用的是mysql,那么使用 mysqldump -u [username]-p [pass][dbname]| gzip > file.sql.gz 然后你可以把它移到其他服务器上 scp username@<ip>:/<source>/file.sql.gz <destination>/ 或者,您可以使用ApacheFalcon,它使用oozie工作流在集群之间复制数据
mysqldump -u [username]-p [pass][dbname]| gzip > file.sql.gz
scp username@<ip>:/<source>/file.sql.gz <destination>/
2条答案
按热度按时间wztqucjr1#
如果您只想要一个fs.a==>fs.b“实时”管道,我知道最好的选择是apachenifi或streamset,因为不需要编码。
flume可能是另一种选择,因为它已经在大多数hadoop供应商环境中可用。
如果你更倾向于开发,你可以使用spark或flink。
oozie时间表上的distcp是故障安全解决方案
qojgxg4l2#
您可以使用以下选项:
但在同一个目录中支持某些协议。请参阅此处
如果您使用的是hbase,则可以使用快照功能。请参阅此处
或者,您可以使用database实用程序创建转储。例如,如果您使用的是mysql,那么使用
mysqldump -u [username]-p [pass][dbname]| gzip > file.sql.gz
然后你可以把它移到其他服务器上scp username@<ip>:/<source>/file.sql.gz <destination>/
或者,您可以使用ApacheFalcon,它使用oozie工作流在集群之间复制数据