1700508800
1700508801
1700508803
数据科学家养成手册 第12章 数据采集
1700508804
1700508806
12.1 数据的源头
1700508807
1700508808
数据采集是整个大数据实践的第一步。在这里我特意用了“大数据”这个词,并不是因为这个词时髦,而是希望用这样一个概念笼统的词汇来指代一切沿着数据的生命周期进行生产实践的行为。
1700508809
1700508810
现在绝大多数的大数据应用场景都是在计算机上实现的。在个人PC上通常使用Windows操作系统,这种操作系统相信大家一定不会陌生。经过20多年的进化,Windows上已经有了非常多的伴生软件,例如处理数据的、处理图像的、处理文本的、处理视频的,非常丰富。
1700508811
1700508812
在个人PC上我们可以进行大数据实践吗?可以。例如,使用Excel就可以对少量(几万条规模的数据)的数据进行统计并生成图表,非常方便。数据的载体是Excel文件,或者是 .csv格式的方阵式文本文件。Excel虽然现在非常普及,但它并不是行业标准,更不是专业的数据处理软件。Excel功能的发展,以及其他软件对Excel文件格式的兼容,在我看来更多的是一种不得已,是一种由数据承载惯性带来的结果。
1700508813
1700508814
对拥有少量数据的用户,尤其是那些对实时性及数据量没有要求的用户来说,这是一种性价比极高的方式。当然,这不是企业应用的普遍场景,更多的企业在数据收集的过程中采用了自动或者半自动传输的方式。
1700508815
1700508816
数据的产生是无处不在的,对世界上任何一个事物在任何一瞬间的行为描述,只要你愿意,都可以量化成一个向量。所以,数据的产生从其最源头来说就像“永动机”一样一刻不停,持之以恒。不过,人类能够收集且有意愿收集的数据相比之下就非常少了,而且“本着解决实际问题的目的去收集数据”这一行为本身就会优先收集潜在价值较高的数据,即使是在对利益追逐不明显的学术研究领域也有同样的特性。
1700508817
1700508818
数据的收集,无论是哪种形式,一定是类似这样的流程:“感知”→“传输”→“保存”(如图12-1所示)。
1700508819
1700508820
1700508821
1700508822
1700508823
图12-1 数据的收集流程
1700508824
1700508825
在一些单一、孤立、数据量小或同一情况不会重复出现的场景中,通常直接由人拿着量具进行观测就可以了。除了前文提到的测量长度、温度等的量具以外,也有用于计数的量具。如图12-2所示,这种机械式手持计数器读者可能在一些对运营比较重视的场所见到过,或者在飞机上看到空中小姐用它来清点乘客数量。这样的测量行为虽然经常反复出现,但都是非常典型的单一、孤立、数据量小的场景,所以人工测量方式尚且适用。测量完成后,就可以把读数记录下来,誊写到Excel或者文本文件中以备后续统计工作之用。这是一个由人手动完成的“感知”、“传输”、“保存”一体化的过程。
1700508826
1700508827
1700508828
1700508829
1700508830
图12-2 机械式手持计数器
1700508831
1700508832
在数据量大、数据收集点较多的情况下,再由人来完成这样的采集工作成本就非常高了,而且容易出错。所以,现在的大数据应用场景中都是尽可能使用各种程序来完成工作。
1700508833
1700508834
1700508835
1700508836
1700508838
数据科学家养成手册 12.2 日志的收集
1700508839
1700508840
日志是指事件记录——不论这种行为是一种更贴近人类生活的行为记录(例如消费行为记录、参观行为记录),抑或更贴近计算机底层操作的行为(例如攻击告警记录、磁盘I/O记录)。本书提到的日志都是广义的日志,而非服务程序在服务器磁盘上留下的日志文件。
1700508841
1700508842
日志发生的位置通常是分散的。例如,在一个连锁便利店的销售系统中,所有的销售记录和盘点记录都分散存放在各个营业点,一般来说会在白天营业结束后通过一些离线的操作进程归集到数据中心来存档。这就是典型的数据延时收集。
1700508843
1700508844
从分散的终端集中收集数据的解决方案不止1种,让我们来看看都有哪些方式。
1700508845
1700508846
对终端不能或不便存储日志的场景,通常在事件发生后立刻将日志数据上报,产生的是单条数据日志。我们也称这种方式为“日志流”(Log Streaming)。
1700508847
1700508848
对终端有一定存储能力的场景,通常在其本地保存一份日志以备查阅,同时通过其他方式将日志上传。因实时性不同,分为实时上传和延时上传两种。实时上传的情况和单条数据日志上报的场景类似,而延时上传的情况和前面说的存档销售记录和盘点记录的方式类似。
1700508849
[
上一页 ]
[ :1.7005088e+09 ]
[
下一页 ]