
在互联网企业,在分析端使用闭源的商用软件几乎是不可能的,原因很简单:成本太高,不管是使用,还是研发及维护。 但我个人觉得这可能还不是最主要的原因,对于互联网企业来说,数据虽然获取更容易,但环境更为复杂。开源软件可以根据业务的变化 进行调整,但商业的闭源软件则很难做到。
好多人问过我这个问题,我会说你有多大内存就能处理多大数据,这话显然不负责任。这个问题确实不太好回答,因为每个人心中的大数据是不一样的。 比如有人觉得几百万就是大数据,有些人觉得没个几亿就不算大数据,甚至有人说你处理不了的就是大数据(擦!?)。这些还只是从记录 数(数据存储)的角度来看的,我们换个角度想想:建模工程师要做的事情无非是将用户和产品进行合理匹配,那最细粒度就是用户维(或产品维)。 试问你有超过千万的用户数据分析建模么?对于一般的分析(工程)师来说,常见的情况还是几十万甚或百万级别。这个量级对于R来说就很容易了, 比如我刚刚的工作就是在自己的PC上载入了一个50000000×3的数据框。
接着我们在说说速度,曾经有太多的人抱怨R的运行速度太慢,甚至堂而皇之的公开表明观点。但我发现大部分人是因为不熟悉R语言的编程, 而是直接套用C或Java的编程方式,因而导致无法快速得到结果。举两个例子:
有次在微博上一位朋友抱怨说R做了一个几千乘几千的相关矩阵花了他1天时间,我当时就愕然了,然后默默地给了一个几秒钟搞定的脚本。
还有一次更具有代表性:我的项目组有个R的项目需要上线,于是直接把原始代码交予了一位项目成员,嘱咐他稍作改动即可上线。 但他发现需要3个小时才能将线上的数据计算完毕,于是又找到我帮忙优化。我看了一下,果不其然,Java风格的R代码,向量化编程的思想 一点都没有用。改之,3分钟结束计算。
R语言的向量化运算几乎可以和底层语言的速度一较高下,并且向量化是天然的并行化方式,如果条件允许,R的向量化编程可以很方便的转化为并行框架, 这也就是为什么说R + Hadoop是大数据的发展方向的理由之一。
再说个例子:试问100万行,20万列的数据是大数据么(你没看错,是200000维)?恩,R能够处理,而且可以在这类数据上构建模型。
对于管理者来说,合适的人出现合适的岗位是衡量管理者是否合格的重要标准之一。对于数据分析人员,合适的工具匹配合适的数据则是是否胜任工作的 基本素质之一。R并不是通吃所有的数据场景,它只是在出现在该出现的分析建模环节。
R的位置在哪里?先让我们看看所谓的大数据是如何从企业中传递的:
从最底层的原始数据来看,PB级数据确实不是R所擅长,但这些数据有Hadoop或者其他高性能存储和处理系统;
向上是针对于不同业务场景的数据集市,经过清洗后,数据的规模则下降到了TB级;
再向上则是针对于特定任务的分析和挖掘模块,数据已经被整理到了GB级,这时候R的处理则是非常方便
R分析的结果则是MB级的输出,比如图表、得分,或者是规则。比如规则很容易在数据集市这段做并行化计算
我的团队在大量使用R作为分析建模工具,看似比较另类,但其实Google、Facebook、Linkedin等公司已经有大量的直接使用R做分析挖掘的应用, 只是大家不太留意罢了。
一句话总结:R并不是在象牙塔里供科研人员玩耍的玩具,而是实实在在工业界使用的便捷环境。
当然,这里还有很多问题没有展开,比如:
R语言的数据挖掘应该在并行化环境完成还是在单台机器的计算环境完成?
生产中直接实施R环境是否可行?
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
在数据成为新时代“石油”的今天,几乎每个职场人都在焦虑: “为什么别人能用数据驱动决策、升职加薪,而我面对Excel表格却无从 ...
2025-10-18数据清洗是 “数据价值挖掘的前置关卡”—— 其核心目标是 “去除噪声、修正错误、规范格式”,但前提是不破坏数据的真实业务含 ...
2025-10-17在数据汇总分析中,透视表凭借灵活的字段重组能力成为核心工具,但原始透视表仅能呈现数值结果,缺乏对数据背景、异常原因或业务 ...
2025-10-17在企业管理中,“凭经验定策略” 的传统模式正逐渐失效 —— 金融机构靠 “研究员主观判断” 选股可能错失收益,电商靠 “运营拍 ...
2025-10-17在数据库日常操作中,INSERT INTO SELECT是实现 “批量数据迁移” 的核心 SQL 语句 —— 它能直接将一个表(或查询结果集)的数 ...
2025-10-16在机器学习建模中,“参数” 是决定模型效果的关键变量 —— 无论是线性回归的系数、随机森林的树深度,还是神经网络的权重,这 ...
2025-10-16在数字化浪潮中,“数据” 已从 “辅助决策的工具” 升级为 “驱动业务的核心资产”—— 电商平台靠用户行为数据优化推荐算法, ...
2025-10-16在大模型从实验室走向生产环境的过程中,“稳定性” 是决定其能否实用的关键 —— 一个在单轮测试中表现优异的模型,若在高并发 ...
2025-10-15在机器学习入门领域,“鸢尾花数据集(Iris Dataset)” 是理解 “特征值” 与 “目标值” 的最佳案例 —— 它结构清晰、维度适 ...
2025-10-15在数据驱动的业务场景中,零散的指标(如 “GMV”“复购率”)就像 “散落的零件”,无法支撑系统性决策;而科学的指标体系,则 ...
2025-10-15在神经网络模型设计中,“隐藏层层数” 是决定模型能力与效率的核心参数之一 —— 层数过少,模型可能 “欠拟合”(无法捕捉数据 ...
2025-10-14在数字化浪潮中,数据分析师已成为企业 “从数据中挖掘价值” 的核心角色 —— 他们既要能从海量数据中提取有效信息,又要能将分 ...
2025-10-14在企业数据驱动的实践中,“指标混乱” 是最常见的痛点:运营部门说 “复购率 15%”,产品部门说 “复购率 8%”,实则是两者对 ...
2025-10-14在手游行业,“次日留存率” 是衡量一款游戏生死的 “第一道关卡”—— 它不仅反映了玩家对游戏的初始接受度,更直接决定了后续 ...
2025-10-13分库分表,为何而生? 在信息技术发展的早期阶段,数据量相对较小,业务逻辑也较为简单,单库单表的数据库架构就能够满足大多数 ...
2025-10-13在企业数字化转型过程中,“数据孤岛” 是普遍面临的痛点:用户数据散落在 APP 日志、注册系统、客服记录中,订单数据分散在交易 ...
2025-10-13在数字化时代,用户的每一次行为 —— 从电商平台的 “浏览→加购→购买”,到视频 APP 的 “打开→搜索→观看→收藏”,再到银 ...
2025-10-11在机器学习建模流程中,“特征重要性分析” 是连接 “数据” 与 “业务” 的关键桥梁 —— 它不仅能帮我们筛选冗余特征、提升模 ...
2025-10-11在企业的数据体系中,未经分类的数据如同 “杂乱无章的仓库”—— 用户行为日志、订单记录、商品信息混杂存储,CDA(Certified D ...
2025-10-11在 SQL Server 数据库操作中,“数据类型转换” 是高频需求 —— 无论是将字符串格式的日期转为datetime用于筛选,还是将数值转 ...
2025-10-10