不懂这 25 个名词,好意思说你懂大数据?

本贴最后更新于 2226 天前,其中的信息可能已经天翻地覆

如果你刚接触大数据,你可能会觉得这个领域很难以理解,无从下手。近日,Ramesh Dontha 在 DataConomy 上连发两篇文章,扼要而全面地介绍了关于大数据的 75 个核心术语,这不仅是大数据初学者很好的入门资料,对于高阶从业人员也可以起到查漏补缺的作用。

本文先介绍 了 25 个基本大数据术语,帮助你温故知新,那么开始吧~

01 算法(Algorithm)

算法可以理解成一种数学公式或用于进行数据分析的统计学过程。那么,「算法」又是何以与大数据扯上关系的呢?要知道,尽管算法这个词是一个统称,但是在这个流行大数据分析的时代,算法也经常被提及且变得越发流行。

02 分析(Analytics analyze)

让我们试想一个很可能发生的情况,你的信用卡公司给你发了封记录着你全年卡内资金转账情况的邮件,如果这个时候你拿着这张单子,开始认真研究你在食品、衣物、娱乐等方面消费情况的百分比会怎样?你正在进行分析工作,你在从你原始的数据(这些数据可以帮助你为来年自己的消费情况作出决定)中挖掘有用的信息。

那么,如果你以类似的方法在推特和脸书上对整个城市人们发的帖子进行处理会如何呢?在这种情况下,我们就可以称之为大数据分析。所谓大数据分析,就是对大量数据进行推理并从中道出有用的信息。以下有三种不同类型的分析方法,现在我们来对它们分别进行梳理。

03 描述性分析法(Descriptive Analytics)

如果你只说出自己去年信用卡消费情况为:食品方面 25%、衣物方面 35%、娱乐方面 20%、剩下 20% 为杂项开支,那么这种分析方法被称为描述性分析法。当然,你也可以找出更多细节。

04 预测性分析法(Predictive Analytics)

如果你对过去 5 年信用卡消费的历史进行了分析,发现每年的消费情况基本上呈现一个连续变化的趋势,那么在这种情况下你就可以高概率预测出:来年的消费状态应该和以往是类似的。这不是说我们在预测未来,而是应该理解为,我们在「用概率预测」可能发生什么事情。在大数据的预测分析中,数据科学家可能会使用先进的技术,如机器学习,和先进的统计学处理方法(这部分后面我们会谈到)来预测天气情况、经济变化等等。

05 规范性分析(Prescriptive Analytics)

这里我们还是用信用卡转账的例子来理解。假如你想找出自己的哪类消费(如食品、娱乐、衣物等等)可以对整体消费产生巨大影响,那么基于预测性分析(Predictive Analytics)的规范性分析法通过引入「动态指标(action)」(如减少食品或衣物或娱乐)以及对由此产生的结果进行分析来规定一个可以降低你整体开销的最佳消费项。你可以将它延伸到大数据领域,并想象一个负责人是如何通过观察他面前多种动态指标的影响,进而作出所谓由「数据驱动」的决策的。

06 批处理(Batch processing)

尽管批量数据处理从大型机(mainframe)时代就已经存在了,但是在处理大量数据的大数据时代面前,批处理获得了更重要的意义。批量数据处理是一种处理大量数据(如在一段时间内收集到的一堆交易数据)的有效方法。分布式计算(Hadoop),后面会讨论,就是一种专门处理批量数据的方法。

07 Cassandra

是一个很流行的开源数据管理系统,由 Apache Software Foundation 开发并运营。Apache 掌握了很多大数据处理技术,Cassandra 就是他们专门设计用于在分布式服务器之间处理大量数据的系统。

08 云计算(Cloud computing)

虽然云计算这个词现在已经家喻户晓,这里大可不必赘述,但是为了全篇内容完整性的考虑,笔者还是在这里加入了云计算词条。本质上讲,软件或数据在远程服务器上进行处理,并且这些资源可以在网络上任何地方被访问,那么它就可被称为云计算。

09 集群计算(Cluster computing)

这是一个来描述使用多个服务器丰富资源的一个集群(cluster)的计算的形象化术语。更技术层面的理解是,在集群处理的语境下,我们可能会讨论节点(node)、集群管理层(cluster management layer)、负载平衡(load balancing)和并行处理(parallel processing)等等。

10 暗数据(Dark data)

这是一个生造词,在笔者看来,它是用来吓唬人,让高级管理听上去晦涩难懂的。基本而言,所谓暗数据指的是,那些公司积累和处理的实际上完全用不到的所有数据,从这个意义上来说我们称它们为「暗」的数据,它们有可能根本不会被分析。这些数据可以是社交网络中的信息,电话中心的记录,会议记录等等。很多估计认为所有公司的数据中有 60% 到 90% 不等可能是暗数据,但实际上没人知道。

