【ArchSummit架构师峰会】探讨数据与人工智能相互驱动的关系>>> 了解详情
写点什么

高技能人才或是未来 5-10 年大数据发展的最大瓶颈

  • 2019-10-26
  • 本文字数:2684 字

    阅读完需:约 9 分钟

高技能人才或是未来5-10年大数据发展的最大瓶颈

大数据无疑是当下最流行的热词和前沿技术之一。本质上,大数据具有三大类特征:快速、海量和复杂,大多数公司都在经历着这三大特征的各种形态组合。目前,这些特征中,还存在很多较难以解决的挑战,诸如处理数据流中的丢失、重复问题,数据质量参差不齐,数据存储成本高,大数据人才缺乏等。在本文中,我们将对“大数据”的问题进行拆分,是什么使大数据充满挑战,以及现在我们如何用最新的方法解决这些问题。


本文最初发布于 Towards Data Science 网站,经原作者授权由 InfoQ 中文站翻译并分享


在本文中,我们将对“大数据”的问题进行拆分,是什么使大数据充满挑战,以及现在我们如何解决这些问题。大数据一度成为流行语,但本质上它是指具备这三大类特征的数据:快速,海量和复杂。让我们仔细研究下这些特征,举一些例子,看看如何用最新的方法解决这些难题。


