代码之家  ›  专栏  ›  技术社区  ›  soumyadeep sarkar

哪一个是写效率高的“使用紧凑型存储选项创建表”或“使用群集顺序存储选项创建表格”?

  •  2
  • soumyadeep sarkar  · 技术社区  · 12 年前

    我正在设计一个读写关键问题语句的模式。 哪一种写和读效率更高?使用紧凑的存储创建表或使用群集顺序创建表。

    根据我的要求,聚类顺序可以帮助我在阅读过程中节省一些时间。但同时我担心这会影响插入。

    有人知道吗?

    3 回复  |  直到 12 年前
        1
  •  3
  •   ashic    12 年前

    紧凑型存储是为了向后兼容节俭应用程序。。我建议避免使用。从官方文档中可以看到:

    使用紧凑型存储

    compact存储指令用于向后兼容 使用CQL的旧应用程序。使用指令将数据存储在 传统(节俭)存储引擎格式。利用CQL 功能,请勿在新应用程序中使用此指令。

    CREATE TABLE sblocks(block_id uuid,subblock_iduuid,data blob,PRIMARY KEY(block_id,sublock_id))与压缩存储; 使用压缩存储指令可防止您定义更多 不属于复合主键的一列。紧凑型 使用非复合主键的表可以有多个 不属于主键的列。

    使用复合主键的紧凑表必须至少定义 一个聚类列。之后不能添加或删除列 创建一个紧凑的表。除非指定WITH COMPACT STORAGE, CQL创建具有非压缩存储的表。

        2
  •  3
  •   trulite    12 年前

    具有“聚类”顺序的表与没有聚类顺序的表相比没有惩罚。写入总是进入memtable(因为Cassandra使用日志结构存储),并且或多或少类似于一行日志。当读取到分区内的正确CQL行时,集群键确实有帮助。使用聚类键进行搜索非常有效,并且确实是推荐的方法。

        3
  •  1
  •   stacksonstacks    10 年前

    我没有评论的代表,所以我想我会把这个留给任何一个偶然发现这个问题并使用C*>=的人3.0.

    Cassandra的存储引擎在版本3中被重新考虑。默认情况下,数据现在更紧凑地存储在磁盘上。使用 COMPACT STORAGE 选项,除了向后节俭兼容性,事实上应该完全避免。

    DataStax Reference