《大数据系统构建:可扩展实时数据系统构建原理与最佳实践》一1.4 基本原理...

本节书摘来自华章出版社《大数据系统构建:可扩展实时数据系统构建原理与最佳实践》一书中的第1章,第1.1节,南森·马茨(Nathan Marz) [美] 詹姆斯·沃伦(JamesWarren) 著 马延辉 向 磊 魏东琦 译,更多章节内容可以访问云栖社区“华章计算机”公众号查看。

1.4 基本原理

为了找到正确构建数据系统的方法,你必须先了解基本原理。那么,从最基本的层面上来说,数据系统是做什么的呢?
下面以一个直观的定义切入正题—数据[系统基于过去到现在的信息来回答问题。例如,社交网络资料回答诸如“这个人的名字是什么?”“这个人有多少朋友?”这样的问题;银行账户网页回答诸如“我的当前余额是多少?”“最近我的账户发生了什么交易?”这样的问题。
数据系统不只是记录和重现信息。它们把零碎的信息结合起来生成答案。例如,银行账户余额是结合该账户上的所有交易信息得到的。
另一个重要的观察是:并非所有信息都是平等的,一些信息来自于其他信息。例如,银行账户余额源自历史交易,朋友数源自朋友列表,朋友列表源自用户资料中添加和删除朋友的总次数。
当你一直追踪信息的来源时,最终得到的是并非派生自任何事物的信息。这是最原始的信息,也就是说,你掌握的信息是真实的,只是因为它是存在的。这样的信息就被称为数据。
你也许对数据这个词有着不同的理解。通常数据与信息这个词是可以互换使用的。但在本书的剩余部分,在使用数据这个词时,所指的是一切派生得到的特殊信息。
如果一个数据系统通过查看过去的数据来回答问题,那么最通用的数据系统通过查看整个数据集来回答问题,所以数据系统最通用的定义如下:

  query = function (all data)

换言之,任何所能想象的数据处理都可以表示为一个函数,该函数以接收到的所有数据作为输入。请记住这个等式,因为它是你将学到的所有知识的关键。后文将反复提及这个等式。
Lambda架构提供了一种通用的方法来实现任意数据集上的任意函数,并且让这个函数低延迟地返回结果。这并不意味着每次实现一个数据系统时,你永远使用完全相同的技术。你使用的具体技术可能基于自身需求的改变而改变。但是Lambda架构定义了一个一致性的方法来选择这些技术,并将它们连接在一起以满足你的需求。
下面讨论数据系统必须呈现出的属性。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值