Google Cloud Spanner 和 Cloud SQL 有什么区别?
What's the difference between Google Cloud Spanner and Cloud SQL?
我是 GCP 堆栈的新手,所以我对用于存储数据的 GCP 技术数量感到非常困惑:
https://cloud.google.com/products/storage
虽然google cloud spanner在上面的文章中没有提到我知道它是存在的并且iti用于数据存储:https://cloud.google.com/spanner
从我目前的观点来看,我没有看到云 sql(在引擎盖下有 postgres)和云扳手之间有任何显着差异。我发现它的语法有点不同,但当我更喜欢这种技术而不是 spring 云 sql.
时,它没有回答
你能解释一下吗?
P.S.
我认为 spring 云 sql 是一种传统数据库,具有自动复制和水平扩展性,由 google 管理。
它们在做什么(将数据存储在表中)方面没有太大区别。区别在于他们如何处理小规模和大规模的数据
当您需要以更高的一致性水平和大量数据处理(+100,000 reads/write 每秒)处理大量数据时,可以使用 Cloud Spanner。 Spanner 提供更好的可扩展性和更好的 SLO。
另一方面,Spanner 也比 Cloud SQL贵很多。
如果您只是想以便宜的方式存储客户的一些数据,但又不想面对服务器配置,云 SQL 是正确的选择。
如果您打算创建一个大型产品,或者如果您想要为您的应用程序(病毒式 games/applications)的大量用户增加做好准备,Spanner 是合适的产品。
您可以在此 official paper
中找到有关 Cloud Spanner 的详细信息
Cloud Spanner 和 Cloud SQL 的主要区别在于水平可扩展性 + 超过 10TB 数据的全球可用性。
Spanner 不适用于一般 SQL 需求,Spanner 最适合用于大规模机会。全球每秒 1000 次写入。 10,000 秒 - 全球每秒 100,000 次读取。
在不对数据库进行复杂分片的情况下,使用 NORMAL SQL / MySQL 很难达到上述容量。 Spanner 处理所有这些并允许 ACID 更新(这对于分片数据库来说基本上是不可能的)。他们通过超精确的时钟来管理冲突来实现这一点。
简而言之,Spanner 不适用于 CRM 数据库,它更适合组织内的超海量全球数据。而且由于 Spanner 有点贵(与云相比 SQL),项目应该足够大以证明 Spanner 的额外成本是合理的。
您也可以在 Reddit 上关注这个讨论(一个很好的!):https://www.reddit.com/r/googlecloud/comments/93bxf6/cloud_spanner_vs_cloud_sql/e3cof2r/
前面的回答是正确的,Spanner 的主要优点是可扩展性和可用性。虽然您可以使用 Cloud SQL 进行扩展,但写入吞吐量存在上限,除非您进行分片——根据您的用例,这可能是一个重大挑战。处理分片 SQL 是 Spanner 在 Google.
内解决的大问题
我想补充一下之前的答案,Cloud SQL 提供 MySQL 或 PostgreSQL 或 SQL Server 的托管实例,并相应支持 SQL。如果您要从位于不同位置的 MySQL 数据库迁移,则不必更改查询可能是一个巨大的优势。
Spanner 有自己的 SQL 方言,尽管最近添加了对 PostgreSQL 方言子集的支持。
我是 GCP 堆栈的新手,所以我对用于存储数据的 GCP 技术数量感到非常困惑:
https://cloud.google.com/products/storage
虽然google cloud spanner在上面的文章中没有提到我知道它是存在的并且iti用于数据存储:https://cloud.google.com/spanner
从我目前的观点来看,我没有看到云 sql(在引擎盖下有 postgres)和云扳手之间有任何显着差异。我发现它的语法有点不同,但当我更喜欢这种技术而不是 spring 云 sql.
时,它没有回答你能解释一下吗?
P.S.
我认为 spring 云 sql 是一种传统数据库,具有自动复制和水平扩展性,由 google 管理。
它们在做什么(将数据存储在表中)方面没有太大区别。区别在于他们如何处理小规模和大规模的数据
当您需要以更高的一致性水平和大量数据处理(+100,000 reads/write 每秒)处理大量数据时,可以使用 Cloud Spanner。 Spanner 提供更好的可扩展性和更好的 SLO。
另一方面,Spanner 也比 Cloud SQL贵很多。
如果您只是想以便宜的方式存储客户的一些数据,但又不想面对服务器配置,云 SQL 是正确的选择。
如果您打算创建一个大型产品,或者如果您想要为您的应用程序(病毒式 games/applications)的大量用户增加做好准备,Spanner 是合适的产品。
您可以在此 official paper
中找到有关 Cloud Spanner 的详细信息Cloud Spanner 和 Cloud SQL 的主要区别在于水平可扩展性 + 超过 10TB 数据的全球可用性。
Spanner 不适用于一般 SQL 需求,Spanner 最适合用于大规模机会。全球每秒 1000 次写入。 10,000 秒 - 全球每秒 100,000 次读取。
在不对数据库进行复杂分片的情况下,使用 NORMAL SQL / MySQL 很难达到上述容量。 Spanner 处理所有这些并允许 ACID 更新(这对于分片数据库来说基本上是不可能的)。他们通过超精确的时钟来管理冲突来实现这一点。
简而言之,Spanner 不适用于 CRM 数据库,它更适合组织内的超海量全球数据。而且由于 Spanner 有点贵(与云相比 SQL),项目应该足够大以证明 Spanner 的额外成本是合理的。
您也可以在 Reddit 上关注这个讨论(一个很好的!):https://www.reddit.com/r/googlecloud/comments/93bxf6/cloud_spanner_vs_cloud_sql/e3cof2r/
前面的回答是正确的,Spanner 的主要优点是可扩展性和可用性。虽然您可以使用 Cloud SQL 进行扩展,但写入吞吐量存在上限,除非您进行分片——根据您的用例,这可能是一个重大挑战。处理分片 SQL 是 Spanner 在 Google.
内解决的大问题我想补充一下之前的答案,Cloud SQL 提供 MySQL 或 PostgreSQL 或 SQL Server 的托管实例,并相应支持 SQL。如果您要从位于不同位置的 MySQL 数据库迁移,则不必更改查询可能是一个巨大的优势。
Spanner 有自己的 SQL 方言,尽管最近添加了对 PostgreSQL 方言子集的支持。