2016-03-28 76 views
2

我有這個用例,我在基於10天的滾動時間窗口的同步網關上創建了服務器端視圖。有沒有辦法直接拉我的設備端?可以在客戶端拉同步網關視圖/複製嗎?

當我看的文件,我看沒有辦法,這些可以直接複製,一個需要做出REST調用:

http://developer.couchbase.com/documentation/mobile/1.2/develop/guides/sync-gateway/accessing-cb-views/index.html

是這樣的假設是否正確?

我看到的另一種方法是讓所有數據在客戶端複製,然後使用Map reduce功能在客戶端寫入Couchbase lite視圖。哪一個是2的正確方法?

回答

0

是的我相信你的假設是正確的 - 必須通過公共REST API直接查詢視圖。我也相信你的解決方案同步數據,然後在客戶端查詢它也將工作。

爲了找到「正確的做法」我會考慮你的應用需求,並展開工作流程:

  • 在服務器上使用視圖將需要:
    • 中的視圖管理(CRUD) SG - 類似於管理數據庫中的功能。理想情況下,這些將由一些部署/管理代碼進行管理。
    • 客戶端需要能夠對公共接口進行API調用以訪問視圖信息。這就要求緩存脫機工作。
  • 在本地切片數據意味着同步將關閉所有數據,設備將不得不執行先前由服務器執行的搜索/切片/聚合。這將會:
    • 離線工作。
    • 對應用設備造成潛在的額外壓力。

我不認爲有任何這裏簡單的答案 - 理想的意見將被同步到設備,但我不知道這甚至有可能與目前的SG執行。

(注意:必須通過管理REST界面而不是通過Couchbase Web界面在Sync Gateway中創建視圖)。

(注2:我是一個服務器端程序員,所以這個觀點受到了污染。)

0

我最終什麼事做在寫網絡掛接,這基本上讓我複製到Couchbase服務器的同一文檔。然後,我做了所有需要的聚合,並推動那些syn syn gatewy(它被複制到應用程序)。

可能或許不對,但適用於我的情況....

相關問題