Reader's Club

Home Category

牛津通识读本:大数据 [6]

By Root 966 0
值”可以包含多个数34据项。

图5 键值存储数据库

当然,有很多这样的键值对,添加新键值或删除旧键值都非常简单,这赋予了数据库高度的水平可扩展性。查询给定键的值是数据库的主要功能。比如,使用键“简·史密斯”,我们可以找到她的地址。对于大数据来说,键值存储数据库为存储提供了快速、可靠且易于扩展的解决方案,但由于没有合适的查询语言,它的优势受到了限制。列存储数据库和文档型数据库是键值存储数据模型的扩展。

图形数据库遵循不同的模型,在社交网站中很受欢迎,并且在商业应用程序中也能大显身手。这些图形通常非常大,特别是用于社交网站的时候。在数据库中存储图形时,信息存储在节点(即顶点)和边线中。例如,图6中的图形显示了五个节点,它们之间的箭头表示关系。添加、更新或删除节点都会更改图形。

图6 图形数据库35

在此示例中,节点是姓名或部门,边线反映的是它们之间的关系。通过查看边线中的关系实现从图形数据库中检索数据。例如,如果我想查询“IT部门中有子女的员工的姓名”,就会发现鲍勃同时满足这两个条件。值得注意的是,这不是有向图——我们不遵循箭头的指向,我们寻找的是关联。

目前,一种名为“新型数据库”(NewSQL)的检索方法正崭露头角。通过整合非关系型数据库的运作方式和关系型数据模型的ACID属性,这项潜在技术的目的是解决关系型数据模型存在的数据扩展问题,使其更适用于大数据。

云存储

像许多现代计算机术语一样,“云”(Cloud)听起来不仅友好、舒心、引人入胜,而且亲切熟悉。但如前文所述,“云”实际上只是相互连接的服务器所组成的网络的一种表达方式,它们分布在世界各地的数据中心。众多的数据中心连接在一起,构成了存储大数据的超级网络。

借助互联网,我们可以共享远程服务器上的应用。通过支付费用,就可以在由各公司提供的服务器上存储和管理我们的文件、运行应用程序等。只要你的计算机或其他设备具有访问云端的必备软件,你就能从世界上的任何地方查看文件,也可以授予其他人相同的权限。你还可以运行“驻留”在云端而不是本地计算机上的软件。这不仅是对互联网的简单访问,而且包括存储和处理信息,“云计算”因而得名。我们个人的云存储容量并不大,但积累起来的信息量则大得惊人。

亚马逊是最大的云服务提供商,但其管理的数据是商业秘36密。我们可以透过2017年2月亚马逊云存储系统S3断网(即服务丢失)这一事件来理解云计算的重要性。该断网事件持续了将近五个小时,导致了众多网站和服务的连接中断,其中包括奈飞、亿客行(Expedia)和美国证券交易委员会。亚马逊后来在报告中说此事件是人为错误所致,他们的一名员工无意间切断了服务器的网络。重启这些大型系统的时间比预期的长了很多,但最终得以成功完成。不管怎么说,这一事件暴露了互联网的脆弱性,无论是真正的误操作,还是恶意的黑客入侵,都可以让其崩溃。

无损数据压缩

据广受尊重的国际数据公司2017年的估计,当时的数字世界总共有16 Zb的数据量,相当于不可思议的16×1021字节。最终,随着数字世界的不断成长,诸如哪些数据应该保存,应该保留多少副本,以及需要保留多长时间等问题,我们都必须要面对。定期清除数据或者对数据进行归档,这本身就是对大数据存在必要性的质疑。这样做不仅成本昂贵,并且可能会造成有价值数据的丢失,因为我们无法预知哪些数据在未来是重要的。随着存储的数据量的不断增加,为了最大限度地存储数据,数据压缩变得不可或缺。

由于收集到的电子数据质量良莠不齐,为要确保数据分析有效,在分析之前,必须要对其进行预处理,以便检查并解决一致性、重复性和可靠性方面的问题。如果我们要依赖从数据中提取的信息,那么一致性显然尤为重要。删除冗余的重复信息,对任何数据集来说都是良好数据管理的指标,而对于大数据,还有另外一层担忧,那就是,没有足够的存储空间来保存所有(重37复的)数据。压缩数据可以减少视频和图像中的冗余,从而降低存储压力,而对视频来说,压缩数据可以提高流速率。

数字压缩分为无损和有损两种主要类型。在无损压缩中,所有数据都被保留,因此这对于文本特别有用。例如,扩展名为“.ZIP”的文件已被压缩且没有丢失信息,因此对它们进行解压后,就会得到原始的文件。如果我们将字符串“aaaaabbbbbbbbbb”压缩为“5a10b”,就很容易明白压缩并还原成原始字符串的方法。压缩算法有很多,但先了解在不压缩的情况下数据是如何被存储的会大有裨益。

美国信息交换标准码(ASCII码)是对数据进行编码的标准方式,通过编码,数据才能够被存储在计算机中。每个字符都被指定为一个十进制数字,即ASCII码。正如我们已经知道的,数据存储为一系列的0和1。这些二进制数字被称为比特。标准ASCII码使用8比特(也定义为1个字节)来存储一个字符。例如,在ASCII码中,字母“a”由十进制数97来表示,转换为二进制形式就是01100001。这些值能在标准ASCII表中查到,其中一小部分在本书末尾给出。大写字母具有与小写字母不同的ASCII码。

