クラウドストレージ(Amazon S3)へのファイルアップロードをサポートする「CSA: Data Uploader」で出来ること

カスタマーストーリーアナリティクス(CSA)のプロダクト「CSA: Data Uploader」を使うと何が出来るのか、何が嬉しいのかについて紹介&解説します。
2020.07.15

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

先日投稿した下記エントリでは、弊社クラスメソッドが展開するデータ分析基盤「カスタマーストーリー アナリティクス」全般の紹介をさせて頂きました。

当エントリでは、「カスタマーストーリー アナリティクス」のプロダクトの中の1つ「CSA:Data Uploader」について「これを使うと何が出来るのか」という観点で概要を紹介したいと思います。

目次

 

「CSA: Data Uploader」はクラウドストレージ環境へのファイルアップロードをサポートする"簡易ETLツール"です

冒頭で言いたいことを言っちゃいました。これで当エントリでの目的の半分は果たせましたw

残り半分を、以降のテキストで説明させて頂きたいと思います。

 

 

 

 

データ分析環境を構築・運用、また提供する際に我々は良くこう言います。

まずは可視化・分析したいデータを、ファイルとしてクラウドストレージにアップロードしてください。

アップロードが出来ればあとはそのファイルをデータベースやデータウェアハウスに取り込み、取り込んだあとでよしなな形にデータを加工・編集・結合すればBIツールでデータを見れます。と続きます。

ですが、実際にプロジェクトや案件を目にすると、一定数の割合・頻度で「クラウドストレージにデータを届ける」ところまでの部分で苦しんでいるお客様の声が挙がっていることに気が付きました。

「カスタマーストーリーアナリティクス(Customer Story Analyics、略してCSA)のプロダクトの1つ、CSA:JMC(Job Management Console)は「クラウドストレージに在るファイルを取り込むところからテーブル作成、データウェアハウスへのデータを取り込み及びジョブ管理をサポート」するサービスです。ちょうど「守備範囲外」の領域でした。

この「守備範囲」を広げ、お客様自身がアクセスする事の出来るデータをクラウドストレージへ連携する部分をサポートするために産まれたのが当エントリで紹介する「CSA: Data Uploader」です。

ちなみに2020年07月末現在、連携可能なクラウドストレージ環境は以下の通りです。

 

「CSA: Data Uploader」の導入方法

インストール可能な環境はWindows, Linuxです。

Webサーバとして稼働するタイプのサービスですが、設定&利用はとても簡単。基本的にはインストーラを所定の位置に配置し、コマンド起動するだけです。

なお、利用状況によって、下記の作業を追加で行っておく必要があります。

  • データの抽出を行う場合、抽出するデータソースに必要な認証情報(接続先、ユーザー名やパスワード)の準備や設定(対応するODBCドライバ導入)を実施。
  • クラウドストレージ環境へファイルをアップロードする場合、クラウドサービス(現時点ではAmazon S3に対応しているのでAWS)への連携を行うためのツールの認証情報を設定。(AWS CLIを介してAmazon S3にファイルをアップロードするため)

準備が出来たらファイルを実行してサーバを起動。

ブラウザアクセスで以下作業をウィザードに沿って進めていき、

  • プログラム使用許諾の確認・同意
  • ライセンス情報の登録(※トライアル版としての試用も可能です!)
  • 管理者パスワードの設定
  • 処理通知設定(オプション)

手順内で作成した管理者ユーザーでWebサーバにログインすると、Data Uploaderが利用出来る様になります。

 

「CSA: Data Uploader」で出来ること

今回ご紹介するツールの名前は「Data Uploader(データアップローダー)」と、割とそのままド直球なネーミングではありますが、その名前が示す通り、出来ることは「手元の環境からクラウドストレージ環境へ、ファイルをアップロードする」ことです。その作業を行うために、大きく以下3点の処理を1つの「ジョブ」として編成、実行することが出来ます。データ分析の世界で良く用いられる、所謂『ETL』(Extract, Transform, Load)を行います。

下記イメージが、「データアップロード」ジョブの編集画面です。ジョブで実施する処理として「入力」「変換」「出力」の部分をカスタマイズしていきます。

 

入力(=対象データソースからデータを抽出)

「入力」では、クラウドストレージにアップロードするファイルの"元ネタ"となるデータソースを、格納元から"抽出"してくる設定を行います。基本的には「接続先の指定」を行うことで入力要素としての紐付けが完了します。ODBC接続の場合はSQLを指定して取得内容を絞り込んでおくことも可能です。

