1

我正在谷歌應用程序引擎上爲我的應用程序實現形態模塊。爲此,我需要一個存儲大量小對象的鍵值數據庫。我也需要執行大量的查詢。所以,我認爲擱置模塊是完美的解決方案。只讀python擱置在google-app-engine上存儲{key-> value}?

不幸的是,谷歌應用程序引擎不允許使用任何python內置數據庫,因爲它不允許寫入本地文件。但是,我不需要寫作,但只能閱讀。

是否有任何可以在google-app-engine下運行的只讀數據庫的實現。

P.S.我不考慮使用谷歌應用程序引擎數據存儲爲此目的,因爲存儲對象數量巨大(但規模很小),並且由於大量的查詢。

+0

你應該量化巨大。除非你願意付錢,否則你將被限制在大約120MB的內存,並且考慮你的啓動時間。如果您在啓動時必須讀取大量數據,您可能會有很長時間的創業。你總是可以醃一些東西,將它寫入開發中的文件系統。用你的代碼部署pickle文件。你可以閱讀它。 –

+0

另外,如果您只是使用關鍵值存儲,計劃如何執行查詢?遍歷每個實體。通過不使用數據存儲區,您不會獲得索引,除非您自己構建這些內存,這將花費。 –

回答

0

如果您只需要一個只讀數據庫,那麼在您部署應用程序之前將數據寫入文件。你可以用你的程序在appengine上閱讀它,就像你會閱讀一個模板文件一樣。按排序順序寫入數據,並使用二進制搜索來查找關鍵字。

另一種選擇是將鍵值對放入memcache。這非常快,可以處理大量的查詢。

+0

是的,謝謝。我已經寫了簡單的BTree來解決我的任務。那是因爲我沒有找到現有的解決方案。 – typedef

+0

你在用什麼語言? –

+0

我正在使用python – typedef