一 代码
map代码
import os import re import time def Map(sourceFile): if not os.path.exists(sourceFile): print(sourceFile, ' does not exist.') return pattern = re.compile(r'[0-9]{1,2}/[0-9]{1,2}/[0-9]{4}') result = {} with open(sourceFile, 'r') as srcFile: for dataLine in srcFile: r = pattern.findall(dataLine) if r: print(r[0], ',', 1) if __name__ == '__main__': Map('test.txt')
reduce代码
import os import sys def Reduce(targetFile): result = {} for line in sys.stdin: riqi, shuliang = line.strip().split(',') result[riqi] = result.get(riqi, 0)+1 with open(targetFile, 'w') as fp: for k,v in result.items(): fp.write(k + ':' + str(v) + '\n') if __name__ == '__main__': Reduce('result.txt')
二 运行结果
在命令行中运行下面的语句 :
E:\python\python可以这样学\第11章 大数据处理\code>python Hadoop_Map.py test.txt | python Hadoop_Reduce.py
07/10/2013 :4635
07/11/2013 :1
07/16/2013 :51
08/15/2013 :3958
10/09/2013 :733
12/11/2013 :564
02/12/2014 :4102
05/14/2014 :737
相关推荐
Python在大数据处理领域非常流行,因为它拥有丰富的库和简洁的语法,使得数据采集、清洗、分析和可视化变得相对容易。这个名为“sucker-master”的文件可能是项目的主要源代码目录,通常在开源项目中,"master"分支...
它具有高可用性和可扩展性,能从各种数据源(如网络日志、系统日志等)高效地收集数据,并将其传输到Hadoop HDFS或其他存储系统。 【Sqoop——数据迁移工具】 Sqoop是用于在关系型数据库和Hadoop之间传输数据的...
5. **毕业设计过程**:这个项目作为毕业设计,意味着学生需要完成需求分析、系统设计、编码实现、测试调试和报告撰写等步骤,这是一个综合性的实战练习,有助于提升学生的实际操作能力和问题解决能力。 总的来说,...
此外,资料中可能还包含了关于大数据分析和挖掘的相关内容,如Python数据分析库Pandas、NumPy,以及机器学习框架Scikit-learn等,这些都是大数据工程师必备的技能。通过这些工具,可以对收集到的大数据进行深度分析...
在大数据领域,Linux操作系统扮演着至关重要的角色,因为大多数大数据处理和分析工具都在Linux环境下运行。本资料包针对“大数据系列”提供了Linux基础知识的学习资源,包括Linux基础命令、基本环境、系统管理和...
学习Python的数据结构、函数式编程、面向对象编程以及如何利用这些库进行数据分析是大数据学习的重要环节。 **Hadoop**:Apache Hadoop是大数据处理的基石,它实现了分布式存储(HDFS)和分布式计算(MapReduce)。...
Flume是一个分布式、可靠且可用于高效聚合大量数据的系统,而Kafka则是一个高吞吐量的分布式发布订阅消息系统,常用于实时数据管道和流处理。Scrapy是一个Python框架,主要用于网页抓取和数据提取,对于Web数据采集...
- **Logstash**:强大的数据处理管道,可对日志数据进行过滤、解析等操作。 2. **大数据存储工具**: - **Hadoop**:分布式存储和处理大数据的框架。 - **HBase**:基于Hadoop的分布式列存储系统,适合随机读取...
1. **Linux**: 作为大数据平台的基础操作系统,学习Linux是必不可少的,它为大数据环境提供了稳定和高效的操作环境。 2. **Python与MapReduce**: Python是数据处理和分析的常用语言,而MapReduce则是Hadoop框架下的...
5. **数据分析**:除了SQL查询外,统计分析工具如R和Python(Pandas库)在大数据分析中扮演重要角色。面试中可能会考察对数据挖掘算法(如聚类、分类和回归)的理解,以及如何利用Scikit-learn等库实现。 6. **...
它利用Apache Spark Streaming、Kafka以及HBase构建了一个日志统计分析系统,旨在实现实时的数据摄入、处理和存储。以下是这个系统涉及的关键知识点: 1. **Apache Spark**:Spark是用于大规模数据处理的开源框架,...
Chukwa是Hadoop生态系统中的一个监控工具,用于收集、存储和分析大规模分布式系统的操作数据。它提供了对系统状态的全面视图,帮助管理员检测问题并进行性能调优。通过学习Chukwa,你可以掌握如何设置和管理日志收集...
文件名称列表仅包含一个文件“dagster_spark-0.7.4rc0-py3-none-any.whl”,这进一步确认了这是一个独立的Python软件包,适用于Python 3环境,且不依赖特定的硬件架构("none")或操作系统("any")。版本号“0.7.4...
通过dagster_spark,开发者可以利用Python的便利性和Spark的高性能,构建复杂的数据处理管道,处理PB级别的数据。 使用dagster_spark,开发者可能能够: 1. 在Python环境中轻松创建Spark作业,避免直接编写Scala或...
9. **大数据项目**:实际项目可能涵盖日志分析、推荐系统、用户行为追踪、预测模型构建等,旨在提升对大数据处理流程和工具的实际操作能力。 这个压缩文件中的“BigDataIE-master”可能是一个包含各种资源的目录,...
- **Elasticsearch**:分布式搜索和分析引擎,适用于日志分析和全文检索。 ### 9. 数据集成与任务调度 - **Sqoop**:用于在Hadoop和关系型数据库之间高效传输大量数据。 - **Azkaban和Oozie**:用于调度复杂的工作...
1. 日志分析:收集和分析服务器、应用的日志,监控系统状态。 2. 实时数据分析:实时处理大量流入的数据,进行实时分析和决策。 3. 大数据集成:作为大数据管道的一部分,将数据从各种来源导入大数据存储系统。 请...
dagster_spark是Dagster生态系统的组成部分,Dagster是一个用于构建和运行数据操作管道的开源平台。这个0.10.8rc0版本的whl(wheel)文件,是一个预编译的Python包,可以直接安装在Python环境中,无需再进行编译过程...
1. Spark Apache日志分析教程:这一部分将讲解如何使用Apache Spark对日志文件进行分析,包括使用Spark的基础功能进行日志分析,Spark SQL进行结构化日志查询,以及Spark Streaming处理流数据。 2. 流数据处理:流...
- **实时数据分析**:`streampy`适用于实时分析,例如社交媒体情绪分析、网络日志分析等,这些场景需要快速响应,对新产生的数据进行即时处理。 - **物联网(IoT)**:在物联网设备生成大量实时数据的情况下,`...