空白平板电脑会发生什么?

时间:2017-04-06 18:03:59

标签: google-cloud-bigtable

假设我创建了一个包含10个初始分割点的表格,因此创建了10个初始平板电脑,过了一段时间,其中一个达到最大尺寸并自动分割。

假设我的密钥是 partition_counter ,并且我的计数器不断增加,我将插入新创建的平板电脑,而不是旧的平板电脑。

在旧版本中的所有记录都达到TTL(并发生压缩)之后,平板电脑就会变空。

此平板电脑是否自动删除?如果没有,空片剂会不会有任何性能或成本影响?

不可否认,我们应该努力制作我们的分区和TTL,以便它们永远不会变得足够自动分割并且平板电脑保持不变,但我正在努力解决所有情况。

1 个答案:

答案 0 :(得分:0)

  

假设我创建了一个包含10个初始分割点的表格,因此创建了10个初始平板电脑,过了一段时间,其中一个达到最大尺寸并自动分割。

     

假设我的密钥是partition_counter,并且我的计数器不断增加,我将插入新创建的平板电脑,而不是旧的平板电脑。

您还没有提供关于行键/架构设计的足够信息,所以这只是我的一个猜测,但请注意,如果您总是写一个比所有其他现有键大的键在Bigtable中,您将热插入具有最后一个平板电脑的节点,并且由于您无法分发写入,因此无论您的集群大小如何,您都将始终获得与单个节点相当的性能。 / p>

避免典型的架构设计缺陷

  • 错误示例:<date>-<some id/hash> - 日期主要订单,不良扩展
  • 很好的例子:<some id/hash>-<date> - 项目/用户/设备 - 主要订单,良好的扩展

如果您尚未将前缀的日期或时间插入行键,则表示您正确执行此操作。

  

在旧版本中的所有记录都达到TTL(并发生压缩)之后,平板电脑就会变空。

     

此平板电脑是否自动删除?如果没有,空片剂会不会有任何性能或成本影响?

是的,这样的平板电脑会在压实时消失,你的群集甚至都不会注意到。空片剂没有性能或成本影响,您不应该担心它们。

  

不可否认,我们应该努力制作我们的分区和TTL,以便它们永远不会变得足够自动分割并且平板电脑保持不变,但我试图解决所有情况。

不,你不应该担心平板电脑,#分区或TTL。没有要求您避免分割或具有恒定数量的平板电脑。这可能是其他存储系统中的问题,但不是Bigtable中的问题:它可以很好地扩展。

您应该只确保您的架构设计已完成,以便在扩展数据大小时,您的读/写按键空间(跨节点分片)分布,而不是单调增加或减少。

有关详情,请参阅以下文档:

此外,如果您的用例适合流行的模式,请考虑使用Bigtable的前端,以简化特定用例的模式管理,例如,