【初級編】Alteryx Designerを使ったデータ収集についてわかりやすく解説してみた

<h1>はじめに</h1>

読者の皆様はExcelで大量のデータ集計をする場合、
以下の点に悩まされた事はありませんか？

・ファイルサイズ
・データソース間のデータ収集、および結合
・処理のエラーハンドリング
・データ更新タイミングでの再集計
・集計結果の外部ツール連携

データソースの種類が多岐に渡ることで集計処理に時間が掛かるという課題を抱えている方は多いようです。

こういったケースの場合、
Alteryx Designer に置き換える事で作業の効率化・省力化を図る事が可能になります。

この記事では、
データソースからのデータ収集をAlteryx Designer ではどのように設定するかについて勉強していきます。


<h2>データ入力ツール</h2>

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3328726/fa11c584-3239-6846-8ead-82da53a560c7.png)
「データ入力」ツールは、ファイルやデータベースからデータを読み込む際に使用するツールになります。


サポートの対象となっているファイル種類やデータベース種類については、[Alteryx Documentation](https://help.alteryx.com/2020.1/ja/DbFileInput.htm "Alteryx Documentation") に記載されていますのでご確認ください。

今回は、よく使われる以下のファイルについてみていきましょう。

・CSVファイル
・Excelファイル
・データベース接続（Amazon Redshift、Oracle、PostgreSQLなど）

<h3>CSVファイル</h3>

CSVファイルについては、以下のいずれかの方法で指定が可能となっています。

・データ入力ツールをキャンバスにドラッグし、
　表示された画面の「ファイルまたはデータベースを接続」を押下して「ファイル」タブを選択。
　その後、対象ファイルを指定する。
・対象のファイルを選択し、直接キャンバスにドラッグする。

CSVファイルを読み込み対象として指定すると以下の内容を指定することが可能になります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3328726/b332ffcb-f07f-0819-6f7f-e86a5caf7e62.png)

<h5>1. レコード制限：</h5>
　ファイル内のデータを何行目まで読み込むかを指定します。<br>
　指定しない場合、すべてのデータが読み込み対象となります。
<h5>2. ファイル形式：</h5>
　読み込む対象のファイルの拡張子を指定します。<br>
　デフォルト値は、読み込み対象ファイルの拡張子。
<h5>3. サブディレクトリを検索：</h5>
　指定したディレクトリ直下のファイルだけではなく、<br>
　有効化（ON）することでその配下にあるフォルダ内のファイルも読み込み対象することが可能です。
<h5>4. ファイル名をフィールドとして出力する：</h5>
　読み込む対象のファイル情報をデータ内に含めることが可能です。
<h5>5. 区切り記号：</h5>
　ファイル内のデータの区切り文字を指定します。
<h5>6. 先頭行にフィールド名を含める</h5>
　ファイル内の先頭行にフィールド名（項目名）がある場合に有効化（ON）します。
<h5>7. フィールド長</h5>
　フィールド（項目）の最大文字数を指定します。<br>
　デフォルトは、254
<h5>8. データインポートの開始行</h5>
　データの読み込みを開始する行を指定します。<br>
　デフォルトは、1
<h5>9. 次の区切り記号を無視する</h5>
　指定した区切り文字については、その文字を区切り文字として読み込まないことが可能です。<br>
　デフォルトは、必ず以下のいずれかを設定。<br>
　・引用符(")<br>
　・一重引用符(')<br>
　・自動<br>
　・なし
<h5>10. 読み込みエラーを警告といて扱う</h5>
　通常エラーとして認識されるものを警告として扱うことが可能です。
<h5>11. コードページ</h5>
　読み込み対象のファイルの文字コードを指定します。<br>
　指定した文字コードと実ファイルの文字コードが異なる場合、文字化けが発生しますので注意。
<h5>12. 共有書き込みアクセスを許可する</h5>
　処理中のファイルで読み込みを可能とする場合に指定します。<br>


<hr>

<h3>Excelファイル</h3>

Excelファイルについては、以下のいずれかの方法で指定が可能となっています。

・データ入力ツールをキャンバスにドラッグし、
　表示された画面の「ファイルまたはデータベースを接続」を押下して「ファイル」タブを選択。
　その後、対象ファイルを指定する。
・対象のファイルを選択し、直接キャンバスにドラッグする。

Excelファイルを読み込み対象として指定すると以下の内容を指定することが可能になります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3328726/b9bc376c-fd07-d65e-fa7e-1f4e63545378.png)

<h5>1. レコード制限：</h5>
　ファイル内のデータを何行目まで読み込むかを指定します。<br>
　指定しない場合、すべてのデータが読み込み対象となります。
<h5>2. ファイル形式：</h5>
　読み込む対象のファイルの拡張子を指定します。<br>
　デフォルト値は、読み込み対象ファイルの拡張子。
<h5>3. テーブルまたはクエリ：</h5>
　読み込む対象のシートを指定します。<br>
<h5>4. サブディレクトリを検索：</h5>
　指定したディレクトリ直下のファイルだけではなく、<br>
　有効化（ON）することでその配下にあるフォルダ内のファイルも読み込み対象することが可能です。
<h5>5. ファイル名をフィールドとして出力する：</h5>
　読み込む対象のファイル情報をデータ内に含めることが可能です。
<h5>6. 先頭行にフィールド名を含める</h5>
　ファイル内の先頭行にフィールド名（項目名）がある場合に有効化（ON）します。
<h5>7. データインポートの開始行</h5>
　データの読み込みを開始する行を指定します。<br>
　デフォルトは、1

<hr>

<h3>データベース接続</h3>

データベース接続については、以下の方法で指定が可能となっています。

①データ入力ツールをキャンバスにドラッグし、
　表示された画面の「ファイルまたはデータベースを接続」を押下して「データソース」タブを選択。

　データベースの一覧から対象のデータベースへ接続するドライバーを選択。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3328726/210b8815-0919-5f46-8f42-bf6eb1a71984.png)

