全部產品
Search
文件中心

PolarDB:概述

更新時間:Jul 06, 2024

PolarDB MySQL版支援在分區表上建立部分索引(Partial Index),即索引可以只建立在分區表的某一個或多個分區上,而不需要在所有分區上同時建立索引。您可以在各個分區上建立不同的索引,以滿足對不同分區的查詢要求,同時可以節省大量的儲存空間。

適用情境

  • 使用訂單表或日誌表等業務情境

    對於在使用訂單表或日誌表等業務情境下建立的分區表,通常會選擇按照時間進行RANGE分區,但一般只對最新的一到兩個分區進行頻繁的查詢,從需求角度來講,僅在查詢頻繁的分區上建立對應的二級索引即可,但原生的MySQL等資料庫只支援在所有的分區上建立相同的索引,雖然滿足了熱點分區的查詢需求,但浪費了在分區上建立二級索引的空間。

    針對以上情境,您可以在分區表上建立部分索引,即只在熱點分區上建立所需要的二級索引,既滿足熱點分區的查詢需求,同時也節省了本來需要在所有分區上建立二級索引的空間。

  • 對歷史資料進行查詢和分析的情境

    需要對歷史資料進行查詢和分析的情境,通常會選擇按照時間進行RANGE分區。對於新建立的分區,需要快速的插入資料並進行簡單的查詢,而進行資料分析的大查詢幾乎都在歷史分區上,為了滿足對於歷史分區的查詢分析需求,需要建立多個二級索引。但分區上的索引越多,資料寫入速度會越慢。

    針對以上情境,您可以在分區表上建立部分索引,即在熱點分區上建立簡單查詢的二級索引,在歷史分區上建立分析類查詢的二級索引。

    根據不同的業務需求在分區上建立不同的索引,不僅保證了熱點分區的插入效能,同時滿足了在歷史分區上的查詢分析需求。除此之外,最大限度的節省了在所有分區上建立二級索引佔用的空間。

前提條件

叢集版本需為PolarDB MySQL版8.0.2版本且修訂版本為8.0.2.2.21及以上。您可以通過查詢版本號碼來確認叢集版本。

使用限制

  • 不支援在主鍵上建立部分索引。

  • 不支援將全域二級索引(GSI)建立為部分索引,但是,您可以在一個分區表上同時建立全域二級索引和部分索引。

  • 不支援將FULLTEXT類型和SPATIAL類型的索引建立為部分索引。

  • 最佳化器選擇索引時,只選擇需要訪問的分區表上已有的索引。

使用說明

您可以根據實際需要在分區表上建立部分索引,索引建立成功後,您可以修改部分索引

說明

在分區表上建立部分索引的功能處於灰階發布階段,如需使用,請添加DingTalk群進行諮詢。DingTalk群號:24490017825。