3、细节实现 数据清洗: 3.1、LoggerUtil.java 3.1.1、主要作用:将字符串数据解析成 HashMap 键值对集合。...3.1.2、重要细节: 字符串的截取 不合法数据的过滤 字符串的解码(就是将%相关的字符串编码转换成可读类型的数据) 错误数据的 Logger 输出 3.1.3 过程描述 传入数据非空判断 去除数据首位空格...3.2.2、重要细节: 开始清洗数据,首先使用 LoggerUtil 将数据解析成 Map 集合 将得到的存放原始数据的 Map 集合封装成事件以用于事件数据合法性的过滤(事件的封装依赖于一个枚举类,...使用事件的 alias 别名来区分匹配事件) 事件的封装要按照平台来区分 平台区分完成后,按照事件类型来区分(例如 en=e_l 等) 事件封装过程中涉及到事件数据完整性的清洗操作 数据输出:创建...,输出 Key 的类型为总维度(进行用户分析的组合维度),输出 Value 的类型为 Text(保存的是 uuid)读取数据时,要验证数据有效性。
Hadoop离线数据分析平台实战——420订单分析 项目进度 模块名称 完成情况 用户基本信息分析(MR)� 完成 浏览器信息分析(MR) 完成 地域信息分析(MR) 完成 外链信息分析(MR) 完成..., 通过这六个分析指标的数据我们可以指定网站的订单情况。...计算规则 和统计stats_event&stats_view_depth表的数据不太一样, 我们采用每个统计指标写一个hql语句+sqoop语句的方法进行数据的插入操作。...也就是说分别统计订单数量和订单金额,而不是使用一张hive表同时保存多个指标的数据, 而是采用多个表分别保存不同指标的数据或者采用一张表非同时的保存多个指标的数据。...最终数据保存:stats_order。涉及到所有列。
Hadoop离线数据分析平台实战——320会话分析 项目进度 模块名称 完成情况 用户基本信息分析(MR)� 未完成 浏览器信息分析(MR) 未完成 地域信息分析(MR) 未完成 外链信息分析(MR)...未完成 用户浏览深度分析(Hive) 未完成 订单分析(Hive) 未完成 事件分析(Hive) 未完成 模块介绍 会话分析主要同时计算会话个数和会话长度, 主要应用在用户基本信息分析模块和浏览器信息分析模块这两部分...会话个数就是计算u_sd的唯一个数,长度就是每个会话的长度总和。 计算规则 会话个数指的是计算所有u_sd的个数, 会话长度就是计算每个会话的长度, 然后计算这些长度的一个总值。...(注意:处理的数据为所有事件产生的数据) 最终数据保存:stats_user和stats_device_browser。
Hadoop离线数据分析平台实战——410事件分析 项目进度 模块名称 完成情况 用户基本信息分析(MR)� 完成 浏览器信息分析(MR) 完成 地域信息分析(MR) 完成 外链信息分析(MR) 完成...计算规则 计算event事件中,计算category和action分组后的记录个数,不涉及到任何的去重操作。 最终数据保存:stats_event。涉及到所有列。
Hadoop离线数据分析平台实战——480外链数据展示 项目进度 模块名称 完成情况 1. 程序后台框架搭建 完成 2. 用户基本信息展示 完成 3. 浏览器信息展示 完成 4....事件数据展示 未完成 8. 订单数据展示 未完成 模块介绍 外链数据展示主要包括两个页面, 分别为用户外链偏好结果展示(活跃用户数)以及跳出率分析图表。...采用js获取后台json数据的方式进行数据的请求, 在前台将json数据转换为highcharts需要的数据格式进行展示。 编码步骤 编写后台接口 编写前端页面 测试
Hadoop离线数据分析平台实战——500事件数据展示 项目进度 模块名称 完成情况 1. 程序后台框架搭建 完成 2. 用户基本信息展示 完成 3. 浏览器信息展示 完成 4....事件数据展示 未完成 8. 订单数据展示 未完成 模块介绍 事件数据展示主要包括一个页面, 通过我们选择不同event的category来展示对应的流图。...采用js获取后台json数据的方式进行数据的请求, 在前台将json数据转换为highcharts需要的数据格式进行展示。 编码步骤 编写后台接口 编写前端页面 测试
Hadoop离线数据分析平台实战——350公用代码重构 项目进度 模块名称 完成情况 用户基本信息分析(MR)� 完成 浏览器信息分析(MR) 完成 地域信息分析(MR) 未完成 外链信息分析(MR)...Mapper类中获取hbase的value中的数据代码公用。
Hadoop离线数据分析平台实战——300活跃会员分析 项目进度 模块名称 完成情况 用户基本信息分析(MR)� 未完成 浏览器信息分析(MR) 未完成 地域信息分析(MR) 未完成 外链信息分析(MR...计算规则 活跃会员(active_member)计算规则: 计算当天(确定时间维度信息)的pageview事件的数据中memberid的去重个数。...(这里只所以选择pageview事件,是可能会存在一种可能: 某个会员在当天没有进行任何操作,但是他订单支付成功的操作在今天在被触发, 这样在所有数据中就会出现一个java_server平台产生的订单支付成功事件...最终数据保存: stats_user和stats_device_browser。 涉及到的列(除了维度列和created列外):active_members。...编码步骤 Copy ActiveUser计算的相关代码 修改对应信息(获取列、过滤信息、collector类、xml配置等) 测试
一、背景 饿了么BDI-大数据平台研发团队目前共有20人左右,主要负责离线&实时 Infra 和平台工具开发。...其中6人的离线团队需要维护大数据集群规模如下, Hadoop集群规模1300+ HDFS存量数据40+PB,Read 3.5 PB+/天,Write 500TB+/天 14W MR Job/天,10W...本文接下来主要介绍饿了么大数据团队如何通过对计算引擎入口的统一,降低用户接入门槛。...如何让用户自助分析任务异常及失败原因,以及如何从集群产生的任务数据本身监控集群计算/存储资源消耗,监控集群状况,监控异常任务等。...从管理角度来说,大数据集群的入口太多,将难以实现统一管理,难以实现负载均衡、权限控制,难以掌控集群整体对外服务能力。并且当有新的计算需求需要接入,我们还需要为其部署对应的客户端环境。
Hadoop离线数据分析平台实战——290活跃用户分析 项目进度 模块名称 完成情况 用户基本信息分析(MR)� 未完成 浏览器信息分析(MR) 未完成 地域信息分析(MR) 未完成 外链信息分析(MR...计算规则 active_user计算规则:当天所有数据中,uuid的去重个数。 最终数据保存: stats_user和stats_device_browser。
Hadoop离线数据分析平台实战——510订单数据展示 项目进度 模块名称 完成情况 1. 程序后台框架搭建 完成 2. 用户基本信息展示 完成 3. 浏览器信息展示 完成 4....事件数据展示 完成 8....订单数据展示 未完成 模块介绍 订单数据展示主要包括一个页面, 通过选择不同的currency type和payment type来展示不同的数据, 主要包括展示订单数量、订单金额以及成功支付和退款订单的信息...采用js获取后台json数据的方式进行数据的请求, 在前台将json数据转换为highcharts需要的数据格式进行展示。...编码步骤 编写后台接口 编写前端页面 测试 注意:在编码之前,请将模拟数据中的dimension_date中对应的时间调整为昨日和前日的,方便我们进行数据的展示。
实时批量融合计算时,一般需要批量将数据推送到hbase供实时使用。本文将通过两个典型场景--累计场景与最新分区场景,讨论批量和实时衔接的设计方案,解决批量延迟可能导致的问题。...累计场景在之前的文章中讲述了实时离线结合共同计算客户180天累积交易金额的场景。这种情况下批量是计算178~T-2的累计值,实时算T-1,T两天的累计值。...批量将累计结果推送到hbase中,实时的计算结果关联hbase汇总批量结果后获得客户180天的累计值。具体的开发中,假设此hbase表的rowkey为客户号_分区时间,批量实时交互细节如下图所示。...以3号为例,批量计算了178天前~2号的累计结果推送到hbase中,hbase的rowkey是客户号_2号。实时等到4号的时候使用这份数据,并汇总实时自行计算的3号~4号数据得到180天的汇总。...此时可设计成实时计算最近3天的累计值(客户每天的累计值存下来,方便进行多天的累计)。如果发现hbase中客户号_2号的数据还未到,则向前取一天即取客户号_1号的数据进行汇总。
Hadoop离线数据分析平台实战——400用户浏览深度分析 项目进度 模块名称 完成情况 用户基本信息分析(MR)� 完成 浏览器信息分析(MR) 完成 地域信息分析(MR) 完成 外链信息分析(MR)...hive的最终数据保存到hdfs的指定目录中,通过sqoop将数据导入到mysql中。 计算规则 计算pageview事件中,当前url的个数作为pv值,不涉及到去重操作。...最终数据保存:stats_view_depth。涉及到的所有列。 涉及到其他表有dimension_platform、dimension_date、dimension_kpi。
Hadoop离线数据分析平台实战——520项目总结 到这里本次项目也就介绍完了,不过在项目最后简单的介绍一些数字以及项目优化、扩展等情况 通过本次课程的学习,希望同学们对离线数据分析这一块有一个初步的了解..., 希望同学们在学习完本课程后,对如何在工作中使用离线数据分析有一个初步的了解。...在本次课程中,我主要目标是放到了如何产生用户浏览数据以及如何解析数据, 对应解析后的数据结果展示,讲解的不是特别的详细, 所以希望同学们在学习之余,自己想想如何能够更好的显示解析后的数据, 最后祝同学们能够有一个好的开始...Hive程序: 指定使用多个reducer、设置hive执行mr时候的内存参数、调整HQL语句结构等 数据展示: 对应api的产生可以通过添加cache的方式减少查询数据的次数等。...数据解析: 利用hadoop的本身优势,可以动态的添加datanode节点,增大数据的执行能力。
Hadoop离线数据分析平台实战——370外链信息分析 项目进度 模块名称 完成情况 用户基本信息分析(MR)� 完成 浏览器信息分析(MR) 完成 地域信息分析(MR) 完成 外链信息分析(MR) 未完成...区别在于计算跳出会话。 ---- 外链维度信息(不考虑平台platform和日期date), 我们需要统计两个层面的数据,即:all、具体外链。...需要原始数据:referrer url、uuid、u_sd、serverTime、platform这五个维度的字段信息, 所以在当前只有pc端数据和后台服务端数据的情况下,只需要对pageview事件的数据进行统计计算就可以了...编码步骤 由于计算跳出会话的规则和计算活跃用户&总会话的规则不一样,所以这里我们采用两个不同mapreduce程序来计算统计数据。 在mysql中执行文件.....针对map集合中的单个会话集合数据进行按照时间排序 3. 计算跳出会话个数 解决方案: 采用二次排序来避免在reducer阶段的大量内存操作。
Hadoop离线数据分析平台实战——470地域信息数据展示 项目进度 模块名称 完成情况 1. 程序后台框架搭建 完成 2. 用户基本信息展示 完成 3. 浏览器信息展示 完成 4....事件数据展示 未完成 8. 订单数据展示 未完成 模块介绍 地域信息数据展示包括两个界面, 分别为活跃用户地域分布以及跳出率分析。...采用js获取后台json数据的方式进行数据的请求, 在前台将json数据转换为highcharts需要的数据格式进行展示。 编码步骤 编写后台接口 编写前端页面 测试
Hadoop离线数据分析平台实战——490用户浏览深度数据展示 项目进度 模块名称 完成情况 1. 程序后台框架搭建 完成 2. 用户基本信息展示 完成 3. 浏览器信息展示 完成 4....事件数据展示 未完成 8. 订单数据展示 未完成 模块介绍 用户浏览深度数据展示主要包含一个页面, 在这个页面中通过分别显示用户角度的浏览深度和会话角度的浏览深度来进行数据展示。...采用js获取后台json数据的方式进行数据的请求, 在前台将json数据转换为highcharts需要的数据格式进行展示。 编码步骤 编写后台接口 编写前端页面 测试
Hadoop离线数据分析平台实战——380MapReduce程序优化 项目进度 模块名称 完成情况 用户基本信息分析(MR)� 完成 浏览器信息分析(MR) 完成 地域信息分析(MR) 完成 外链信息分析...(MR) 完成 用户浏览深度分析(Hive) 未完成 订单分析(Hive) 未完成 事件分析(Hive) 未完成 调优的目的 充分的利用机器的性能,更快的完成mr程序的计算任务。...), 而reducer阶段包含mapper数据的获取、数据合并(sort&merge)、reduce处理以及写出操作。...注意:hbase客户端调优只涉及到一个cache的操作,详见代码TransformerBaseRunner的initScans方法 ---- 一、调优的目的 充分的利用机器的性能,更快的完成mr程序的计算任务...,在mapper节点上执行的时候是每处理一条数据后就从hbase中获取下一条数据,通过设置cache值可以一次获取多条数据,减少网络数据传输。
Hadoop离线数据分析平台实战——330会话分析Hourly分析 项目进度 模块名称 完成情况 用户基本信息分析(MR)� 未完成 浏览器信息分析(MR) 未完成 地域信息分析(MR) 未完成 外链信息分析...会话个数以及会话长度这三个指标的数据。...我们通过修改现有的job来达到完成hourly分析数据统计的目标。 分别通过在active user和sessions这两个job中添加数据可以达到我们的分析要求。...计算规则 hourly分析分为hourly active user分析、hourly sessions分析以及hourly sessions length分析, 分别计算各个小时的活跃用户、会话个数以及会话长度来进行展示操作...最终数据保存:stats_hourly表中,每个小时的数据保存到对应列中。 涉及到其他表有dimension_platform、dimension_date、dimension_kpi。
同时,整个离线算法平台在整体流程中添加多个控制点,优化任务的执行流程,例如缓存管理、统一数据时间等控制优化功能。 最后,离线平台负责将训练的模型和推荐所需的特征、池子数据输出到神盾产品化后台。...第一,推荐算法所使用的数据在数据时间上必须符合逻辑,因此离线算法平台指定所有数据读取都必须满足取数规则。 ?...此外,离线平台使用的特征数据格式和特征表所存储的特征数据是不相同的。...三、算法库 训练算法 离线算法平台的算法库包括三种类型的算法:计算相似度的CF算法(User、Item),分类算法(LR、XGBoost、FM等)、排序算法(PRFM算法)。...,意味着算法人员可以基于离线平台的输出数据开发自己独有的算法,甚至是只使用离线平台的特征引擎接口输出数据,对接到其他机器学习系统的训练模型。
领取专属 10元无门槛券
手把手带您无忧上云