深入大型数据集cf
[美] J.T. Wolohan
内容简介
本书共分3部分,主要介绍如何使用Python语言来处理大型数据集。第1部分介绍map和reduce编程风格,以及Python中基础的map和reduce函数,并介绍如何将对象持久化,通过惰性函数和并行函数来加快大型数据集的处理速度。第2部分介绍Hadoop和Spark框架,以及如何使用mrjob库来编写Hadoop作业,如何实现PageRank算法,如何使用Spark来实现决策树和随机森林的机器学习模型。第3部分重点介绍云计算和云存储的基础知识,包括如何通过boto3的Python库将文件上传到AWS S3服务,以及如何在AWS的EMR集群中运行分布式的Hadoop和Spark作业。
本书适合有一定Python编程基础,且希望掌握大型数据集处理能力的开发人员和数据科学家阅读。 译者序
在经历了二十余年互联网和移动互联网的发展之后,我们已经生活在一个大数据日益盛行的时代。数据早已不再是一台计算机、服务器可以存储下的,而需要成百上千台机器才能完成存储工作。数据规模也已经从以前的MB、GB级别,跨越到了TB、PB级别。并行化和分布式编程技能对开发人员的日常工作变得越来越重要,越来越多的开发人员正面临着因数据集太大而导致的问题。无论是社交、电商、短视频等如今日益流行的领域,还是人们的日常生活,都已经让我们越来越认识到大数据的价值。
在大数据的生态发展过程中,涌现了大量的新技术和框架,包括我们较为熟悉的Hadoop、Hive、Spark等,以及在大数据基础上再次发展起来的AI技术。应该说,这10年的技术发展浪潮都起源于我们可以开始处理以前无法想象的数据量。但是,无论新技术如何发展,底层的核心思想依然没有发生变化,那就是map和reduce的编程范式。如今以Hadoop为基石建立起来的大数据体系,正是map和reduce编程范式的体现。本书并没有介绍太多花哨的技术和框架…