CSV 取り込み
コンマ区切り値(CSV)は、データ交換で一般的に使用されるテキストファイル形式です。CSV ファイルをアップロードして、次のことができます。
-
新しいデータセットを作成する
-
既存のデータセットに新しいレコードを追加する、またはレコードを上書きする
取り込み方法
DataHub は CSV に対して 2 つの取り込み方法をサポートします。
| Ingestion method | Supported file formats | Maximum file size |
|---|---|---|
| DataHub API | 圧縮なし、または単一の CSV ファイルを ZIP または GZ で圧縮したもの | 30MB |
| DoiT console | 圧縮なし | 100MB |
次の点に注意してください。
-
DataHub API が受け付けるファイルは 30MB 以下のみです。CSV が 30MB を超える場合は、ZIP または GZ 形式で圧縮してください。
-
DataHub API は、複数の CSV を含む ZIP または GZ アーカイブは受け付けませ ん。
-
コンソール経由で CSV をアップロードする場合、大きなファイルは処理に時間がかかります。
スキーマテンプレート
スキーマテンプレートは、DataHub が CSV をどのように読み取るかを指示し、ファイルを検証して行をイベントに変換できるようにするものです。
すべてのソースファイルが同じ列構成を使用しているわけではないため、選択するテンプレートはアップロードするファイルと一致している必要があります。たとえば、Anthropic コンソールから支出レポートをダウンロードした場合は Anthropic を選択し、ダウンロードしたままのファイルをアップロードしてください。Codex 使用状況レポートの場合は Codex を選択し、レポートの包括的な日付範囲を指定してください。列名を変更する必要はありません。月・地域・コストといった社内コストのスプレッドシートがある場合は Default を選択し、Example CSV に示されているとおりに列をフォーマットしてください。FOCUS 請求エクスポートをアップロードする場合は FOCUS を選択してください。
データセットの作成時には、必ずテンプレートを選択する必要があります。他のテンプレートを選択しない限り、Default が選択されます。テンプレートは、そのデータセットにアップロー ドされるすべての CSV に適用されます。別のテンプレートを使用するには、新しいデータセットを作成してください。
| Template | Description |
|---|---|
| Default | ディメンション・ラベル・メトリクスを含む DataHub イベント。詳細は Syntax and conventions を参照してください。 |
| FOCUS | FinOps Open Cost and Usage Specification(FOCUS)データ。 |
| Anthropic | Anthropic コンソールから直接アップロードされた Anthropic 支出レポート CSV。詳細は Anthropic spend report を参照してください。 |
| Codex | Codex 使用状況レポート CSV。詳細は Codex usage report を参照してください。 |
構文と規約
以下の構文と規約は、Default スキーマテンプレートでアップロードされる CSV ファイルに適用されます。
-
値はカンマで区切ります。
-
各データレコードは新しい行として追加し、行の区切りには CRLF(Carriage Return and Line Feed)を使用します。
-
1 行目はヘッダー行です。
ヘッダー行の構文: usage_date[,id],DIMENSION_KEY...,METRICS_TYPE...
-
ヘッダー行のフィールド名は正しいフォーマットを使用する必要があります。DataHub はフィールド名を変更しません。
-
usage_date: データレコードのタイムスタンプ(RFC3339)。DataHub Events schema の time プロパティに対応します。- CSV ファイルには、2 年より前のタイムスタンプ(
usage_date)を含むレコードを入れてはいけません。 - タイムスタンプは、RFC 3339/ISO 8601 UTC 形式のサブセットに厳密に従う必要があります:
YYYY-MM-DDTHH:MM:SSZ(大文字のZ)。例:2025-07-23T18:24:34Z。この制約により、タイムゾーンのあいまいさが排除され、検証が簡素化されます。
- CSV ファイルには、2 年より前のタイムスタンプ(
-
id: レコードの一意の識別子。DataHub Events schema の id プロパティに対応します。- 取り込み時に自動生成される UUIDv4 識別子を使用したい場合は、このプロパティを CSV に含めないでください。
- データセット内の既存レコードを上書きするには、CSV に正しい
idを含めてください。
-
DIMENSION_KEY: データセット内のディメンションのキー。少なくとも 1 つのディメンションキーを含める必要があります。- fixed ディメンションについては、Allowed keys for fixed dimensions を参照してください。
- fixed ディメンシ ョンは
fixedをプレフィックスとして付ける必要があります。例:fixed.billing_account_id、fixed.sku_description。 - fixed ディメンションは大文字と小文字を区別しません。
- fixed ディメンションの主なユースケースは、ビジネスデータとクラウド請求データを結合し、ユニットエコノミクス分析を行うことです。
- fixed ディメンシ ョンは
- label ディメンションには
label.CUSTOM_DIMENSION_KEY形式を使用します。例:label.foo。label ディメンションは大文字と小文字を区別します。 - project_label ディメンションには
project_label.DIMENSION_KEY形式を使用します。例:project_label.app。project_label ディメンションは大文字と小文字を区別します。 - system_label ディメンションには
system_label.DIMENSION_KEY形式を使用します。例:system_label.app。system_label ディメンションは大文字と小文字を区別します。
- fixed ディメンションについては、Allowed keys for fixed dimensions を参照してください。
-
METRICS_TYPE: データセット内のメトリクスのタイプ。少なくとも 1 つのメトリクスタイプを含める必要があります。metric.METRICS_TYPE形式を使用します。例:metric.cost、metric.usage、metric.savings、metric.custom_metric。- 基本メトリクス(
metric.cost、metric.usage、metric.savings)は大文字と小文字を区別しませんが、それ以外のメトリクスタイプは大文字と小文字を区別します。
-
ヘッダー行のフィールドは任意の順序で配置できます。取り込まれた CSV をプレビューするとき、この順序は保持されます。
DoiT に送信する前に、個人を特定できる情報(PII)のマスキングなど、データを必ずサニタイズしてください。
Example CSV
以下に簡単な CSV の例を示します。
- CSV from a third-party provider
- CSV ready to be uploaded to DataHub
Month,Territory,Cost
2024-03-01,AMER,$70000
2024-04-01,AMER,$70000
2024-05-01,AMER,$70000
2024-03-01,EMEA,$7500
2024-04-01,EMEA,$7500
2024-05-01,EMEA,$7500
2024-03-01,APAC,$3700
2024-04-01,APAC,$3700
2024-05-01,APAC,$3700
usage_date,label.territory,metric.cost
2024-03-01T00:00:00Z,AMER,70000
2024-04-01T00:00:00Z,AMER,70000
2024-05-01T00:00:00Z,AMER,70000
2024-03-01T00:00:00Z,EMEA,7500
2024-04-01T00:00:00Z,EMEA,7500
2024-05-01T00:00:00Z,EMEA,7500
2024-03-01T00:00:00Z,APAC,3700
2024-04-01T00:00:00Z,APAC,3700
2024-05-01T00:00:00Z,APAC,3700
より多くの列を含むサンプル CSV をダウンロードすることもできます。
Anthropic 支出レポート
データセットで Anthropic スキーマテンプレートを使用している場合、Default CSV 形式に変換せずに、Anthropic コンソールから出力された支出レポート CSV をそのままアップロードできます。DataHub は Anthropic 固有の列を検証し、標準的な DataHub イベントに正規化します。
Anthropic から支出レポートをエクスポートする
Anthropic コンソールから支出データをエクスポートするには、次の手順に従ってください。
-
Settings > Analytics に移動します。
-
How much is Claude costing? セクションまでスクロールします。
-
Export spend report を選択します。
-
MTD、Last Month、Last 90 Days、または Custom から期間を選択します。
Custom を選択した場合は、開始日と終了日を選択してください。最大 90 日前までさかのぼることができ、利用可能な最新データは前日分です。
-
Download を選択します。
DataHub にアップロードする前に、ダウンロードした CSV を開く、編集する、名前を変更する、再保存するなど、いかなる変更も加えないでく ださい。レポート期間を保持するため、元のファイル名を維持してください。
ファイル名は Anthropic の形式 spend-report-<report-id>-YYYY-MM-DD-to-YYYY-MM-DD.csv を使用する必要があります。ファイルサイズは 100 MB を超えてはいけません。
詳細については、Anthropic の利用状況分析ドキュメントを参照してください。
Anthropic CSV の列
Anthropic 支出レポート CSV には、次の列が含まれている必要があります。
| Column | Required |
|---|---|
user_email | Yes |
account_uuid | Yes |
product | Yes |
model | No |
total_requests | Yes |
total_prompt_tokens | Yes |
total_completion_tokens | Yes |
total_net_spend_usd | Yes |
total_gross_spend_usd | Yes |
total_uncached_input_tokens | Yes |
total_cache_read_tokens | Yes |
total_cache_write_5m_tokens | Yes |
total_cache_write_1h_tokens | Yes |
total_web_search_count | Yes |
user_id | No |
slack_channel_id | No |
これらの列は、標準的な Anthropic 支出レポートエクスポートに含まれています。必須列の欠落、列の重複、認識されない列があるファイルは、DataHub によって拒否されます。
期間の重複制約
DataHub は、同じデータセット内でレポート期間が重複することを許可しません。日付範囲が以前にアップロードしたレポートと重複するレポートをアップロードした場合、そのアップロードは拒否されます。重複期間のデータを置き換える、または修正するには、まず既存のバッチを削除してから新しいレポートをアップロードしてください。
Codex 使用状況レポート
データセットで Codex スキーマテンプレートを使用している場合、Default CSV 形式に変換せずに Codex 使用状況レポートをアップロードできます。DataHub は Codex 固有の列を検証し、集計レポートを標準的な DataHub イベントに正規化します。
Codex レポートの準備
-
インポートしたい期間の Codex 使用状況レポートをエクスポートします。
-
エクスポートされた列名は変更しないでください。
-
ファイルをアップロードする際、エクスポートに使用した包括的な開始日と終了日を選択してください。DataHub は、これらの日付をファイル名から推定しません。
DataHub は、集計イベントを選択された終了日に計上し、両方の日付をレポートラベルおよびバッチメタデータとして保持します。ファイルサイズは 100 MB を超えてはいけません。
このレポートには、ユーザー識別子、名前、メールアドレスが含まれます。DoiT にアップロードする前に、自社のデータ取り扱い要件を確認してください。
Codex CSV の列
CSV には、次の大文字と小文字を区別する列が含まれている必要があります。記載されている列はすべて必須です。
| Column |
|---|
Rank |
User ID |
Name |
Email |
Credits |
Estimated costs |
Estimated cost currency |
Tokens |
Lines of code |
必須列の欠落または列の重複があるファイルは、DataHub によって拒否されます。認識されない追加列は無視されます。識別子フィールドは空欄にしてはいけません。数値は負の値であってはいけません。また、推定コスト通貨は USD でなければなりません。Rank・Tokens・Lines of code の値は整数である必要があります。
Codex の正規化
| Source column | DataHub value |
|---|---|
Estimated costs | コストメトリック |
Tokens | tokens の課金単位を持つ使用量メトリック |
Credits | Credits 拡張メトリック |
Lines of code | Lines of Code 拡張メトリック |
User ID | genai/user_id システムラベル |
Name | genai/user_name システムラベル |
Email | genai/user_email システムラベル |
ユーザーの識別情報は Project ID・Project Name・Resource ID などの固定ディメンションには書き込まれません。DataHub はサービス・SKU・プロダクト・モデルファミリーを Codex として識別します。レポートは個々のモデルにアトリビュートされないため、Codex のイベントには genai/model・genai/base_model・genai/model_version ラベルは含まれません。
Codex レポート期間は、Anthropic レポートと同じ重複に関する制限 に従います。既存のアップロー ドと重複する期間を修正するには、置き換えデータをアップロードする前に、以前のバッチを削除してください。
Upload CSV
- DataHub Admin
以下の説明では、コンソールを使用して CSV ファイルをアップロードする方法を説明します。DataHub API を使用して CSV をアップロードする方法については、DataHub API を参照してください。
CSV ファイルを正しくフォーマットしたら、新しいデータセットを作成するとき、またはデータセットを更新するときにアップロードできます。
-
Import data ダイアログで Upload CSV file を選択し、Continue を選択します。

-
Prepare file: データセットのスキーマテンプレートの手順を確認します。Default テンプレートの場合、CSV ファイルが構文と規約 に準拠していることを確認してください。Anthropic テンプレートの場合は、Anthropic から支出レポートをエクスポート の手順に従ってください。Codex テンプレートの場合は、Codex レポートを準備 し、そのレポート期間を入力してください。続行するには Next を選択します。
-
Upload CSV: アップロードする CSV ファイルを選択します。このステップでは CSV の検証も行われます。

-
Preview: このステップでは、希望するディメンションとメトリクスでデータが取り込まれることを確認します。

Confirm upload を選択すると、データの処理が開始されます。データのアップロードが正常に完了した後、コンソールでデータが利用可能になるまで最大 15 分かかる場合があります。