コンテンツにスキップ

5.4 データの入力と変更

TAGデータはSQL INSERT、Append API、ファイルロードツールで入力します。SQLの例は機能確認と 少量の入力に使用し、継続的な収集にはAppend APIを優先して検討します。

SQL INSERT

次の例では時間軸と距離軸のTAGをそれぞれ作成し、データを確認して削除します。 実習用の名前が既存テーブルと重複しないことを先に確認します。時間軸の名前はセンサーを、 距離軸の名前は1つの検査対象・検査回を識別します。

CREATE TAG TABLE ch5_input_time (
    name  VARCHAR(32) PRIMARY KEY,
    time  DATETIME BASETIME,
    value DOUBLE
);

INSERT INTO ch5_input_time
VALUES ('TEMP_001', TO_DATE('2026-01-01 10:00:00', 'YYYY-MM-DD HH24:MI:SS'), 25.5);
INSERT INTO ch5_input_time
VALUES ('TEMP_001', TO_DATE('2026-01-01 10:01:00', 'YYYY-MM-DD HH24:MI:SS'), 25.7);

CREATE TAG TABLE ch5_input_distance (
    name     VARCHAR(32) PRIMARY KEY,
    distance DOUBLE BASEDISTANCE,
    value    DOUBLE,
    quality  INTEGER
);

INSERT INTO ch5_input_distance VALUES ('PIPE_A', 0.0, 10.1, 100);
INSERT INTO ch5_input_distance VALUES ('PIPE_A', 500.5, 11.2, 100);

EXEC TABLE_FLUSH(ch5_input_time);
EXEC TABLE_FLUSH(ch5_input_distance);

SELECT name, time, value FROM ch5_input_time ORDER BY time;
SELECT name, distance, value, quality
  FROM ch5_input_distance
 ORDER BY distance;

SELECT COUNT(*) FROM ch5_input_time;
SELECT COUNT(*) FROM ch5_input_distance;

DROP TABLE ch5_input_distance;
DROP TABLE ch5_input_time;

各テーブルはそれぞれ2行を返します。時間軸の値は25.5、25.7、距離軸は0.0、500.5です。 タグを事前登録していないため、最初のDATA入力でその名前が自動登録されます。 実際の発生時刻と再送の有無はアプリケーションで管理します。

TABLE_FLUSHは、保留中のストレージ・入力バッファを明示的にフラッシュする必要がある 検証・運用手順で使用します。トランザクションのコミットや検索時の可視性を保証する手段ではなく、 通常の収集ループで行ごとに実行しないでください。引数とエラー仕様は EXECプロシージャリファレンスを 参照してください。

メタデータとともに入力

ユーザーメタデータのあるTAGでも、DATAだけを入力して新しいタグを自動登録できます。 位置・単位などを先に指定する必要がある場合は、INSERT ... METADATAで登録してからDATAを 入力します。データとメタデータを一緒に渡す構文もサポートされています。 通常のDATA入力のたびに登録済み属性が更新されるとは限りません。システム管理列は入力一覧に 含めないでください。

メタデータ値の登録・更新・削除はTAGメタデータを参照してください。

入力経路の選択

経路適している場合確認事項
SQL INSERT機能確認、低頻度の入力文ごとの解析・往復コスト
SDK Append継続的な高スループット入力バッチサイズ、フラッシュ、エラー処理
csvimport / machloaderクライアントファイルの一括ロード列順序、日付形式、badファイル
LOAD DATA INFILEサーバーからアクセスできるファイルサーバー上のパス・権限、エラーポリシー

SDKごとの接続とAppendの例は開発ツール連携、 ファイル形式とコマンドは データの入力・ロード・エクスポートを 参照してください。

データの訂正

TAG data UPDATEはStandard Editionで、タグの選択条件とBASETIMEの範囲をともに指定して 実行します。タグ名、軸、メタデータ列は通常のdata UPDATEの対象にしません。 訂正後も計算済みのROLLUPは自動変更されないため、ROLLUPがある場合は対象範囲を明示的に 再構築します。手順はROLLUP_REBUILDを参照してください。

成功応答・失敗行数と再試行ポリシーは、選択した入力APIで確認します。SQLのNULL、SDKのNULL表現、 数値の0を区別し、同じ観測を再送する場合の重複ポリシーも定めます。 数値ARRAY・スパース入力にはARRAY Appendの例を 使用します。

詳しい手順はTAGデータの訂正を参照してください。

最終更新日