適用於 Gremlin 的 Azure Cosmos DB 限制
適用於: Gremlin
本文討論適用於 Gremlin 引擎的 Azure Cosmos DB 限制,並說明它們如何影響客戶周遊。
適用於 Gremlin 的 Azure Cosmos DB 建置在 Azure Cosmos DB 基礎結構之上。 因此,Azure Cosmos DB 服務限制中 說明的所有限制 仍適用。
限制
達到 Gremlin 限制時,周遊會取消,且 x-ms-status-code 為 429,表示節流錯誤。 如需詳細資訊,請參閱 Gremlin 伺服器回應標頭。
資源 | 預設限制 | 說明 |
---|---|---|
腳本長度 | 64 KB | 每個要求的 Gremlin 周遊指令碼長度上限。 |
運算元深度 | 400 | 周遊中的特有步驟總數。 例如, g.V().out() 運算子計數為 2:V() 和 out(), g.V('label').repeat(out()).times(100) 且運算元深度為 3:V()、repeat()和 out(),因為 .times(100) 是運算子的參數 .repeat() 。 |
平行處理原則的程度 | 32 | 在對儲存層發出的單一要求中,可查詢的儲存體分割區數目上限。 具有數百個數據分割的圖表將受到此限制的影響。 |
重複限制 | 32 | 運算元可以執行的反覆 .repeat() 項目數目上限。 在大部分情況下,步驟的每個反覆 .repeat() 專案都會執行廣度優先周遊,這表示任何周遊限制在頂點之間最多 32 個躍點。 |
周遊逾時 | 30 秒 | 周遊會在超過這次時取消。 Azure Cosmos DB Graph 是 OLTP 資料庫,大部分周遊會在毫秒內完成。 若要在 Azure Cosmos DB Graph 上執行 OLAP 查詢,請使用 Apache Spark 搭配 圖形數據框架 和 Azure Cosmos DB Spark 連接器。 |
閑置連線逾時 | 1 小時 | Gremlin 服務將保持閑置 Websocket 連線開啟的時間量。 TCP 保持開啟封包或 HTTP 保持開啟要求不會將連線生命週期擴展為超過此限制。 如果沒有任何作用中的 Gremlin 要求正在執行,Azure Cosmos DB Graph 引擎會將 Websocket 連線視為閑置。 |
每小時的資源令牌 | 100 | Gremlin 用戶端用來連線到區域中 Gremlin 帳戶的唯一資源權杖數目。 當應用程式超過每小時的唯一令牌限制時, "Exceeded allowed resource token limit of 100 that can be used concurrently" 將會在下一個驗證要求上傳回。 |