11 数据湖(Data lake)

当笔者第一次听到这个词时,真的以为这是个愚人节笑话。但是它真的是一个术语。所以一个数据湖(data lake)即一个以大量原始格式保存了公司级别的数据知识库。这里我们介绍一下数据仓库(Data warehouse)。数据仓库是一个与这里提到的数据湖类似的概念,但不同的是,它保存的是经过清理和并且其它资源整合后的结构化数据。

数据仓库经常被用于通用数据(但不一定如此)。一般认为,一个数据湖可以让人更方便地接触到那些你真正需要的数据,此外,你也可以更方便地处理、有效地使用它们。

12 数据挖掘(Data mining)

数据挖掘关乎如下过程,从一大群数据中以复杂的模式识别技巧找出有意义的模式,并且得到相关洞见。它与前文所述的「分析」息息相关,在数据挖掘中,你将会先对数据进行挖掘,然后对这些得到的结果进行分析。为了得到有意义的模式(pattern),数据挖掘人员会使用到统计学(一种经典的旧方法)、机器学习算法和人工智能。

13 数据科学家

数据科学家是时下非常性感的一门行业。它指那些可以通过提取原始数据(这就是我们前面所谓的数据湖)进而理解、处理并得出洞见的这样一批人。部分数据科学家必备的技能可以说只有超人才有:分析能力、统计学、计算机科学、创造力、讲故事能力以及理解商业背景的能力。难怪这帮人工资很高。

14 分布式文件系统(Distributed File System)

大数据数量太大,不能存储在一个单独的系统中,分布式文件系统是一个能够把大量数据存储在多个存储设备上的文件系统,它能够减少存储大量数据的成本和复杂度。

15 ETL

ETL 代表提取、转换和加载。它指的是这一个过程:「提取」原始数据,通过清洗/丰富的手段,把数据「转换」为「适合使用」的形式,并且将其「加载」到合适的库中供系统使用。即使 ETL 源自数据仓库,但是这个过程在获取数据的时候也在被使用,例如,在大数据系统中从外部源获得数据。

16 Hadoop

当人们思考大数据的时候,他们会立即想到 Hadoop。Hadoop 是一个开源软件架构(logo 是一头可爱的大象),它由 Hadoop 分布式文件系统(HDFS)构成,它允许使用分布式硬件对大数据进行存储、抽象和分析。如果你真的想让某人对这个东西印象深刻,你可以跟他说 YARN(Yet Another Resource Scheduler),顾名思义,就是另一个资源调度器。我确实被提出这些名字的人深深震撼了。提出 Hadoop 的 Apache 基金会,还负责 Pig、Hive 以及 Spark(这都是一些软件的名字)。你没有被这些名字惊艳到吗?

17 内存计算(In-memory computing)

通常认为,任何不涉及到 I/O 访问的计算都会更快一些。内存计算就是这样的技术,它把所有的工作数据集都移动到集群的集体内存中,避免了在计算过程中向磁盘写入中间结果。Apache Spark 就是一个内存计算的系统,它相对 Mapreduce 这类 I/O 绑定的系统具有很大的优势。

18 物联网(IoT)

最新的流行语就是物联网(IoT)。IoT 是嵌入式对象中(如传感器、可穿戴设备、车、冰箱等等)的计算设备通过英特网的互联,它们能够收发数据。物联网生成了海量的数据,带来了很多大数据分析的机遇。

19 机器学习(Machine Learning)

机器学习是基于喂入的数据去设计能够学习、调整和提升的系统的一种方法。使用设定的预测和统计算法,它们持续地逼近「正确的」行为和想法,随着更多的数据被输入到系统,它们能够进一步提升。

20 MapReduce

MapReduce 可能有点难以理解,我试着解释一下吧。MapReduce 是一个编程模型,最好的理解就是要注意到 Map 和 Reduce 是两个不同的过程。在 MapReduce 中,程序模型首先将大数据集分割成一些小块(这些小块拿技术术语来讲叫做「元组」,但是我描述的时候会尽量避免晦涩的技术术语),然后这些小块会被分发给不同位置上的不同计算机(也就是说之前描述过的集群),这在 Map 过程是必须的。然后模型会收集每个计算结果,并且将它们「reduce」成一个部分。MapReduce 的数据处理模型和 Hadoop 分布式文件系统是分不开的。

21 非关系型数据库(NoSQL)

这个词听起来几乎就是「SQL,结构化查询语言」的反义词,SQL 是传统的关系型数据管理系统(RDBMS)必需的,但是 NOSQL 实际上指的是「不止 SQL」。

