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.流处理。流处理旨在通过“连续”查询对实时和流数据进行操作。结合流分析(即在流内同时进行连续计算数学或统计分析的能力),流处理解决方案可以被用来实时处理非常大的数据。