首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >有没有内置的支持“从”开始。Cassandra中的“有效日期”数据检索

有没有内置的支持“从”开始。Cassandra中的“有效日期”数据检索
EN

Stack Overflow用户
提问于 2011-07-19 18:58:49
回答 1查看 104关注 0票数 0

我想在一行中定义一些数据,它本质上是主/详细的。为了说明的目的,让我们假设它是一个由多支球队组成的足球联盟“A级联赛”。球队可以随着时间的推移被添加或删除,或者他们的属性可能会改变,或者联盟的属性可能会改变。

在HBase中,我可以这样定义一个表结构:

代码语言:javascript
运行
复制
Column Family: League
       Column: Name
       Column: Sponsor
Column Family: Team
       Column: team-A
       Column: team-B  etc

现在,如果我添加以下数据(很抱歉使用了非标准符号,我简化了时间戳,只显示日期部分):

代码语言:javascript
运行
复制
Key    Timestamp    League { Name      Sponsor }
LG-A   2011-01-01            League-A  Big-Co

Key    Timestamp      Team
LG-A   2011-01-01       "The Blues": blues-data
LG-A   2011-01-01       "The Greens": greens-data
LG-A   2011-03-01       "The Reds": reds-data
LG-A   2011-03-10       "The Greens": greens-data2

我想查询指定时间为2011-03-10的LG-A的数据,并得到结果:

代码语言:javascript
运行
复制
Key    Timestamp      Team
LG-A   2011-01-01       "The Blues": blues-data
LG-A   2011-03-01       "The Reds": reds-data
LG-A   2011-03-10       "The Greens": greens-data2

类似地,当我查询LG-A并指定时间2011-02-01时,我得到的结果是:

代码语言:javascript
运行
复制
Key    Timestamp      Team
LG-A   2011-01-01       "The Blues": blues-data
LG-A   2011-01-01       "The Greens": greens-data

在HBase中,这是通过在放置数据时设置时间戳,然后设置Get操作的时间范围来完成的。

在Cassandra中可以轻松地做到这一点吗?到目前为止,我只遇到过使用时间戳值编写列名来存储时间序列数据的建议,但这似乎没有给出上面说明的功能(例如,我只想在我的结果中有一个"The Greens“条目,这个条目在指定的时间戳中有效。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-07-20 07:09:34

在HBase中,这是通过在放置数据时设置时间戳,然后设置Get操作的时间范围来完成的。

我相当确定这将导致完整的顺序扫描。

您可以在Cassandra中手动执行seq scan,也可以创建一个包含时间戳的列并对其进行索引。参见http://www.datastax.com/dev/blog/whats-new-cassandra-07-secondary-indexes的示例(使用非ts数据,但原理是相同的)。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6746058

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档