CSA Data UploaderがAmazon S3に加えてGoogle Cloud Storageへのファイルアップロードに対応しました! #CSアナリティクス #データ統合基盤

2020.10.02

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

データアナリティクス事業本部のしんやです。

弊社クラスメソッドでは、複数のデータウェアハウス(Amazon Redshift、Google BigQuery、Snowflake)に対応するデータ統合基盤サービス「CSアナリティクス」を提供・展開しています。

このサービスでは現在、データ統合基盤としてデータの取り込みからテーブル作成やジョブ管理等を行うプロダクトの他に、オンプレ環境からクラウド環境へのデータアップロードをサポートする「CSA Data Uploader」というプロダクトを提供しています。

この度、今月(2020年09月)にリリースされた新しいバージョン「v1.8.0」で、従来可能だったAmazon S3へのデータアップロードの他に「Google Cloud Storgae(GCS)へのデータアップロードにも対応」したことをお知らせします。

当エントリでは、この新しい機能について、出来るようになることと利用手順について紹介します。

目次

 

CSA Data Uploaderの動作確認バージョン

当エントリの内容は以下のCSA Data Uploaderバージョンで挙動を確認しています。

  • CSA Data Uploader v1.8.0

 

CSA Data Uploaderとは

CSA Data Uploaderの概要については、下記エントリをご参照ください。

端的に言うと(上記エントリの一文を引用すると)、「CSA: Data Uploader」はクラウドストレージ環境へのファイルアップロードをサポートする"簡易ETLツール"です。

 

今回の最新バージョン(v1.8.0)で出来るようになること

今回の最新バージョンとなる「v1.8.0」では、下記のような形で出力(アップロード)先の指定に、新しくGoogle Cloud Storageが追加される形となりました。従来のバージョンまでで入力(抽出)対象としてのクラウドストレージは「Amazon S3」と「Google Cloud Storage」が利用出来ていたので、今回の対応で入出力共に「Amazon S3」と「Google Cloud Storage」が利用出来る形となりました。夢が広がりますね!

 

事前環境設定

この項からは、実際にCSA Data Uploaderの設定を行ってGoogle Cloud Storage(GCS)へのデータアップロードを実現する手順について、順を追って説明します。予め以下の設定が済んでいることを前提とします。

  • GCPアカウントを取得していること
  • 任意の環境(WindowsまたはLinux環境)にCSA Data Uploaderがインストールされていること

 

GCPサービスアカウントキーの作成

GCSを利用する際には、予め対象となるGCPのプロジェクトから「サービスアカウントキー」ファイル(JSON形式)を払い出しておく必要があります。 CSA Data UploaderでGCSへのアクセスを行う際にもこの情報が必要となります。

任意のGCPプロジェクトの[サービスアカウント]メニューより、「サービスアカウントの作成」を選択。また、この時に指定したプロジェクト名も後に必要となるので情報を控えておいてください。

任意の名称でサービスアカウントの作成を進めます。

「サービスアカウントの権限」メニューにて、権限を付与します。ここで必要となるのは以下の権限です。

  • ストレージのオブジェクト管理者

以降、設定値はデフォルトのままで作成を進めます。

サービスアカウントの情報が作成されました。引き続き、実際に手順設定に用いる『サービスアカウントキー』を作成します。作成したサービスアカウントを選択し、メニューから「鍵を作成」を選択。

「キーのタイプ」でJSONを指定し、[作成]を押下。

任意の名称でファイルが作成されます。以降の手順で必要となりますので大切に保管しておいてください。

 

CSA Data UploaderにGCS接続設定を追加

Data UploaderがGCSのデータソースにアクセス出来るように、Data Uploader側の設定を追加します。

Data Uploaderにログインし、「設定」メニューより、[接続設定] - [Google Cloud Storage]を選択。

GCS接続設定画面に遷移します。[追加]ボタンを押下。

接続に必要な情報を設定します。

ここでは、前項で作成したサービスアカウントキーのファイル、及びそのファイルを作成したプロジェクト名を参照・指定します。サービスアカウントキーについては値を設定した上で「検証」を押下すると接続テストが行えます。設定・検証が完了したら[保存]を押下。

GCS接続設定が作成出来ました。

 

連携用のGoogle Cloud Storage(GCS)バケットを作成

CSA Data Uploaderで利用するGoogle Cloud Storage(GCS)バケットも予め作成しておく必要があります。

[Storage]→[ブラウザ]→[バケットを作成]を選択。

任意のリージョン、名称にてバケットを作成してください。

出来ました。ここまでの手順はGCSを入力・出力いずれの要素として利用する場合も必要となります。

 

CSA Data Uploaderを利用したGoogle Cloud Storage(GCS)へのデータアップロード実践

GCSアップロードのためのCSA Data Uploaderジョブを作成