NoSQL 实际上指的是那些被设计来处理没有结构(或者没有「schema」,纲要)的大量数据的数据库管理系统。NoSQL 适合大数据系统,因为大规模的非结构化数据库需要 NoSQL 的这种灵活性和分布式优先的特点。

22 R 语言

这还有人能给一个编程语言起一个更加糟糕的名字吗?R 语言就是这样的语言。不过,R 语言是一个在统计工作中工作得很好的语言。如果你不知道 R 语言,别说你是数据科学家。因为 R 语言是数据科学中最流行的编程语言之一。

23 Spark(Apache Spark)

Apache Spark 是一个快速的内存数据处理引擎,它能够有效地执行那些需要迭代访问数据库的流处理、机器学习以及 SQL 负载。Spark 通常会比我们前面讨论过的 MapReduce 快好多。

24 流处理(Stream processing)

流处理被设计来用于持续地进行流数据的处理。与流分析技术(指的是能够持续地计算数值和统计分析的能力)结合起来,流处理方法特别能够针对大规模数据的实时处理。

25 结构化 vs 非结构化数据(Structured v Unstructured Data)

这是大数据中的对比之一。结构化数据基本上是那些能够被放在关系型数据库中的任何数据,以这种方式组织的数据可以与其他数据通过表格来关联。非结构化数据是指任何不能够被放在关系型数据库中的数据,例如邮件信息、社交媒体上的状态,以及人类语音等等。

  • B3log

    B3log 是一个开源组织,名字来源于“Bulletin Board Blog”缩写,目标是将独立博客与论坛结合,形成一种新的网络社区体验,详细请看 B3log 构思。目前 B3log 已经开源了多款产品:SymSoloVditor思源笔记

    1090 引用 • 3467 回帖 • 297 关注
  • 大数据

    大数据(big data)是指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。

    89 引用 • 113 回帖
  • 数据
    9 引用 • 16 回帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...

