2013-03-19 90 views
1

我正在研究一個現有的應用程序,它的設計方式是即使對於一些靜態數據,它也會查詢MongoDB。 (索引已在MongoDB集合上完成),因爲這個應用程序很慢。如何在MongoDB中實現緩存?

(MongoDB中的數據是巨大的,我們使用的是蒙戈DB版本是2.1)

我看了一下MongoDB的緩存,但我不知道如何實現?

請讓我知道如何做在Mongo DB緩存?

請提出一個更好的方法來解決這個問題。

回答

0

您是否嘗試過使用Covered Queries

覆蓋查詢是一個查詢,其中:

  • 所有查詢中的字段是一個索引的一部分,並且
  • 所有字段中返回的結果是在相同的索引。
  • 或者,只要不是密碼,您就可以維護用於存儲靜態數據的config文件。 YAML很容易上手。

    +0

    Sagar,如果我實現涵蓋查詢,是不是會干擾在該集合上創建的現有索引? – Pawan 2013-03-19 18:30:58

    +0

    Preethi,爲什麼?你不能在一個鍵上添加多個索引嗎? – 2013-03-19 18:34:02

    +0

    在某些查詢中,我們返回一個Collection的整個記錄​​,那麼我們是否需要在該集合的所有這些字段上運行db.coll.ensureIdex?並且該集合中的某些字段經常由第三方服務器更新,那麼它會不會成爲問題? – Pawan 2013-03-19 18:42:08