我有一个 40 列的 RDBMS 表,我将其移植到 Cassandra。
在http://docs.datastax.com/en/cassandra/2.1/cassandra/planning/architecturePlanningUserData_t.html使用估算器
我创建了一个包含列名、数据类型、每列大小等的 Excel 表。当实际数据只有 192 字节时,每个 RDBMS 行的 Cassandra 特定开销高达 1KB。
由于开销与列数成正比,我认为如果我只为不属于主键的字段创建一个 UDT 会更好。这样,我只会产生一次列开销。
另外,我不打算对 UDT 的内部字段运行查询。即使我确实想要,Cassandra 在非 PK 字段上的查询功能也非常有限。
这是一个很好的策略吗?有什么陷阱吗?所有这些开销都可以通过压缩或其他一些内部操作轻松消除吗?