<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                [TOC] # 分布式執行和并行查詢 ## 分布式執行 對于 Shared-Nothing 的分布式系統,由于一個關系數據表的數據會以分區的方式存放在系統里面的各個節點上,所以對于跨分區的數據查詢請求,必然會要求執行計劃能夠對多個節點的數據進行操作,因而 OceanBase 數據庫具有分布式執行計劃生成和執行能力。 對于分布式執行計劃,分區可以提高查詢性能。如果數據庫關系表比較小,則不必要進行分區,如果關系表比較大,則需要根據上層業務需求謹慎選擇分區鍵,以保證大多數查詢能夠使用分區鍵進行分區裁剪,從而減少數據訪問量。 同時,對于有關聯性的表,建議使用關聯鍵作為分區鍵,并采用相同分區方式,使用 Table Group 將相同的分區配置在同樣的節點上,以減少跨節點的數據交互。 OceanBase 數據庫的優化器會自動根據查詢和數據的物理分布生成分布式執行計劃。 ## 并行查詢 并行查詢是指通過對查詢計劃的改造,提升對每一個查詢計劃的 CPU 和 IO 處理能力,從而縮短單個查詢的響應時間。并行查詢技術可以用于分布式執行計劃,也可以用于本地查詢計劃。 當單個查詢的訪問數據不在同一個節點上時,需要通過數據重分布的方式,將相關的數據分布到相同的節點進行計算。以每一次的數據重分布節點為上下界,OceanBase 數據庫的執行計劃在垂直方向上被劃分為多個 DFO(Data Flow Object),而每一個 DFO 可以被切分為指定并行度的任務,通過并發執行以提高執行效率。 一般來說,當并行度提高時,查詢的響應時間會縮短,更多的 CPU、IO 和內存資源會被用于執行查詢命令。對于支持大數據量查詢處理的 DSS(Decision Support Systems)系統或者數據倉庫型應用來說,查詢時間的提升尤為明顯。 整體來說,并行查詢的總體思路和分布式執行計劃有相似之處,即將執行計劃分解之后,將執行計劃的每個部分由多個執行線程執行,通過一定的調度的方式,實現執行計劃的 DFO 之間的并發執行和 DFO 內部的并發執行。并行查詢特別適用于在線交易(OLTP)場景的批量更新操作、創建索引和維護索引等操作。 當系統滿足以下條件時,并行查詢可以有效提升系統處理性能: * 充足的 IO 帶寬 * 系統 CPU 負載較低 * 充足的內存資源 如果系統沒有充足的資源進行額外的并行處理,使用并行查詢或者提高并行度并不能提高執行性能。相反,在系統過載的情況下,操作系統會被迫進行更多的調度,例如,執行上下文切換或者頁面交換,可能會導致性能的下降。 通常在 DSS 系統中,需要訪問大量分區和數據倉庫環境,這時并行執行能夠提升執行響應時間。對于簡單的 DML 操作或者分區內查詢以及涉及分區數比較小的查詢來說,使用并行查詢并不能很明顯的降低查詢響應時間。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看