微信号:ai-front

介绍:面向AI爱好者、开发者和科学家,提供最新最全AI领域技术资讯、一线业界实践案例、搜罗整理业界技术分享干货、最新AI论文解读。每周一节技术分享公开课,助力你全面拥抱人工智能技术。

送书|十年大数据,十年区块链,两技术如何共生演进?

2017-11-29 18:09 福利满满
作者 | 井底望天等人
编辑 | Natalie
AI 前线导语:大数据的发展取得了重要的成果,但目前也面临着数据流通不足的巨大挑战。区块链以其可追溯性、安全性和不可篡改性的技术将在解决数据互联互通和开放共享的问题上发挥巨大作用。从长远来看,区块链与大数据的结合会给整个人类社会带来天翻地覆的变化。本文节选自《区块链与大数据:打造智能经济》第四章。

更多干货内容请关注微信公众号“AI 前线”(ID:ai-front)

注意啦,文末有送书福利!

“区块链既是大数据的安全载体(存储方式),又提供了数据使用的审计手段(账本),还将扮演数据间化学作用的催化剂(智能合约)。区块链与大数据的奇妙结合,将建构未来数据社会的基础。本书揭示了两者共生、交融和共同演化的万般可能。”   ——吴甘沙 驭势科技 CEO

区块链的技术沿革
区块链基础技术
点对点通信技术

点对点(P2P)通信技术是一种对等连接的互联网技术,依赖网络中参与者共同的计算能力和带宽,而不是把依赖都聚集在较少的几台服务器上。这类网络具有多种用途,各种档案分享软件已经广泛使用。点对点通信技术也被应用在类似 VoIP 等实时媒体业务的数据通信中。

纯点对点网络没有客户端或服务器的概念,只有平等的同级节点,同时对网络上的其他节点充当客户端和服务器。这种网络设计模型不同于传统的“客户端—服务器”模型,在“客户端—服务器”模型中通信通常来往于一个中央服务器,而中央服务器就是系统中的单点故障源头。点对点通信技术形成的网络由于设计和实施方案的不同,也出现了不同的网络模型。

非对称加密算法

非对称加密算法需要两个密钥来进行加密和解密,其中一个是公开密钥(Public Key),简称公钥,另一个是私有密钥(Private Key),简称私钥。公钥是可以公开的,也需要通过公共的渠道公开给相应的通信方;而私钥是非对称加密算法中的关键,需要安全地保护好。公钥与私钥是一对,如果用公钥对数据进行加密,只有用对应的私钥才能解密;如果使用私钥进行数据的签名,只有公钥可以来验签。

因为加密和解密使用的是两个不同的密钥,所以被称为非对称加密算法。由非对称加密算法形成的非对称加密体系解决了信息公开传送和密钥管理问题,是一种新的密钥交换协议,允许在不安全媒体上的通信双方交换信息,安全地达成一致的密钥,这就是“公开密钥系统”。

区块 - 链式数据结构

区块链是一种把区块以链的方式组合在一起的数据结构,选取新节点时需要将新区块里前一个区块的哈希值、当前时间戳、一段时间内发生的有效交易及其梅克尔树根值等内容打包成一个区块向全网广播。密码学保证了数据的不可篡改和不可伪造,能够使参与者对全网交易记录的事件顺序和当前状态建立共识。

由于每一个区块的块头都包含了前一个区块的交易信息压缩值,这就使从创世块(第一个区块)到当前区块连接在一起形成了一条长链。如果不知道前一个区块的“交易缩影”值,就没有办法生成当前区块。因此,每个区块必定按时间顺序跟随在前一个区块之后。这种所有区块包含前一个区块的引用结构,让现存的区块集合形成了一条数据长链。

分布式账本

在区块链网络中,每个新增加的区块里面存储了全网最近的交易记录,然后按时间顺序依次被添加到区块链上。区块链存储在由多个节点组成的分布式网络系统上,每个完整的节点都存储有整个区块链的副本,而每一个计算机节点之间通过网络进行交易信息的共享。

同时,区块链也是一个交易数据库,其中存储的是在系统中由所有节点共享的信息,称为分布式加密总账本。通过这个总账本,区块链实现了其不需要一个中央权力机构或受信任的第三方来协调互动、验证交易或监管行为的特征。 一个区块链上的完整副本包含了每一个曾经执行的交易,使历史上的任何信息都可以被任何一个参加的节点所访问。全网共享账本这个特性也使防止双重支付成为现实。

共识机制

由于点对点通信的原因,分布式系统或者点对点网络中,每个节点是按自己的规则运行的。为保持整个系统数据的一致性,需要借助分布式共识技术。传统的分布式技术中,由于本身的技术特点并不需要数据的一致性,更多的是需要数据的准确性,包括主从、Sharding 技术等。但是,在点对点网 络中每个节点之间并没有依赖关系,所以就更需要保证数据一致性的机制。

