InfluxDB: 快速入門

如何以最佳實踐快速設定及管理 InfluxDB

👋 歡迎瀏覽 Stackhero 文件

Stackhero 提供全託管的 InfluxDB cloud 環境,專為速度與簡易性而設:

  • 無限寫入、查詢、儀表板、任務及 buckets。
  • 無限數據保留:按您需要的時間保存您的指標數據。
  • 無限網絡及磁碟傳輸,絕無隱藏限制。
  • 一鍵更新:隨時享用最新功能及修正。
  • 穩定效能及強大安全性,專屬於您的私人基礎設施。

有了 Stackhero,您可以專注於數據及洞察分析。只需數分鐘即可開始使用 InfluxDB cloud hosting,每個部署都為長期穩定性而優化。

InfluxDB 並不支援直接透過其網頁介面進行用戶管理。您可以利用 InfluxDB CLI 有效地建立及管理用戶。

您可以透過 Docker 存取 InfluxDB CLI。例如,您可以執行以下指令:

docker run -it influxdb:2.8 /bin/bash

請記得將 2.8 替換為您的 InfluxDB 實例所使用的正確版本標籤。

啟動容器後,請建立一個設定。將 <XXXXXX>.stackhero-network.com 替換為您實際的 InfluxDB 網域:

influx config create \
  --config-name adminConfig \
  --active \
  --username-password admin \
  --org admin \
  --host-url https://<XXXXXX>.stackhero-network.com

完成設定後,您就可以使用 InfluxDB CLI 來管理用戶。例如,建立新用戶:

influx user create --name <user> --password <password>

InfluxDB 為大量時序數據而優化。由於它不會自動刪除舊數據,若未妥善管理,資料庫很快會佔滿所有可用儲存空間。Stackhero 支援 InfluxDB 內建功能,協助您有效管理數據,避免此情況發生。

InfluxDB 提供兩個主要解決方案:

  1. 保留政策(Retention policies): 自動刪除超過指定期限(例如 365 天)的數據。這樣可讓儲存空間使用更可預測,亦無需手動清理。
  2. 數據降採樣(Downsampling data): 對近期保留高解析度數據,對較舊時段僅保留彙總數據。例如:
    • 最近 5 分鐘保留 1 秒解析度數據。
    • 最近 24 小時以 1 分鐘間隔儲存最大值、最小值及平均值。
    • 更舊的數據則只保留每小時的彙總。

保留政策讓您可保留所需的歷史資料,同時不會佔用過多磁碟空間。如需進一步了解降採樣,請參閱 官方 InfluxDB 降採樣文件

預設情況下,InfluxDB 會無限期保留數據。對於大多數時序應用,為每個 bucket 設定保留期限,可確保只保留所需數據,並防止儲存空間無限制增長。

設定保留政策的方法:

  1. 開啟 InfluxDB 網頁介面。
  2. 前往「Data」,然後選擇「Buckets」。
  3. 在相關 bucket 旁點選「Settings」。
  4. 於「Delete data older than」下方選擇您想要的保留期限。

超過所選保留期限的數據將會被永久刪除。

InfluxDB 以 shard 形式儲存數據。只包含過期數據的 shard 會自動刪除;若 shard 同時包含過期及現有數據,則會保留至所有數據過期為止。預設情況下,每個 shard 覆蓋 7 天數據。當您設定新的保留政策時,最多可能有接近 7 天的舊數據會保留至下一個 shard 週期。如需詳情,請參閱 InfluxDB shard 文件

您可以在這個 InfluxDB Getting Started repository 找到由 Node.js 傳送數據至 InfluxDB 的實用範例。