
大数据处理_大数据处理技术
每个企业或多或少每天都会需要做一个数据统计,来掌握公司的运营情况,看看自己的客户每天是否有增加等等,当客户的数据信息达到一定的程度,单独的使用一台计算机进行计算肯定不行,因此就会需要多台机器同时处理。现在有很多流行的分布式系统,架构设计的很复杂,考虑了各种容错性,协作性,任务分配性等,但是要快速的掌握和部署到实际的机器上还是很困难的。为此,提出一个简单、有效并能根据实际情况灵活开发的大数据处理的架构。
假设条件:
(1)要处理的数据分布在其他的数据记录机上,比如有w1~w12台机器,每台机器收集到数据量相差不大。
(2)现有三台机器stat1~stat3(3台机器的性能和配置相差不大)可供使用的数据统计机器,用来从w1~w12这12台机器上收集数据,并进行处理,得到用户的信息。
(3)如果要统计的数据必须要将w1~w12台机器上的数据全部取回来,并做数据消重,比如说要按照IP消重。如果不需要消重,那么就没有必要将所有的数据都合并在一起,可以分别计算后再求和。
首先: 我们查看w1~w12这12台机器上数据文件大小,并按照从大到小的顺序将数据文件排列,将最大的数据文件分给给stat1,次大的分配给stat2,第三大的分配给stat3,将第四大的分配给stat3,第五大的分配给stat2,第六大的分配给stat1,第七大的分配给stat1,第八大的分配给stat2,等等如此反复,这样stat1~stat3每台机器上对应的数据文件大小就差不多了。如果觉得w1~w12每台机器上的数据文件相差不大,那么就可以按照就近原则,将w1~w4分配给stat1,w5~w8分配给stat2,w9~w12分配给stat3进行处理。
确定每台数据统计机器要处理那些数据后,就可以在每台机器上写一个定时任务,可以同时在每日凌晨的某个时间点,每个stat机器去相应的w机器上去抓取数据,并进行分析。如果要对特定的字段比如IP需要做全局去重(w1~w12),那么我们可以采用简单的方法,将IP做个MD5转换,取MD5的第一个字母做为分割线,把IP分到16个不同的文件中,比如ip1~ip16,这样stat1~stat16每台机器上都会产生16个ip文件。每台stat机器处理完成后,生成一个done文件,表示其任务已经结束。然后处于等待阶段
从stat1~stat3这三台机器中选中一台机器作为master,当其完成抓取数据,将ip分配到16个IP文件中,并生成done文件后,去其他两台stat机器上抓取done文件,如果三台机器的done文件都存在了,那么master就将每台机器上的ip1~ip5文件都拷贝到stat1这台机器上,将ip6~ip10拷贝到stat2这台机器上,其ip11~ip16拷贝到stat3上,master拷贝任务完成后,分别在三台机器上生成一个done1文件,表示分配任务完成。
stat1~stat3的机器在等待过程中,一旦发现有done1文件存在,就分别对分配给自己的ip文件进行处理,比如stat1就会先处理分配给自己的三个ip1进行排序去重得到一个数据,然后对分配给自己的三个ip2文件进行排序去重得到一个数据,如此反复得到5个数据,stat1可以将这5个数据记录到数据库中; stat2和stat3重复stat1的过程,分别得到5和6个数据,也同时放到同一个数据库中,这样,每天就会得到16个数据,我们将这16个数据在数据库中求和,就得到了w1~w12这12台机器上总的去重后的IP数。至此整个过程完成。
在整个过程,任何一个地方都可以设置出错判断,一旦出错可以重复几次该,比如说抓取数据文件,考虑到可能会因为网络原因,导致数据文件抓取不过来,因此可以sleep 10分钟后再去抓取,如果尝试4次都失败,就可以发送报警邮件或者报警短信通知维护人员。
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
CDA 数据分析师:善用 Power BI 索引列,提升数据处理与分析效率 在 Power BI 数据分析流程中,“数据准备” 是决定后续分析质量 ...
2025-08-18CDA 数据分析师:巧用 SQL 多个聚合函数,解锁数据多维洞察 在企业数据分析场景中,单一维度的统计(如 “总销售额”“用户总数 ...
2025-08-18CDA 数据分析师:驾驭表格结构数据的核心角色与实践应用 在企业日常数据存储与分析场景中,表格结构数据(如 Excel 表格、数据库 ...
2025-08-18PowerBI 累计曲线制作指南:从 DAX 度量到可视化落地 在业务数据分析中,“累计趋势” 是衡量业务进展的核心视角 —— 无论是 “ ...
2025-08-15Python 函数 return 多个数据:用法、实例与实战技巧 在 Python 编程中,函数是代码复用与逻辑封装的核心载体。多数场景下,我们 ...
2025-08-15CDA 数据分析师:引领商业数据分析体系构建,筑牢企业数据驱动根基 在数字化转型深化的今天,企业对数据的依赖已从 “零散分析” ...
2025-08-15随机森林中特征重要性(Feature Importance)排名解析 在机器学习领域,随机森林因其出色的预测性能和对高维数据的适应性,被广 ...
2025-08-14t 统计量为负数时的分布计算方法与解析 在统计学假设检验中,t 统计量是常用的重要指标,其分布特征直接影响着检验结果的判断。 ...
2025-08-14CDA 数据分析师与业务数据分析步骤 在当今数据驱动的商业世界中,数据分析已成为企业决策和发展的核心驱动力。CDA 数据分析师作 ...
2025-08-14前台流量与后台流量:数据链路中的双重镜像 在商业数据分析体系中,流量数据是洞察用户行为与系统效能的核心依据。前台流量与 ...
2025-08-13商业数据分析体系构建与 CDA 数据分析师的协同赋能 在企业数字化转型的浪潮中,商业数据分析已从 “可选工具” 升级为 “核 ...
2025-08-13解析 CDA 数据分析师:数据时代的价值挖掘者 在数字经济高速发展的今天,数据已成为企业核心资产,而将数据转化为商业价值的 ...
2025-08-13解析 response.text 与 response.content 的核心区别 在网络数据请求与处理的场景中,开发者经常需要从服务器返回的响应中提取数 ...
2025-08-12MySQL 统计连续每天数据:从业务需求到技术实现 在数据分析场景中,连续日期的数据统计是衡量业务连续性的重要手段 —— 无论是 ...
2025-08-12PyTorch 中 Shuffle 机制:数据打乱的艺术与实践 在深度学习模型训练过程中,数据的呈现顺序往往对模型性能有着微妙却关键的影响 ...
2025-08-12Pandas 多列条件筛选:从基础语法到实战应用 在数据分析工作中,基于多列条件筛选数据是高频需求。无论是提取满足特定业务规则的 ...
2025-08-12人工智能重塑 CDA 数据分析领域:从工具革新到能力重构 在数字经济浪潮与人工智能技术共振的 2025 年,数据分析行业正经历着前所 ...
2025-08-12游戏流水衰退率:计算方法与实践意义 在游戏行业中,流水(即游戏收入)是衡量一款游戏商业表现的核心指标之一。而游戏流水衰退 ...
2025-08-12CDA 一级:数据分析入门的基石 在当今数据驱动的时代,数据分析能力已成为职场中的一项重要技能。CDA(Certified Data Anal ...
2025-08-12破解游戏用户流失困局:从数据洞察到留存策略 在游戏行业竞争白热化的当下,用户流失率已成为衡量产品健康度的核心指标。一款游 ...
2025-08-11