“大数据是描述海量的高速、复杂和多变数据的一个术语,这些数据需要结合先进的技能和技术来实现信息的捕获、存储、分发、管理和分析”(TechAmerica Foundation’s Federal Big Data Commission, 2012


高速的数据

高速的数据指什么?高速的数据指在短时间内产生的大量的数据。比如汽车工厂的传感器数据,温度监测器,飞行仪表等产生的数据。


高速数据通常被认为是实时的或是准实时的数据流。数据流本质上是在生成后就发给处理器的数据包(比如天线收到的电视信号或是通过固话传输的语音电话)。实时数据的定义值得深入讨论,但是它本质上可以归结为需要在毫秒内被更新的数据。处理数据流有很多挑战,包括在采集时不丢失数据、处理数据流中的重复记录、流数据与更大的历史数据集集成、以及进行实时分析。


传统的数据流服务比如 Rabbit MQ 和 Active MQ 只在单节点上运行因此收到了服务器能力的限制。Apache Kafka 引入了分布式流服务的概念,使得数据流可以分散到多个节点(服务器)上。这实现了高吞吐的流处理,每秒能达到数百万条。随着服务向云上的迁移,开发者不用再管理底层的硬件。亚马逊的 Kinesis 和谷歌的 Pub/Sub 将后方的服务器完全抽离,使开发者能够更专注于业务逻辑和数据。


ELK 是常用的在流式数据上作实时分析的技术栈。ELK 由多个工具组成,用 Log Stash 将多种数据源的数据传输进 Elastic Search(ES)。在 ES 中存储的数据可以轻松的通过特定的短语和关键词检索到。Kibana 是 ES 最上层的工具,它在数据流入时就能进行实时分析,用户可以通过它来查询数据、为数据创建度量。

海量数据

“大数据”的第二个


特征是数据量足够大。


典型的例如一个包含顶级投资银行 20 年股票交易历史的超大数据集,20 年间所有信用卡的交易记录,或是热门网站(如 buzz feed)的用户交互信息等。通常这些数据都会在 TB 甚至 PB 量级。



处理超大数据集通常会受到存储和处理数据的计算资源的限制。通常一块商用硬盘可以容纳 1TB 的数据量。有些数据集能有好多 PB(相当于上千块硬盘的容量)。这些数据需要在数据中心内跨多个服务器(或传统的 RAID 盘)存储。除此之外,处理这些数据也需要大量的物理内存和 CPU。


Hadoop(一个开源分布式大数据处理生态)的出现一定程度上降低了数据处理的成本。这套系统的核心是 Hive,一种能像数据库一样存储数据的类 SQL 处理系统。数据处理在商用硬件上进行,使用 Map-Reduce 算法(专门为分布式处理设计的算法)。这些服务器通常被存放在数据中心。但是,管理维护数据中心和 Hadoop 套件的成本非常高。


但最近,很多的存储和处理都转移到了云上,比如 Amazon Web Service (AWS) 和 Google Cloud Platform (GCP)这些主流玩家。AWS 和 GCP 都提供受管理的 map reduce 或 spark 服务(AWS Elastic Map Reduce 以及 GCP Cloud data proc)。他们也提供大规模可扩展的数据库服务(分别是 Google Big Query 和 AWS Redshift),能为 PB 级的数据集提供关系型数据库服务。这些解决方案最大的优点是用户不用管理底层的硬件,可以专注于更重要的任务,如存储/移动数据或者是写 SQL。这个生态中的典型玩家是 Snowflake,在 AWS 中提供即买即用的数据处理服务。

复杂数据

“大数据”的第三个特征是复杂。在解释什么造成了数据的复杂性前,我先讲下理想的数据集是什么样的。理想的数据集有预先定义的 schema,每种数据类型(string, number, date)都有定义好的主键,以及完善的数据字典。数据集中没有重复,所有的值都是精准的。


复杂数据的概念和理想数据完全相反。所有数据集都有一定的复杂性,但有一些天生更难处理。通常这些复杂数据集没有定义结构(没有行列结构),经常变化,数据质量很差或没有记录。



比如人工输入的医生的笔记、博客的文字、时刻更新的网页日志以及深嵌套的 XML 或 JSON 文件。


为复杂数据做快速标注时,大多数不好的数据应该在源头就进行识别。数据工程师需要构建足够强壮的系统来快速获取和过滤这些数据集,但是这些数据最终还是要在源头纠正。此外,如果可以,我们建议在数据产生的源头定好 SLA 来减少低质量的数据,使数据更好管理。


处理复杂数据集,让它们能遵从整洁的格式需要下很大的功夫。每种数据质量问题都需要区别处理,比如记录重复、主键缺失、字符/字符串的格式错误等。


有很多工具可以用来处理这种数据。通常数据科学家和工程师会用 Jupyter notebook 以及 Pandas 或 Spark 来处理、分析、可视化这些数据集。Jupyter 为开发者提供了交互式的环境使他们能在代码中逐行遍历数据集,从而节省很多时间。Databricks 也提供了非常好的数据处理和分析环境,包含了一个类似 Jupyter notebook 的 UI、独有的 Spark 特性、以及简单易用的节点管理能力。


还有很多第三方的工具,比如 Trifacta,能够自动进行一些数据清洗任务,通过提供 UI 和非常好的功能代替完全手写的数据清洗代码,来加速清洗和分析任务。Google Cloud 在 GCP 中提供了这个工具 cloud Data Prep。

小结

可以看出,这些特征中的任何一个挑战都很难解决。但是,大多数的公司都经历着这三种问题的各种形态组合。挑战变得更庞大了,这需要衡量不同的工具和方法来解决他们特定的问题。


向云服务的转移很大程度上降低了处理和管理大数据的壁垒,公司不再需要建设数据中心并且花大量的预算在专用软件上。但是招聘懂得如何使用正确的工具来处理大数据问题的人才仍然是个难题。


降低大数据使用门槛的下一步是利用机器学习技术来理解数据的结构以及监测数据发生的变化。由于高技能人才将成为处理大数据的瓶颈,未来 5-10 年间产生的下一代工具,很可能会关注这些特征。


希望这篇文章能为你提供关于大数据全面而简洁的概述!


原文链接:


https://towardsdatascience.com/what-exactly-is-big-data-in-2020-9acee48e8dd7


公众号推荐:

跳进 AI 的奇妙世界,一起探索未来工作的新风貌!想要深入了解 AI 如何成为产业创新的新引擎?好奇哪些城市正成为 AI 人才的新磁场?《中国生成式 AI 开发者洞察 2024》由 InfoQ 研究中心精心打造,为你深度解锁生成式 AI 领域的最新开发者动态。无论你是资深研发者,还是对生成式 AI 充满好奇的新手,这份报告都是你不可错过的知识宝典。欢迎大家扫码关注「AI前线」公众号,回复「开发者洞察」领取。

2019-10-26 08:006051

评论 1 条评论

发布
用户头像
Pandas不是Python的一个库吗?
2019-10-29 09:02
回复
没有更多了
发现更多内容

Java并发编程:AQS的原子性如何保证

码农架构

Java java 并发

Linux 如何实现定时调度任务

Near

Linux Timer 定时调度

数据结构与算法经典问题解析-Java语言描述

田维常

数据结构

蚂蚁集团下架互联网存款产品:互联网金融是天使还是魔鬼

石头IT视角

围观|第一代云原生企业米哈游如何让想象发生?

阿里巴巴云原生

阿里云 最佳实践 运维 云原生 游戏开发

4. 上新了Spring,全新一代类型转换机制

YourBatman

Spring Framework 类型转换 Converter

测开之函数进阶· 第1篇《递归函数》

清菡软件测试

测试开发

LeetCode题解:92. 反转链表 II,递归,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

阿里 10 年:一个普通技术人的成长之路

阿里巴巴云原生

阿里云 云原生 技术人 自我思考 职场成长

盘点2020|从写程序到写文章,一个宅男程序猿到平台写手的心路历程

罗小龙

程序猿 盘点2020 心路历程 宅男 平台写手

快手基于 Apache Flink 的优化实践

Apache Flink

flink

MySQL修改账号密码方法大全

Simon

MySQL 七日更

为什么你成为不了团队核心成员

数据社

团队 七日更

Code Shared & Review(20201214-20201220)

刘璐

盘点2020 | 干饭人 cxuan 活下来了

cxuan

学习 总结 盘点2020

第九周-作业一

ray-arch

JVM 垃圾回收原理

梧桐

11 组关系带你看清 JVM 全貌

田维常

JVM

《面试官不讲武德》对Java初级程序猿死命摩擦Http协议

Silently9527

面试 https HTTP 图解https

IoT数据模型设计

soolaugust

物联网 IoT 数据模型 工业物联网 七日更

DeFi平台DAPP软件系统开发

系统开发

Synchronized用法原理和锁优化升级过程(面试)

叫练

synchronized 轻量级锁 偏向锁 多线程与高并发 同步

ETHERZ流动性挖矿系统软件APP开发

系统开发

盘点2020 | 21 张图总结我的 2020 年

pingan8787

盘点2020

点个外卖,我把「软中断」搞懂了

小林coding

Linux 操作系统

第九周总结

小兵

UBI波场挖矿系统软件APP开发

系统开发

一文搞懂 CountDownLatch 用法和源码!

cxuan

Java 源码 并发

工作3年,看啥资料能月薪30K?

小傅哥

Java 面试 小傅哥 七日更 技术成长

vivo 微服务 API 网关架构实践

vivo互联网技术

微服务 API网关 Zuul2

业务重要?还是技术重要?

数据社

思考 团队 七日更

高技能人才或是未来5-10年大数据发展的最大瓶颈_AI&大模型_Gary Cheung_InfoQ精选文章