③接続するデータソース名、ユーザ名、パスワード名を指定する。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3328726/b669689e-9c25-e9ac-c705-de44db3e5a6e.png)

④接続が完了した場合、
　ビジュアルクエリビルダ等から、抽出する対象のテーブルおよび項目を指定が可能です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3328726/c9da0312-a41e-2a7c-f38a-ae13dcbc0f3b.png)

<h1>ワークフロー作成（イメージ）</h1>

実際にAlteryx Designer上で対象ツールを使用したワークフローを作成していきたいと思います。

<h5>①配置</h5>
入出力カテゴリからデータ入力ツールを選択し、キャンバスエリアにドラッグし配置します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3328726/6fb7ab8d-2b5f-7a45-d8f8-d986f69480eb.png)

<h5>②設定</h5>
データ入力ツールの「ファイルまたはデータベースを接続」より対象ファイルを選択します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3328726/acc231fa-8776-a246-30df-75008a192f8b.png)

※対象のファイルを選択し、直接キャンバスにドラッグすることでも可能です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3328726/9a8700a1-bde7-76ca-3ad5-f50fcf7daaa4.png)


・注意点
複数のファイルを一度の設定で読み込む場合、データ入力ツールの「ファイルまたはデータベースを接続」より、対象ファイルの指定でワイルドカード（＊）を使用することで可能となっています。

こちらの設定をする場合、データ形式(項目数や項目順)がすべてのファイルで一致していることが前提条件となります。


<h5>③実行</h5>

ワークフロー上にサンプルデータが取り込まれていることが結果ウィンドウにて確認できます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3328726/477fbc33-b60b-de40-0f63-e0e06d3adc18.png)


<h1>おわりに</h1>

ここでは、データソースからのデータ収集をAlteryx Designer ではどのように設定するかについて説明しました。

今回の内容は以下のタグでツール毎に紹介していますので、よければ他のツールについてもご参照いただければ幸いです。

<h1>仲間募集</h1>
NTTデータ テクノロジーコンサルティング事業本部 では、以下の職種を募集しています。

<details>
<summary>1. クラウド技術を活用したデータ分析プラットフォームの開発・構築(ITアーキテクト/クラウドエンジニア)</summary>
クラウド／プラットフォーム技術の知見に基づき、DWH、BI、ETL領域におけるソリューション開発を推進します。<br>
<a href="https://enterprise-aiiot.nttdata.com/recruitment/career_sp/cloud_engineer">https://enterprise-aiiot.nttdata.com/recruitment/career_sp/cloud_engineer</a>
</details>

<details>
<summary>2. データサイエンス領域（データサイエンティスト／データアナリスト）</summary>
データ活用／情報処理／AI／BI／統計学などの情報科学を活用し、よりデータサイエンスの観点から、データ分析プロジェクトのリーダーとしてお客様のDX／デジタルサクセスを推進します。<br>

https://enterprise-aiiot.nttdata.com/recruitment/career_sp/datascientist
</details>

<details>
<summary>3.お客様のAI活用の成功を推進するAIサクセスマネージャー</summary>
DataRobotをはじめとしたAIソリューションやサービスを使って、
お客様のAIプロジェクトを成功させ、ビジネス価値を創出するための活動を実施し、
お客様内でのAI活用を拡大、NTTデータが提供するAIソリューションの利用継続を推進していただく人材を募集しています。<br>

https://nttdata.jposting.net/u/job.phtml?job_code=804
</details>

<details>
<summary>4.DX／デジタルサクセスを推進するデータサイエンティスト《管理職/管理職候補》</summary>
データ分析プロジェクトのリーダとして、正確な課題の把握、適切な評価指標の設定、分析計画策定や適切な分析手法や技術の評価・選定といったデータ活用の具現化、高度化を行い分析結果の見える化・お客様の納得感醸成を行うことで、ビジネス成果・価値を出すアクションへとつなげることができるデータサイエンティスト人材を募集しています。<br>

