Mrjob Documentation

mrjob Documentation

Release 0.7.4 Steve Johnson

September 17, 2020

Contents

1 Guides

3

1.1 Why mrjob? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.2 Fundamentals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

1.3 Concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

1.4 Writing jobs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

1.5 Runners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

1.6 Spark . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

1.7 Config file format and location . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

1.8 Options available to all runners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

1.9 Hadoop-related options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

1.10 Spark runner options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

1.11 Configuration quick reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

1.12 Cloud runner options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

1.13 Job Environment Setup Cookbook . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

1.14 Hadoop Cookbook . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

1.15 Testing jobs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

1.16 Cloud Dataproc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

1.17 Elastic MapReduce . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

1.18 Python 2 vs. Python 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83

1.19 Contributing to mrjob . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84

2 Reference

87

2.1 mrjob.ami - building custom AMIs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

2.2 mrjob.cat - decompress files based on extension . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

2.3 mrjob.cmd: The mrjob command-line utility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88

2.4 pat - Hadoop version compatibility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98

2.5 mrjob.conf - parse and write config files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99

2.6 mrjob.dataproc - run on Dataproc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101

2.7 mrjob.emr - run on EMR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102

2.8 mrjob.hadoop - run on your Hadoop cluster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103

2.9 mrjob.inline - debugger-friendly local testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

2.10 mrjob.job - defining your job . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

2.11 mrjob.local - simulate Hadoop locally with subprocesses . . . . . . . . . . . . . . . . . . . . . . . . 115

2.12 mrjob.parse - log parsing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116

2.13 mrjob.protocol - input and output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116

2.14 mrjob.spark.runner - run on any Spark cluster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119

2.15 mrjob.retry - retry on transient errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120

2.16 mrjob.runner - base class for all runners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120

i

2.17 mrjob.step - represent Job Steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124 2.18 mrjob.setup - job environment setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127 2.19 mrjob.util - general utility functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130

3 What's New

133

3.1 0.7.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133

3.2 0.7.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134

3.3 0.7.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134

3.4 0.7.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135

3.5 0.7.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135

3.6 0.6.12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137

3.7 0.6.11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137

3.8 0.6.10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137

3.9 0.6.9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138

3.10 0.6.8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138

3.11 0.6.7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140

3.12 0.6.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141

3.13 0.6.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142

3.14 0.6.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142

3.15 0.6.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143

3.16 0.6.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144

3.17 0.6.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144

3.18 0.6.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144

3.19 0.5.12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147

3.20 0.5.11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147

3.21 0.5.10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147

3.22 0.5.9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148

3.23 0.5.8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148

3.24 0.5.7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149

3.25 0.5.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150

3.26 0.5.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150

3.27 0.5.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150

3.28 0.5.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152

3.29 0.5.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152

3.30 0.5.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153

3.31 0.5.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153

3.32 0.4.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157

3.33 0.4.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157

3.34 0.4.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158

3.35 0.4.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158

3.36 0.4.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159

3.37 0.4.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159

3.38 0.4.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160

3.39 0.3.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160

3.40 0.3.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160

3.41 0.3.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161

3.42 0.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161

4 Glossary

165

Python Module Index

167

ii

mrjob Documentation, Release 0.7.4

mrjob lets you write MapReduce jobs in Python 2.7/3.4+ and run them on several platforms. You can: ? Write multi-step MapReduce jobs in pure Python ? Test on your local machine ? Run on a Hadoop cluster ? Run in the cloud using Amazon Elastic MapReduce (EMR) ? Run in the cloud using Google Cloud Dataproc (Dataproc) ? Easily run Spark jobs on EMR or your own Hadoop cluster

mrjob is licensed under the Apache License, Version 2.0. To get started, install with pip: pip install mrjob

and begin reading the tutorial below.

Contents

1

................
................

In order to avoid copyright disputes, this page is only a partial summary.

Google Online Preview   Download