Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Firebase 云Firestore数据是否跨大陆复制?_Firebase_Google Cloud Firestore - Fatal编程技术网

Firebase 云Firestore数据是否跨大陆复制?

Firebase 云Firestore数据是否跨大陆复制?,firebase,google-cloud-firestore,Firebase,Google Cloud Firestore,我在看书。这让我想知道,在区域和多区域数据库项目中,数据复制和故障转移是如何处理的。文章提到事情有点过于简化了。但我希望文章中关于数据复制的观点是正确的 所以我的问题是: 假设用户正在编写一个社交媒体应用程序,纽约的用户希望查看悉尼用户的个人资料 案例1:如果我正在为此应用程序使用区域数据库(每个区域仅使用区域数据库) 案例2:如果我使用美国和欧盟的多地区数据库以及其他国家(亚洲、澳大利亚)的地区数据库 在案例1、案例2中,纽约用户是否可以查看悉尼用户的个人资料?是否在区域数据库中跨大陆复制

我在看书。这让我想知道,在区域和多区域数据库项目中,数据复制和故障转移是如何处理的。文章提到事情有点过于简化了。但我希望文章中关于数据复制的观点是正确的

所以我的问题是:

假设用户正在编写一个社交媒体应用程序,纽约的用户希望查看悉尼用户的个人资料

  • 案例1:如果我正在为此应用程序使用区域数据库(每个区域仅使用区域数据库)

  • 案例2:如果我使用美国和欧盟的多地区数据库以及其他国家(亚洲、澳大利亚)的地区数据库

在案例1、案例2中,纽约用户是否可以查看悉尼用户的个人资料?是否在区域数据库中跨大陆复制数据


即使您使用的是目前仅适用于美国和欧盟的多地区数据库。据我所知,muti region仅在同一大陆(NA、EU)的区域内复制数据,而不是在大陆之间复制数据。那么,如何使用Firestore为全球市场构建社交媒体应用程序呢?

在项目中创建Firestore数据库时,您可以选择是否:

  • 将数据存储在单个区域位置

    在这种情况下,数据存储在单个地理区域的多个数据中心中。例如:
    us-east4
    ,它们是弗吉尼亚州北部的数据中心

  • 将数据存储在多个区域位置

    在这种情况下,数据存储在跨多个地理区域的多个数据中心中。例如:
    nam5/us central
    ,它们是整个美国的数据中心

  • 有关这方面的更多信息,请参阅上的文档

    创建数据库时,必须选择其中一个选项。因此,您不能选择多区域和单个区域位置的混合


    应用程序的所有用户都访问相同的数据。写入数据时,数据会自动复制到区域内的所有数据中心

    云Firestore数据可以使用。使用“多区域位置”仅仅意味着在位于同一大陆的多个区域存储数据。这意味着您不能在全球范围内拥有接近所有用户的数据。

    虽然您涵盖了许多有效的主题,但您现在的问题太广泛,无法以合理简洁的方式回答。我建议限制范围,这样才有责任。这方面的一个很好的说明是,最好在问题的末尾有一个带单个问号的问题。例如:“如果我使用多个区域数据库,纽约用户是否可以查看悉尼用户的个人资料?”完全有效且清晰。答案是“是”,顺便说一句,“云Firestore为您带来……自动多区域数据复制”:如果我去掉这些小问题,它将使问题变得不完整。把这些小问题看作是对整个问题的迅速回答question@FrankvanPuffelen将问题更新为更具体。请提供您的代码@user158@Programmer没有任何代码,我想知道它是如何工作的?全世界的人都在和同一个db通话,这会导致一些人的延迟很高。或者数据是否在各大洲复制?因此,如果我们在美国创建一个多地区数据库,这意味着悉尼的用户必须使用美国的数据库,这会导致更高的延迟?你能告诉我你是对的吗@user158:使用“多区域位置”仅仅意味着使用位于同一大陆的多个区域。欧盟和美国似乎是选择。这意味着您不能在全局范围内拥有接近所有用户的数据。有一篇关于Firestore延迟的文章和一个从您的位置测试延迟的网页:多区域只是指一个大地理区域内的多个区域,而不是跨大陆。您可以将数据放在澳大利亚,但美国的用户将获得更高的延迟。@RunarJordahl请在引用您的资源时,花点时间为这个问题写一个答案。