HBase复制 - 在3个数据中心中复制数据

问题描述 投票:0回答:2

我的应用程序我们有来自3个不同国家的数据,我们在HBase中持久保存数据。

在每个国家,我们将保留所有3个国家的数据。

为实现这一目标,我们是否有可能在所有这三个国家/地区使用数据中心创建Hadoop集群,并将数据复制保持为3.因此,由于机架感知功能,我们的数据将在所有3个国家/地区自动复制?

任何指针都会有很大的帮助。

谢谢

hadoop hbase cloudera
2个回答
0
投票

您不能在各个国家/地区拥有HBASE群集。由于延迟,故障转移问题,网络问题等,这将无法工作。一个很好的选择是拥有3个集群,每个国家一个HBase表并在集群之间同步表,如上所述

据我所知,只有Google成功实施了一个多国数据库,提供了一致性和可用性:Spanner。但解决方案的关键要素是:数据中心之间的私有物理网络和它们自己的NTP实现,这保证了全世界所有服务器都具有相同的时钟,精度只有几毫秒。


0
投票

该解决方案在理论上看起来是可行的,但是由于数据需要复制到位于不同地理位置的3个节点,因此写入可能变得非常慢。需要尝试并检查延迟是否在可容忍的限度内。

另一个选择可能是,在三个位置设置三个不同的HBase集群,并设计表格,使得一个HBase集群中的表可以在夜间复制到另一个HBase集群,以保持数据每天同步。在这种情况下,HBase集群将从其自己的位置获得当前数据,但来自其他两个城市的数据将滞后一天。

© www.soinside.com 2019 - 2024. All rights reserved.