Cassandra在文本或blob中存储长令牌?

时间:2015-09-23 02:24:06

标签: cassandra

我将有一个用户表,其中包含每个用户的令牌。令牌是1024位长的字母数字字符串。在我的一本教科书中,他们似乎将所有令牌存储在blob中而不是文本中,但从未解释过为什么?在Cassandra中为文本选择blob是否有优势。是否存在任何性能差异(例如对于超过十亿行的表格而言)?

2 个答案:

答案 0 :(得分:1)

将标记存储为blob将更有效,因为blob将小于文本表示。这意味着它将使用更少的磁盘空间,更快的读写速度,并通过网络更有效地传输。对于Cassandra来说,较小的数据几乎总是更快。

文本通常比blob压缩得更多,这样可以减轻一些差异,但blob可能仍然会更有效。

答案 1 :(得分:0)

我认为blob和文本的重量大致相同,只有blob不是人类可更新的。 如果您首先对令牌进行gzip,然后将gzip作为blob发送,那么性能可能会有所提高,因为它会显着缩小。 见What are the pros or cons of storing json as text vs blob in cassandra?