2016-09-27 68 views
1

我有一個使用歷史記錄頁面的Messenger應用程序,您可以在其中查看您發送和接收的消息。動態Cassandra查詢

由於消息量已經降低了我的表現,我一直在考慮使用Cassandra。

在研究Cassandra的主題之後,我發現你必須構建表來滿足你的查詢。

現在的問題:在歷史頁面上,您可以同時使用x個不同的過濾器。例如按日期,收件人和發件人過濾。

如果我要使用Cassandra,是否需要爲這些過濾器的每個組合創建一個表? 或者這對Cassandra來說是一個糟糕的用例呢? 如果是這樣,有沒有其他的選擇?

回答

0

你爲什麼不做一個SELECT語句。 你應該明確地看看CQL(Cassandra查詢語言)。 雖然CQL和SQL共享類似的語法,但查詢有很大不同。 這些差異的原因是Cassandra正在處理分佈式數據,並且旨在防止低效查詢。

查看this link僅供參考。它顯示你可以或不可以做的查詢。

+0

根據文章,where子句的屬性需要有索引或是主鍵的一部分。在我的用例中,這意味着表的所有屬性都有索引或是PK的一部分。還是我誤解了某些東西? – Joshu

+0

主鍵是分區鍵列和聚簇列之間的組合。 聚類對於有效地檢索行非常重要 – TableCreek