如何从Google Analytics中提取数据并从中构建数据仓库(webhouse)?

nka*_*301 19 etl google-analytics data-warehouse

我点击了流式数据,例如引荐网址,热门目标网页,热门退出页面以及Google Analytics中的网页浏览量,访问次数和退回度等指标.目前还没有数据库可以存储所有这些信息.我需要从这个数据中建立一个从头开始的数据仓库(我相信这就是所谓的web-house).所以我需要从Google Analytics中提取数据并将其加载到仓库中,每天自动化.我的问题是: -

1)有可能吗?每天数据增加(有些指标或措施,如访问量和一些新的推荐网站),加载仓库的过程如何?

2)什么ETL工具可以帮助我实现这一目标?Pentaho我相信有一种方法可以从Google Analytics中提取数据,是否有人使用它?这个过程怎么样?除了答案之外,任何参考,链接都将受到赞赏

dou*_*oug 15

与往常一样,了解底层事务数据的结构 - 用于构建DW的原子组件 - 是第一步也是最重要的一步.

根据您检索数据的方式,基本上有两个选项.在此问题的先前答案中已经提到的其中一个是通过GA API访问您的GA数据.这非常接近数据显示在GA报告中的形式,而不是交易数据.使用它作为数据源的优点是"ETL"非常简单,只需从XML容器中解析数据即可.

第二种选择涉及更接近源的数据.

没有什么复杂的,仍然,几行背景也许在这里有用.

  • GA Web仪表板是通过解析/过滤GA事务日志(容纳与一个帐户中的一个配置文件对应的GA数据的容器)创建的.

  • 此日志中的每一行代表一个事务,并以来自客户端的HTTP请求的形式传递给GA服务器 .

  • 附加到请求(名义上是一个单像素的GIF)是包含所有从_trackPageview函数调用加上数据从客户端DOM,返回的数据的一个字符串GA饼干 此客户端的设置,并且的内容浏览器的位置栏(http:// www ....).

  • 虽然此请求来自客户端,但在执行GA的主要数据收集功能(_TrackPageview)后,GA脚本(驻留在客户端上)会立即调用它.

因此,直接使用此事务数据可能是构建数据仓库的最自然方式; 另一个优点是您可以避免中间API的额外开销.

GA日志的各个行通常不适用于GA用户.得到它们很简单.这两个步骤应该足够了:

  1. 修改网站的每个页面上的GA跟踪代码,以便它发送每个GIF请求的副本(在GA日志文件一行)到自己的服务器,具体而言,immeidately 之前调用_trackPageview(),加入这一行:

    pageTracker._setLocalRemoteServerMode();
    
    Run Code Online (Sandbox Code Playgroud)
  2. 接下来,只需在文档根目录中放置一个单像素的gif图像,并将其命名为"__utm.gif".

因此,现在您的服务器活动日志将包含这些单独的转换行,再次根据附加到GA跟踪像素的HTTP请求的字符串以及请求中的其他数据(例如,用户代理字符串)构建.这个前一个字符串只是键值对的串联,每个键都以字母"utm"开头(可能用于"提示跟踪器").并不是每一个UTM参数出现在每个GIF请求,其中几个,例如,仅用于电子商务交易 - 这取决于交易.

这是一个实际的GIF请求(帐户ID已经过清理,否则它完好无损):

http://www.google-analytics.com/__utm.gif?utmwv=1&utmn=1669045322&utmcs=UTF-8&utmsr=1280x800&utmsc=24-bit&utmul=en-us&utmje=1&utmfl=10.0%20r45&utmcn=1&utmdt=Position%20Listings%20%图7C%20Linden%20Lab&utmhn = lindenlab.hrmdirect.com&utmr = HTTP://lindenlab.com/employment&utmp=/employment/openings.php排序= DA && utmac = UA-XXXXXX-X&utmcc = __ UTMA%3D87045125.1669045322.1274256051.1274256051.1274256051.1%3B %2B__utmb%3D87045125%3B%2B__utmc%3D87045125%3B%2B__utmz%3D87045125.1274256051.1.1.utmccn%3D(引荐)%7Cutmcsr%3Dlindenlab.com%7Cutmcct%3D%2Femployment%7Cutmcmd%3Dreferral%3B%2B

如您所见,此字符串由一组键值对组成,每个键值对用"&"分隔.只需两个简单的步骤:(i)将此字符串拆分为&符号; (ii)用一个简短的描述性短语替换每个gif参数(键),使这更容易阅读:

gatc_version 1

GIF_req_unique_id 1669045322

language_encoding UTF-8     

screen_resolution         1280x800  

screen_color_depth        24位    

browser_language          en-us     

java_enabled              1         

flash_version             10.0%20r45

campaign_session_new      1         

page_title                位置%20列表%20%7C%20Linden%20Lab

host_name lindenlab.hrmdirect.com

referral_url        http://lindenlab.com/employment

page_request              /employment/openings.php?sort=da

account_string            UA-XXXXXX-X

cookies __utma%3D87045125.1669045322.1274256051.1274256051.1274256051.1%3B%2B__utmb%3D87045125%3B%2B__utmc%3D87045125%3B%2B__utmz%3D87045125.1274256051.1.1.utmccn%3D(推荐)%7Cutmcsr%3Dlindenlab.com%7Cutmcct%3D% 2Femployment%7Cutmcmd%3Dreferral%3B%2B

该饼干也很简单解析(见谷歌的简洁描述这里):例如,

  • __utma是唯一的访问者cookie,

  • __utmb,__ utmc是会话cookie,和

  • __utmz是推荐类型.

GA cookie存储记录用户每次交互的大部分数据(例如,点击标记的下载链接,点击站点上另一页面的链接,第二天的后续访问等).因此,例如,__ utma cookie由一组整数组成,每个组用"."分隔; 最后一组是该用户的访问次数(在这种情况下为"1").


小智 3

您可以使用Google 的数据导出 API或我们专门针对您的需求构建的服务:www.analyticspros.com/products/analytics-data-warehouse.html。

最好的,

-Caleb Whitmore www.analyticspros.com / www.analyticsformarketers.com