在大数据时代下,单机对于数据的处理越来越有限,分布式存储和处理对大数据提供了新的可能性。本文主要讨论伪分布模式。
Hadoop以Java语言写就,因而需要在本地计算机上原装Java6。Hadoop能运行在Unix或Windows平台上。Linux是Hadoop唯一支持的产品平台,在其他Unix系统上也可以运行Hadoop进行开发。Windows仅限于作为开发平台,并需要借助于Cygwin。如果计划以伪分布模式运行Hadoop,则在安装Cygwin的过程中必须包含openssh包。(此文不介绍在windows平台下的开发)
Python中对数据的表示有两种形式,一种是有序的数据集,比如字符串
、列表
、元组
,这些数据集都是有序的,具有更深层次的内部结构,支持排序、索引、连接、复制、检测成员等操作。还有一种是无序的数据集,包括集合
和字典
。无需集合中的数据不存在先后关系,并且互不相同。使用花括号创建非空集合a = {1, 2, 4}
,创建空集合只能用set()
函数。因为在python内部,无论是哪种形式创建,最终都是以set()
的形式实现。而{}
用于表示空字典。字典是由大量键值对(key-value pair)组成的集合,用法就是通过键(key)访问对应的值(value)。
处理文件大小为5G+的GPS文本文件,约5千万行左右的数据,包括ID, 经纬度,时间戳,是否载有乘客等信息。如果直接用记事本,notepad++等文件编辑器打开,会导致死机。可以使用vim查看文件信息。
python中提供了三种读取数据的方法:.read()
, .readline()
和.readlines()
.read()
返回整个文件,并放到一个字符串变量当中,如果直接读取大文件,会导致死机。.readline()
每次返回一行的数据.readlines()
返回整个文件,并按行返回list