首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >卡桑德拉-物化视图工作3次1次

卡桑德拉-物化视图工作3次1次
EN

Stack Overflow用户
提问于 2017-04-10 11:52:05
回答 1查看 348关注 0票数 1

我是卡桑德拉的新手,我想使用物化的视图来改变我公开数据的方式,但它有时起作用,而不是其他时候。所以我想知道,有人想知道为什么会发生这样的事情吗?

下面是我正在运行的脚本(在一个码头容器中)

代码语言:javascript
复制
CREATE KEYSPACE IF NOT EXISTS demo3 WITH REPLICATION = {'class': 'SimpleStrategy', 'replication_factor': 1 };

/*
** Drop view to allow droping table
*/

DROP MATERIALIZED VIEW IF EXISTS demo3.tabletest_view;

/*
** TABLE demo3.tabletest (
**  cardKey text, fidelity card key
**  dateKey Date, date of the transaction
**  kind text,
**  power text,
**  sid text, //avro schema id
**  data blob,
**  PRIMARY KEY ((cardKey), dateKey, kind, power)
** ) WITH CLUSTERING ORDER BY (cardKey, trxDate DESC);
*/

DROP TABLE IF EXISTS demo3.tabletest;
CREATE TABLE IF NOT EXISTS demo3.tabletest (
    cardkey text,
    datekey date,
    kind text,
    power text,
    sid text, 
    data blob,
    PRIMARY KEY ((cardkey), datekey, kind, power)
) WITH CLUSTERING ORDER BY (datekey DESC);

/*
** FIXTURES
*/

INSERT INTO demo3.tabletest ( cardkey, datekey, kind, power, sid, data) VALUES ( 'card1', '2016-05-01', 'kind1', 'power1', 'Id', bigintAsBlob(99) );
INSERT INTO demo3.tabletest ( cardkey, datekey, kind, power, sid, data) VALUES ( 'card1', '2016-05-08', 'kind1', 'power2', 'Id', bigintAsBlob(99) );
INSERT INTO demo3.tabletest ( cardkey, datekey, kind, power, sid, data) VALUES ( 'card1', '2016-05-09', 'kind2', 'power1', 'Id', bigintAsBlob(99) );
INSERT INTO demo3.tabletest ( cardkey, datekey, kind, power, sid, data) VALUES ( 'card1', '2016-05-15', 'kind1', 'power3', 'Id', bigintAsBlob(99) );
INSERT INTO demo3.tabletest ( cardkey, datekey, kind, power, sid, data) VALUES ( 'card1', '2016-05-22', 'kind1', 'power4', 'Id', bigintAsBlob(99) );
INSERT INTO demo3.tabletest ( cardkey, datekey, kind, power, sid, data) VALUES ( 'card1', '2016-05-25', 'kind2', 'power2', 'Id', bigintAsBlob(99) );
INSERT INTO demo3.tabletest ( cardkey, datekey, kind, power, sid, data) VALUES ( 'card1', '2016-05-30', 'kind1', 'power5', 'Id', bigintAsBlob(99) );
INSERT INTO demo3.tabletest ( cardkey, datekey, kind, power, sid, data) VALUES ( 'card1', '2016-06-06', 'kind2', 'power3', 'Id', bigintAsBlob(99) );
INSERT INTO demo3.tabletest ( cardkey, datekey, kind, power, sid, data) VALUES ( 'card1', '2016-06-14', 'kind2', 'power4', 'Id', bigintAsBlob(99) );
INSERT INTO demo3.tabletest ( cardkey, datekey, kind, power, sid, data) VALUES ( 'card1', '2016-06-17', 'kind2', 'power5', 'Id', bigintAsBlob(99) );

INSERT INTO demo3.tabletest ( cardkey, datekey, kind, power, sid, data) VALUES ( 'card2', '2016-05-01', 'kind1', 'power1', 'Id', bigintAsBlob(99) );
INSERT INTO demo3.tabletest ( cardkey, datekey, kind, power, sid, data) VALUES ( 'card2', '2016-05-08', 'kind1', 'power2', 'Id', bigintAsBlob(99) );
INSERT INTO demo3.tabletest ( cardkey, datekey, kind, power, sid, data) VALUES ( 'card2', '2016-05-09', 'kind2', 'power1', 'Id', bigintAsBlob(99) );
INSERT INTO demo3.tabletest ( cardkey, datekey, kind, power, sid, data) VALUES ( 'card2', '2016-05-15', 'kind1', 'power3', 'Id', bigintAsBlob(99) );
INSERT INTO demo3.tabletest ( cardkey, datekey, kind, power, sid, data) VALUES ( 'card2', '2016-05-22', 'kind1', 'power4', 'Id', bigintAsBlob(99) );
INSERT INTO demo3.tabletest ( cardkey, datekey, kind, power, sid, data) VALUES ( 'card2', '2016-05-25', 'kind2', 'power2', 'Id', bigintAsBlob(99) );
INSERT INTO demo3.tabletest ( cardkey, datekey, kind, power, sid, data) VALUES ( 'card2', '2016-05-30', 'kind1', 'power5', 'Id', bigintAsBlob(99) );
INSERT INTO demo3.tabletest ( cardkey, datekey, kind, power, sid, data) VALUES ( 'card2', '2016-06-06', 'kind2', 'power3', 'Id', bigintAsBlob(99) );
INSERT INTO demo3.tabletest ( cardkey, datekey, kind, power, sid, data) VALUES ( 'card2', '2016-06-14', 'kind2', 'power4', 'Id', bigintAsBlob(99) );
INSERT INTO demo3.tabletest ( cardkey, datekey, kind, power, sid, data) VALUES ( 'card2', '2016-06-17', 'kind2', 'power5', 'Id', bigintAsBlob(99) );