推荐标签 标签

  • 持续集成

    持续集成(Continuous Integration)是一种软件开发实践,即团队开发成员经常集成他们的工作,通过每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽早地发现集成错误。

    14 引用 • 7 回帖
  • NGINX

    NGINX 是一个高性能的 HTTP 和反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 NGINX 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,第一个公开版本 0.1.0 发布于 2004 年 10 月 4 日。

    311 引用 • 546 回帖 • 57 关注
  • ReactiveX

    ReactiveX 是一个专注于异步编程与控制可观察数据(或者事件)流的 API。它组合了观察者模式,迭代器模式和函数式编程的优秀思想。

    1 引用 • 2 回帖 • 124 关注
  • Dubbo

    Dubbo 是一个分布式服务框架,致力于提供高性能和透明化的 RPC 远程服务调用方案,是 [阿里巴巴] SOA 服务化治理方案的核心框架,每天为 2,000+ 个服务提供 3,000,000,000+ 次访问量支持,并被广泛应用于阿里巴巴集团的各成员站点。

    60 引用 • 82 回帖 • 590 关注
  • LaTeX

    LaTeX(音译“拉泰赫”)是一种基于 ΤΕΧ 的排版系统,由美国计算机学家莱斯利·兰伯特(Leslie Lamport)在 20 世纪 80 年代初期开发,利用这种格式,即使使用者没有排版和程序设计的知识也可以充分发挥由 TeX 所提供的强大功能,能在几天,甚至几小时内生成很多具有书籍质量的印刷品。对于生成复杂表格和数学公式,这一点表现得尤为突出。因此它非常适用于生成高印刷质量的科技和数学类文档。

    9 引用 • 32 回帖 • 179 关注
  • 人工智能

    人工智能(Artificial Intelligence)是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门技术科学。

    66 引用 • 124 回帖
  • SMTP

    SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式。SMTP 协议属于 TCP/IP 协议簇,它帮助每台计算机在发送或中转信件时找到下一个目的地。

    4 引用 • 18 回帖 • 581 关注
  • OpenStack

    OpenStack 是一个云操作系统,通过数据中心可控制大型的计算、存储、网络等资源池。所有的管理通过前端界面管理员就可以完成,同样也可以通过 Web 接口让最终用户部署资源。

    10 引用 • 9 关注
  • Android

    Android 是一种以 Linux 为基础的开放源码操作系统,主要使用于便携设备。2005 年由 Google 收购注资,并拉拢多家制造商组成开放手机联盟开发改良,逐渐扩展到到平板电脑及其他领域上。

    331 引用 • 315 回帖 • 83 关注
  • Elasticsearch

    Elasticsearch 是一个基于 Lucene 的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于 RESTful 接口。Elasticsearch 是用 Java 开发的,并作为 Apache 许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。

    116 引用 • 99 回帖 • 275 关注
  • 数据库

    据说 99% 的性能瓶颈都在数据库。

    330 引用 • 612 回帖
  • 钉钉

    钉钉,专为中国企业打造的免费沟通协同多端平台, 阿里巴巴出品。

    15 引用 • 67 回帖 • 380 关注
  • 链书

    链书(Chainbook)是 B3log 开源社区提供的区块链纸质书交易平台,通过 B3T 实现共享激励与价值链。可将你的闲置书籍上架到链书,我们共同构建这个全新的交易平台,让闲置书籍继续发挥它的价值。

    链书社

    链书目前已经下线,也许以后还有计划重制上线。

    14 引用 • 257 回帖 • 2 关注
  • Wide

    Wide 是一款基于 Web 的 Go 语言 IDE。通过浏览器就可以进行 Go 开发,并有代码自动完成、查看表达式、编译反馈、Lint、实时结果输出等功能。

    欢迎访问我们运维的实例: https://wide.b3log.org

    30 引用 • 218 回帖 • 594 关注
  • 安全

    安全永远都不是一个小问题。

    189 引用 • 813 回帖 • 2 关注
  • Tomcat

    Tomcat 最早是由 Sun Microsystems 开发的一个 Servlet 容器,在 1999 年被捐献给 ASF(Apache Software Foundation),隶属于 Jakarta 项目,现在已经独立为一个顶级项目。Tomcat 主要实现了 JavaEE 中的 Servlet、JSP 规范,同时也提供 HTTP 服务,是市场上非常流行的 Java Web 容器。

    163 引用 • 529 回帖
  • BAE

    百度应用引擎(Baidu App Engine)提供了 PHP、Java、Python 的执行环境,以及云存储、消息服务、云数据库等全面的云服务。它可以让开发者实现自动地部署和管理应用,并且提供动态扩容和负载均衡的运行环境,让开发者不用考虑高成本的运维工作,只需专注于业务逻辑,大大降低了开发者学习和迁移的成本。

    19 引用 • 75 回帖 • 609 关注
  • Spark

    Spark 是 UC Berkeley AMP lab 所开源的类 Hadoop MapReduce 的通用并行框架。Spark 拥有 Hadoop MapReduce 所具有的优点;但不同于 MapReduce 的是 Job 中间输出结果可以保存在内存中,从而不再需要读写 HDFS,因此 Spark 能更好地适用于数据挖掘与机器学习等需要迭代的 MapReduce 的算法。

    74 引用 • 46 回帖 • 549 关注
  • Flume

    Flume 是一套分布式的、可靠的,可用于有效地收集、聚合和搬运大量日志数据的服务架构。

    9 引用 • 6 回帖 • 594 关注
  • V2Ray
    1 引用 • 15 回帖
  • Ruby

    Ruby 是一种开源的面向对象程序设计的服务器端脚本语言,在 20 世纪 90 年代中期由日本的松本行弘(まつもとゆきひろ/Yukihiro Matsumoto)设计并开发。在 Ruby 社区,松本也被称为马茨(Matz)。

    7 引用 • 31 回帖 • 166 关注
  • Shell

    Shell 脚本与 Windows/Dos 下的批处理相似,也就是用各类命令预先放入到一个文件中,方便一次性执行的一个程序文件,主要是方便管理员进行设置或者管理用的。但是它比 Windows 下的批处理更强大,比用其他编程程序编辑的程序效率更高,因为它使用了 Linux/Unix 下的命令。

    122 引用 • 73 回帖 • 2 关注
  • BookxNote

    BookxNote 是一款全新的电子书学习工具,助力您的学习与思考,让您的大脑更高效的记忆。

    笔记整理交给我,一心只读圣贤书。

    1 引用
  • Kotlin

    Kotlin 是一种在 Java 虚拟机上运行的静态类型编程语言,由 JetBrains 设计开发并开源。Kotlin 可以编译成 Java 字节码,也可以编译成 JavaScript,方便在没有 JVM 的设备上运行。在 Google I/O 2017 中,Google 宣布 Kotlin 成为 Android 官方开发语言。

    19 引用 • 33 回帖 • 20 关注
  • 分享

    有什么新发现就分享给大家吧!

    240 引用 • 1729 回帖
  • RYMCU

    RYMCU 致力于打造一个即严谨又活泼、专业又不失有趣,为数百万人服务的开源嵌入式知识学习交流平台。

    4 引用 • 6 回帖 • 39 关注
  • Unity

    Unity 是由 Unity Technologies 开发的一个让开发者可以轻松创建诸如 2D、3D 多平台的综合型游戏开发工具,是一个全面整合的专业游戏引擎。

    25 引用 • 7 回帖 • 249 关注