日本ではあまり語られることがないのですが、OData は今でもWeb API でデータをやり取りする際の標準です。
OData 形式でデータをフィードできるサービスとしては以下が有名です:
- Salesforce
- Dynamics CRM
- Google Spreadsheet
- Tableau
- PowerBI
- Azure Machine Learning
他にも海外製のBI、ETL、クラウドサービスの多くはOData をフィードさせることが可能です。
この記事では、CData API Server で生成したAPI をTableau にODATA フィードとして取り込ませます。
API Server の設定##
MySQL のデータをCData API Server でポチポチだけでREST API として公開する を参照してください。
データソースはMySQL でなくても構いません。
Tableau へのフィードのためのAPI Server 側の追加設定##
API Server の[設定]→[サーバー]タブから、クロスオリジンの設定を行います。
- [クロスオリジンリソースシェアリング (CORS)を有効化する。]にチェックを入れます。
- [すべてのドメインを '*' なしで許可。]にチェックを入れます。
次に、OData の設定で、[デフォルトフォーマット]をJSON からXML(Atom)に変更します。
変更を保存します。
これで、API Server 側の設定は終わりです。
Tableau からOData フィードでAPI Server のデータを取得する##
[新しいデータソース]→[OData]をクリックします。
[サーバー]欄にAPI Server のエンドポイントを入力します。
[特定のユーザー名とパスワードを使用]をチェックします。