2012/12/01現在、Gdata APIによるGoogle Analytics情報の取得は、デイリーで50000コールが上限となっています。
この上限を超えない事だけを意識すれば良いかと言うと、そうでもありません。
例えば定時処理で大量にAPIをコールする場合、仮に1コールで1秒を要すると、50000コールで約14時間必要となるので、その辺りの考慮も必要です。
その際、重要なポイントは、以下の二つになりそうです。
(1). 1APIにおける最大返却行数は10000行
https://developers.google.com/analytics/devguides/reporting/core/v3/reference#maxResults
"The Analytics Core Reporting API returns a maximum of 10,000 rows per request"
(2). API(GET)によるアクセス時、最大URL長は2073バイトとなる模様(環境により異なる??)
2073バイトで正常なレスポンス、2074バイトで異常なレスポンスになりました。
この二つをまとめると、意識すべきことは、APIのリクエストパラメータを工夫して
URL長が2073バイト以内になるようにしつつ 10000行に限りなく近い行数のレスポンスを狙うになります。
パラメータには正規表現も使えるので、理想なリクエストを見つけたいところです。
パラメータの確認には、以下が重宝しそうです。
Google Analytics Query Explorer 2:
http://ga-dev-tools.appspot.com/explorer/
パラメータについて、まとめておきます。
ids : Google AnalyticsのプロファイルID
metrics : 指標
dimensions : 指標の次元
sort : ソート順
start-date : 開始日
end-date : 終了日
segment : (調査中...)
filters : 正規表現等のフィルタ
start-index : 開始行No.
max-results : 返却される最大行数
公式ヘルプ:
https://support.google.com/analytics/?hl=ja
metricsとdimensionsの使い方ですが
metricsでPV数や新規訪問数といった、取得する指標を決定して dimensionsで細分化(年単位、月単位、URL単位...)を行うと理解しています。
ディメンションと指標:
https://support.google.com/analytics/bin/answer.py?hl=ja&answer=1033861
segmentが、まだ良くわかっていないのですが、以下に関係しているのだろうか。。。
アドバンス セグメントについて
https://support.google.com/analytics/bin/answer.py?hl=ja&answer=1033017
パラメータについて、以下を参考にさせて頂きました。
[C#] Google Analytics Data Export API を使う - ページごとのページビュー数の取得:
http://www.ipentec.com/document/document.aspx?page=csharp-google-analytics-data-export-api-get-value
まずは、URLのルールと取得したい情報の整理を行い、
次に、それらから最も効率良くAPIをコールするパラメータを見つける事が近道と思います。
行き当たりばったりで突き進むと怪我しそう。。。
No comments:
Post a Comment