範圍 (資料分區)
適用於: ✅Microsoft網狀架構✅Azure 數據總管
數據表會分割成 範圍或 數據分區。 每個範圍都是數據表的水準區段,其中包含數據與元數據,例如其建立時間和選擇性標記。 所有這些範圍的聯集都包含數據表的整個數據集。 範圍會平均分散在叢集中的節點,而且會在本機 SSD 和記憶體中快取,以獲得最佳效能。
範圍是不可變的,這表示可以查詢、重新指派至不同的節點,或從數據表卸除,但從未修改過。 數據修改會藉由建立新的範圍,並以交易方式交換舊範圍與新的範圍來進行。 範圍不變性提供優點,例如增強強固性和容易重新復原到先前的快照集。
範圍會保存數據行中實際排列的記錄集合,以有效編碼和壓縮數據。 為了維持查詢效率,較小的範圍會根據設定 的合併原則 和 分區化原則合併成較大的範圍。 合併範圍可減少管理額外負荷,並導致索引優化和改善的壓縮。
常見的範圍生命週期如下所示:
- 範圍是由擷取作業所建立。
- 範圍會與其他範圍合併。
- 合併的範圍(可能是追蹤其譜系至其他範圍的範圍)最終會因為 保留原則而卸除。
範圍建立時間
每個範圍會追蹤兩個 日期時間 值: MinCreatedOn
和 MaxCreatedOn
。 這些值一開始相同,但在範圍與其他範圍合併時可能會變更。 當範圍與其他範圍合併時,新值會根據合併範圍的原始最小值和最大值。
範圍建立時間用於下列用途:
若要覆寫範圍建立時間,請在數據擷取屬性中提供替代creationTime
專案。 這對於保留用途很有用,例如,如果您想要重新擷取數據,但不想讓它顯示為遲到。
注意
根據時間移除範圍的計算會使用合併範圍內最新範圍的建立時間。