分布式共识算法包括异步和共识。异步是指在一个分布式系统中对消息的处理速度或者消息送达时间不做任何假设;共识是指当多个主机通过异步通信方式组成网络集群时,这个网络默认是不可靠的,那么在这些不可靠的主机之间复制状态需要采取一种机制,以保证每个主机的状态最终达成相同一致性状态,即取得共识。通过共识机制,实现了区块链网络链条的唯一和数据的唯一。

区块链更高层级的技术:资产互联
智能合约

在区块链的环境下,合约就是通过区块链使用密码货币和某人形成某种协议。传统意义上的合约,就是双方或者多方共同协议做或者不做某事来换取某些东西,合同中的每一方必须信任彼此会履行义务。智能合约的特点是,同样是彼此之间同意做或者不同意做某事,但无需再信任彼此,这是因为智能合约不但是由代码进行定义的,也是由代码(强制)执行的,自动完成且无法干预。

智能合约之所以能如此操作,主要是由三个要素造成的:自治、自足和去中心化。自治表示合约一旦被启动就自动执行,而不需要它的发起者进行任何干预;智能合约能够自足地获取资源,也就是说通过提供服务或者发行资产来获取资金,当需要的时候也会使用这些资金;智能合约是去中心化的,也就是说它们并不依赖单个中心化的服务器而分布式存在,并且通过网络节点来自动运行。

虚拟机

虚拟机是区块链中智能合约的运行环境,它被沙箱封装起来,完全隔离。也就是说,运行在虚拟机内部的代码不能接触到网络、文件系统或者其他进程,甚至智能合约之间也只能进行有限的调用。

大数据和区块链技术之同
分布式数据库:HDFS vs. 区块

大数据需要应对海量化和快增长的存储,这要求底层硬件架构和文件系统在性价比上要大大高于传统技术,能够弹性扩张存储容量。谷歌的 GFS 和 Hadoop 的 HDFS 奠定了大数据存储技术的基础。另外,大数据对存储技术提出的另一个挑战是多种数据格式的适应能力。因此,现在大数据底层的存储层不只是 HDFS,还有 HBase 和 Kudu 等存储架构。

区块链本质上是一种分布式的数据库系统。区块链技术作为一种链式存取数据技术,通过网络中多个参与计算的节点来共同参与数据的计算和记录,并且互相验证其信息的有效性。从这一点来说,区块链技术也是一种特定的数据库技术。由于去中心化数据库在安全、便捷方面的特性,很多业内人士 看好其发展,认为是对现有互联网技术的升级与补充。

分布式计算:MapReduce vs. 共识机制

大数据的分析挖掘是数据密集型计算,需要巨大的分布式计算能力。节点管理、任务调度、容错和高可靠性是关键技术。谷歌和 Hadoop 的 MapReduce 是这种分布式计算技术的代表,通过添加服务器节点可线性扩展系统的总处理能力,在成本和可扩展性上都有巨大的优势。现在,除了批计算,大数据还包括流计算、图计算、实时计算、交互查询等计算框架。

区块链的共识机制,就是所有分布式节点之间怎么达成共识,通过算法来生成和更新数据。认定一个记录的有效性,既是认定的手段,也是防止篡改的手段。区块链主要包括四种不同的共识机制,适用于不同的应用场景,在效率和安全性之间取得平衡。以比特币为例,采用的是工作量证明,只有在控制了全网超过 51% 的记账节点的情况下,才有可能伪造出一条不存在的记录。

分布式和集中式技术的螺旋发展

和人类社会一样,IT 技术的发展也呈现出“合久必分,分久必合”,即集中与分布的螺旋式上升。

计算机诞生初期,仅能实现一对一的使用,是集中化的。为了使一台大型机能够同时为多个客户提供服务,IBM 公司引入了虚拟化的设计思想,使多个客户在同时使用同一台大型机时,就好像将其分割成了多个小型化的虚拟主机,是时分复用的集中式计算。

进入小型机和 PC 时代,回归了一对一的使用,不过设备已经分散到了千家万户。进入互联网时代,C/S 模型的客户端和服务器是分布式计算,只不过服务器之间还是分散的。

进入云计算时代,计算能力又被统一管控起来,在客户端和服务器的分布式计算基础之上,服务器之间也开始了分布式协同工作。因为协同,所以也可以认为它们在整体上是一种集中式的计算服务。

进入大数据时代,云计算成为大数据基础设施,也使大数据的核心思想和云计算一脉相承。MapReduce 将任务分解进行分布式计算,然后将结果合并,从而实现了信息的整合分析。

区块链是纯粹意义上的分布式系统,而分布正是技术的信仰。技术的背后,还有商业和历史。

