正文
当我们从简单的计算形式转变为由定理、符号和算法组成的抽象形式(我们现在称其为数学),就开启了另一个大数据时代。第一批有记载的计算发生在公元前 2500 年的美索不达米亚。当时,美索不达米亚人需要计算出一谷仓的粮食能够养活多少人。
美索不达米亚人有具体的问题关注点,他们很清楚需要解决的问题是什么。他们的计算都是很离散的,因为每一次计算只能解决一个问题。这也就是为什么评论家们认为它们不是数学。直到公元前 500 年的古希腊,毕达哥拉斯学者们(可以把他们认为是早期的 Google 使用者,哈哈)开始针对三角形提出了一些奇怪的问题。比如,他们想知道等腰直角三角形的三个边能否都是整数(这听起来像不像一个 Google 风格的面试题?)。
如果你想通过离散的方式来解答这个问题,那么可以像美索不达米亚人那样做。不过,随着数字的增加,这种方式会显得很笨重。要证明这个假设,你需要进行多少次计算(其实这个假设是错误的,三个边不可能都是整数)?等腰三角形问题的不同之处在于,它不存在具体的关注点。我们不知道三角形的大小,也不知道它们的边长,而且它们的大小可能是无限的。如果我们在数字上应用推理,那么就进入了数学领域,大数据也就接踵而至。毕达哥拉斯式的思维方式体现了数学的抽象特征,在今天,我们使用符号、规则和推理来解答这类抽象的问题。
或许你想知道人类历史上的其他大数据时期,不过我想直接跳到 20 世纪,看看代码如何成为现代技术领域的重要组成部分(如果你有其他大数据时期的资料,可以在评论里告诉我,我相信它们会很有趣)。
1945 年,当 Grace Hopper 开始在 Harvard Mark I 计算机上工作时,编码(或者说编程,不过我们不打算在这里区分它们有什么不同)这项工作的重要性就开始凸显出来。在这之前,电脑(如果可以这么叫它的话)充其量只是个计算工具。以二战为例,当时的大炮需要借助矩阵进行辅助瞄准。矩阵是一些方程式的计算结果,这些方程式使用数百种不同的计算因子,比如距离、海拔、风速、温度、湿度,等等。电脑(computer)这个名字的由来也是很偶然的,人们用它描述在二战中操作计算机的女性,她们被称为“computer”。操作员们必须使用打孔卡和曲柄来处理方程式。一个打孔卡需要 170 个人月才能完成。
这个与我们之前讨论的事情有什么相似之处?美索不达米亚人使用黏土矩阵来进行计算,而到了 20 世纪,计算媒介变成了编码。虽然已经有了长足的进步,不过编码仍然是一种离散的操作,因为它执行的是具体的计算任务,只是效率上有所提升而已。编码解放了人工操作,让我们可以处理更多的数据。