cassandra - 具有非规范化的 cassandra 数据建模
问题描述
我读了cassandra 数据建模,除了非规范化数据可能会改变之外,一切都很清楚。我如何同步它?email
从此示例更改用户电子邮件时的更新方式是什么:
CREATE TABLE groups ( groupname text, username text, email text, age int, hash_prefix int, PRIMARY KEY ((groupname, hash_prefix), username) )
groupname
是组的一部分,数据模型中的用户可能不知道任何组,因此在用户更改后无法更新电子邮件。
下面描述的解决方案是否合适?
向用户模型添加一列groups
(类型set<text>
)
如果用户模型有一个主键username
,那么我可以向应用程序添加一些DAOperUser(username)
withupdateName
和addGroup
方法。
对于每个username
实例化自己的对象(通过工厂),它将user
在初始化时从表中读取状态。这样它将具有username
and groups
,因此可以将更改视为write batch
两个表 (users
和groups
)。
解决方案
推荐阅读
- python - 在 RStudio Cloud 上终止安装 tensorflow
- sql - 如何在 Oracle 存储过程中传递时间戳值?
- robotframework - 使用反应组件上的机器人框架访问列表中项目的索引
- python - 使用 BeautifulSoup 遍历 HTML 以查找标签和字符串匹配
- android - 在 android 上具有多个图像的启动画面
- c++ - 选择排序程序未正确排序
- c# - 在超大文件中搜索(Open Academic Graph / Microsoft Academic Graph)
- javascript - 将保存在 HTML 中的图片显示到 Vue.js 页面中
- datatables - JQuery 数据表:卡中不是全尺寸
- javascript - UnhandledPromiseRejectionWarning:TypeError:无法在客户端读取未定义的属性“通道”。