増分データ読み込み
増分データ読み込みとは
増分データ読み込み(差分読み込みとも呼ばれます)を使用すると、元のデータを置き換えずに、既存のデータテーブルへ新しい行を追加できます。イベントログのデータが時間とともに増加し、データセット全体を再アップロードせずにプロセスマイニングの分析を最新の状態に保ちたい場合に便利です。
一般的なシナリオは次のとおりです。
- 毎日または毎週のデータエクスポート:利用可能になった取引、注文、ケースを追加します。
- 継続的なプロセス監視:新しいデータを定期的に追加し、ダッシュボードを最新の状態に保ちます。
- 増加するイベントログ:ERPシステム、CRMツール、その他のソースから新しいイベントを段階的に追加します。
info
差分ファイルには、元のアップロードと同じ列構造(列名と順序)が必要です。差分ファイル内の追加列は無視されます。列が不足している場合、その列の値はnullになります。
要件
- データが読み込まれた初回アップロードが、データテーブルにすでに存在している必要があります。
- 差分ファイルは、元のアップロードと同じ形式である必要があります。
- CSVファイルにはCSVの差分ファイルが必要です
- ParquetファイルにはParquetの差分ファイルが必要です
- ORCファイルにはORCの差分ファイルが必要です
- JSONLファイルにはJSONLの差分ファイルが必要です
- Excel(XLSX/XLS/XLSB)およびXESファイルは差分アップロードに対応していません。先にCSVへ変換してください。
- 差分ファイルの列名は、元のアップロードと一致している必要があります。
- 差分ファイルはgzip圧縮できます(
.gz)。ただし、圧縮ファイル内の形式は元のアップロード形式と一致している必要があります。
info
対応しているすべてのファイル形式については、対応データ形式のページをご覧ください。
増分データのアップロード
API経由
ProcessMind APIを使用すると、差分ファイルをプログラムからアップロードできます。エンドポイントの詳細については、APIリファレンス:データのページをご覧ください。
ワークフローは次のとおりです。
-
差分用の署名付きアップロードURLを取得します:
GET /v1/tenant/{tenantId}/datatables/{dataTableId}/uploads/presignedurl ?delta=true&filename=delta.csv&filesize=1024&filelastmodified=1704067200000 -
署名付きURLを使用して差分ファイルをアップロードします:
curl -X PUT --upload-file "delta.csv" \ -H "Content-Type: text/csv" \ "{PreSignedUploadUrl}"
アップロードが完了すると、ProcessMindは差分を自動的に処理し、元のデータと結合します。処理が完了したかどうかを確認するには、GET /datatables/{dataTableId}をポーリングし、hasDataLoadedがtrueになるまで待ちます。
UI経由
ProcessMindアプリケーションのデータセットにある全般タブからも、増分データの読み込みを開始できます。
- 追加スイッチを切り替え、アップロード領域をデータを置換からデータを追加へ変更します。
- 新しいファイルをデータを追加領域へドラッグ&ドロップします(またはクリックして参照し、ファイルを選択します)。
ProcessMindはファイルを差分としてアップロードし、既存のデータと一緒に処理します。差分アップロードは明示的に指定する必要があります。通常のアップロード(置換)から差分であることが自動的に検出されることはありません。
アップロードパーツの表示
1回以上の増分アップロードを行うと、データテーブルのアップロード履歴に、各ファイルを記録するuploadParts配列が含まれます。
{
"uploadHistory": {
"uploadParts": [
{
"key": "datatable/123/2.csv",
"fileName": "orders-january.csv",
"fileSize": 524288,
"uploadedAt": "2024-01-15T10:00:00Z"
},
{
"key": "datatable/123/3.csv",
"fileName": "orders-february.csv",
"fileSize": 419430,
"uploadedAt": "2024-02-15T10:00:00Z"
}
]
}
} 推奨事項
- 一貫した列名を使用:データの対応関係に問題が生じないよう、すべてのファイルで同じ列名を使用します。
- 可能な場合は時系列順にアップロード:アップロード履歴にデータの時系列が反映されます。
- 差分ファイルを適切なサイズに保つ:適度な単位でデータをアップロードします。非常に小さいファイルを大量にアップロードすると、処理が遅くなる場合があります。
- 行数を監視:各差分の後に、データが正しく読み込まれたことを確認します。
warning
増分アップロードではデータが追加されます。既存の行が更新または置換されることはありません。以前のアップロードのデータを修正する必要がある場合は、データセット全体を再アップロードしてください。
スキーマが一致しない場合の動作
ProcessMindでは、アップロードパーツ間で厳密なスキーマを適用しません。つまり、次のように処理されます。
- 余分な列:差分ファイルにある列のうち、元のアップロードのスキーマに存在する列だけが処理に使用されます。その他の列は無視されます。
- 不足している列:差分の行では、該当するフィールドにnullまたは空の値が設定されます。
- 異なる列名:完全に別の列として扱われるため、差分の行では想定される列にnull値が設定されます。
最適な結果を得るには、すべての差分ファイルが元のアップロードと同じ列構造になるようにしてください。
info
CSVおよびJSONL形式では、すべての値が内部的に文字列として読み込まれるため、型の不一致エラーは発生しません。ParquetおよびORC形式では、列のデータ型がファイルのスキーマから保持されます。いずれの場合も、数値データを想定している列に互換性のない値をアップロードすると、後続の分析やシミュレーションで予期しない結果が生じる可能性があります。