商业信仰集中,希望通过产品实现更好地控制和更高的利润。但随着产品集中度的不断上升,系统会越来越复杂,实现的难度越来越大,沟通、交流和管理的成本也越来越高,最终变得不经济。

而历史告诉我们,人类社会存在社会化分工,让专业的人做专业的事。涂尔干的《社会分工论》谈到,“分工使社会像有机体一样,每个成员都为社会整体服务,同时又不能脱离整体。分工就像社会的纽带,故谓之‘有机团结’。”

基于这种思想,分布式技术诞生,产品功能被分解并分布到不同的节点上去完成,节点之间通过网络实现沟通。分布式系统中的一些节点或因为商业上的成功,重新成为“集中化”的节点。但随着时代的改变,它们终将会进入新一轮的分布式周期,如此往复。

集中和分布不是光谱的两端,任何伟大的产品都是商业和技术的“有机团结”。

大数据和区块链技术之异
两个技术处于不同的生命周期

技术成熟度曲线是咨询公司高德纳用来分析和预测各种新科技成熟演变速度及所需时间的著名工具。大数据与区块链历年在技术成熟度曲线中的出现情况如图 4-4 所示。

图 4-4 大数据与区块链在高德纳历年技术成熟度曲线中的出现情况

大数据于 2011 年第一次上榜,位于技术萌芽期的爬坡阶段,当时还统称为“‘大数据’和极端信息处理和管理”(“Big Data”and Extreme Information Processing and Management);2012 年更进一步,并在 2013 年几乎达到了过热期顶峰;经历了 2014 年的下滑,从 2015 年开始,大数据突然从曲线中消失,可解读为高德纳对大数据的定位已从“新兴”转为“主流”。当前,大数据对于企业的意义已从能力要素上升为战略核心。

相对而言,区块链直到 2016 年才第一次出现在技术成熟度曲线中,并直接进入过热期。从总体来看,大数据和区块链所处生命周期的阶段大不相同,两者约有 5 年左右的差距。

大数据和区块链的主要差异

大数据通常用来描述数据集足够大、足够复杂,以致很难用传统的方式来处理。而区块链能承载的信息数据是有限的,离大数据标准还差得很远。区块链与大数据有以下几个显著差异。

  • 结构化 vs 非结构化

    区块链是结构定义严谨的块,通过指针组成链,是典型的结构化数据,而大数据需要处理的更多是非结构化数据。

  • 独立 vs 整合

    区块链系统为保证安全性,所承载的信息是相对独立的,而大数据着重的是信息的整合分析。

  • 直接 vs 间接

    区块链系统本身就是一个数据库,而大数据是对数据的深度分析和挖掘,是一种间接的数据。

  • 数学 vs 数据

    区块链试图用数学说话,主张“代码即法律”,而大数据试图用数据说话。

  • 匿名 vs 个性

    区块链是匿名的,而大数据强调的是个性化。

差异能否调和

