cassandra - Cassandra - 以下查询的最佳表建模?
问题描述
我希望执行以下查询:
SELECT value,occurredAt,venueName FROM Transaction_by_card WHERE card = 1234123412341234
并期望每张卡有几百个结果,就像您的常规信用卡账单一样。
我正在考虑对表格进行建模,例如:
(卡片 int,发生在时间戳,场地名称文本,值 int 主键(卡片,时间戳)与集群顺序按发生在 desc)
这是我用例的最佳模型吗?
解决方案
好吧,只要确保每张卡的总记录应小于 100 mb(Cassandra 中的一种拇指规则),但我更喜欢比这更小的价值。
如果您假设您的结果大小可以更大,您可以执行基于时间
的存储桶例如基于月份的存储桶看起来像
(card int, occurredAt timestamp, year int, month int, venueName text, value int PRIMARY KEY ( (card, year, month) timestamp) WITH CLUSTERING ORDER BY occurredAt desc)
月份:04 和 2020 年将来自发生在 timstampp。
推荐阅读
- c# - 事件作为依赖属性 wpf
- c# - Xamarin 按 Id 查找资源,然后按名称搜索
- r - 将列表中的多个数据框导出到 Excel 文件中,其中选项卡名称作为列表中的不同数据框
- python - matplotlib 中径向条形图的绘图行为不一致
- c# - 如何使用带有证书文件的 MongoDB.Driver 通过 TLS 连接到服务器?
- unity3d - IBM Watson Text to Speech credentials.HasIamTokenData() 每次都返回 null
- javascript - 如何解决 addEventListener 的问题:无法读取未定义的属性“currentTarget”
- javascript - 创建反应应用程序无法安装 Eslint
- c# - 在 C# 中累积值
- android - 尝试展示我的第一个真实广告后,Admob 帐户被禁用