我们正在探索Cloud Spanner作为Elasticsearch集群的替代品,目前正在布局我们的数据库模式。
我们想知道我们是否应该使用一个包含大量可为空列的大表,或者我们是否应该更喜欢具有大量一对一子表的精简基表。对于较大的表(有些表可能更多),我们将有大约 25 到 1000 亿个条目,因此大量连接/聚合可能是一个问题。
列中的 NULL 值是否需要与定义的列类型的实际值相同的存储空间?
Cloud Spanner 对像 Elasticsearch 这样的稀疏值文档有问题吗?
Cloud Spanner 处理超过十亿个父子文档的联接/聚合的能力如何?
- Cloud Spanner 中的 NULL 值非常便宜,基本上是免费的。
- 每个表的列数限制为 1024。还建议每个父密钥放置少于 4G 的数据。在此处查看完整的限制列表。
- 父子联接本身是有效的,因为它作为单个扫描执行。但是,在知道要执行的实际查询之前,很难判断。