處理的解釋,我有上運行mongoS一個選擇查詢,在分片環境中沒有問題,但我的問題是:需要在選擇查詢如何通過MongoDB的
如果有2碎片服務器安裝和運行find
通過應用層查詢,分片環境的哪一部分負責執行查詢?
我無法看到任何實例控制檯中的任何更改,也沒有創建新進程。我通過在本地實施的分片設置上執行3000 find
查詢來測試這一點。
任何人都可以解釋我在理解上的錯誤,或者發現語句不會在服務器上加載。
如何處理的MongoDB選擇或讀取操作?
我非常明白這一點。 預先感謝回覆
處理的解釋,我有上運行mongoS一個選擇查詢,在分片環境中沒有問題,但我的問題是:需要在選擇查詢如何通過MongoDB的
如果有2碎片服務器安裝和運行find
通過應用層查詢,分片環境的哪一部分負責執行查詢?
我無法看到任何實例控制檯中的任何更改,也沒有創建新進程。我通過在本地實施的分片設置上執行3000 find
查詢來測試這一點。
任何人都可以解釋我在理解上的錯誤,或者發現語句不會在服務器上加載。
如何處理的MongoDB選擇或讀取操作?
我非常明白這一點。 預先感謝回覆
當您通過shell(mongo)連接到mongoD或mongoS服務器時,您將無法查看該服務器上發生的查詢。 shell主要用於執行查詢,配置數據庫並檢查其狀態。
MongoS
只是來自應用程序的查詢的路由器。
要查看單個查詢,您需要根據您的configuration檢查位於每個服務器上的日誌文件。
默認情況下,只有緩慢的查詢(100毫秒以下)纔會被記錄。因此需要啓用Profiler來記錄所有查詢。
有關Sharding的更多信息,請參閱documentationpages。
謝謝你,你在分析中提供的寶貴信息,這就是我一直在尋找的東西。 –
你能解釋一下「設置2個碎片服務器」是什麼意思嗎?你的意思是你配置了一個帶有兩個碎片的分片羣嗎?這意味着您正在通過mongos進程訪問羣集 - 是嗎? –
是的,我已經設置了兩個分片的分片羣 –