Introduction
The Motivation for
Hadoop
·
Problems with traditional large-scale systems
·
Requirements for a new approach
Hadoop: Basic Concepts
·
An Overview of Hadoop
·
The Hadoop Distributed File System
·
Hands-On Exercise
·
How MapReduce Works
·
Hands-On Exercise
·
Anatomy of a Hadoop Cluster
·
Other Hadoop Ecosystem Components
Writing a MapReduce
Program
·
The MapReduce Flow
·
Examining a Sample MapReduce Program
·
Basic MapReduce API Concepts
·
The Driver Code
·
The Mapper
·
The Reducer
·
Hadoop’s Streaming API
·
Using Eclipse for Rapid Development
·
Hands-on exercise
·
The New MapReduce API
Delving Deeper Into The
Hadoop API
·
More about ToolRunner
·
Testing with MRUnit
·
Reducing Intermediate Data With Combiners
·
The configure and close methods for Map/Reduce
Setup and Teardown
·
Writing Partitioners for Better Load Balancing
·
Hands-On Exercise
·
Directly Accessing HDFS
·
Using the Distributed Cache
·
Hands-On Exercise
Common MapReduce
Algorithms
·
Sorting and Searching
·
Indexing
·
Machine Learning With Mahout
·
Term Frequency – Inverse Document Frequency
·
Word Co-Occurrence
·
Hands-On Exercise
Usining HBase
·
What is HBase?
·
HBase Architecture
·
HBase API
·
Managing large data sets with HBase
·
Using HBase in Hadoop applications
·
Hands-on exercise
Using Hive and Pig
·
Hive Basics
·
Pig Basics
·
Hands-on exercise
Practical Development
Tips and Techniques
·
Debugging MapReduce Code
·
Using LocalJobRunner Mode For Easier Debugging
·
Retrieving Job Information with Counters
·
Logging
·
Splittable File Formats
·
Determining the Optimal Number of Reducers
·
Map-Only MapReduce Jobs
·
Hands-On Exercise
More Advanced MapReduce
Programming
·
Custom Writables and WritableComparables
·
Saving Binary Data using SequenceFiles and Avro
Files
·
Creating InputFormats and OutputFormats
·
Hands-On Exercise
Joining Data Sets in
MapReduce
·
Map-Side Joins
·
The Secondary Sort
·
Reduce-Side Joins