1 Oracle AI Database Telemetry Streamingの概要

Oracle AI Database Telemetry Streaming (以下、Telemetry Streamingと呼びます)は、メトリック・ストリーミングのためにOracle AI Databaseに構築された時系列データベースです。Telemetry Streamingは、時系列データの格納、取得および管理専用に設計されています。Oracle AI DatabaseでTelemetry Streamingを使用して、時系列データベース・アプリケーションを構築できます。

これらのトピックでは、Telemetry Streamingの開始に必要な概念について説明します。

1.1 概念

Telemetry Streamingで使用されるいくつかの基本概念を次に示します。

メトリック

メトリックとは、特定の期間に値を追跡する変数の名前です。メトリック名は、タグ付けしているメトリックを一意に識別するのに役立つラベルです。CPU_USAGEは、メトリック名の例です。その他の例としては、OFFICE_TEMP、STOCK_PRICE、NETWORK_USAGEなどがあります。メトリックには、タグなどの追加のメタデータが含まれている場合もあります。メトリック内の各データ・ポイントにはタイムスタンプがあります。

メトリック・タグ

メトリック・タグを使用すると、同じメトリック名の異なるインスタンスを取得できます。たとえば、CPU_USAGE{device_owner : "JACK"}は1つの時系列で、CPU_USAGE{device_owner : "BENJAMIN"}は別の時系列です。

メトリック・サンプル

メトリック・サンプルは、特定の時点におけるメトリックの値のレコードです。メトリック・サンプルは、測定された時間と記録された値を示します。たとえば、2025-05-21 10:00:00に、オフィスの温度の値が21.5であるとメトリック・サンプルで記録されることがあります。メトリック・サンプルは、メトリック名とタグのタプルとして表すことができます。

次のJSON形式の例は、特定の時点でのCPU使用率値の単一の測定を示しています:

{ 
  "metric": "cpu_usage",
  "timestamp": "2025-05-21T10:00:00",
  "value": 45.3,
  "tags": {
   "host": "server-01",
   "device_owner: "Jack"
  }
}

時系列

時系列とは、特定のメトリックのメトリック・サンプルのコレクションであり、時系列順に配置されます。時系列内の各データ入力には、タイムスタンプがあり、時間と値のペアで表されます。時系列データから導出されたメトリックは、時間とともに変数値がどのように変化するかを分析するのに役立ちます。これらのサンプルは、トレンドの観察、異常の検出および分析の実行のために一定期間収集されます。時系列データには、サーバーのメトリック、アプリケーション・パフォーマンスのモニタリング・データ、ネットワークのデータ、センサーのデータ、イベント、クリック、市場での取引、その他の多くのタイプの分析データが含まれます。たとえば、オフィスの室温メトリックでは、室温を1分に1回測定して、連続する1分ごとの関連する値を摂氏単位で表示できます(時間T1の25、時間T2の26、時間T3の24など)。

{
  "metric": "room_temperature",
  "tags": {
    "unit": "Celsius",
    "building": "XYZ",
    "room": "LivingRoom",
    "sensor_id": "sensor-001",
    "floor": "1"
  },
  "samples": [
    {
      "timestamp": "2025-07-01T10:00:00Z",
      "value": 25
    },
    {
      "timestamp": "2025-07-01T10:01:00Z",
      "value": 26
    },
    {
      "timestamp": "2025-07-01T10:02:00Z",
      "value": 26.5
    }
  ]
}

次の例は、1時間にわたって記録されたCPU使用率値のJSON形式で表された時系列の抜粋を示しています:

{
  "metric": "cpu_usage",
  "tags": {
   "host": "server-01",
   "device_owner: "Jack"
  },
  "samples": [
    { 
    "timestamp": "2025-05-21T10:00:00Z", 
    "value": 45.3 
    },
    { 
    "timestamp": "2025-05-21T10:01:00Z", 
    "value": 46.1 
    },
    { 
    "timestamp": "2025-05-21T10:02:00Z", 
    "value": 44.8 
    }
  ]
}

時系列データベース

時系列データベース(TSDB)は、時系列データの格納、取得および管理専用に設計されたデータベースです。このため、TSDBは時系列データの処理で汎用データベースよりも効率的です。TSDBには、他のデータベースとは大きく異なるアーキテクチャ設計プロパティがあります。これには、タイムスタンプ・データの格納と圧縮、データ・ライフサイクル管理、データ・サマリー、多数のレコードの大規模な時系列に依存するスキャンを処理する機能、および時系列を認識した問合せが含まれます。TSDBは、大量の順次書込み用に最適化されているため、ボトルネックなしで高スループットのストリームを簡単に取り込むことができます。

各TSDBには、次のコンポーネントがあります:

  • 時系列データをTSDBにストリーミングするための取込みクライアント

  • 時系列データの格納および問合せ用のデータベース・エンジン

  • 時系列データをビジュアル化および分析するために、TSDBの外部にあるビジュアライゼーション・アプリケーションで使用される問合せコンポーネント

  • データ・ライフサイクル管理

メトリックの取込みと問合せ

時系列データを処理するための2つのコア操作は、取込みと問合せです。取込みとは、メトリック・データを収集して時系列データベースに格納することを意味します。これには、データベースへのメトリック・サンプルの書込みが含まれます。これらのデータは、IoTデバイスのセンサー、アプリケーション・ログまたはサードパーティ・エージェントで発生する場合があります。

