大数据正在改变世界。但是,大多数大数据项目搞着搞着就黄了,很难成功。这是为什么呢?
企业正努力在产品中部署大数据,这一点是毋庸置疑的。但是,根据gartner在2016年下半年发布的新闻稿:只有15%的企业将其大数据项目部署到生产中。”gartner在选词时非常谨慎,这并不意味着剩下的企业没有实践,或者数据科学家没有发现使用大数据技术的优势,只是剩下的85%的项目并没有真正投入生产。
问题不在于缺少大数据分析或者是大量的数据科学实验。真正的挑战是缺乏大数据自动化能力,以便将实验版本从沙箱推入功能齐全的生产环境中。
大多数人认为分析生产就是调整集群。当然,可以编写一个sqoop脚本并将表格放入一次。但是,在不影响源系统的情况下多次实现则是一个挑战。然后,必须确保构建的数据管道在由服务级别协议(sla)设置的时间范围内提供数据。此外,数据模型需要针对用户当前正在使用的工具(如tableau,qlik等)进行优化,以达到用户所期望的响应能力。
在hadoop和spark之上使用工具进行大量的努力和改进以对大型数据集进行快速原型设计。但原型是一回事,创建每天运行而不发生故障的数据工作流程,或者在数据流作业失败时自动启用恢复,又是另外一回事。
本文作者分析了五大大数据项目夭折最常见的技术原因:
1、无法快速加载数据以满足sla
虽然像sqoop这样的工具支持数据读取的并行化以从传统数据源获取数据到数据湖,但需要专家来使其正常工作。如何划分数据?要运行多少个容器等问题都需要专家给出合适的解决方案。如果无法正确处理并行数据的读取,则一个小时就可完成的任务甚至需要10到20倍的时间,因为大多数人不知道如何正确调整。
2、不能逐步加载数据以满足sla
大多数企业并未将整个操作转移到大数据环境中。他们从现有的操作系统移动数据以执行新的分析或机器学习,这意味着需要在新数据到达时继续加载。问题是这些环境不支持添加,删除或插入的概念,这意味着必须重新加载整个数据集(请参阅上面的第1点),否则必须围绕一次更改捕获问题编写代码。
3、不能以交互方式提供对数据报告的访问权限
想象一下,如果有1000位商业智能分析师,他们都不想使用您的数据模型,因为他们需要很长时间才能查询。这是hadoop的一个经典问题,也是许多公司仅使用hadoop进行预处理和应用特定机器学习算法,但随后将最终数据集移回传统数据仓库以供bi工具使用的原因。无论如何,这个过程又为成功完成大数据项目增加了难度。
4、不能从测试迁移到生产
许多企业能够确定沙箱环境中数据科学家的新见解的潜力。一旦他们确定采纳新的分析方法,就需要从沙盒转移到生产环境。从开发转移到生产是一个完整的升降和换挡操作,通常是手动完成的。虽然它在开发集群上运行良好,但现在相同的数据管道必须在生产集群上重新优化。这种调整往往需要大量的返工才能有效执行。如果开发环境与生产环境有任何不同,则情况尤其复杂。
5、不能管理端到端的生产工作量
大多数企业都将注意力集中在工具上,因此他们的数据分析师和科学家可以更轻松地识别新的方法。但是,他们没有投资类似的工具来运行生产环境中的数据工作流程,因此不得不担心启动、暂停和重新启动过程,还必须担心确保作业的容错性,处理通知以及协调多个工作流以避免“冲突”。
因为上述五大技术原因,导致很多大数据项目并没有如期与我们见面。当然,如果你有更棒的见解,欢迎在评论区留言。