全部產品
Search
文件中心

Lindorm:資料庫管理

更新時間:Jul 06, 2024

本文介紹Lindorm時序引擎中的Database概念以及相關的功能。

Database的概念

每個正在啟動並執行Lindorm時序引擎執行個體都管理著一個或多個資料庫(簡稱Database)。在各個Database之間,資料會被隔離。每個Database都有若干時序資料表,結合名詞解釋的描述,我們可以對時序引擎的資料層級歸納為下圖所示:

如果一個Lindorm時序引擎執行個體計劃包含不相關的專案資料,在很大程度上,彼此之間是隔離的。那麼在這種情況下,建議將它們放到單獨的資料庫中,並且調整相應的授權和存取控制使用者。此外,時序引擎允許使用者跨Database訪問資料,前提是該使用者必須擁有對目標Database的相應操作的許可權。

以Database為粒度的時序資料管理功能

Database是時序表的集合,使用者可以根據業務需求將擁有相同業務背景的時序表儲存在一起,從而實現資料隔離。另一方面,Lindorm時序引擎的一系列功能也都是以Database為粒度提供給使用者使用的。包括以下功能:

  • 使用者能夠以Database為單位設定資料的冷熱分界線。

    說明

    關於資料冷熱分層的概念,可以參見時序資料的冷溫熱資料分層

  • 使用者能夠以Database為單位設定資料的存活時間(Time To Live,簡稱TTL)。

    當TTL被設定後,時序資料的時間戳記距當前的時間差超過了TTL的時間,則這些資料將被視作到期資料,會被時序引擎清除掉。

重要

  1. 時序領域的資料的時間戳記一般分成兩種概念:

    • 事件時間:即時序資料對應的事件真實發生時的時間。時序資料元素說明中提及的時序資料模型的時間戳記即是事件時間。

    • 入庫時間:即時序資料寫入資料庫的時間。

    上述冷熱分界線和TTL的能力都是基於事件時間進行工作。目前不支援基於入庫時間設定冷熱分界線或TTL。

  2. 無論是冷資料歸檔還是資料到期清理工作,都是通過時序引擎的非同步compaction任務執行的,因此,冷資料歸檔和TTL資料清理可能存在滯後的情況。

  3. 對Database既設定了冷熱分界線,又設定了TTL的情況下,已歸檔的冷資料的時間戳記如果超過了TTL定義的存活時間,資料也會觸發清理。

  4. 對於Database設定了TTL的情況下,如果寫入資料的時間戳記已經超過了TTL的範圍。那麼寫入仍然是可以成功的,但是查詢時是查不到這樣的資料的。

Database管理

時序引擎支援使用者通過SQL對Database進行以下管理操作:

  • Database的建立

    在時序引擎中建立一個新的Database。SQL文法請參見CREATE DATABASE

    說明

    建立的Database需要單獨為指定的使用者賦權,使用者並不會預設具有存取權限。

  • Database的刪除

    在時序引擎中刪除一個已有的Database。SQL文法請參見DROP DATABASE

  • Database的屬性修改

    在時序引擎中對一個已有Database的屬性進行修改。包括冷熱分界線,資料存活期間等。SQL文法請參見ALTER DATABASE

  • Database的屬性查詢

    在時序引擎中查看一個已有Database的屬性中繼資料。SQL文法請參見DESCRIBE DATABASE

在管理主控台上管理Database

在Lindorm執行個體的管理主控台上也可以對時序引擎的Database進行管理。可以直接在管理主控台的資料庫管理介面上設定Database的冷熱分界線以及資料保留原則。操作介面如下圖所示:

image

重要

目前在管理主控台上並不支援Database的建立和刪除。若需要建立或刪除Database,還需使用SQL來操作。