0% found this document useful (0 votes)
15 views19 pages

Understanding Hadoop for Big Data Solutions

Uploaded by

Arindrajit Patra
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
15 views19 pages

Understanding Hadoop for Big Data Solutions

Uploaded by

Arindrajit Patra
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

What is ?

 Solution of Big Data Problem


 Hadoop is an Apache open source framework written
in java that allows distributed processing of large
datasets across clusters of computers using simple
programming models. The Hadoop framework
application works in an environment that provides
distributed storage and computation across clusters of
computers. Hadoop is designed to scale up from single
server to thousands of machines, each offering local
computation and storage
Hadoop
Why?
 Highly Economical
 High Reliability
 High Availability
 High Scalability
 High Throughput
 No Schema
 Easy to use
Modes of Hadoop
 Standalone
 Pseudo-distributed (single node cluster)
 Fully distributed (multiple node cluster)
Core components of Hadoop
 HDFS
Distribution and storage of Big Data across the cluster of
computers

 MapReduce
It is a Programming model that allows the processing of
data across the entire cluster at a very high level
Hadoop Ecosystem
Hadoop Ecosystem
Hadoop Ecosystem

Ingestion Storage Processing Analysis Management and


coordination

Apache Sqoop HDFS MapReduce Pig


(RDBMS Connector) (Structured data) (Data Processing) (Scripting) ZooKeeper
Apache Ambari
Apache Flume HBASE Yarn Hive Cloudera
(Data Collection) (Unstructured columnar (Cluster Resource (SQL query) Map R control System
store) management) Hortonworks
Oozie (Workflow
Apache Kafka MongoDB Spark Spark SQL monitoring)
(Streaming)

Apache Impala Apache Cassandra Spark GraphX

Apache Nifi Apache Mahout


(Machine Learning)

Storm Tableau
(streaming) (Visualization)

Change Data Capture Drill


(CDC) (Interactive analytics)
Hadoop Distributed File System
 Store datatypes in any format (structured, Semi-
structured, unstructured)
 Write once read many semantics
 Data processed in parallel
 Computations happened in datanodes where the data
resides
 Data is replicated across the nodes
 Highly scalable (Supports thousands of nodes in a
single cluster)
HDFS ARCHITECTURE
HDFS Storage Daemon's
 NameNode(Master)
 DataNode(Slave)
HDFS ARCHITECTURE
HDFS ARCHITECTURE
HDFS Architecture Components
1. NameNode (Master Node):
 Manages the HDFS cluster and stores metadata (file names, sizes, permissions, block
locations).
 Does not store actual data, only metadata (via edit logs and fsimage).
 Controls file operations like create, delete, and replicate, directing DataNodes
accordingly.
 Helps clients locate the nearest DataNode for fast access.
2. DataNode (Slave Node):
 Stores the actual data blocks on local disks.
 Handles read/write requests from clients.
 Sends heartbeats and block reports to the NameNode regularly.
 Data is replicated (default 3 copies) for reliability.
 More DataNodes = More storage & better performance; each should have high capacity
and stable connectivity.
File Block In HDFS
HDFS ARCHITECTURE
 Rack Awareness: A rack is a group of machines
(typically 30–40) in a Hadoop cluster. Large clusters
have many racks. Rack Awareness helps the
NameNode to:
 Choose the nearest DataNode for faster read/write
operations.
 Reduce network traffic by minimizing inter-rack data
transfer.
Map Reduce
Map Reduce
 MapReduce is a data processing model in Hadoop
built on top of the YARN framework. Its main feature
is distributed and parallel processing across a Hadoop
cluster, which significantly boosts performance when
handling Big Data. Since serial processing is inefficient
at large scale, MapReduce enables fast and efficient
data processing by splitting the workload into two
phases: Map and Reduce.
Map Reduce
Map Task Components
 RecordReader: Reads input data and converts it into key-value pairs. The key usually
represents location metadata, and the value contains the actual data.
 Mapper: A user-defined function that processes each key-value pair. It may output zero
or more new key-value pairs.
 Combiner (Optional): Acts as a local mini-reducer to summarize or group Mapper
outputs before sending them to the Reducer. It's used to reduce data transfer overhead.
 Partitioner: Determines which Reducer will receive which key-value pair. It uses the
formula: [Link]() % numberOfReducers to assign partitions.

Reduce Task Components


 Shuffle and Sort: Intermediate key-value pairs from the Mapper are transferred
(shuffled) to the Reducer and sorted by key. Shuffling starts as soon as some Mappers
finish, speeding up the process.
 Reducer: Receives grouped key-value pairs and performs operations such as aggregation
or filtering, based on business logic.
 OutputFormat: The final output is written to HDFS using a RecordWriter, where each
line represents a record with the key and value separated by a space.
References
 [Link]
architecture/
 [Link]
introduction/
 [Link]
hadoop-distributed-file-system/
 [Link]
 [Link]
system-hdfs
 [Link]
engineering/mapreduce-architecture/
 [Link]
 [Link]
m

You might also like