图7显示的是字符串“added”的编码情况。

38图7 编码的字符串

因此,“added”需要5个字节或40比特。基于图7的规则,使用ASCII码表进行解码。ASCII码显然不是编码和存储数据的经济方式,每个字符需要8比特空间似乎过多,并且也没有从字母使用频率有别这一角度来考虑问题,在文本文档中某些字母比其他字母的使用频率要高很多。有许多无损数据压缩模型,例如霍夫曼算法,它通过可变长度编码来节约存储空间。该技术就是基于字母出现的频率,用更短的代码表示那些出现频次最多的字母。

再以“added”为例,“a”出现一次,“e”也出现一次,“d”有三次。因为“d”出现的频次最高,它的编码应该最短。为了进行霍夫曼编码,我们首先计算“added”中各字母的次数:

1a→1e→3d

接下来,我们看到频次最小的两个字母分别为“a”和“e”,用图8中的二叉树结构来表示。顶端的数字2是两个最小频次的字母出现次数相加的结果。

图8 二叉树39

在图9中,新节点代表频次为3的字母d。

图9 有一个新节点的二叉树

图9是完整的树形图,各字母的频次位于顶端。在下面的图10中,树形图的边对应的编码是0或1,字母的编码就是沿边而上的数字。

图10 完整的二叉树

因此,对于“added”来说,a=00,d=1,d=1,e=10,d=1,编码结果为0011101。使用该方法,存储字母“d”用了3比特,字母“a”和字母“e”都是2比特,总共是7比特。与原来的40比特相比,这是一个巨大的进步。

衡量压缩效率的方法之一,是使用数据压缩率,它指的是文件的实际大小与其压缩后大小的比率。在本例中,压缩率为45/7,约等于6.43。高压缩率显示出良好的存储经济性。在实践中,这些数字之树会非常庞大,需要使用复杂的数学技术进行优化。此例展示了我们如何压缩数据而不会丢失原始文件所包含的任何信息,因此被称为无损压缩。

有损数据压缩

相比之下,声音和图像文件通常比文本文件大得多,因此使40用了另一种被称为有损压缩的技术。之所以使用有损压缩,是因为当我们处理声音和图像时,无损压缩方法可能根本达不到足够高的压缩率,从而无法满足数据存储的需要。另一个同等重要的原因是,对于声音和图像来说,某些数据的丢失是可以容忍的。有损压缩通过永久删除原始文件中的某些无足轻重的数据,以达到减少存储空间的目的。此举的基本理念是,在不过度影响我们对图像或声音感知的前提下删除一些细节。

例如一张孩子在海边吃冰激凌的黑白照片,更准确地说是灰度图像,有损压缩的方法会从孩子的图像和大海的图像中删除同等量的数据。通过精确计算得出删除数据的百分比,确保观者对压缩后生成的图像在感觉上没有太大的差异——压缩率过大会导致照片模糊不清。在压缩率和图片质量之间需要权衡取舍。

如果要压缩灰度图像,我们首先将其分成8像素乘8像素的块。由于这是一个非常小的区域,因此所有像素的色调通常都相似。这一观察结果,以及有关我们如何感知图像的知识,对于有损压缩意义重大。每个像素都有一个介于0(纯黑色)和255(纯白色)之间的相应数值,数值表示灰阶度。在使用一种被称为离散余弦算法的方法进一步处理后,得到每个块的平均灰阶强度值,并将结果与给定块中的实际数值进行比较。由于平均值与实际值相差甚小,因此比较后的大多数结果为0或四舍五入后为0。有损算法将所有这些0收集起来,它们代表的是来自各像素的对图像不太重要的信息。在对这些在图像中高频出现的数值进行分组后,再使用一种被称为量化的技术对其中的冗余信息进行删除,从而实现数据压缩。例如,如果在64个值中(每41个值需要1个字节的存储空间),我们有20个0,那么在压缩后,我们仅需要45个字节的存储空间。对构成图像的所有块都重复此过程,冗余信息会被悉数删除。

对于彩色图像,例如JPEG(联合图像专家小组格式),其算法识别红色、蓝色和绿色,并根据人类视觉感知的已知属性为每个色彩分配不同的权重。绿色的权重最大,因为人眼对绿色的感知强于对红色或蓝色的感知。彩色图像中的每个像素都分配有红色、蓝色和绿色权重,表现为〈R,G,B〉三元组。由于技术原因,〈R,G,B〉三元组通常转换为另一个三元组〈YCbCr〉,其中Y代表颜色的强度,Cb和Cr均为色度值,它们描述了实际的颜色。使用复杂的数学算法,可以减少每个像素的值,并通过降低保存的像素数量来最终实现有损压缩。

多媒体文件由于需要占用较大存储空间,通常都使用有损方法对其进行压缩。文件压缩得越多,再现质量就越差,但是由于牺牲了一些数据,因此可以实现很大的压缩率,从而使文件更小。

JPEG文件格式遵循的是联合图像专家小组于1992年首次制定的图像压缩的国际标准,它为压缩彩色和灰度照片提供了最流行的方法。目前该小组仍然非常活跃,每年都会

Return Main Page Previous Page Next Page

®Reader's Club