これで準備が整いました。Data Uploader上で実際にこれらの設定を使ってGCSにファイルをアップロードするジョブを作成していきます。

ジョブ一覧画面にて、[ジョブを作成]を選択。

クラウドストレージにファイルをアップロードするためのジョブとしては「データアップロードジョブ」と「ファイルアップロードジョブ」の2種類が選べます。ここでは入力で指定した要素をそのまま出力へと持っていく「ファイルアップロードジョブ」を指定してジョブを作成します。

  • データアップロードジョブ:入力/変換/出力を指定
  • ファイルアップロードジョブ:入力/出力を指定

ジョブ詳細画面に遷移した後、入力要素の編集アイコンを指定して入力ファイルの種別を選択します。ここではData UploaderをインストールしたWindows環境配下に存在するcsvファイル群を選択してみたいと思います。

イメージはこんな感じです。指定のフォルダに同じテーブルに投入させたい、フォーマットが統一された複数のファイルが格納されているイメージです。

入力ファイルパス指定では、ファイルを格納しているフォルダを指定しました。

ファイルの指定に関しては「個別にファイル名を指定」「ファイルが格納されているフォルダを指定」の他、ワイルドカード指定等も可能となっています。ここでは試しにワイルドカード指定を合わせて指定してみています。「読み込みテスト」押下で実際に接続が可能であるかの確認も行えます。諸々確認出来たら[保存]押下で入力要素が作成完了です。

次に、[出力]要素を作成します。

出力種別で[GCSアップロード]を指定。

出力に関する設定をそれぞれ指定します。指定の内容に応じた形で「アップロード先 URIイメージ」が自動生成されますので、実際の想定するパスとなるかを適宜確認しながら設定を進めることが出来ます。一通りの設定が終わったら[保存]を押下。

  • GCS接続名:
    • 準備段階で作成した接続を指定。
  • バケット名:
    • こちらも前述準備段階で用意したバケットを指定。形式としては「バケット名」のみ記載する形となります。[バケット確認]ボタン押下で接続検証も行えます。
  • パス:
    • バケット配下のフォルダを指定。
  • ファイル名
    • アップロードするファイル名を任意の方式で指定可能。

GCSアップロードジョブの実行と結果確認

以上、設定作業が完了しました。スケジュールを指定し、ジョブ一覧のスケジュール実行チェックを有効とする事でジョブのスケジュール実行が可能となりますが、ここでは手動で即実行して結果を確認してみたいと思います。[保存して実行]を押下。

ジョブ一覧に遷移。実行が完了すると画面右上に通知が表示されます。無事正常に処理を終えることが出来たようです。

一覧を更新し、ジョブのステータス列を確認してみます。緑(正常終了)の丸枠に数字がカウントされました。ここをクリックすると、該当条件を満たす「実行履歴」画面に遷移することが出来ます。

「実行履歴」に遷移。行の一番右側のアイコンを選択すると詳細ログを確認することが出来ます。

詳細ログを確認。実行時間及び処理対象ファイルの記録が確認出来ました。

予め作成しておいたGCSバケットの中身も確認してみます。実行結果通り、対象ファイル群が指定のGCSパスにアップロードされていることが確認出来ました。

 

まとめ

という訳で、「CSA Data UploaderがGoogle Cloud Storage(GCS)へのアップロードに対応」した件についての内容と手順の紹介でした。

従来の入力・出力パターンに加えて今回のこの対応で、利用の幅が更に広がります。CSA Data Uploaderを介する形でのクラウドストレージ間(Amazon S3↔Google Cloud Storage)のファイル移動も可能になりますので是非ともお試し頂けますと幸いです。

また、今月2020/10/23から来月2020/11/11に掛けて開催される事例セッションイベント『Developers.IO 2020 Showcase』でも、11/4(水)の『データ分析』回にてCSAの導入事例セッションをお届けする予定です。こちらも是非ご参加ください!

データ分析基盤ならCSAにおまかせください!

クラスメソッドでは、データ分析に関わる皆様の作業コストを削減し、分析アクションを促進・効率化・自動化するためのデータ分析基盤「カスタマーストーリーアナリティクス」を提供・展開しています。興味をお持ち頂けた方は下記バナーをクリックし、詳細をご覧頂けますと幸いです。(各種問い合わせも承っております)

データ分析基盤を最短1ヶ月で導入可能

「クラウドストレージ環境へのファイルアップロード」を簡単且つスムーズに実現するツールとして「CSA Data Uploader」を提供・展開しています。(トライアル利用も可能です)

また、現在クラスメソッドでは毎週無料の相談会を開催しています。データ分析基盤の構築から、BIツール、データ統合など、ビッグデータ分析の導入や活用、技術についてお気軽にご相談ください。