京公网安备 11010802034615号
经营许可证编号:京B2-20210330
对于大数据,串行的处理方式难以满足人们的要求,现在主要采用并行计算方式。现有的并行计算可以分为两种:
·细粒度的并行计算。这里细粒度主要是指指令或进程级别,由于GPU比CPU拥有更强的并行处理能力,人们将一些任务交给GPU并行处理,一些GPU制造商也推出了方便程序员使用的编程模型,如NVIDIA推出的CUDA等。
·粗粒度的并行计算。这里粗粒度指的是任务级别,人们将工作分布到不同机器中执行,最近流行的网格计算、分布式计算都属于粗粒度级别。
由于现有GPU编程模型还未完善,开发人员需要考虑大量的并行细节且任务较重,因此未得到流行。而一些新推出的分布式编程模型以其简单、方便等特点受到开发人员的欢迎并变得炙手可热,这里我们主要讨论粗粒度的并行计算。
由于大数据都分布在集群中,因此对数据的处理和分析需要在集群中进行,但是在多台机器上对分布式数据进行分析会产生巨大的性能开销,即使采用千兆比特或万兆比特带宽的网络,随机读取速度和连续读取速度都会比内存慢几个数量级。但是,现在高速局域网技术使得网络读取速度比硬盘读取要快很多。因此,将数据存储在其他节点上比存储在硬盘上的性能要好,而且还可以在多个节点上并行处理数据集。
对大数据分布处理会带来一些问题,首先就是节点间通信对并行处理的代价,一些操作如搜索、计数、部分聚集、联合等可以在每个节点上独立执行。单个节点处理后的结果需要合并,因此节点间的通信是不可避免的,但是并不是所有的聚集操作都能分散成可以独立操作的子操作,如求得所有数据的中位数。不过,大部分重要的操作都有分布式算法来减少节点间的通信。
节点间负载不平衡也是出现的主要问题。理想情况下,每个节点的计算量是相同的,否则工作量最大的节点将决定整个任务的完成时间,这个时间往往比负载平衡情况下的时间要长。最坏的情况下,所有的工作都集中在某个机器上,无法体现出并行的优势。数据在节点间如何分布对负载平衡产生影响,例如,一个包含1000个传感器10年内的观测值的数据集,传感器每15秒收集一次数据,这样一个传感器10年内将产生两千多万个观测值。我们将数据根据传感器并按时间顺序分布到10个节点上,每个节点包含100个传感器的观测值,如果对某个传感器收集的数据进行操作,那么大部分节点将处于闲置状态。如果先按时间顺序对数据进行分布,那么根据时间的操作也会造成负载不平衡。
分布式系统的另一个问题就是可靠性。就像拥有四个引擎的飞机比拥有两个引擎的飞机更容易出现引擎故障一样,一个拥有10个节点的集群很容易出现节点故障。这可以通过在节点间复制数据来解决,对数据进行复制,既可以提高数据分析的效率,也可以通过冗余来应对节点故障。当然,数据集越大,对数据副本的管理和维护也越困难。
目前对大数据处理和分析的应用更多的是集中在数据仓库技术、预测分析、实时分析、商业智能、数据统计等方面。这些需求对企业有巨大的帮助。
将PB级的数据存储起来并不是一件困难的事情,但是如何进行高效的存储并不简单。首先要考虑的是,如何组织数据的结构使其能够更多地支持上层的软件,而不需要对数据进行转储和重新组织。当数据需要发生转换的时候避免因转储、抽取、整合等而带来的延迟。
有效的预测分析技术,尤其是实时分析对企业的决策有很大的帮助。例如,超市可以根据庞大的用户历史消费记录来预测某一用户下次购买商品的倾向,从而在结账的时候可以专门针对某一用户打印其关心的优惠券。足球队管理层可以根据用户的购票记录为其推荐更人性化的月票、季票等套票。
目前,像SAS、SPSS等传统数据分析软件因其数据处理能力受限于单机的计算能力,对大数据的处理显得力不从心。IBM Netezza等新兴的数据分析软件往往需要支付昂贵的许可费用,因此Hadoop,MapReduce,R等开源的大数据分析工具受到越来越多的关注和青睐。
相比于商业软件,开源软件完全免费且不需要支付昂贵的许可费用,另外在其背后还拥有庞大的开源团队的支持。但是能否完全跟得上市场的需求和发展速度是关键性的问题,毕竟这些软件不像商业软件那样有巨大的利益驱动推动它们的发展。
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
很多数据分析师画过趋势图、做过业绩预测,但当被问到“这个月销售额增长20%,到底是长期趋势自然增长,还是促销活动的短期 ...
2026-08-21在数据分析与数据可视化工作中,直方图是展示数据分布特征、离散程度、集中区间的核心图表,能够直观呈现数值数据的频次分布规律 ...
2026-08-20在数据分析领域有一句核心准则:垃圾数据进,垃圾数据出。数据清洗是数据分析、数据建模、数据可视化之前的必经前置工序,也是保 ...
2026-08-20 很多数据分析师做过按月份的销售额趋势图,画过按天的流量折线图,但当被问到“时间序列和普通数据有什么本质区别”“季节性 ...
2026-08-20在Python数据分析与数据清洗工作中,Pandas是最核心的数据处理库,DataFrame是结构化数据的标准存储格式。在实时数据采集、循环 ...
2026-08-19在零售行业大数据分析与精细化运营领域,纸尿裤旁摆放啤酒是最经典、最具代表性的商业案例。两种看似毫无关联的商品,一个是婴幼 ...
2026-08-19 很多数据分析师能熟练地计算指标、搭建标签体系,但当被问到“画像到底在解决什么问题”“画像和标签是什么关系”“画像如何 ...
2026-08-19在数据分析、业务监控、质量检测与风险管控工作中,数据波动性是衡量数据稳定性、业务健康度、结果可信度的核心依据。数据波动代 ...
2026-08-18很多分析师在设计标签时思路清晰,但真到落地环节却面临“数据在手,不知如何转化为可用标签”的困境:或因加工方式选择不当导致 ...
2026-08-18在数据分析、业务评价、产品评级、用户分层与综合决策场景中,单一指标往往无法全面、客观地评价事物整体水平。现实中的评价对象 ...
2026-08-18在数理统计、假设检验、数据分析与机器学习领域中,卡方分布(χ²分布)是继正态分布、t分布之后最重要的连续型概率分布之一。 ...
2026-08-17在Python数据清洗、文本校验、账号密码规则校验、脏数据过滤、字符串规整化处理中,正则表达式是最高效、最常用的文本匹配工具。 ...
2026-08-17 很多分析师每天和数据打交道,但当被问到“标签是什么”“标签和指标有什么区别”“标签体系如何设计”时,却常常答不上来。 ...
2026-08-17手游行业具备用户迭代快、竞争激烈、用户粘性易流失的典型特征。随着新游持续上线、玩家审美升级、玩法疲劳等问题出现,存量用户 ...
2026-08-14在数字化产品运营、商业数据分析、业务增长管理中,零散的指标统计无法支撑系统性的业务决策。单一的点击率、转化率、销量数据只 ...
2026-08-14 很多数据分析师每天都在写SQL,但当被问到“数据查询语言(DQL)的本质是什么”“SELECT语句中各子句的书写顺序与实际执行顺 ...
2026-08-14在数据库数据分析、数据清洗、报表统计与业务查询场景中,日期时间是最高频、最核心的基础字段。数据库中存储的日期格式多样,包 ...
2026-08-13在数据统计分析与数据清洗工作中,箱线图是一种简洁高效、客观性强的数据可视化图表,能够直观呈现数据集的分布特征、离散程度和 ...
2026-08-13 很多数据分析师写过无数个SELECT查询,但当被问到“如何新建一张表来固化中间数据”“创建视图和创建物理表有什么区别”“视 ...
2026-08-13在自动化办公、数据采集、定时统计、日志清理、系统监控等场景中,程序往往需要按照固定时间间隔重复执行指定任务,这种运行机制 ...
2026-08-12