每个人都应该知道的25个大数据术语
2017-07-17 湾区城市群
如果你初来乍到,大数据看起来很吓人!根据你掌握的基本理论,让我们专注于一些关键术语以此给你的约会对象、老板、家人或者任何一个人带来深刻的印象。
让我们开始吧:
1.算法。“算法”如何与大数据相关?即使算法是一个通用术语,但大数据分析使其在当代更受青睐和流行。
2.分析。年末你可能会收到一份来自信用卡公司寄来的包含了全年所有交易记录的年终报表。如果你有兴趣进一步分析自己在食物、衣服、娱乐等方面具体花费占比呢?那你便是在做“分析”了。你正从一堆原始数据中来吸取经验,以帮助自己为来年的消费做出决策。如果你正在针对整个城市人群对Twitter或Facebook的帖子做同样的练习呢?那我们便是在讨论大数据分析了。大数据分析的实质是利用大量数据来进行推断和讲故事。大数据分析有3种不同到的类型,接下来便继续本话题进行依次讨论。
3.描述性分析。刚刚如果你告诉我,去年你的信用卡消费在食物上花费了25%、在服装上花费了35%、娱乐活动上花费了20%、剩下的就是杂七杂八的事项,这种便是描述性分析。当然你还可以参考更多的细节。
4.预测分析。如果你根据过去5年的信用卡历史记录来进行分析,并且划分具有一定的连续性,则你可以高概率预测明年将与过去几年相差无几。此处需要注意的细节是,这并不是“预测未来”,而是未来可能会发生的“概率”。在大数据预测分析中,数据科学家可能会使用类似机器学习、高级的统计过程(后文将对这些术语进行介绍)等先进的技术去预测天气、经济变化等。
5.规范分析。沿用信用卡交易的案例,你可能想要找出哪方面的支出(级食品、服装、娱乐等)对自己的整体支出产生巨大的影响。规范分析建立在预测分析的基础之上,包含了“行动”记录(例如减少食品、服装、娱乐支出),并分析所得结果来“规定”最佳类别以减少总体支出。你可以尝试将其发散到大数据,并设想高管们如何通过查看各种行动的影响来做出数据驱动的决策。
6.批处理。虽然批量数据处理在大型机时代就早已出现,但大数据交给它更多大数据集处理,因此赋予了批处理更多的意义。对于一段时间内收集到的一组事务,批量数据处理为处理大量数据提供了一种有效的方法。后文将介绍的Hadoop便是专注于批量数据处理。
7. Cassandra是由Apache Software Foundation管理的一款流行的开源数据库管理系统。很多大数据技术都归功于Apache,其中Cassandra的设计初衷便是处理跨分布式服务器的大量数据。
8. 云计算。显而易见云计算已经变得无所不在,所以本文可能无须赘述,但为了文章的完整性还是佐以介绍。云计算的本质是在远程服务器上运行的软件和(/或)数据托管,并允许从互联网上的任何地方进行访问。
9. 集群计算。它是一种利用多台服务器的汇集资源的“集群”来进行计算的奇特方式。在了解了更多技术之后,我们可能还会讨论节点、集群管理层、负载平衡和并行处理等。
10. 黑暗数据。依我看来,这个词适用于那些吓得六神无主的高级管理层们。从根本上来说,黑暗数据是指那些被企业收集和处理但又不用于任何有意义用途的数据,因此描述它是“黑暗的”,它们可能永远被埋没。它们可能是社交网络信息流、呼叫中心日志、会议笔记,诸如此类。人们做出了诸多估计,在60-90%的所有企业数据都可能是“黑暗数据”,但无人真正知晓。
11. 数据湖。当我第一次听到这个词的时候,我真的以为有人在开愚人节的玩笑。但它真的是个术语!数据湖是一个原始格式的企业级数据的大型存储库。虽然此处讨论的是数据湖,但有必要再一起讨论下数据仓库,因为数据湖和数据仓库在概念上是极其相似的,都是企业级数据的存储库,但在清理和与其他数据源集成之后的结构化格式上有所区别。数据仓库常用于常规数据(但不完全)。据说数据湖能够让用户轻松访问企业级数据,用户真正按需知道自己正在寻找的是什么、如何处理并让其智能化使用。
12. 数据挖掘。数据挖掘是指利用复杂的模式识别技术从大量数据中找到有意义的模式、提取见解。这与我们前文讨论的使用个人数据做分析的术语“分析”密切相关。为了提取出有意义的模式,数据挖掘者使用统计学(是呀,好老的数学)、机器学习算法和人工智能。
13.数据科学家。我们谈论的是一个如此热门的职业!数据科学家们可以通过提取原始数据(难道是从前文所说的数据湖中提取的?),处理数据,然后提出新见解。数据科学家所需具备的一些技能与超人无异:分析、统计、计算机科学、创造力、故事讲述和理解业务环境。难怪他们能获得如此高的薪水报酬。
14.分布式文件系统。由于大数据太大而无法在单个系统上进行存储,分布式文件系统提供一种数据存储系统,方便跨多个存储设备进行大量数据的存放,并有助于降低大量数据存储的成本和复杂度。
15. ETL。ETL分别是extract,transform,load的首字母缩写,代表提取、转化和加载的过程。 它具体是指“提取”原始数据,通过数据清洗/修饰的方式进行“转化”以获得 “适合使用”的数据,进而“加载”到合适的存储库中供系统使用的整个过程。尽管ETL这一概念源于数据仓库,但现在也适用于其它情景下的过程,例如在大数据系统中从外部数据源获取/吸收数据。
16. Hadoop。人们一想起大数据就能立即想到Hadoop。 Hadoop(拥有可爱的大象LOGO)是一个开源软件框架,主要组成部分是Hadoop分布式文件系统(HDFS),Hadoop部署了分布式硬件以支持大型数据集的存储、检索和分析。如果你真的想给别人留下深刻的印象,还可以谈谈YARN(Yet Another Resource Schedule,另一个资源调度器),正如其名,它也是一个资源调度器。我由衷佩服这些为程序命名的人。为Hadoop命名的Apache基金会还想出了Pig,Hive和Spark(没错,它们都是各种软件的名称)。这些名字难道不让你感到印象深刻吗?
17. 内存计算。一般来说,任何可以在不访问I / O的情况下进行的计算预计会比需要访问I/O的速度更快。内存内计算是一种能够将工作数据集完全转移到集群的集体内存中、并避免了将中间计算写入磁盘的技术。Apache Spark便是一种内存内计算系统,它与I / O相比,在像Hadoop MapReduce这样的系统上绑定具有巨大的优势。
18. IOT。最新的流行语是物联网(Internet of things,简称IOT)。IOT是通过互联网将嵌入式对象(传感器、可穿戴设备、汽车、冰箱等)中的计算设备互连在一起,并且能够发送/接收数据。IOT产生了大量的数据,这为呈现大数据分析提供了更多的机会。
19.机器学习。机器学习是为了设计一种基于提供的数据能够进行不断学习、调整、改进的系统的设计方法。机器使用预测和统计的算法进行学习并专注于实现“正确的”行为模式和简见解,随着越来越多的数据注入系统它还在不断进行优化改进。典型的应用有欺诈检测、在线个性化推荐等。
20.MapReduce。MapReduce的概念可能会有点混乱,但让我试一试。MapReduce是一个编程模型,最好的理解方法是将Map和Reduce是看作两个独立的单元。在这种情况下,编程模型首先将大数据的数据集分成几个部分(技术术语上是称作“元组”,但本文并不想太过技术性),因此可以部署到不同位置的不同计算机上(即前文所述的集群计算),这些本质上是Map的组成部分。接下来该模型收集到所有结果并将“减少”到同一份报告中。 MapReduce的数据处理模型与hadoop的分布式文件系统相辅相成。
21.NoSQL。乍一听这像是针对传统关系型数据库管理系统(RDBMS)的面向对象的SQL(Structured Query Language, 结构化查询语言)的抗议,其实NoSQL代表的是NOT ONLY SQL,意即“不仅仅是SQL”。 NoSQL实际上是指被用来处理大量非结构化、或技术上被称作“图表”(例如关系型数据库的表)等数据的数据库管理系统。NoSQL数据库一般非常适用于大型数据系统,这得益于它们的灵活性以及大型非结构化数据库所必备的分布式结构。
22.R语言。有人能想到比这个编程语言更糟糕的名字吗?是的,’R’是一门在统计计算中表现非常优异的编程语言。如果你连’R’都不知道,那你就不是数据科学家。(如果你不知道’R’,就请不要把那些糟糕的代码发给我了)。这就是在数据科学中最受欢迎的语言之一的R语言。
23. Spark(Apache Spark)。Apache Spark是一种快速的内存内数据处理引擎,它可以高效执行需要快速迭代访问数据集的流、机器学习或SQL工作负载。Spark通常比我们前文讨论的MapReduce快很多。
24.流处理。流处理旨在通过“连续”查询对实时和流数据进行操作。结合流分析(即在流内同时进行连续计算数学或统计分析的能力),流处理解决方案可以被用来实时处理非常大的数据。
25. 结构化和非结构化数据。这是大数据5V中的“Variety”多样性。结构化数据是能够放入关系型数据库的最基本的数据类型,通过表的组织方式可以联系到任何其他数据。非结构化数据则是所有不能直接存入关系数据库中的数据,例如电子邮件、社交媒体上的帖子、人类录音等。