2020年07月末現在で対応しているデータソースは以下の通りです。

  • ローカル接続(Data Uploaderをインストールした環境配下にあるテキストファイルを指定可能)
  • FTP/SFTP接続
  • AWS: Amazon S3接続
  • GCP: Google Cloud Storage接続
  • ODBC接続

 

変換(=データの簡易変換)

「変換」では、「入力」で取得したデータの加工・変換を行います。

取得したデータをアップロードするには、ちょっとこの部分をこうしたいな...というところがある場合、必要な処理をファイルベースで施すことが出来ます。(※ちなみにこの「変換」処理については、現時点では基本的な、それでいて必要と思われる最低限の処理(群)がラインナップされている状況です。)

(※処理の前後で「データがどの様に変換されているか」をプレビューにて確認することが出来ます)

 

出力(=データをクラウドストレージへアップロード)

「出力」では、「入力」と「変換」を経て出来上がったデータをファイルとしてクラウドストレージにアップロードします。現時点で対象となっているクラウドストレージは「Amazon S3」のみ。(※今後、対象サービス追加も検討しています)

ファイルはUTF-8に文字コード変換を行い、ファイルのタイプや圧縮有無、そして日付フォルダなどの規則性を持ったファイル名やフォルダ構造へのアップロードなども指定可能です。

(※変数を活用した動的なアップロード連携に対応しています)

 

実行出来る「ジョブ」のタイプ

上記で紹介したものは「ファイルアップロード」(※後述)という「ジョブ」の種類でしたが、Data Uploaderでは、この他にも幾つか設定出来る「ジョブ」の種類が存在します。ここではその概要だけサラリと紹介します。

 

データアップロード

データアップロードジョブは、DataUploaderで利用されるであろう『任意の場所からデータを抽出して、簡易的な変換処理を踏まえた後でクラウドストレージにファイルをアップロード』するというケースを実現するためのジョブタイプです。ジョブ作成時に『入力』『変換』『出力』の処理パートが用意され、それぞれのパートで必要な処理を画面UI経由で設定します。

 

ファイルアップロード

ファイルアップロードジョブは、ただシンプルに『任意のファイルをそのままクラウドストレージにアップロード』させたい場合に適しているジョブタイプです。前述の「データアップロードジョブ」とは『変換』の処理パートが無くなった点、入力処理で選択可能なデータソースが『ODBC以外』となる点が異なります。

 

プログラム実行

プログラム実行ジョブは、端的に言うならば『スケジュール駆動で任意のプログラムを動かす』場合に利用出来るジョブタイプです。Linux系であればcronで、Windows系の場合であればタスクスケジューラで同様の事を実現出来ますが、Data Uploaderを使うとWeb画面経由でこれらの設定が行えるようになります。(※プログラム、及びプログラムが稼働する環境設定は個別に行う必要があります)

 

ジョブ実行

ジョブ実行ジョブは、『DataUploaderで作成した任意のジョブを動かす』ためのジョブタイプです。任意の粒度で作成したDataUploaderジョブを複数個まとめて動かしたい場合、このジョブタイプを使ってジョブを作ることでとても簡単にジョブをまとめることが出来ます。

 

ジョブのスケジュール指定

作成したジョブは、手動実行を含めた様々なサイクルでのスケジュール指定実行が可能です。上記で紹介した様々なジョブを、任意の実行サイクルで稼働させることが出来ます。

 

CSA JMCとの連動設定

「CSA: Data Uploader」はここまで説明してきたようにツール単体で使うことが可能ですが、同じ「カスタマーストーリー アナリティクス」のプロダクトとして展開している「CSA:JMC(Job Management Console)」と連動させることも可能です。

分かりやすい連携イメージの例としては以下のようなケースです。「CSA: Data Uploader」側で「CSA:JMC」のどのジョブを動かすか、という手順を踏むことで、プロダクト間の連携が可能となります。合わせてお使い頂くことで、分析環境へのデータデリバリーをよりスムーズに実現出来ます。

 

まとめ

という訳で、カスタマーストーリーアナリティクスのプロダクト「CSA:Data Uploader」の機能概要に関する紹介でした。

当エントリをお読み頂くことで、このプロダクトがどのような機能を有しているか、ユーザーの何を実現することが出来るのかといった点をご理解頂けたのであれば幸いです。

CSA:Data Uploaderについては「無料版」をご利用頂くことも可能です。下記バナーから専用ページにアクセスし、ダウンロード頂くことで利用が可能となります。是非一度、お試し頂けますと幸いです。

無料版ダウンロード|CSアナリティクス Data Uploader|クラスメソッドのサービス

CSA:Data Uploaderの製品紹介ページは以下となります。何か気になることなどありましたら是非お問い合わせください!