对一个分布式系统来说,存在 CAP 定理(CAP theorem),又被称作布鲁尔定理(Brewer's theorem),它指出一个分布式系统不可能同时满足以下三点。

  • 一致性(Consistence)

    分布式系统中的所有数据备份在同一时刻是否有同样的值。

  • 可用性(Availability)

    集群中的一部分节点发生故障后,集群整体是否还能响应客户端的读写请求。

  • 分区容忍性(Partition tolerance)

    当集群中的某些节点无法联系时,集群整体是否还能继续进行服务。

    由于当前的网络硬件肯定会出现延迟丢包等问题,所以分区容忍性是必须要实现的。换句话说,CAP 定理表明必须在一致性(C)和可用性(A)之间进行权衡。

    具体到区块链和大数据来说,大数据是以牺牲一致性(C)来换取可用性 (A)和分区容忍性(P),而区块链却优先保证了一致性(C)。

可相互借鉴之处

通过 CAP 定理,我们知道区块链和大数据的诸多特性无法两全,需要针对具体场景,在多样化的取舍方案下设计出多样化的系统。

区块链 + 大数据:在区块链中使用大数据技术

区块链是一种不可篡改的、全历史记录的分布式数据库存储技术,巨大的区块链数据集合包含了每一笔交易的全部历史。随着区块链技术的迅速发展,数据规模会越来越大,不同业务场景的区块链数据融合会进一步扩大数据规模和丰富性。

区块链以其可信任性、安全性和不可篡改性让更多数据被解放出来,推进了数据的海量增长。区块链的可追溯性使数据的质量获得前所未有的强信任背书。通过区块链脱敏的数据交易流通,则有利于突破信息孤岛,并逐步形成全球化的数据交易。

区块链提供的是账本的完整性,数据统计分析的能力较弱。大数据则具备海量数据存储技术和灵活高效的分析技术,极大地提升了区块链数据的价值和使用空间。

大数据 + 区块链:在大数据中使用区块链技术

大数据的技术生态百花齐放,没有哪个软件能解决所有的问题,能解决问题也是在一定范围内,即使是 Spark、Flink 等。在强调透明性、安全性的场景下,区块链有其用武之地。在大数据的系统上使用区块链技术,可以使数据不能被随意添加、修改和删除。当然,其时间和数据量级是有限度的。

图 4-5 区块链在数据处理软件 / 平台中的位置

图 4-5 以时间、数据量为坐标轴,列出了目前大数据引擎大致擅长处理数据的范围,区块链可在其中成为一种很好的补充。

例如,存档的历史数据因为是不能被修改的,所以可以对大数据作哈希处理并加上时间戳,存在区块链上。未来当我们需要验证原始数据的真实性时,可以对相应的数据做同样的哈希处理:如果得出的答案相同,则说明数据是没有被篡改过的。也可以只对汇总数据和结果做处理,这样只需要处理增量数据,那么应对的数据量级和吞吐量级可能是今天的区块链或改善过的区块链系统可以处理的。

随着数字经济时代的大数据能够处理越来越多的现实预测任务,区块链技术能够帮助把这些预测落实为行动。通过把区块链技术与大数据相连接,大数据将会在“反应—预测”模式的基础上更进一步,能够通过智能合约和未来的 DAO、DAC 及 DAS 自动运行大量的任务,那么将会解放大量的人类生产力,让这些生产力被去中心化的全球分布式计算系统代替。

作者介绍

井底望天:原名周沙,硅谷风投精准资本创始人;1996 年投身硅谷高科技行业,先后在惠普、Alteron、NetScaler、NetScreen 和 Juniper 工作;2012 年开始创办财经周报,并创立一系列高科技企业。

武源文:井通网络科技有限公司执行董事、总经理;中关村大数据产业联盟副秘书长,中关村大数据产业联盟交换标准委员会主任;曾任长江大数据交易所总裁、哈尔滨大数据交易中心总经理、贵阳大数据交易所董事,亚信数据(云平台部副总经理)。

赵国栋:中关村大数据产业联盟秘书长、北京大数据研究院副院长,汇冠股份独立董事,北京邮电大学经济管理学院特聘导师,国务院学位办大数据专业硕士特聘导师,中国计算机学会大数据专家委员会委员,出版有《大数据时代的历史机遇》《产业互联网》等著作;系统性提出“联盟三论”等原创思想:论企业战略,提出以数据资产为核心的企业战略发展理论;论区域经济,提出以产业互联网为统摄的产业升级、产业聚集理论;论组织变革,提出以中间市场为特征的组织变革理论,指导区域经济和企业发展;被誉为中国大数据、产业互联网的引导者和启蒙者。

刘文献:贵阳众筹金融交易所董事长,贵州财经大学大数据金融学院院长,中国电子商务协会互联网金融专委会理事长。

福利!福利!我们将给 AI 前线的粉丝送出《区块链与大数据:打造智经济》纸质书籍 15 本!在本文下方留言给出你想要这本书的理由,到 12 月 2 日(周六)上午 10 点,点赞数前 15 名,每人获得一本。截止后我们将尽快公布获奖情况,请持续关注每日推送!另附京东购买地址,请戳「阅读原文

今日荐文

点击下方图片即可阅读

陆奇的策略:小米 + 百度,但雷军和李彦宏两巨头能亲密合作吗?



活动推荐

AI 这么热,那它是不是高不可攀呢?并不是,其实 AI 落地的核心是工程问题,比如如何用 AI 设计 UI,辅助运维、测试?AI 如何与云计算、流处理、K8s/Mesos 等底层架构相结合?这些都与大家的基本工作息息相关。

那么,我该如何跟上潮流,学习并掌握相关 AI 技术呢?去哪里可以找到现成的答案呢?

AICon 上,我们邀请到了来自 AWS、BAT、360、京东、微信、携程、爱奇艺、知乎、第四范式等公司 AI 技术负责人前来分享他们的人工智能落地实践,内容涵盖 AI 架构、机器学习 2.0、搜索推荐及 feed 流、语音识别与智能助手、计算机视觉、NLP 等相关话题。目前大会 8 折报名倒计时进行中,可长按文中二维码详细了解。


 
AI前线 更多文章 陆奇的策略:小米+百度,但雷军和李彦宏两巨头能亲密合作吗? 青云的云计算和人工智能生意经 哈佛推出完美流算法,达30年来最优性能 奇虎360正式开源其深度学习调度平台,支持TensorFlow、MXNet等框架 AI培训班有存在的必要吗?
猜您喜欢 基于GTEST+MOCKCPP的自动化测试 使用Docker容器的十大误区 三分钟全球能源资讯(油价暴涨) 欧洲推广使用开放文档格式ODF OpenGL ES和坐标变换概述