こんにちは。CData Software Japan リードエンジニアの杉本です。
今回はリリースしたばかりの CData Excel Add-in for Yahoo! JAPAN DATA SOLUTIONを使って、キーワード検索ボリュームをExcel で可視化する方法を紹介したいと思います。
www.cdata.com
Yahoo! JAPAN DATA SOLUTION API とは?
Yahoo! JAPAN DATA SOLUTION API とはヤフー・データソリューションのデータをAPI経由で様々なツールから利用できるようにするサービスです。
2021年1月時点、ヤフーのビッグデータをブラウザー上で調査・分析できるツール「DS.INSIGHT」の機能をAPI経由で利用できる「DS.API -INSIGHT」が提供されており、任意のワードを元にした検索キーワードランキングや都道府県別の特徴などを取得し、分析・活用に繋げることができます。
ds.yahoo.co.jp
実現イメージ
具体的な連携手順の前に、まず Excel ないしPower BI などのツールからどのようにこの DS.APIに接続するのか整理しておきましょう。
Excel や Power BI は汎用のWebコネクタやPowerQuery・VBA等を用いることで各種APIに接続が可能になっています。
しかしながら、APIに関する知識の習得はもちろんのこと、ページネーション・認証・取得したデータのスキーマ対応をどのように対応するかといった課題が存在し、分析担当者が簡単に接続できるとまでは言えません。
そこで、CData Driver・Excel Add-in を用いて、このボトルネックを解決します。
各ツールはODBCやJDBCといった標準のデータ接続インターフェースを持っています。CData Driver・Excel Add-in はその標準インターフェースを利用し、各ツールから受け取ったSQLを変換して DS.API へリクエストを行うようにします。
リクエスト後、JSONフォーマットで返ってきたデータセットはCData Driver・Excel Add-in が各インタフェースのテーブル形式に変換して各ツールに返すようにします。
これにより、各種ツールからアドホックにAPIへリクエストを行い、最新のデータを柔軟に API から取得することが可能になります。
なお、今回は Excel からの接続としましたが、Power BI や Qlik といったBIツールなどからも同じように接続が可能である点が特徴です。各ツールでそれぞれコネクターを作る必要がありません。
シナリオ
今回はYahoo上で検索されている特定キーワードの検索ボリュームを取得できる「SearchVolumeAPI」を使って、昨今のパンデミックの影響により実施企業がが増えているリモートワークの動向を調べてみました。
手順
それでは実際に Excel と DS.API の連携する手順を説明していきましょう。
Excel は標準でODBC接続する機能を提供していますが、CData ではよりユーザーが使いやすいように、アドインとして使える製品も提供しているので、今回はそのCData Excel Add-inを用いて、DS.API に接続してみます。
DS.API アプリケーションIDの取得
DS.APIに接続するためには、アプリケーションIDが必要となります。
アプリケーションIDの登録・取得方法は以下のページを参考にしてみてください。
note.com
CData Excel Add-in for Yahoo! JAPAN DATA SOLUTIONのセットアップ
続いて、CData Excel Add-in for Yahoo! JAPAN DATA SOLUTIONをセットアップします。
以下のURLより30日間のトライラルが入手できるので、ダウンロードしてみてください。
www.cdata.com
ダウンロード後、セットアップファイルを実行すると、以下のようなウィザードが表示されるので、手順に従って、セットアップを進めます。
接続の設定
セットアップ完了後、Excelを立ち上げると、以下のようにCDataタブが追加されて、Yahoo! JAPAN DATA SOLUTION のAPIに接続できるようになります。
「データの取得」→「取得元:YahooDS」をクリックしてみましょう。
Excel Add-in では各種APIに接続するために、最初に接続情報を入力します。以下の項目に値を入力して、「接続のテスト」をクリックしてください。
なお、今回は検索キーワードとして「リモートワーク」を指定してみました。
プロパティ名 |
値 |
備考 |
App ID |
YOUR_APP_ID |
予め取得したAPP IDを指定します。 |
Search Keyword |
例)リモートワーク |
分析を行いたい検索キーワードを指定します。オプションです。 |
以下のようにメッセージが表示されればOKです。
SearchVolumeを取得してみる
それでは、実際にSearchVolumeAPIを実行してデータを取得してみましょう。
Yahoo! JAPAN DATA SOLUTION の各種APIはテーブルという形でExcel Add-in から利用できるようになっています。
以下のようにテーブル選択画面が表示されるので、「SearchVolume」を選択します。
次の画面では、データを取得する時の諸条件を構成するクエリを編集することができます。
CData Excel Add-in では内部的にSQLでデータの取得を実行することができますが、SQLがわからなくてもUIをいじるだけで任意のデータが取得できるようになっています。
今回はそのまま検索キーワードに従ってデータを取得するので、「最大行数」のオプションだけ外して、「OK」をクリックします。
これで以下のように日毎のリモートワークに関する検索ボリュームが取得できます。
あとはExcelの機能で分析を行うことができますね。例えばピボットグラフを利用して
取得したデータのテーブルを対象にしてみます。
分類項目となる軸に「Date」を配置し、値に「Volume」を入れれば、さくっと以下のようなグラフが構成できます。
このように CData Excel Add-in を使えば、APIを詳しく知らないユーザーでも任意の検索条件を用いて、Yahoo のビッグデータを駆使した分析が可能です。
Tips
ちなみに、SearchVolumeAPIは細かな条件を指定した分析もサポートしています。
例えば、抽出期間を週毎・月毎にしたり、抽出範囲に都道府県や男性・女性を指定して取得することも可能です。
利用できる検索アプローチは以下のヘルプにある「SearchXXXX」とついているカラムです。
cdn.cdata.com
このカラムに対してフィルター条件として「次に等しい」条件と任意の値を設定することで、抽出条件を調整できます。なお、サポートされている条件指定は「次に等しい」のみなので、注意してください。
例えば、Weeklyの検索ボリュームを取得したい場合は、以下のように指定できます。
取得結果を元に、ピボットグラフをリフレッシュしてみると、週毎のグラフに変わりました。
おわりに
本記事では Excel をもとに解説しましたが、CData DriverではExcel 以外にも様々なBIツールやアナリティクスツールの接続をサポートしています。
以下のURLで各ツールの接続リファレンスを公開していますので、普段使っているツールから是非試してみてください。
www.cdata.com
関連コンテンツ