問合せとは、ビジュアライゼーション、アラートまたは分析を目的として、時系列データベースから格納されたメトリック・データを取得して分析することを意味します。SQLやPromQL (Prometheusの問合せ言語)などの問合せ言語を使用して、データを問い合せることができます。

エポック時間

エポック時間は、1970年1月1日のUTC 00:00:00以降に経過した秒数を計算することによって、時間を単一の数値として表す方法です。

ワークスペース

ワークスペースは、Telemetry Streamingで使用されるOracle固有の概念です。

Telemetry Streamingのコンテキストでは、ワークスペースはデータを格納するためのネームスペースです。各ワークスペースでは、管理性の観点からメトリック・データを分離できるため、各ワークスペースでデータを取り込むユーザーとデータを問い合せるユーザーを管理できます。たとえば、データ・センター1から受信したメトリックを1つのワークスペースに格納し、データ・センター2から受信したメトリックを別のワークスペースに格納できます。データ・センター1を特定のユーザーのみに制限し、データ・センター2を他のユーザーに制限できます。このようにして、ワークスペースでは、ユーザー権限とともにデータを分離できます。異なるワークスペースを作成し、各ワークスペースの権限を特定のユーザーに付与できます。

ユーザー

ワークスペースのコンテキストでのユーザーは、次のいずれかです:

  • ワークスペースの管理者

  • メトリック・データをワークスペースに取り込むことができる取込みユーザー

  • ワークスペースからメトリック・データを問い合せることができる問合せユーザー

関連項目:

ワークスペースおよびワークスペース・ユーザーの詳細は、「ワークスペースの管理」を参照してください。

1.2 Telemetry Streamingの概要

Telemetry Streamingは、時系列データを収集、保存および処理するためにOracle AI Databaseに構築された時系列データベース(TSDB)です。Telemetry Streamingは、Oracle AI Databaseを使用してメトリック・ストリーミングを行うための包括的なターンキー・ソリューションを提供します。

メトリック・ストリーミングは、DevOpsモニタリング、アセット追跡、異常検出など、最新のエンタープライズ・ユース・ケースに不可欠です。Oracle AI Databaseは、メトリック・ストリーミング・ソリューションを構築するための最適な機能を提供しますが、これらのコンポーネントの組立ては複雑で時間がかかる場合があります。Telemetry Streamingは、Oracleの強力なテクノロジを合理化されたすぐに使用できるソリューションにパッケージ化することで、このプロセスを簡素化し、メトリック・ストリーミング・アプリケーションの迅速な導入、管理の容易化、運用オーバーヘッドの削減を実現します。

Oracle AI Databaseを有効にすると、Telemetry Streaming PL/SQLパッケージのみがインストールされた基本設定でTelemetry Streamingを実行できます。次の機能を備えたTelemetry Streamingの完全実装のオプションもあります:

  • RESTおよびPL/SQLを使用した超高速メトリック取込みをサポートします

  • ユーザーは、SQL、PL/SQLまたはPromQL (Prometheusの問合せ言語)を使用して、監視およびアラートの目的でメトリック・データを問い合せることができます。

  • 古いメトリック・データの圧縮とダウンサンプル、データの保持、経時的なストレージとパフォーマンスの最適化など、データ・ライフサイクル管理を自動化します

1.3 Telemetry Streamingの時系列

Telemetry Streamingでは、時系列は次の形式で表されます。

  • 一般的な時系列では、メトリック名(CPU_SECONDSなど)と一連のタグの組合せが識別されます。タグは、JSON形式で指定されたキーと値のペアです。たとえば: {"server":"localhost", "ID":1, "make":"Intel"}です。この組合せによって、時系列が一意に識別されます。

  • 各時系列には、指定された時間における時系列の値を示すタプル<value, time>の配列が関連付けられます。

  • 値は浮動小数点数または整数です。時間は、エポックからの時間(1-Jan-1971 00:00 UTC)を秒単位で指定する浮動小数点数です。1秒未満には小数秒を使用できます。

  • 値および時間は、システムへの入力後は不変です。これらは、データ保存時間が経過した後にのみ削除できますが、更新できません。

1.4 データ形式および命名規則

メトリック・データ形式

Telemetry Streamingでは、各メトリック・データ・サンプルが次の一連の情報に正規化されます。

表1-1 Telemetry Streamingのメトリック・データ形式

名前 データ型 説明

METRIC_NAME

VARCHAR2(512)

時系列のメトリック名部分。

METRIC_TAGS

VARCHAR2(4000)

時系列のタグ部分(JSON形式)。

METRIC_VALUE

NUMBER

時系列のポイント・イン・タイム(PIT)値。

METRIC_TIME_EPOCH

NUMBER

エポックからの時間(秒)。

命名規則

PromQL問合せは、PromQLのルールに準拠している必要があります。

表1-2 PromQL問合せの命名規則

名前 書式

メトリック名

メトリック名には、ASCII文字、数字およびアンダースコアを含めることができます。正規表現(regex) ([a-zA-Z_][a-zA-Z0-9_]*)と一致する必要があります。

タグ/ラベル・キー

タグ・キーまたはラベル・キーは、ASCII文字、数字およびアンダースコアで構成でき、[a-zA-Z_][a-zA-Z0-9_]*というパターンと一致する必要があります。

タグ/ラベル値

タグ値またはラベル値は、一重引用符または二重引用符で囲んで、任意の文字を含めることができます。ラベル値と一致する正規表現パターンは、'.*'です。

関連項目:

PromQLの基本については、Prometheusの問合せを参照してください