美文网首页
《大数据时代》读书笔记 01:一场生活、工作与思维的大变革

《大数据时代》读书笔记 01:一场生活、工作与思维的大变革

作者: 小叶与小茶 | 来源:发表于2018-06-02 12:44 被阅读236次

    对大数据的粗线条理解

    大数据开启了一次重大的时代转型。就像望远镜让我们能够感受宇宙,显微镜让我们能够观测微生物一样,大数据正在改变我们的生活以及理解世界的方式,成为新发明和新服务的源泉,而更多改变正蓄势待发……

    这段话摘自舍恩伯格的名著《大数据时代》的开篇引言。舍恩伯格用著名的Google H1N1甲型流感预测以及Farecast票价预测两个例子讲述了大数据对公共卫生和商业实实在在的变革。而更重要的,则是人们对数据价值开始逐渐重新认知,不再认为数据是静止和陈旧的,而是可以反复挖掘的宝藏,这是一种思维的变革,看下面这段洞察:

    如今,数据已经成为了一种商业资本,一项重要的经济投入,可以创造新的经济利益。事实上,一旦思维转变过来,数据就能被巧妙的用来激发新产品和新型服务。数据的奥妙只为谦逊、愿意聆听且掌握了聆听手段的人所知。

    这仅仅是一个开始,大数据时代对我们的生活,以及与世界交流的方式都提出了挑战。最惊人的是,社会需要放弃它对因果关系的渴求,而仅需要关注相关关系。也就是说只需要知道是什么,而不需要知道为什么。这就推翻了自古以来的惯例,而我们做决定和理解现实的最基本方式也将受到挑战。

    每时每刻,身边的数据都在飞速的增长。人类存储信息量的增长速度比世界经济增长的速度快4倍,而计算机数据处理速度则比世界经济增长的速度快9倍。如今每隔大约三年,数据都能增长一倍。量变产生质变,大数据也是一样,这项技术必将改变我们的生活。

    一般可以用“4V”原则来定义大数据的特征:

    • Volume:体量巨大
    • Variaty:种类繁多
    • Value:价值密度虽然低,但最终商业价值高
    • Velocity:数据处理和分析的速度快

    “大数据”与“大规模数据”/“海量数据”的最大区别在于,“大数据”这一概念蕴含着对数据的处理行为,这种行为背后是软件、硬件、算法、方法论等一些列知识的集成与工程实施,绝非数据的简单堆砌


    数据的生产

    历史发展到今天这个时代,数据的产生已经不再受时间和地点的限制。从开始使用数据库作为数据管理的主要方式开始,人类社会的数据产生方式大致经历如下几个过程:

    1. 企业运营数据:比如超市的销售记录、银行的交易记录、通讯运营商的用户和通信记录、医院的医疗记录等等。这些系统大量应用数据库,数据的产生伴随着运营活动。这个阶段是一种被动的生产方式。
    2. 用户原创数据:这主要就是互联网走进人们的生活时,尤其以UGC(User Generated Content)为代表的Web2.0时代,数据呈爆炸式的增长。博客、微博、微信、短视频等等不断更迭的新型社交方式,加之移动智能的推波助澜,分享更加便捷,成本更低,这不断刺激人们的分享欲望。这个阶段是一种主动的生产方式。
    3. 万物感知数据:这主要对应于物联网时代。目前人们有能力制造出越来越微小的传感器,有的携带了高性能处理芯片甚至具备了一定的人工智能处理能力,如各种穿戴设备和视频监控摄像头,就是典型的例子。这些传感器和设备越来越广泛的分布在社会的各个角落,源源不断生产着新数据。这个阶段是一种自动的生产方式。

    数据的产生经过了被动、主动和自动三个阶段,其中自动产生的数据是未来最根本最重要的来源

    领域 用户量 响应 数据量 可靠性 精确度
    科学 TB 高++
    金融 快++ GB 高++ 高++
    社交 大++ PB
    通信 大++ TB
    物联网 大++ TB
    Web 大++ PB
    多媒体 大++ PB

    Google首席经济学家 Hal Varian说过,数据是广泛可用的,所缺乏的是从中提取出知识的能力


    大数据的核心以及带来的转变

    大数据的核心是预测,是把数学算法运用到海量的数据上来预测事情发生的概率。预测工作和个性化技术相关,包括个性化排序和个性化推荐。个性化技术是大数据时代最重要的技术。

    大数据在我们进行数据分析时带来了三个改变:

    1. 第一个转变是,在大数据时代,我们不再依赖随机采样,而是有机会分析和某个现象相关的全量数据
    2. 第二个转变是,在大数据时代,数据种类如此之多,以至于可以不再追求精确度。数据分析,一方面是分析结论,另一方面,分析效率也非常关键。精确度的计算是以时间消耗为代价的,在大数据时代,快速获取一个大概的轮廓和发展脉络,比严格的精确度要重要的多。但应注意,这里也并不是说要放弃精确度,或者说精确度不重要,只是不应再沉迷于此。适当忽略微观层面的精确度能够增强在宏观层面的洞察力
    3. 第三个转变是,在大数据时代,我们不在执着于寻找事件的因果关系。寻找因果关系是人们长久以来的思维习惯,即使有时候搞明白因果也并没有太大用处。而事物的相关性,有时候更具有世俗化的价值。在一个可能性和相关性占主导地位的世界里,专业性变得不那么重要,专家经验必须与数据表达信息进行博弈

    在大数据时代,危险往往不是隐私的泄漏,而是被预知的可能性。这种可性能可能会导致人们难以获得贷款和购买保险、被权力机构莫须有逮捕等。人们的权利需要新的规章制度来保障。

    大数据给社会带来益处是多方面的。因为大数据已经成为解决紧迫世界性问题,如全球变暖、消除疾病、提高执政能力和发展经济的一个有力武器。但是大数据时代也向我们提出了挑战,我们需要做好充足的准备迎接大数据技术给我们的机构和自身带来的改变。


    大数据与他的朋友们

    一、大数据和数据库的关系

    这里直接引用厦门大学林子雨老师的比喻,“池塘捕鱼”好比传统数据库时代的数据管理方式,而“大海捕鱼”则对应着大数据时代的数据管理方式。“鱼”是要处理的数据,而“捕鱼”环境的变化直接导致了“捕鱼”方式的变更。

    1. 数据规模:“池塘”规模较小,即便是比较大的“池塘”,如VLDB(Very Large Database),和“大海”的XLDB(Extremely Large Database)相比仍旧偏小。数据库的处理对象通常是以 MB 为单位,而大数据则动辄 GB,TB、PB乃至ZB也不为过
    2. 数据类型:“池塘”中“鱼”的种类一般只有一种或几种,以结构化数据为主。而“大海”中“鱼”的种类繁多,不仅包含结构化数据,还有半结构化和非结构化数据,而且后两者的比例越来越高
    3. 数据模式:模式,即Schema。传统数据库是先有模式,再产生数据。好比先建好“池塘”,然后再投放适合在其中生长的“鱼苗”。而大数据时代往往难以预料模式,模式只有在数据产生之后才能确定,而且还会随着数据规模的变化而不断演变。随着时间的推移,“鱼”在不断增长和变化,从而推动了“大海”成分和环境也在不断变化。
    4. 处理对象:在“池塘”中捕鱼,纯粹就是捕鱼,这就是最终目的。而在“大海”中捕鱼,除了捕鱼,还可以通过某些“鱼”来预测其他“鱼”的存在。也就是说,传统数据库中的数据仅作为处理对象,而大数据时代,数据是一种资源,关键是进行分析、挖掘、预测和解决领域问题
    5. 处理工具:在“池塘”捕鱼,少数几种工具就可以应对,也就是所谓的“One Size Fits All”。而在“大海”中捕鱼,可能要针对不同类型的“鱼”采用不同的工具,也就是所谓的 “No Size Fits All”

    图灵奖获得者、著名数据库专家 Jim Gray 博士观察并总结人类自古以来, 在科学研究上先后历经了实验、理论和计算三种范式。当数据量不断增长和累积到今天,传统的三种范式在科学研究,特别是一些新的研究领域已经无法很好的发挥作用。Jim Gray 提出了一种新的“数据探索型”研究方式,称其为科学研究“第四种范式”(The Fourth Paradigm)。

    对于这四种范式:

    • 实验范式,数千年的历史,大部分时间都是依靠实验范式对自然现象的描述进行科学研究。
    • 理论范式,随着文艺复兴与工业革命的到来,科学研究不再满足于简单自然现象的阐述,而是希望通过缜密的理论找到因果关系,大概拥有几百年的历史。
    • 计算范式,随着计算机的发明,用强大的计算能力实现曾经难以触及的领域,这也就是过去几十年发生的事情。
    • 数据探索范式,今天正在发生,依靠对大量数据的分析,预测事情发展的规律。

    第四种范式的实质就是从以计算为中心,转变到以数据处理为中心,也就是我们所说的数据思维,这是一种根本的思维转变。比如计算社会科学,基于特定社会需求,在特定的社会理论指导下,收集、整理和分析数据足迹(data print),以便进行社会解释、监控、预测与规划的过程和活动。

    二、大数据和云计算的关系

    1. 大数据和云计算是相辅相成的。大数据聚焦“数据”,云计算聚焦“计算”。没有大数据的积淀,计算能力无用武之地;没有云计算的处理能力,大数据也只是镜花水月。
    2. 大数据在技术方面根植于云计算。比如MapReduce编程模型(分布式编程模型,可用于并行处理大规模数据集的软件框架)、海量数据存储技术(分布式数据存储,冗余机制保证系统可靠性)、海量数据管理技术(NoSQL数据库,进行海量数据管理和数据分析)等技术。

    三、大数据和物联网的关系

    物联网(IoT - Internet of Things)通过智能感知、识别技术、泛在网络的融合应用,被称为继计算机、互联网之后世界信息产业发展的第三次浪潮。

    物联网架构大致可分为三层:

    1. 感知层:由各种各样的传感器(Sensor)构成,如温湿度传感器、二维码标签读写器、GPS、摄像头、穿戴设备等。这是物联网信息数据的来源
    2. 网络层:由各种网络,如互联网、广电网、通讯网、专用承载网、网管系统、云计算平台等组成。这是物联网的中枢,负责传递和处理感知层获取的信息
    3. 应用层:是物联网和用户的接口,与行业需求相结合,实现物联网智能应用。

    物联网用途广泛,遍及交通、环境保护、政府工作、公共安全、家居、消防、工业监测、环境监测、照明管控、老人护理、个人健康、水系监测、食品溯源、敌情侦查和情报搜集等多个领域。物联网每天都在产生海量数据,需要利用大数据技术对数据进行筛选、处理和分析,提取出有用的信息,以便支撑自身的创新。而大数据领域的一些专业公司,也非常渴望获取物联网领域丰富多彩的数据信息,丰富自身的内容样本库。

    四、大数据和人工智能的关系

    正在辛苦的写作中……


    大数据是多种技术协同的体系

    大数据价值的完整体现需要多种技术的协同。文件系统提供最底层存储能力的支持。为了便于数据管理,需要在文件系统之上建立数据库系统。通过索引等的构建,对外提供高效的数据查询等常用功能。最终通过数据分析技术从数据库中的大数据提取出有益的知识。

    ---- 摘自《大数据技术基础》(厦门大学 林子雨)

    大数据不是单一的技术,文件系统、数据库系统、数据挖掘与分析系统、数据呈现系统、大数据应用系统自下而上构成了一套技术体系和生态链。同时,虽然底层数据来源多种多样,应用诉求和数据类型不尽相同,但基本的处理流程却基本相同:

    整个大数据的处理流程可以定义为:在合适工具的辅助下,对广泛异构的数据源进行抽取和集成,结果按照一定的标准进行统一存储,并利用合适的数据分析技术对存储的数据进行分析,从中提取有益的知识并利用恰当的方式将结果展现给终端用户。

    ---- 摘自《大数据技术基础》(厦门大学 林子雨)

    简单总结就是:异构数据源 ----> 数据抽取与集成 ----> 数据分析 ----> 数据呈现


    大数据处理的基本流程

    一、数据抽取与集成

    由于数据来源的多样性,在处理数据之前,需要先对数据进行预处理,从中提取出关系或对象实体,经过关联和聚合之后采用统一定义的逻辑结构进行存储。同时也要进行一定的清洗工作,以保证数据的质量和可信度。

    数据抽取与集成不是全新的技术,在数据库时代已有成熟的研究和方法论。比如以下常用的几种数据集成方式:

    1. 数据整合(Data Consolidation):通过工具将不同数据源批量集成到同一个物理仓库,当数据量较大时,数据整合的代价也可能较高。
    2. 数据联邦(Data Federation):在多个数据源之上建立一个逻辑视图,提供一个统一的数据访问入口,对外屏蔽不同数据源的分布细节,被请求时临时从不同数据源获取数据。
    3. 数据传播(Data Propagation):通过技术手段实现数据在多个应用之间可传播。

    二、数据分析

    数据分析是大数据的核心。大数据的目的就是为了通过分析,作出预测,给出决策建议。传统的数据分析技术如数据挖掘、机器学习、统计分析在大数据时代面临新的挑战,需要作出一定调整:

    1. 数据量变得巨大不代表价值的增加,反而可能提升噪音。数据清洗难度变高,代价变大
    2. 算法需要与时俱进。比如大数据应用往往对实时性较高要求,而对准确性的要求可能降低,这就要求算法在准确率与实时性上取一个均衡。再比如大数据主要依托云计算,云计算的重要特征之一是分布式和高扩展,算法能否匹配与适应基础设施的变化
    3. 数据分析结果好坏难以评价。给出分析结果并不难,但由于大数据的数据来源分布广,数据结构类型多,数据量大,如何证明该结果的准确性和价值高低是困难的

    三、数据呈现

    再好的分析结果,如果没有良好的呈现,用户可能难以理解,甚至受到误导,这就背离了大数据的初衷。大数据时代要呈现的数据量很大,相互关联关系又变得更为复杂,可以考虑从如下两个方面提升呈现效果:

    1. 可视化技术:诸如标签云(Tag Cloud)、历史流 (History Flow)、空间信息流(Spatial Information Flow)等,而且有很多专业公司致力于此。
    2. 让用户参与和了解数据分析过程

    大数据处理模型

    一、大数据唯快不破

    设想我们站在某个时间点上,背后是静静躺着的老数据,面前是排山倒海扑面而来的新数据。在令人窒息的数据海啸面前,我们的数据存储系统如同一个小型水库,而数据处理系统则可以看作是水处理系统。数据涌入这个水库,如果不能很快处理,只能原封不动地排出。对于数据拥有者来说,除了付出了存储设备的成本,没有收获任何价值。

    ---- 摘自《大数据技术基础》(厦门大学 林子雨)

    在老板眼中,数据是成本,是投资,是价值回报。:

    1. 时间就是金钱:数据是矿产,“挖矿”效率就是竞争力。

    2. 数据价值会折旧

    等量数据在不同时间点上价值不等。NewSQL 的先行者 VoltDB 发明了一个概念叫做 Data Continuum,即数据存在于一个连续时间轴(time continuum)上,每一个数据项都有它的年龄,不同年龄的数据有不同的价值取向,“年轻”(最近)时关注个体的价值,“年长”(久远) 时注重集合价值。

    ---- 摘自《大数据技术基础》(厦门大学 林子雨)

    1. 数据具有时效性

    炒股软件免费版给你的数据有十几秒的延迟,这十几秒是快速猎食者宰割散户的机会;而华尔街大量的机构使用高频机器交易(70%的成交量来自高频交易),能发现微秒级交易机会的吃定毫秒级的;物联网这块,很多传感器的数据,产生几秒之后就失去意义了;美国国家海洋和大气管理局的超级计算机能够在日本地震后 9 分钟计算出海啸的可能性,但 9 分钟的延迟对于瞬间被海浪吞噬的生命来说还是太长了。

    ---- 摘自《大数据技术基础》(厦门大学 林子雨)

    二、大数据的两种处理模式

    数据可能是静止的,也可能是动态的,这也分别对应了批处理和流处理两种处理范式:

    1. 静止的:数据像水库中的水,静静地躺在那里,等待输入不同的逻辑对其进行处理,计算完将价值留下。对应批处理范式。

    Hadoop 就是典型的批处理范式:HDFS存放已经沉淀下来的数据,MapReduce的作业调度系统把处理逻辑送到每个节点进行计算。这非常合理,因为搬动数据比发送代码更昂贵。

    ----摘自《大数据技术基础》(厦门大学 林子雨)

    1. 动态的:数据像流动的小溪,从外界不断涌进,而逻辑保持不变,计算完将价值留下,原始数据或加入静态数据中,或丢弃。对应流处理范式。

    流处理品类繁多,包括传统的消息队列(绝大多数名字以 MQ 结尾)、事件流处理(Event Stream Processing)、复杂事件处理(Complex Event Processing 或 CEP)(如 Tibco 的 BusinessEvents 和 IBM 的 InfoStreams)、分布式发布/订阅系统(如 Kafka)、专注于日志处理的(如 Scribe 和 Flume)、通用流处理系统(如 Storm 和 S4)等。

    ----摘自《大数据技术基础》(厦门大学 林子雨)

    下面这张图是动静态数据和处理逻辑之间的关系

    这两种范式没有谁更好一说,好比生活中,有人喜欢把事情攒成一堆儿一起做,而有些人则喜欢来一件事就处理一件事。一般认为,流处理范式更快一些,但流处理模式往往对应最近的一个数据窗口,只能获得实时智能,而难以实现全时智能,而此又恰恰是批处理范式的优势所在。因此这两种范式常常配合使用,甚至形成了这样的定式:

    • 流处理范式作为批处理范式的前端,先用流范式过滤噪音,留下感兴趣的数据,保存下来以待批处理范式进行后续处理。
    • 流处理范式与批处理范式分工协作,流处理范式负责动态数据和实时智能,皮处理范式则负责静态的历史数据和历史智能,实时智能与历史智能共同组成全时智能。

    三、怎么快起来

    前面说了大数据唯快不破,也讲了大数据的两种处理范式,那如何才能做到“快”呢?这同时是商业决策者和系统架构师的巨大挑战。

    1. 首先,快是要付出代价的。所以,要先搞清楚什么是“快”,需要多“快”。是毫秒级,秒级,分钟级,小时级,天级……快无止境,适度即可。

    2. 其次,要考虑当前的系统是否有潜力做到更快,还是要重新重构。基于传统的关系型数据库,大概能做到TB量级,并可以通过分库分表(sharding)以及缓存(memcached)来延续传统数据库架构的生命。但如果有更高的要求,就需要考虑新的架构,是批处理范式,还是流处理范式,或者是两者的结合?这就需要量身定做了。

    Intel 有一位老法师说:any big data platform needs to be architected for particular problems (任何一个大数据平台都需要为特定的问题度身定做)。这是非常有道理的。为什么呢?比如说大方向决定了要用流处理架构,落实到具体产品少说有上百种,所以要选择最适合的流处理产品。再看批处理架构,MapReduce 也不能包打天下,碰到多迭代、交互式计算就无能为力了;NoSQL更是枝繁叶茂,有名有姓的 NoSQL 数据库好几十种。

    ----摘自《大数据技术基础》(厦门大学 林子雨)

    上面说的是原则,实际上还是有一些通用的方法论让大数据“快起来”:

    1. 如果判断前端流入数据量过大,及时采用流处理范式过滤非重要数据
    2. 通过预处理把数据分成适于快速处理的格式。如谷歌大数据引擎 Dremel 就是把只读的嵌套数据转成类似于列式数据库的形式,实现了 PB 级数据的秒级查询。当然,也需要注意预处理需要消耗一定的资源。
    3. 增量计算,把重点放在新增的数据之上,先满足“快”,抽空再把新数据更新回老的数据系统中。谷歌的 Web 索引服务自2010年起从老的 MapReduce 批量系统升级成新的增量索引系统,就极大地缩短网页被爬虫爬到(新增数据)和被搜索到(产生大数据分析结果)之间的延迟。
    4. 用内存计算(In-memory Comuputing)代替基于磁盘I/O的计算。最简单的就是内存缓存,复杂一点的涉及内存数据库和分析平台,比如伯克利的开源内存计算框架Spark,斯坦福的内存数据库系统RAMCloud。未来随着非易失性内存(断电数据不会丢失)的成熟,内存计算会大行其道。
    5. 降低精确性要求。大体量、精确性和快,三者最多得其二。不能太贪心,将精确性控制在一定误差范围内,能够满足商业要求即可。

    参考材料

    • 《大数据时代》,维克托·迈尔·舍恩伯格
    • 《大数据技术基础》,林子雨
    • 《人工智能和大数据的关系及中国在AI领域如何赶超世界》,钛极客
    • 《一张图看懂AI与大数据》,中国科技网

    相关文章

      网友评论

          本文标题:《大数据时代》读书笔记 01:一场生活、工作与思维的大变革

          本文链接:https://www.haomeiwen.com/subject/ryhrsftx.html