AlteryxのSDK概要

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

こんにちは、小澤です。

Alteryxでは、11.5からHTML SDK, Python SDKというものが登場しました。 それらがどういった機能なのかについて、解説させていただきます。

なお、SDKについて1つの記事で書ききれる規模ではないので、何回かに渡って解説していく予定です。 今回は、その第1回目として全体概要について解説させていただきます。

AlteryxとSDK

さて、このSDKとはどういったものなのでしょうか?SDKとは、Software Development Kitの略です。 これだけだとまださっぱりわからないですね。 簡単にいうと、特定の環境でソフトウェアを作るためのツール群だと思っていただければと思います。

さて、AlteryxでのSDKの位置付けは、というと「プログラムを書いてAlteryxのツールを作るための機能」となります。 AltteryxのSDKに含まれる各種ライブラリを使って、実際に行う処理の内容をプログラムすればそれが1つの新しいツールとなるわけです。

マクロとの違い

同じようなことをするAlteryxの機能として、マクロがあります。 このSDKとマクロは何が違うのでしょうか?

マクロは、ワークフロー中の共通する処理を抜き出した元のして利用できます。 そのため、マクロの実体はワークフローです。 右クリックして、Open Macroで開いて中を確認することもできますね。

それに対してSDKで作成したものはの中身は完全にただのプログラムです。 いくつかのファイルをまとめて、特定のフォルダに配置することで、Alteryx常にツールとして表示されます。 プログラムを記述したファイルやそれをAlteryxに認識させるための設定ファイルなどを用意するような形式となります。

SDKで作成したツールを構成する要素

SDKを構成するファイルは以下のようになります。

  • 設定情報を記述したConfigファイル
  • インフェースを定義したファイル
  • 処理内容を記述したプログラムのファイル
  • アイコンの画像ファイル
  • ヘルプファイル

これは、マクロのyxmcがプログラムのファイルに変わった、yxiファイルを作成するときのフォルダ構成とよく似ていますね。

さて、ではこれらのファイルの役割を順に見ていきましょう。 なお、今回は概要回ということでそれぞの具体的な書き方に関しては触れず、次回以降で紹介していきます。

設定情報を記述したConfigのXMLファイル

SDKを使って作成したプログラムをツールとして認識させるための設定ファイルとなります。 設定は、XML形式で記載します。

このファイルで設定する項目は、以下の3つとなります。

  • ツールの表示情報や説明に関する設定
  • 処理を行うプログラムの設定
  • インターフェースとして利用するHTMLやinput/outputに関する設定

さて、この内容は実はyxiファイルを作成する際の設定と同様になっています。 しかし、上記のブログでは必須項目ではないため解説していないこともあるので、順に解説していきます。

ツールの表示情報や説明に関する設定

この設定はマクロを作成する際のMeta Infoに相当する内容の記載を行います。

処理を行うプログラムの設定

hoge.pyやfuga.htmlなどといった実際に処理を行うプログラムが記述されたファイル名を記載します。

インターフェースとして利用するHTMLやinput/outputに関する設定

ツールの設定を行うためのインターフェースに関する記述を行います。 ここでの設定は、後述の「インフェースを定義したファイル」を指定します。

また、HTMLでインターフェースを作成する場合は、ここでの設定で入力・出力のコネクションに関する設定も記述します。

インフェースを定義したファイル

マクロではInterface Designerで行なっていたことに相当します。

実は、このHTMLを使ったインターフェイスの設定は一部既存のツールでも使われています。 FormulaツールやLinear Regressionツールなど、インターフェースツールでは作れないような見た目のパーツが配置されているものがそれに該当します。 そのため、従来のマクロでもこの機能が実は利用可能だったりします。

HTML内でAlteryxで表示するための記述や、設定された値をプログラム側に渡すための設定なども行います。

処理内容を記述したプログラムのファイル

実際に行う処理の内容を記載します。 記述するとしては、Alteryxのライブラリを読み込んで、特定の関数を実装していくような流れになります。

現在SDKで対応しているのはHTML5(+JavaScript)とPythonの2言語となっています。

この部分で、マクロではワークフローを作っていたのに相当する処理をプログラムで書いていくわけですね。

アイコンの画像ファイル・ヘルプファイル

これらは必須ではない項目になります。

アイコンの画像はツールのアイコンとして利用される画像です。
ヘルプファイルは、ヘルプページの内容を記載したファイルとなります。

おわりに

今回はAlteryx SDKの概要編ということで、どのようなものなのかと構成する要素にどのようなものがあるかについて解説しました。

次回以降はこれらのファイルを具体的にどのように記述していくかを見ていきたいと思います。

Alteryxの導入なら、クラスメソッドにおまかせください

日本初のAlteryxビジネスパートナーであるクラスメソッドが、Alteryxの導入から活用方法までサポートします。14日間の無料トライアルも実施中ですので、お気軽にご相談ください。

alteryx_960x400