LoginSignup
0
0

More than 1 year has passed since last update.

Alteryxでクラウドストレージと接続

Posted at

はじめに

Alteryxを使える機会があるので、各種クラウドストレージと接続してみました。

Alteryxとは

簡単に言うと、コードを書かなくても、処理をつなげるだけでデータ加工ができるサービス、です。
詳細は以下のページ等を確認ください。

公式に各種コネクタがあります。

概要

試せたのは以下になります。

  • AWS
    • S3:デフォルトで接続ツールが組み込まれている
  • Google
    • GoogleDrive:接続ツールが配布されている
    • Googleスプレッドシート:接続ツールが配布されている

試せなかった、うまくいかなかったのは以下になります。

  • GCP
    • GCS:接続ツールなしのため、未検証
  • Microsoft365
    • SharePoint:接続ツールは配布されているが、内部エラーで接続できず
    • OneDrive:同上

S3と接続

準備

環境として以下を作成しました。

  • バケット作成
  • ユーザー作成
  • アクセスキー作成
  • データアップ

CFnでバケットとユーザを作成します。

AWSTemplateFormatVersion: 2010-09-09

Resources:
  TargetBucket:
    Type: AWS::S3::Bucket

  AlteryxUser:
    Type: AWS::IAM::User
    Properties:
      Policies:
       -  PolicyName: S3Access
          PolicyDocument:
            Version: 2012-10-17
            Statement:
             -  Effect: Allow
                Action: 
                 - s3:ListAllMyBuckets
                Resource:
                 - !Sub arn:aws:s3:::*
             -  Effect: Allow
                Action: 
                 - s3:ListBucket
                Resource:
                 - !Sub arn:aws:s3:::${TargetBucket}
             -  Effect: Allow
                Action: 
                 - s3:*Object
                Resource:
                 - !Sub arn:aws:s3:::${TargetBucket}/*

Outputs:
    BucketArn:
        Value: !GetAtt TargetBucket.Arn

作成したユーザのアクセスキーを取得します。
image.png
image.png

データは以下CSVファイルを作成し、S3にアップしました。

hoshiiro1_cast.csv
話数,パート,ポプ子,ピピ美
第1話,前半,江原正士,大塚芳忠
第1話,後半,三ツ矢雄二,日髙のり子
第2話,前半,悠木碧,竹達彩奈
第2話,後半,古川登志夫,千葉繁
第3話,前半,小松未可子,上坂すみれ
第3話,後半,中尾隆聖,若本規夫
第4話,前半,日笠陽子,佐藤聡美
第4話,後半,玄田哲章,神谷明
第5話,前半,金田朋子,小林ゆう
第5話,後半,中村悠一,杉田智和
第6話,前半,三瓶由布子,名塚佳織
第6話,後半,下野紘,梶裕貴
第7話,前半,こおろぎさとみ,矢島晶子
第7話,後半,森久保祥太郎,鳥海浩輔
第8話,前半,諸星すみれ,田所あずさ
第8話,後半,小野坂昌也,浪川大輔
第9話,前半,中村繪里子,今井麻美
第9話,後半,斉藤壮馬,石川界人
第10話,前半,徳井青空,三森すずこ
第10話,後半,小山力也,高木渉
第11話,前半,水樹奈々,能登麻美子
第11話,後半,郷田ほづみ,銀河万丈
第12話,前半,小山茉美,三石琴乃
第12話,後半,速水奨,中田譲治

保存場所はs3://バケット名/download/以下としました。

ダウンロード

公式のツールを使います。Alteryxに組み込み済みでした。

コネクタタブのツールをドラッグアンドドロップします

image.png

ツールのプロパティですが、AWS シークレットキーの項目が隠れてしまっています。

image.png

入力欄は存在するので、AWSアクセスキーにフォーカスして、Tabキーを押して遷移しました。

それぞれ入力欄に以下の様に指定しました。

  • AWSアクセスキー:作成したIAMユーザーのアクセスキー
  • AWS シークレットキー(画面上はAWS秘密キー?):作成したIAMユーザーのシークレットアクセスキー
    • 隠れてしまっているので、AWSアクセスキーをフォーカスし、Tabキーで遷移
    • 現在の AWS 認証情報をデフォルトとして保存するがリンク状態になりますので、クリックして有効にしておきます。
  • エンドポイント:作成したリージョンのエンドポイントを選択
  • [チェック]認証に署名 V4 を使用する:OFF
  • バケット名:対象のバケットを選択
    • 接続設定が正しければ、右の参照ボタンからバケット一覧が表示され、そこから選択できます
  • オブジェクト名:対象のファイルのキーを指定
    • ここまでの設定が正しければ、右の参照ボタンからオブジェクト一覧が表示され、そこから選択できます
      • エンドポイントに設定したリージョンが正しくない場合はエラーになり、一覧が表示されません

設定後の画面は以下の様になります。

image.png

ワークフローに閲覧ツールを接続して、実行します。

image.png

問題なく取得できれば、結果ウィンドウに取得内容が表示されます。

image.png

アップロード

こちらも公式のツールを使います。Alteryxに組み込み済みでした。

ツールを配置する前に、入力用に適当なデータを作成します。
テキスト入力で、Alteryx上に直に作成しました。

image.png

次にアップロードツールをドラッグアンドドロップします。

image.png

相変わらず、シークレットキーは隠れていました。
ですが、入力時に保存していた資格情報がそのままセットされているようです。

image.png

入力項目は、ほぼ先ほどと似たようなものです。

  • オブジェクト名:ファイルのキーを指定
    • 右の参照からファイル一覧が表示されます
    • 存在しない場合は直に入力します

以下のように設定しました。

image.png

後はテキスト入力と繋げて実行します。

image.png

S3にアップロードされました。2回実行しても(ファイルが存在しても)エラーも無く実行できました。

image.png

GoogleDriveと接続

デフォルトでは入っていなかったので、ツールのダウンロードが必要です。

ダウンロードとインストールの方法は、以下を参考にしました。
インストールには結構時間がかかります。自分の場合は5分くらいかかりました。

インストール後、コネクタのタブに2つ追加されていました。

image.png

インプット

S3と同じデータを以下の様に格納しました。

image.png

以下のページを参考にやりました。

接続は以下の3つがあるようです。
image.png
image.png
image.png

一つ目の、ブラウザのサインインを使う形で試してみます。

image.png
image.png
一度失敗しましたが(恐らくタイムアウト)、再度やり直して以下のような画面になりました。
image.png

その後、ツールのプロパティにドライブ内の情報が表示されるようになりました。
image.png

下部のエクスプローラー風のUIを操作して、対象のファイルを選択します。
image.png

閲覧ツールと繋げて実行、しましたが取り込まれませんでした。
image.png

オプションを色々見てみたところ、以下の設定でうまくいきました。
image.png

閲覧ツールから取り込めた内容を確認できます。(一部文字化けしています)
image.png

アウトプット

S3のときと同じデータをインプットとしてワークフロー上に用意し、GoogleDrive Outputツールと接続します。

image.png

アウトプットは2種類の接続方法があるようです。
image.png

インプットと同じ方法で接続します。
image.png
image.png
image.png

インプットと似たようなプロパティに変化しました。
image.png

image.png
対象のフォルダを選択して、Add Fileをクリック。
image.png
以下の様になりました。
image.png
オプションは以下の様に、上書きにしてみました。
image.png

実行すると、GoogleDrive上にファイルができました。
image.png
中身もちゃんと見れます。
image.png

2回目を流すと最終更新が変更されましたので、ちゃんと上書きされているようです。

Googleスプレッドシートと接続

以下を参考にしました。

こちらもデフォルトでは入っていなかったので、ツールをダウンロードしました。

先と同様にインストールしました。今度はポップアップも何も出ずすぐ完了したようで、アイコンが追加されていました。
image.png

入力

データは、先のデータをスプレッドシートにしました。
image.png

入力ツールをドロップしてプロパティ画面を見てみると、Driveとは違っていました。
image.png

ですが接続に行う手順は同様のものでした。
image.png
image.png
image.png

接続がうまくいくと、以下のようなプロパティになりました。
image.png
対象のファイルを選択するのですが、ファイル名のみでパスが表示されません。
そのため、別フォルダに同名ファイルがある場合は、区別がつきません。

ファイルを選択してして次へ。
image.png
image.png
image.png

設定できましたので、閲覧ツールと繋げて実行し、取得データを確認します。
image.png

出力

出力ツールの最初のプロパティ画面は以下のようになっていました。
image.png

承認画面も同じだったので割愛。

接続後のプロパティ画面は以下のようになっていました。
image.png

何度も実行することを想定して、ファイルがない状態ですが「スプレッドシートを上書き(削除)」を選択しました。
ですが、セレクトボックスで選択するようで、既にあるファイルからしか選択できません。
image.png

改めて「新しいスプレッドシートを作成する」を選択。
image.png

フォルダ等を選ぶ場所もなく、設定完了してしまいました。
image.png

実行すると、トップのフォルダに出力されていました。
image.png

もう一度動かすと、同名のファイルがもう一個できてました
image.png

また、書き込みオプションを上書きにしようとすると以下の様にエラーになりました。
image.png

そのため、上書き用に新しく出力ツールをドロップしました。
image.png

ただ、同名のスプレッドシートが複数ある場合、上書き先のスプレッドシートを選択するリストが以下の様になり、どれがどれだかわからない状態でした。
image.png

なのでスプレッドシート名をアカウントで一意にし、対象のフォルダに移動して、設定を続けます。
image.png
image.png
image.png
image.png

今度は何回実行しても、ファイルは増えることなく1つのままでした。(ただし最終更新の時間がブラウザ上に反映されるまで少しかかりました。)
image.png

うまくいかなかったもの

以下二つについては、配布ツールがありましたがうまくいきませんでした。

  • SharePoint
  • OneDrive

それぞれのツールのリンクは以下になります。

以下はSharePointで試した際の画面になります。
(うまくいかなかったので、非表示にしておきます)

クリックで表示

ツールをインストールすると、ポップアップなしで完了し、以下の様に追加されていました。(間にあるSharePointのリスト入力とリスト出力というのは、最初から入っていました。)
image.png

入力

プロパティは以下の様になります。
image.png
image.png
接続は2種類でクライアントID等を入れる場合は以下になります。
image.png

"ファイル”と”インターネットブラウザからサインイン”の方で接続して見ました。GoogleDriveと同様、認証画面が表示されます。
image.png
image.png
その後、プロパティ画面が以下の様に変わりました。
image.png

サイト、ドキュメントライブラリと選択していくと、ファイル選択の画面になります。
image.png
image.png
image.png

階層を掘っていってファイルを選ぶと以下の様になりました。
image.png

後は閲覧ツールと繋げて実行したのですが、以下のようなエラーが出て、ファイルが取得できませんでした。
Clipboard - 2022年10月6日午前11時8分.png

Alteryxのバージョンの問題かもしれません。
わかる方いらっしゃいましたら教えてください。

おわりに

便利なデータ加工ツールであるAlteryxと、クラウドストレージとの接続方法を確認してみました。

Microsoft365のサービスとつなぐ方法がうまくできなかったのは残念ですが、クラウドとの接続も簡単にできることがわかり、今後の業務に活かせそうです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0