INSERT INTO demo3.tabletest ( cardkey, datekey, kind, power, sid, data) VALUES ( 'card1', '2017-05-01', 'kind1', 'power6', 'Id', bigintAsBlob(99) );
INSERT INTO demo3.tabletest ( cardkey, datekey, kind, power, sid, data) VALUES ( 'card1', '2017-05-08', 'kind1', 'power7', 'Id', bigintAsBlob(99) );
INSERT INTO demo3.tabletest ( cardkey, datekey, kind, power, sid, data) VALUES ( 'card1', '2017-05-09', 'kind2', 'power6', 'Id', bigintAsBlob(99) );
INSERT INTO demo3.tabletest ( cardkey, datekey, kind, power, sid, data) VALUES ( 'card1', '2017-05-15', 'kind1', 'power8', 'Id', bigintAsBlob(99) );
INSERT INTO demo3.tabletest ( cardkey, datekey, kind, power, sid, data) VALUES ( 'card1', '2017-05-22', 'kind1', 'power9', 'Id', bigintAsBlob(99) );
INSERT INTO demo3.tabletest ( cardkey, datekey, kind, power, sid, data) VALUES ( 'card1', '2017-05-25', 'kind2', 'power7', 'Id', bigintAsBlob(99) );
INSERT INTO demo3.tabletest ( cardkey, datekey, kind, power, sid, data) VALUES ( 'card1', '2017-05-30', 'kind1', 'power10', 'Id', bigintAsBlob(99) );
INSERT INTO demo3.tabletest ( cardkey, datekey, kind, power, sid, data) VALUES ( 'card1', '2017-06-06', 'kind2', 'power8', 'Id', bigintAsBlob(99) );
INSERT INTO demo3.tabletest ( cardkey, datekey, kind, power, sid, data) VALUES ( 'card1', '2017-06-14', 'kind2', 'power9', 'Id', bigintAsBlob(99) );
INSERT INTO demo3.tabletest ( cardkey, datekey, kind, power, sid, data) VALUES ( 'card1', '2017-06-17', 'kind2', 'power10', 'Id', bigintAsBlob(99) );

INSERT INTO demo3.tabletest ( cardkey, datekey, kind, power, sid, data) VALUES ( 'card2', '2017-05-01', 'kind1', 'power6', 'Id', bigintAsBlob(99) );
INSERT INTO demo3.tabletest ( cardkey, datekey, kind, power, sid, data) VALUES ( 'card2', '2017-05-08', 'kind1', 'power7', 'Id', bigintAsBlob(99) );
INSERT INTO demo3.tabletest ( cardkey, datekey, kind, power, sid, data) VALUES ( 'card2', '2017-05-09', 'kind2', 'power6', 'Id', bigintAsBlob(99) );
INSERT INTO demo3.tabletest ( cardkey, datekey, kind, power, sid, data) VALUES ( 'card2', '2017-05-15', 'kind1', 'power8', 'Id', bigintAsBlob(99) );
INSERT INTO demo3.tabletest ( cardkey, datekey, kind, power, sid, data) VALUES ( 'card2', '2017-05-22', 'kind1', 'power9', 'Id', bigintAsBlob(99) );
INSERT INTO demo3.tabletest ( cardkey, datekey, kind, power, sid, data) VALUES ( 'card2', '2017-05-25', 'kind2', 'power7', 'Id', bigintAsBlob(99) );
INSERT INTO demo3.tabletest ( cardkey, datekey, kind, power, sid, data) VALUES ( 'card2', '2017-05-30', 'kind1', 'power10', 'Id', bigintAsBlob(99) );
INSERT INTO demo3.tabletest ( cardkey, datekey, kind, power, sid, data) VALUES ( 'card2', '2017-06-06', 'kind2', 'power8', 'Id', bigintAsBlob(99) );
INSERT INTO demo3.tabletest ( cardkey, datekey, kind, power, sid, data) VALUES ( 'card2', '2017-06-14', 'kind2', 'power9', 'Id', bigintAsBlob(99) );
INSERT INTO demo3.tabletest ( cardkey, datekey, kind, power, sid, data) VALUES ( 'card2', '2017-06-17', 'kind2', 'power10', 'Id', bigintAsBlob(99) );


/*
** DISPLAY RESULT:
*/

SELECT * FROM demo3.tabletest;

/*
** Creating view
*/

CREATE MATERIALIZED VIEW demo3.tabletest_view 
AS SELECT cardkey, datekey, kind, power, sid, data 
FROM demo3.tabletest
WHERE cardkey IS NOT NULL AND datekey IS NOT NULL AND kind IS NOT NULL AND power IS NOT NULL
PRIMARY KEY ((cardkey), datekey, kind, power);

SELECT * FROM demo3.tabletest_view;
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-04-10 13:28:01

您没有从物化视图tabletest_view中获取数据,对吗?

这是因为tabletest_view正在建设中。当您使用现有数据在表的顶部创建物化视图时,需要一些时间来构建和传播数据。

同时,您可以通过

代码语言:javascript
复制
 SELECT * FROM system.views_builds_in_progress ;

和所有已构建视图的列表。

代码语言:javascript
复制
SELECT * FROM system.built_views ;

当您的视图生成时,您将得到数据。

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

https://stackoverflow.com/questions/43322421

复制
相关文章

相似问题

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