Box
Boxから変数へロード
概要
このブロックは、Box上のファイルを読み取り、その内容を変数に格納します。
このブロックは、フローデザイナーのメモリの使用量の制限により、大規模なファイルの扱いは困難です。Box上の大規模なファイルを扱う場合は、「BoxからGCSへファイルをコピー」ブロックの利用をおすすめします。
Box上のファイルは、そのまま読み込むこともできますが、[ファイル形式]プロパティを適切に設定することで、他ブロックの利用に即した形式へ変換して読み込むこともできます。
| ファイル形式 | 説明 |
|---|---|
| (none) | ファイル内容をそのまま変数に格納します。 |
| バイナリ(Base64) |
ファイル内容をBase64でエンコードして、変数に格納します。 |
| JSON | ファイル内容をJSON形式で解析し、オブジェクトに変換して、変数に格納します。 |
| CSV |
ファイル内容をCSV形式で解析し、オブジェクトに変換して、変数に格納します。CSVファイルの各フィールドは、オブジェクト変換時にすべて文字列として扱われます。 CSVの形式は、以下のようなフィールド名を持つヘッダー行があることを前提としています。フィールド名を持つヘッダー行とは、他の行と同じ個数のフィールドを持ち、フィールドの名称が列挙されている行のことです。 field_name_1,field_name_2,field_name_3 aaa,bbb,ccc xxx,yyy,zzz この形式のCSVを読み込むと、以下のようなオブジェクトが変数に格納されます。
[
{
"field_name_1": "aaa",
"field_name_2": "bbb",
"field_name_3": "ccc"
},
{
"field_name_1": "xxx",
"field_name_2": "yyy",
"field_name_3": "zzz"
}
]
|
プロパティ
| プロパティ名 | 説明 |
|---|---|
| ブロック名 |
編集パネルに配置した当該ブロックの表示名が変更できます。 ブロックリストパネル中のブロック名は変更されません。 |
| Boxサービスアカウント |
Boxアカウントを選択します。 Boxサービスアカウントは、あらかじめフローデザイナーの設定のBoxサービスアカウントで設定を済ませておく必要があります。 |
| ユーザーID |
BoxサービスアカウントのユーザーIDを指定します。 ユーザーIDは、以下の手順で取得できます。
Boxサービスアカウント(Boxアプリ)のアプリケーションアクセスがアプリケーションの場合は、何も入力しないでください。 |
| 読み込みファイルパス |
読み込みたいファイルのBox上の位置を以下の形式で指定します。
先頭の
フォルダーが入れ子になっている場合は、 |
| ファイルデータを格納する変数 | 読み込んだファイルの内容を格納する変数を指定します。 |
| ファイル形式 |
読み込むファイルの形式を[(none) /バイナリ(Base64) / JSON / CSV]から選択します。 |
| ブロックメモ | このブロックに関するメモが記載できます。このブロックの処理に影響しません。 |
| CSVの区切り文字 |
[ファイル形式]プロパティが[CSV]の場合、CSVファイルの区切り文字を[カンマ(,) /タブ/パイプ(|) /その他]から選択します。 [その他]を選択した場合は、[その他]の横の入力フィールドに、区切り文字を指定してください。 |
| 読み飛ばし行数 | [ファイル形式]プロパティが[CSV]の場合、先頭から何行を読み飛ばすかの行数を指定します。 |
| クオート記号を指定 | [ファイル形式]プロパティが[CSV]の場合、フィールドを囲むためのクオート記号を指定します。 |
使用例
ここでは、Box上のCSVファイルをBigQueryテーブルに登録する例を紹介します。
おおまかな流れは以下のとおりです。
- 「Boxから変数へロード」ブロックで、Box上のCSVファイルの内容を変数に格納
- 「変数からテーブルへロード」ブロックで、変数の内容をBigQueryテーブルへ格納
Box上のCSVファイルとBigQueryテーブルの情報は、以下のとおりです。
| 項目 | 内容 | ||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Boxファイル名 | sales_data.csv | ||||||||||||||
| ファイル内容 |
Date,Time,Product_Name,Price,Quantity,Total 2023-01-01,AM,コーヒー,150,2,300 2023-01-01,AM,おにぎり,120,3,360 2023-01-01,PM,スナック,100,1,100 2023-01-02,AM,ジュース,120,1,120 2023-01-02,PM,サンドイッチ,300,2,600 2023-01-03,AM,弁当,450,1,450 2023-01-03,PM,アイスクリーム,200,2,400 2023-01-04,AM,お茶,100,3,300 2023-01-04,PM,チョコレート,80,2,160 2023-01-05,AM,おにぎり,120,2,240 2023-01-05,PM,ケーキ,500,1,500 2023-01-06,AM,コーヒー,150,2,300 2023-01-06,AM,おにぎり,120,3,360 2023-01-06,PM,スナック,100,1,100 2023-01-07,AM,ジュース,120,1,120 2023-01-07,PM,サンドイッチ,300,2,600 2023-01-08,AM,弁当,450,1,450 2023-01-08,PM,アイスクリーム,200,2,400 2023-01-09,AM,お茶,100,3,300 2023-01-09,PM,チョコレート,80,2,160 2023-01-10,AM,おにぎり,120,2,240 2023-01-10,PM,ケーキ,500,1,500 |
||||||||||||||
| BigQuerデータセット | example |
||||||||||||||
| BigQueryテーブル | sales_table |
||||||||||||||
| スキーマ |
|
「Boxから変数へロード」ブロックで、Box上のCSVファイルの内容を変数に格納するには、以下のように定義します。
設定するプロパティと指定値は以下のとおりです。
| プロパティ | 指定値 |
|---|---|
| Boxサービスアカウント | ご自身のBoxサービスアカウント |
| ユーザーID | ご自身のBoxユーザーID |
| 読み込みファイルパス | /sales_data.csv |
| ファイルデータを格納する変数 | _ |
| ファイル形式 | CSV |
「変数からテーブルへロード」ブロックで、変数の内容をBigQueryテーブルへ格納するには、以下のように定義します。
設定するプロパティと指定値は以下のとおりです。
| プロパティ | 指定値 |
|---|---|
| 投入データの変数 | _ |
| 投入先のデータセット | example |
| 投入先のテーブル | sales_table |
| スキーマ設定 | 上図のとおり |
この2つのブロックを組み合わせてフローの完成です。