ブロックリファレンス

BLOCKS Reference

Google Cloud

GCSからファイルリスト取得

概要

このブロックは、Google Cloud Storage(GCS)上の特定バケット内のファイル一覧(ファイルリスト)を取得して変数に格納します。

GCSからファイルリスト取得ブロックの概念図

ファイルリストは、以下のような配列データで格納されます。

[
  "gs://my-bucket/foo.jpg",
  "gs://my-bucket/bar/baz.jpg",
  "gs://my-bucket/xxx/yyy/zzz.jpg"
]

このブロックの出力結果(変数)は、「モデルジェネレーター予測(オンライン)」ブロックを使った画像分類の予測因子データとして使えます(下図参照)。

利用例

プロパティ

プロパティ名 説明
ブロック名

編集パネルに配置した当該ブロックの表示名が変更できます。

ブロックリストパネル中のブロック名は変更されません。

GCPサービスアカウント このブロックで使用するGCPサービスアカウントを選択します。
ファイルGCS URL

GCS上のファイル一覧を取得するためのパターンを指定します。ファイル一覧には、このパターンにマッチしたファイルのみが含まれます。パターンのマッチングは、階層構造化されたフォルダー内の全てのファイルに対して行います。

パターンの指定形式は、以下のとおりです。

gs://バケット/ファイルパターン
  • GCS URLの形式で指定します。
  • バケットは必須です。
  • ファイルパターンの指定には、任意の文字列にマッチする記号*を使用します。

以下に、ファイルパターンの例をいくつか示します。

説明
gs://my-bucket/* バケットmy-bucket内の全てのファイルにマッチします。
gs://my-bucket/*.jpg バケットmy-bucket内の拡張子が.jpgである全てのファイルにマッチします。
gs://my-bucket/*training* バケットmy-bucket内のファイル名もしくはフォルダ名に、trainingという文字列を含むすべてのファイルにマッチします。
変数展開の指定が可能][%形式の文字列書式の指定が可能]
結果を格納する変数

ファイルリストを格納する変数を指定します。ファイルリストは、以下のような配列データで格納されます。

[
  "gs://my-bucket/foo.jpg",
  "gs://my-bucket/bar/baz.jpg",
  "gs://my-bucket/xxx/yyy/zzz.jpg"
]
ブロックメモ このブロックに関するメモが記載できます。このブロックの処理に影響しません。

使用例

ここでは、「GCSからファイルリスト取得」ブロックで得たファイルリストを元に、「GCSマルチファイルコピー」ブロックを使ってデータをコピー(バックアップ)する例を紹介します。

作成するフローの流れは以下のとおりです。

  1. GCSからファイルリスト取得」ブロックで、GCSの「***-us-central1-data/example/」フォルダーにあるすべてのファイルを取得
  2. GCSマルチファイルコピー」ブロックで、取得したファイルをすべて、GCSの「***-us-central1-data/backup/」フォルダーにコピー

まず、「GCSからファイルリスト取得」ブロックの設定は、以下のようになります。

設定するプロパティと指定値は、以下のとおりです。

プロパティ 設定値
ファイルGCS URL ***-us-central1-data/example/*
実際に試す場合は、***-us-central1-data/example/の部分は、適当なバケット名およびフォルダー名に読み替えてください。
結果を格納する変数 file_list

次に、「GCSマルチファイルコピー」ブロックの設定は、以下のようになります。

設定するプロパティと指定値は、以下のとおりです。

プロパティ 設定値
コピー元ファイルのGCS URL群を持つ変数 file_list
コピー先ファイルのGCS URL ***-us-central1-data/backup/*
実際に試す場合は、***-us-central1-data/backup/の部分は、適当なバケット名およびフォルダー名に読み替えてください。

この2つのブロックをつなげるとフローの完成です。

この情報は役に立ちましたか?