【发布时间】:2018-01-22 13:45:18
【问题描述】:
我已经看到了不要将 Google Big Table 用于小型数据集的警告。
这是否意味着 100 QPS 的工作负载可能比 8000 QPS 的工作负载运行得更慢(总时间;不是每个查询)?
我知道 100 QPS 在 BigTable 上的效率非常低;但它会不会像 100 次插入需要 15 秒才能完成一样激烈?哪里可以在 1 秒内运行 8000 次插入?
只是寻找“理论上;有时;是”与“可能相对不太可能”类型的答案,作为我如何构建性能测试周期的粗略指南。
谢谢
【问题讨论】:
-
你能澄清一下你的问题吗?它似乎在谈论两个不同的事情:数据集大小和 QPS。不建议将 Bigtable 用于小型数据集,因为它将数据拆分为多个 tablet 并将这些 tablet 分布在多个服务器上。这允许它通过跨这些服务器的负载平衡来支持高 QPS。如果您的数据集很小,则不能将其拆分到多个服务器上,并且会热点单个服务器。
-
我的问题是关于这两点。那么单个热点服务器是否仍然能够在其拥有的小型数据集上以 10000 QPS 的速度提供服务?
-
假设键之间没有争用,应该没问题。另外,请注意,要实现写入的高吞吐量,您必须使用批量请求(即 java 中的 BufferedMutator 或 golang 中的 ApplyBulk)。
标签: bigtable google-cloud-bigtable