当前位置:  开发笔记 > 编程语言 > 正文

如何在同一分区中保留2个Cassandra表

如何解决《如何在同一分区中保留2个Cassandra表》经验,为你挑选了1个好方法。

我尝试阅读有关数据存储博客和文档但未找到任何具体内容

有没有办法让Cassandra中的2个表属于同一个分区?例如:

CREATE TYPE addr (
  street_address1 text,
  city text,
  state text,
  country text,
  zip_code text,
);

CREATE TABLE foo (
  account_id timeuuid,
  data text,
  site_id int,
  PRIMARY KEY (account_id)
};

CREATE TABLE bar (
  account_id timeuuid,
  address_id int,
  address frozen,
  PRIMARY KEY (account_id, address_id)
);

在这里,我需要确保这两个表/ CF都将存在于同一个分区,对于同一个account_id,这两组数据都可以从同一个节点获取

任何指针都非常感谢.

此外,如果有人在使用UDT(用户定义类型)方面有一些经验,我想了解向后兼容性如何工作.如果我修改"addr"UDT以获得更多属性(例如zip_code2 int和name text),具有这些属性的旧行如何工作?它甚至兼容吗?

谢谢



1> RussS..:

如果两个表共享相同的复制策略和相同的分区键,则它们将共享其分区.因此只要两个表位于相同的键空间并且它们的分区键匹配即可

PRIMARY KEY(account_id)== PRIMARY KEY(account_id,address_id)

任何给定的account_id将打开(并复制到)相同的计算机.

推荐阅读
jerry613
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有