https://nttdata.jposting.net/u/job.phtml?job_code=898
</details>

<h1>ソリューション紹介</h1>

<details>
<summary>Trusted Data Foundationについて</summary>
～データ資産を分析活用するための環境をオールインワンで提供するソリューション～<br>

https://enterprise-aiiot.nttdata.com/tdf/<br>

最新のクラウド技術を採用して弊社が独自に設計したリファレンスアーキテクチャ（Datalake+DWH+AI/BI）を顧客要件に合わせてカスタマイズして提供します。
可視化、機械学習、DeepLearningなどデータ資産を分析活用するための環境がオールインワンで用意されており、これまでとは別次元の量と質のデータを用いてアジリティ高くDX推進を実現できます。
</details>

<details>
<summary>TDFⓇ-AM（Trusted Data Foundation - Analytics Managed Service）について</summary>
～データ活用基盤の段階的な拡張支援（Quick Start) と保守運用のマネジメント（Analytics Managed）をご提供することでお客様のDXを成功に導く、データ活用プラットフォームサービス～<br>

https://enterprise-aiiot.nttdata.com/service/tdf/tdf_am<br>

TDFⓇ-AMは、データ活用をQuickに始めることができ、データ活用の成熟度に応じて段階的に環境を拡張します。プラットフォームの保守運用はNTTデータが一括で実施し、お客様は成果創出に専念することが可能です。また、日々最新のテクノロジーをキャッチアップし、常に活用しやすい環境を提供します。なお、ご要望に応じて上流のコンサルティングフェーズからAI/BIなどのデータ活用支援に至るまで、End to Endで課題解決に向けて伴走することも可能です。
</details>

<details>
<summary>NTTデータとTableauについて</summary>
ビジュアル分析プラットフォームのTableauと2014年にパートナー契約を締結し、自社の経営ダッシュボード基盤への採用や独自のコンピテンシーセンターの設置などの取り組みを進めてきました。さらに2019年度にはSalesforceとワンストップでのサービスを提供開始するなど、積極的にビジネスを展開しています。

これまでPartner of the Year, Japanを4年連続で受賞しており、2021年にはアジア太平洋地域で最もビジネスに貢献したパートナーとして表彰されました。
また、2020年度からは、Tableauを活用したデータ活用促進のコンサルティングや導入サービスの他、AI活用やデータマネジメント整備など、お客さまの企業全体のデータ活用民主化を成功させるためのノウハウ・方法論を体系化した「デジタルサクセス」プログラムを提供開始しています。

https://enterprise-aiiot.nttdata.com/service/tableau
</details>

<details>
<summary>NTTデータとAlteryxについて</summary>
Alteryxは、業務ユーザーからIT部門まで誰でも使えるセルフサービス分析プラットフォームです。
Alteryx導入の豊富な実績を持つNTTデータは、最高位にあたるAlteryx Premiumパートナーとしてお客さまをご支援します。

導入時のプロフェッショナル支援など独自メニューを整備し、特定の業種によらない多くのお客さまに、Alteryxを活用したサービスの強化・拡充を提供します。

https://enterprise-aiiot.nttdata.com/service/alteryx
</details>

<details>
<summary>NTTデータとDataRobotについて</summary>
DataRobotは、包括的なAIライフサイクルプラットフォームです。
NTTデータはDataRobot社と戦略的資本業務提携を行い、経験豊富なデータサイエンティストがAI・データ活用を起点にお客様のビジネスにおける価値創出をご支援します。

https://enterprise-aiiot.nttdata.com/service/datarobot
</details>

<details>
<summary>NTTデータとInformaticaについて</summary>
データ連携や処理方式を専門領域として10年以上取り組んできたプロ集団であるNTTデータは、データマネジメント領域でグローバルでの高い評価を得ているInformatica社とパートナーシップを結び、サービス強化を推進しています。

https://enterprise-aiiot.nttdata.com/service/informatica
</details>

<details>
<summary>NTTデータとSnowflakeについて</summary>
NTTデータでは、Snowflake Inc.とソリューションパートナー契約を締結し、クラウド・データプラットフォーム「Snowflake」の導入・構築、および活用支援を開始しています。
NTTデータではこれまでも、独自ノウハウに基づき、ビッグデータ・AIなど領域に係る市場競争力のあるさまざまなソリューションパートナーとともにエコシステムを形成し、お客さまのビジネス変革を導いてきました。
Snowflakeは、これら先端テクノロジーとのエコシステムの形成に強みがあり、NTTデータはこれらを組み合わせることでお客さまに最適なインテグレーションをご提供いたします。

https://enterprise-aiiot.nttdata.com/service/snowflake
</details>


タグ：Alteryx