我正在使用Doug Tan制作的PHP中的Google AnalyticsAPI类从特定的个人资料中检索Google Analytics数据。
点击此处的网址:http://code.google.com/intl/nl/apis/analytics/docs/gdata/gdataArticlesCode.html
当您创建班级的新实例时,您可以添加个人资料ID,Google帐户+密码,日期范围以及您希望从分析中获取的任何维度和指标。
例如,我想看看有多少人在2009年访问了不同国家的网站。
//make a new instance from the class
$ga = new GoogleAnalytics($email,$password);
//website profile example id
$ga->setProfile('ga:4329539');
//date range
$ga->setDateRange('2010-02-01','2010-03-08');
//array to receive data from metrics and dimensions
$array = $ga->getReport(
array('dimensions'=>('ga:country'),
'metrics'=>('ga:visits'),
'sort'=>'-ga:visits'
)
);
现在你知道这个API类是如何工作的,我想解决我的问题。
速度。从分析数据库中检索多种类型的数据需要很多时间,尤其是在构建具有不同度量/维度的不同数组时。我怎样才能加快这个过程?
是否可以将所有可能的数据存储在缓存中,以便我可以检索数据而无需一遍又一遍地加载数据?
答案 0 :(得分:2)
您可以确保在缓存中加载数据,确切地说,缓存数据的方式/位置完全取决于您。您可以使用从每个请求缓存(对于此特定问题而言毫无用处)到APC,memcached,本地数据库或甚至只是将原始结果保存到文件中的任何内容。这些当然不会更快地从Google中实际检索数据。
在这方面,很可能(没有看到代码)向Google发出的请求可能是按顺序执行的。可以扩展PHP类以允许并行请求来自Google的多组数据(例如,使用cURL Multi)。