SlideShare a Scribd company logo
Hadoop Training
Institute in Hyderabad
ORIENIT
Orien IT – www.OrienIT.com
Flat No 204, Annapurna Block,Aaditya
Enclave
Ameerpet, Hyderabad – 500038,
Telangana,India.
Introduction
1. Introduction: Hadoop’s history and
advantages
2. Architecture in detail
3. Hadoop in industry
What is Hadoop?
• Apache top level project, open-source
implementation of frameworks for reliable,
scalable, distributed computing and data
storage.
• It is a flexible and highly-available
architecture for large scale computation
and data processing on a network of
commodity hardware.
Brief History of Hadoop
• Designed to answer the question:
“How to process big data with
reasonable cost and time?”
Search engines in 1990s
1996
1996
1997
1996
Google search engines
1998
2013
Google Origins
2003
2004
2006
Some Hadoop Milestones
• 2008 - Hadoop Wins Terabyte Sort Benchmark (sorted 1 terabyte
of data in 209 seconds, compared to previous record of 297 seconds)
• 2009 - Avro and Chukwa became new members of Hadoop
Framework family
• 2010 - Hadoop's Hbase, Hive and Pig subprojects completed, adding
more computational power to Hadoop framework
• 2011 - ZooKeeper Completed
• 2013 - Hadoop 1.1.2 and Hadoop 2.0.3 alpha.
- Ambari, Cassandra, Mahout have been added
What is Hadoop?
• Hadoop:
• an open-source software framework that supports data-
intensive distributed applications, licensed under the
Apache v2 license.
• Goals / Requirements:
• Abstract and facilitate the storage and processing of
large and/or rapidly growing data sets
• Structured and non-structured data
• Simple programming models
• High scalability and availability
• Use commodity (cheap!) hardware with little redundancy
• Fault-tolerance
• Move computation rather than data
Hadoop Framework Tools
Hadoop’s Architecture
• Distributed, with some centralization
• Main nodes of cluster are where most of the computational power
and storage of the system lies
• Main nodes run TaskTracker to accept and reply to MapReduce
tasks, and also DataNode to store needed blocks closely as
possible
• Central control node runs NameNode to keep track of HDFS
directories & files, and JobTracker to dispatch compute tasks to
TaskTracker
• Written in Java, also supports Python and Ruby
Hadoop’s Architecture
Hadoop’s Architecture
• Hadoop Distributed Filesystem
• Tailored to needs of MapReduce
• Targeted towards many reads of filestreams
• Writes are more costly
• High degree of data replication (3x by default)
• No need for RAID on normal nodes
• Large blocksize (64MB)
• Location awareness of DataNodes in network
Hadoop’s Architecture
NameNode:
• Stores metadata for the files, like the directory structure of a
typical FS.
• The server holding the NameNode instance is quite crucial,
as there is only one.
• Transaction log for file deletes/adds, etc. Does not use
transactions for whole blocks or file-streams, only metadata.
• Handles creation of more replica blocks when necessary
after a DataNode failure
Hadoop’s Architecture
DataNode:
• Stores the actual data in HDFS
• Can run on any underlying filesystem (ext3/4, NTFS, etc)
• Notifies NameNode of what blocks it has
• NameNode replicates blocks 2x in local rack, 1x elsewhere
Hadoop’s Architecture: MapReduce Engine
Hadoop’s Architecture
MapReduce Engine:
• JobTracker & TaskTracker
• JobTracker splits up data into smaller tasks(“Map”) and
sends it to the TaskTracker process in each node
• TaskTracker reports back to the JobTracker node and
reports on job progress, sends data (“Reduce”) or requests
new jobs
Hadoop’s Architecture
• None of these components are necessarily limited to using
HDFS
• Many other distributed file-systems with quite different
architectures work
• Many other software packages besides Hadoop's
MapReduce platform make use of HDFS
Hadoop in the Wild
• Hadoop is in use at most organizations that handle big data:
o Yahoo!
o Facebook
o Amazon
o Netflix
o Etc…
• Some examples of scale:
o Yahoo!’s Search Webmap runs on 10,000 core Linux
cluster and powers Yahoo! Web search
o FB’s Hadoop cluster hosts 100+ PB of data (July, 2012)
& growing at ½ PB/day (Nov, 2012)
Hadoop in the Wild
• Advertisement (Mining user behavior to generate
recommendations)
• Searches (group related documents)
• Security (search for uncommon patterns)
Three main applications of Hadoop:
Hadoop in the Wild
• Non-realtime large dataset computing:
o NY Times was dynamically generating PDFs of articles
from 1851-1922
o Wanted to pre-generate & statically serve articles to
improve performance
o Using Hadoop + MapReduce running on EC2 / S3,
converted 4TB of TIFFs into 11 million PDF articles in
24 hrs
Hadoop in the Wild: Facebook Messages
• Design requirements:
o Integrate display of email, SMS and
chat messages between pairs and
groups of users
o Strong control over who users
receive messages from
o Suited for production use between
500 million people immediately after
launch
o Stringent latency & uptime
requirements
Hadoop in the Wild
• System requirements
o High write throughput
o Cheap, elastic storage
o Low latency
o High consistency (within a
single data center good
enough)
o Disk-efficient sequential
and random read
performance
Hadoop in the Wild
• Classic alternatives
o These requirements typically met using large MySQL cluster &
caching tiers using Memcached
o Content on HDFS could be loaded into MySQL or Memcached
if needed by web tier
• Problems with previous solutions
o MySQL has low random write throughput… BIG problem for
messaging!
o Difficult to scale MySQL clusters rapidly while maintaining
performance
o MySQL clusters have high management overhead, require
more expensive hardware
Hadoop in the Wild
• Facebook’s solution
o Hadoop + HBase as foundations
o Improve & adapt HDFS and HBase to scale to FB’s workload
and operational considerations
 Major concern was availability: NameNode is SPOF &
failover times are at least 20 minutes
 Proprietary “AvatarNode”: eliminates SPOF, makes HDFS
safe to deploy even with 24/7 uptime requirement
 Performance improvements for realtime workload: RPC
timeout. Rather fail fast and try a different DataNode
Hadoop Highlights
• Distributed File System
• Fault Tolerance
• Open Data Format
• Flexible Schema
• Queryable Database
Why use Hadoop?
• Need to process Multi Petabyte Datasets
• Data may not have strict schema
• Expensive to build reliability in each application
• Nodes fails everyday
• Need common infrastructure
• Very Large Distributed File System
• Assumes Commodity Hardware
• Optimized for Batch Processing
• Runs on heterogeneous OS
DataNode
• A Block Sever
– Stores data in local file system
– Stores meta-data of a block - checksum
– Serves data and meta-data to clients
• Block Report
– Periodically sends a report of all existing blocks
to NameNode
• Facilitate Pipelining of Data
– Forwards data to other specified DataNodes
Block Placement
• Replication Strategy
– One replica on local node
– Second replica on a remote rack
– Third replica on same remote rack
– Additional replicas are randomly placed
• Clients read from nearest replica
Data Correctness
• Use Checksums to validate data – CRC32
• File Creation
– Client computes checksum per 512 byte
– DataNode stores the checksum
• File Access
– Client retrieves the data and checksum from
DataNode
– If validation fails, client tries other replicas
Data Pipelining
• Client retrieves a list of DataNodes on
which to place replicas of a block
• Client writes block to the first DataNode
• The first DataNode forwards the data to
the next DataNode in the Pipeline
• When all replicas are written, the client
moves on to write the next block in file
Hadoop MapReduce
• MapReduce programming model
– Framework for distributed processing of large
data sets
– Pluggable user code runs in generic
framework
• Common design pattern in data
processing
– cat * | grep | sort | uniq -c | cat > file
– input | map | shuffle | reduce | output
MapReduce Usage
• Log processing
• Web search indexing
• Ad-hoc queries
Closer Look
• MapReduce Component
– JobClient
– JobTracker
– TaskTracker
– Child
• Job Creation/Execution Process
MapReduce Process
(org.apache.hadoop.mapred)
• JobClient
– Submit job
• JobTracker
– Manage and schedule job, split job into tasks
• TaskTracker
– Start and monitor the task execution
• Child
– The process that really execute the task
Inter Process Communication
IPC/RPC (org.apache.hadoop.ipc)
• Protocol
– JobClient <-------------> JobTracker
– TaskTracker <------------> JobTracker
– TaskTracker <-------------> Child
• JobTracker impliments both protocol and works as server
in both IPC
• TaskTracker implements the TaskUmbilicalProtocol; Child
gets task information and reports task status through it.
JobSubmissionProtocol
InterTrackerProtocol
TaskUmbilicalProtocol
JobClient.submitJob - 1
• Check input and output, e.g. check if the output
directory is already existing
– job.getInputFormat().validateInput(job);
– job.getOutputFormat().checkOutputSpecs(fs, job);
• Get InputSplits, sort, and write output to HDFS
– InputSplit[] splits = job.getInputFormat().
getSplits(job, job.getNumMapTasks());
– writeSplitsFile(splits, out); // out is
$SYSTEMDIR/$JOBID/job.split
JobClient.submitJob - 2
• The jar file and configuration file will be
uploaded to HDFS system directory
– job.write(out); // out is $SYSTEMDIR/$JOBID/job.xml
• JobStatus status =
jobSubmitClient.submitJob(jobId);
– This is an RPC invocation, jobSubmitClient is
a proxy created in the initialization
Job initialization on JobTracker - 1
• JobTracker.submitJob(jobID) <-- receive
RPC invocation request
• JobInProgress job = new
JobInProgress(jobId, this, this.conf)
• Add the job into Job Queue
– jobs.put(job.getProfile().getJobId(), job);
– jobsByPriority.add(job);
– jobInitQueue.add(job);
Job initialization on JobTracker - 2
• Sort by priority
– resortPriority();
– compare the JobPrioity first, then compare the
JobSubmissionTime
• Wake JobInitThread
– jobInitQueue.notifyall();
– job = jobInitQueue.remove(0);
– job.initTasks();
JobInProgress - 1
• JobInProgress(String jobid, JobTracker
jobtracker, JobConf default_conf);
• JobInProgress.initTasks()
– DataInputStream splitFile = fs.open(new
Path(conf.get(“mapred.job.split.file”)));
// mapred.job.split.file -->
$SYSTEMDIR/$JOBID/job.split
JobInProgress - 2
• splits = JobClient.readSplitFile(splitFile);
• numMapTasks = splits.length;
• maps[i] = new TaskInProgress(jobId,
jobFile, splits[i], jobtracker, conf, this, i);
• reduces[i] = new TaskInProgress(jobId,
jobFile, splits[i], jobtracker, conf, this, i);
• JobStatus --> JobStatus.RUNNING
JobTracker Task Scheduling - 1
• Task getNewTaskForTaskTracker(String
taskTracker)
• Compute the maximum tasks that can be
running on taskTracker
– int maxCurrentMap Tasks =
tts.getMaxMapTasks();
– int maxMapLoad =
Math.min(maxCurrentMapTasks,
(int)Math.ceil(double)
remainingMapLoad/numTaskTrackers));
JobTracker Task Scheduling - 2
• int numMaps = tts.countMapTasks(); //
running tasks number
• If numMaps < maxMapLoad, then more
tasks can be allocated, then based on
priority, pick the first job from the
jobsByPriority Queue, create a task, and
return to TaskTracker
– Task t = job.obtainNewMapTask(tts,
numTaskTrackers);
Start TaskTracker - 1
• initialize()
– Remove original local directory
– RPC initialization
• TaskReportServer = RPC.getServer(this,
bindAddress, tmpPort, max, false, this, fConf);
• InterTrackerProtocol jobClient =
(InterTrackerProtocol)
RPC.waitForProxy(InterTrackerProtocol.class,
InterTrackerProtocol.versionID, jobTrackAddr,
this.fConf);
Start TaskTracker - 2
• run();
• offerService();
• TaskTracker talks to JobTracker with
HeartBeat message periodically
– HeatbeatResponse heartbeatResponse =
transmitHeartBeat();
Run Task on TaskTracker - 1
• TaskTracker.localizeJob(TaskInProgress tip);
• launchTasksForJob(tip, new
JobConf(rjob.jobFile));
– tip.launchTask(); // TaskTracker.TaskInProgress
– tip.localizeTask(task); // create folder, symbol link
– runner = task.createRunner(TaskTracker.this);
– runner.start(); // start TaskRunner thread
Run Task on TaskTracker - 2
• TaskRunner.run();
– Configure child process’ jvm parameters, i.e.
classpath, taskid, taskReportServer’s address
& port
– Start Child Process
• runChild(wrappedCommand, workDir, taskid);
Child.main()
• Create RPC Proxy, and execute RPC
invocation
– TaskUmbilicalProtocol umbilical =
(TaskUmbilicalProtocol)
RPC.getProxy(TaskUmbilicalProtocol.class,
TaskUmbilicalProtocol.versionID, address,
defaultConf);
– Task task = umbilical.getTask(taskid);
• task.run(); // mapTask / reduceTask.run
Finish Job - 1
• Child
– task.done(umilical);
• RPC call: umbilical.done(taskId,
shouldBePromoted)
• TaskTracker
– done(taskId, shouldPromote)
• TaskInProgress tip = tasks.get(taskid);
• tip.reportDone(shouldPromote);
– taskStatus.setRunState(TaskStatus.State.SUCCEEDED)
Finish Job - 2
• JobTracker
– TaskStatus report: status.getTaskReports();
– TaskInProgress tip = taskidToTIPMap.get(taskId);
– JobInProgress update JobStatus
• tip.getJob().updateTaskStatus(tip, report, myMetrics);
– One task of current job is finished
– completedTask(tip, taskStatus, metrics);
– If (this.status.getRunState() == JobStatus.RUNNING &&
allDone) {this.status.setRunState(JobStatus.SUCCEEDED)}
Demo
• Word Count
– hadoop jar hadoop-0.20.2-examples.jar
wordcount <input dir> <output dir>
• Hive
– hive -f pagerank.hive

More Related Content

What's hot

Data Pipelines in Hadoop - SAP Meetup in Tel Aviv
Data Pipelines in Hadoop - SAP Meetup in Tel Aviv Data Pipelines in Hadoop - SAP Meetup in Tel Aviv
Data Pipelines in Hadoop - SAP Meetup in Tel Aviv
larsgeorge
 
Top Hadoop Big Data Interview Questions and Answers for Fresher
Top Hadoop Big Data Interview Questions and Answers for FresherTop Hadoop Big Data Interview Questions and Answers for Fresher
Top Hadoop Big Data Interview Questions and Answers for Fresher
JanBask Training
 
Welcome to Hadoop2Land!
Welcome to Hadoop2Land!Welcome to Hadoop2Land!
Welcome to Hadoop2Land!
Uwe Printz
 
Hadoop Backup and Disaster Recovery
Hadoop Backup and Disaster RecoveryHadoop Backup and Disaster Recovery
Hadoop Backup and Disaster Recovery
Cloudera, Inc.
 
Hadoop
HadoopHadoop
Asbury Hadoop Overview
Asbury Hadoop OverviewAsbury Hadoop Overview
Asbury Hadoop Overview
Brian Enochson
 
Distributed Computing with Apache Hadoop: Technology Overview
Distributed Computing with Apache Hadoop: Technology OverviewDistributed Computing with Apache Hadoop: Technology Overview
Distributed Computing with Apache Hadoop: Technology Overview
Konstantin V. Shvachko
 
Introduction to Apache Hadoop Ecosystem
Introduction to Apache Hadoop EcosystemIntroduction to Apache Hadoop Ecosystem
Introduction to Apache Hadoop Ecosystem
Mahabubur Rahaman
 
Introduction To Hadoop Ecosystem
Introduction To Hadoop EcosystemIntroduction To Hadoop Ecosystem
Introduction To Hadoop Ecosystem
InSemble
 
Hadoop Family and Ecosystem
Hadoop Family and EcosystemHadoop Family and Ecosystem
Hadoop Family and Ecosystem
tcloudcomputing-tw
 
How to overcome mysterious problems caused by large and multi-tenancy Hadoop ...
How to overcome mysterious problems caused by large and multi-tenancy Hadoop ...How to overcome mysterious problems caused by large and multi-tenancy Hadoop ...
How to overcome mysterious problems caused by large and multi-tenancy Hadoop ...
DataWorks Summit/Hadoop Summit
 
Hadoop And Their Ecosystem
 Hadoop And Their Ecosystem Hadoop And Their Ecosystem
Hadoop And Their Ecosystem
sunera pathan
 
Bikas saha:the next generation of hadoop– hadoop 2 and yarn
Bikas saha:the next generation of hadoop– hadoop 2 and yarnBikas saha:the next generation of hadoop– hadoop 2 and yarn
Bikas saha:the next generation of hadoop– hadoop 2 and yarn
hdhappy001
 
Presentation
PresentationPresentation
Presentation
ch samaram
 
Introduction to Hadoop and MapReduce
Introduction to Hadoop and MapReduceIntroduction to Hadoop and MapReduce
Introduction to Hadoop and MapReduce
eakasit_dpu
 
Hadoop 101
Hadoop 101Hadoop 101
Hadoop 101
EMC
 
Hadoop ecosystem
Hadoop ecosystemHadoop ecosystem
Hadoop ecosystem
Stanley Wang
 
Overview of Big data, Hadoop and Microsoft BI - version1
Overview of Big data, Hadoop and Microsoft BI - version1Overview of Big data, Hadoop and Microsoft BI - version1
Overview of Big data, Hadoop and Microsoft BI - version1
Thanh Nguyen
 
Bigdata workshop february 2015
Bigdata workshop  february 2015 Bigdata workshop  february 2015
Bigdata workshop february 2015
clairvoyantllc
 

What's hot (20)

Data Pipelines in Hadoop - SAP Meetup in Tel Aviv
Data Pipelines in Hadoop - SAP Meetup in Tel Aviv Data Pipelines in Hadoop - SAP Meetup in Tel Aviv
Data Pipelines in Hadoop - SAP Meetup in Tel Aviv
 
Top Hadoop Big Data Interview Questions and Answers for Fresher
Top Hadoop Big Data Interview Questions and Answers for FresherTop Hadoop Big Data Interview Questions and Answers for Fresher
Top Hadoop Big Data Interview Questions and Answers for Fresher
 
Welcome to Hadoop2Land!
Welcome to Hadoop2Land!Welcome to Hadoop2Land!
Welcome to Hadoop2Land!
 
Hadoop Ecosystem Overview
Hadoop Ecosystem OverviewHadoop Ecosystem Overview
Hadoop Ecosystem Overview
 
Hadoop Backup and Disaster Recovery
Hadoop Backup and Disaster RecoveryHadoop Backup and Disaster Recovery
Hadoop Backup and Disaster Recovery
 
Hadoop
HadoopHadoop
Hadoop
 
Asbury Hadoop Overview
Asbury Hadoop OverviewAsbury Hadoop Overview
Asbury Hadoop Overview
 
Distributed Computing with Apache Hadoop: Technology Overview
Distributed Computing with Apache Hadoop: Technology OverviewDistributed Computing with Apache Hadoop: Technology Overview
Distributed Computing with Apache Hadoop: Technology Overview
 
Introduction to Apache Hadoop Ecosystem
Introduction to Apache Hadoop EcosystemIntroduction to Apache Hadoop Ecosystem
Introduction to Apache Hadoop Ecosystem
 
Introduction To Hadoop Ecosystem
Introduction To Hadoop EcosystemIntroduction To Hadoop Ecosystem
Introduction To Hadoop Ecosystem
 
Hadoop Family and Ecosystem
Hadoop Family and EcosystemHadoop Family and Ecosystem
Hadoop Family and Ecosystem
 
How to overcome mysterious problems caused by large and multi-tenancy Hadoop ...
How to overcome mysterious problems caused by large and multi-tenancy Hadoop ...How to overcome mysterious problems caused by large and multi-tenancy Hadoop ...
How to overcome mysterious problems caused by large and multi-tenancy Hadoop ...
 
Hadoop And Their Ecosystem
 Hadoop And Their Ecosystem Hadoop And Their Ecosystem
Hadoop And Their Ecosystem
 
Bikas saha:the next generation of hadoop– hadoop 2 and yarn
Bikas saha:the next generation of hadoop– hadoop 2 and yarnBikas saha:the next generation of hadoop– hadoop 2 and yarn
Bikas saha:the next generation of hadoop– hadoop 2 and yarn
 
Presentation
PresentationPresentation
Presentation
 
Introduction to Hadoop and MapReduce
Introduction to Hadoop and MapReduceIntroduction to Hadoop and MapReduce
Introduction to Hadoop and MapReduce
 
Hadoop 101
Hadoop 101Hadoop 101
Hadoop 101
 
Hadoop ecosystem
Hadoop ecosystemHadoop ecosystem
Hadoop ecosystem
 
Overview of Big data, Hadoop and Microsoft BI - version1
Overview of Big data, Hadoop and Microsoft BI - version1Overview of Big data, Hadoop and Microsoft BI - version1
Overview of Big data, Hadoop and Microsoft BI - version1
 
Bigdata workshop february 2015
Bigdata workshop  february 2015 Bigdata workshop  february 2015
Bigdata workshop february 2015
 

Viewers also liked

Hadoop deconstructing map reduce job step by step
Hadoop deconstructing map reduce job step by stepHadoop deconstructing map reduce job step by step
Hadoop deconstructing map reduce job step by step
Subhas Kumar Ghosh
 
SAM SIG: Hadoop architecture, MapReduce patterns, and best practices with Cas...
SAM SIG: Hadoop architecture, MapReduce patterns, and best practices with Cas...SAM SIG: Hadoop architecture, MapReduce patterns, and best practices with Cas...
SAM SIG: Hadoop architecture, MapReduce patterns, and best practices with Cas...
cwensel
 
Invola система автоматических напоминаний по неоплаченным счетам
Invola система автоматических напоминаний по неоплаченным счетамInvola система автоматических напоминаний по неоплаченным счетам
Invola система автоматических напоминаний по неоплаченным счетам
Андрей Ворожев
 
FPC - Credentials
FPC - CredentialsFPC - Credentials
FPC - Credentials
Front Page Communication
 
Capa do Cordel Raul Seixas
Capa do Cordel Raul SeixasCapa do Cordel Raul Seixas
Capa do Cordel Raul Seixas
Francisco Alves Alves
 
SWISS BULLION
SWISS BULLIONSWISS BULLION
SWISS BULLION
Yesh Lazarte
 
SWISS BULLION
SWISS BULLIONSWISS BULLION
SWISS BULLION
Yesh Lazarte
 
SWISS BULLION
SWISS BULLIONSWISS BULLION
SWISS BULLION
Yesh Lazarte
 
StresStimulus Load Testing Tool User Interface Reference
StresStimulus Load Testing Tool User Interface ReferenceStresStimulus Load Testing Tool User Interface Reference
StresStimulus Load Testing Tool User Interface Reference
stresstimulus
 
SWISS BULLION TABLES
SWISS BULLION TABLESSWISS BULLION TABLES
SWISS BULLION TABLES
Yesh Lazarte
 
SWISS BULLION
SWISS BULLIONSWISS BULLION
SWISS BULLION
Yesh Lazarte
 
Elasticityofdemand
ElasticityofdemandElasticityofdemand
Elasticityofdemand
Vaibhav Pradhan
 
UPDATED TABLES (1st Table)
UPDATED TABLES (1st Table)UPDATED TABLES (1st Table)
UPDATED TABLES (1st Table)
Yesh Lazarte
 
1043: Applications and porting to OpenPOWER
1043: Applications and porting to OpenPOWER1043: Applications and porting to OpenPOWER
1043: Applications and porting to OpenPOWER
NVIDIA Japan
 
Trane: Pasos para automatizar un hogar y oficina sin cables
Trane: Pasos para automatizar un hogar y oficina sin cables Trane: Pasos para automatizar un hogar y oficina sin cables
Trane: Pasos para automatizar un hogar y oficina sin cables
Trane México
 
Sam and Jeffrey food and fashion waste
Sam and Jeffrey food and fashion waste Sam and Jeffrey food and fashion waste
Sam and Jeffrey food and fashion waste
colintrickett2015
 
жуманов ерик+биос+население
жуманов ерик+биос+населениежуманов ерик+биос+население
жуманов ерик+биос+население
Ерик Жуманов
 

Viewers also liked (20)

Hadoop deconstructing map reduce job step by step
Hadoop deconstructing map reduce job step by stepHadoop deconstructing map reduce job step by step
Hadoop deconstructing map reduce job step by step
 
SAM SIG: Hadoop architecture, MapReduce patterns, and best practices with Cas...
SAM SIG: Hadoop architecture, MapReduce patterns, and best practices with Cas...SAM SIG: Hadoop architecture, MapReduce patterns, and best practices with Cas...
SAM SIG: Hadoop architecture, MapReduce patterns, and best practices with Cas...
 
Gyasi et al, 2015a
Gyasi et al, 2015aGyasi et al, 2015a
Gyasi et al, 2015a
 
Invola система автоматических напоминаний по неоплаченным счетам
Invola система автоматических напоминаний по неоплаченным счетамInvola система автоматических напоминаний по неоплаченным счетам
Invola система автоматических напоминаний по неоплаченным счетам
 
FPC - Credentials
FPC - CredentialsFPC - Credentials
FPC - Credentials
 
Capa do Cordel Raul Seixas
Capa do Cordel Raul SeixasCapa do Cordel Raul Seixas
Capa do Cordel Raul Seixas
 
SWISS BULLION
SWISS BULLIONSWISS BULLION
SWISS BULLION
 
SWISS BULLION
SWISS BULLIONSWISS BULLION
SWISS BULLION
 
SWISS BULLION
SWISS BULLIONSWISS BULLION
SWISS BULLION
 
StresStimulus Load Testing Tool User Interface Reference
StresStimulus Load Testing Tool User Interface ReferenceStresStimulus Load Testing Tool User Interface Reference
StresStimulus Load Testing Tool User Interface Reference
 
SWISS BULLION TABLES
SWISS BULLION TABLESSWISS BULLION TABLES
SWISS BULLION TABLES
 
final eval
final evalfinal eval
final eval
 
SWISS BULLION
SWISS BULLIONSWISS BULLION
SWISS BULLION
 
Hirches_6Pg_v2
Hirches_6Pg_v2Hirches_6Pg_v2
Hirches_6Pg_v2
 
Elasticityofdemand
ElasticityofdemandElasticityofdemand
Elasticityofdemand
 
UPDATED TABLES (1st Table)
UPDATED TABLES (1st Table)UPDATED TABLES (1st Table)
UPDATED TABLES (1st Table)
 
1043: Applications and porting to OpenPOWER
1043: Applications and porting to OpenPOWER1043: Applications and porting to OpenPOWER
1043: Applications and porting to OpenPOWER
 
Trane: Pasos para automatizar un hogar y oficina sin cables
Trane: Pasos para automatizar un hogar y oficina sin cables Trane: Pasos para automatizar un hogar y oficina sin cables
Trane: Pasos para automatizar un hogar y oficina sin cables
 
Sam and Jeffrey food and fashion waste
Sam and Jeffrey food and fashion waste Sam and Jeffrey food and fashion waste
Sam and Jeffrey food and fashion waste
 
жуманов ерик+биос+население
жуманов ерик+биос+населениежуманов ерик+биос+население
жуманов ерик+биос+население
 

Similar to Hadoop ppt1

Hadoop.pptx
Hadoop.pptxHadoop.pptx
Hadoop.pptx
arslanhaneef
 
Hadoop.pptx
Hadoop.pptxHadoop.pptx
Hadoop.pptx
sonukumar379092
 
02 Hadoop.pptx HADOOP VENNELA DONTHIREDDY
02 Hadoop.pptx HADOOP VENNELA DONTHIREDDY02 Hadoop.pptx HADOOP VENNELA DONTHIREDDY
02 Hadoop.pptx HADOOP VENNELA DONTHIREDDY
Venneladonthireddy1
 
Introduction to Hadoop Administration
Introduction to Hadoop AdministrationIntroduction to Hadoop Administration
Introduction to Hadoop Administration
Ramesh Pabba - seeking new projects
 
Introduction to Hadoop Administration
Introduction to Hadoop AdministrationIntroduction to Hadoop Administration
Introduction to Hadoop Administration
Ramesh Pabba - seeking new projects
 
Hadoop training in bangalore
Hadoop training in bangaloreHadoop training in bangalore
Hadoop training in bangalore
Kelly Technologies
 
Hadoop introduction
Hadoop introductionHadoop introduction
Hadoop introduction
musrath mohammad
 
Introduction to Hadoop Administration
Introduction to Hadoop AdministrationIntroduction to Hadoop Administration
Introduction to Hadoop Administration
Ramesh Pabba - seeking new projects
 
Big data and hadoop anupama
Big data and hadoop anupamaBig data and hadoop anupama
Big data and hadoop anupama
Anupama Prabhudesai
 
P.Maharajothi,II-M.sc(computer science),Bon secours college for women,thanjavur.
P.Maharajothi,II-M.sc(computer science),Bon secours college for women,thanjavur.P.Maharajothi,II-M.sc(computer science),Bon secours college for women,thanjavur.
P.Maharajothi,II-M.sc(computer science),Bon secours college for women,thanjavur.
MaharajothiP
 
Hadoop Distributed File System
Hadoop Distributed File SystemHadoop Distributed File System
Hadoop Distributed File Systemelliando dias
 
Hadoop-Quick introduction
Hadoop-Quick introductionHadoop-Quick introduction
Hadoop-Quick introduction
Sandeep Singh
 
Hadoop Primer
Hadoop PrimerHadoop Primer
Hadoop Primer
Steve Staso
 
2. hadoop fundamentals
2. hadoop fundamentals2. hadoop fundamentals
2. hadoop fundamentals
Lokesh Ramaswamy
 
Hadoop ppt on the basics and architecture
Hadoop ppt on the basics and architectureHadoop ppt on the basics and architecture
Hadoop ppt on the basics and architecture
saipriyacoool
 
Big data Hadoop
Big data  Hadoop   Big data  Hadoop
Big data Hadoop
Ayyappan Paramesh
 
hadoop distributed file systems complete information
hadoop distributed file systems complete informationhadoop distributed file systems complete information
hadoop distributed file systems complete information
bhargavi804095
 
Hadoop Maharajathi,II-M.sc.,Computer Science,Bonsecours college for women
Hadoop Maharajathi,II-M.sc.,Computer Science,Bonsecours college for womenHadoop Maharajathi,II-M.sc.,Computer Science,Bonsecours college for women
Hadoop Maharajathi,II-M.sc.,Computer Science,Bonsecours college for women
maharajothip1
 
Big data applications
Big data applicationsBig data applications
Big data applications
Juan Pablo Paz Grau, Ph.D., PMP
 

Similar to Hadoop ppt1 (20)

Hadoop.pptx
Hadoop.pptxHadoop.pptx
Hadoop.pptx
 
Hadoop.pptx
Hadoop.pptxHadoop.pptx
Hadoop.pptx
 
02 Hadoop.pptx HADOOP VENNELA DONTHIREDDY
02 Hadoop.pptx HADOOP VENNELA DONTHIREDDY02 Hadoop.pptx HADOOP VENNELA DONTHIREDDY
02 Hadoop.pptx HADOOP VENNELA DONTHIREDDY
 
Introduction to Hadoop Administration
Introduction to Hadoop AdministrationIntroduction to Hadoop Administration
Introduction to Hadoop Administration
 
Introduction to Hadoop Administration
Introduction to Hadoop AdministrationIntroduction to Hadoop Administration
Introduction to Hadoop Administration
 
Hadoop training in bangalore
Hadoop training in bangaloreHadoop training in bangalore
Hadoop training in bangalore
 
Hadoop introduction
Hadoop introductionHadoop introduction
Hadoop introduction
 
Introduction to Hadoop Administration
Introduction to Hadoop AdministrationIntroduction to Hadoop Administration
Introduction to Hadoop Administration
 
Big data and hadoop anupama
Big data and hadoop anupamaBig data and hadoop anupama
Big data and hadoop anupama
 
P.Maharajothi,II-M.sc(computer science),Bon secours college for women,thanjavur.
P.Maharajothi,II-M.sc(computer science),Bon secours college for women,thanjavur.P.Maharajothi,II-M.sc(computer science),Bon secours college for women,thanjavur.
P.Maharajothi,II-M.sc(computer science),Bon secours college for women,thanjavur.
 
Hadoop Distributed File System
Hadoop Distributed File SystemHadoop Distributed File System
Hadoop Distributed File System
 
Hadoop-Quick introduction
Hadoop-Quick introductionHadoop-Quick introduction
Hadoop-Quick introduction
 
Hadoop Primer
Hadoop PrimerHadoop Primer
Hadoop Primer
 
Hadoop and Distributed Computing
Hadoop and Distributed ComputingHadoop and Distributed Computing
Hadoop and Distributed Computing
 
2. hadoop fundamentals
2. hadoop fundamentals2. hadoop fundamentals
2. hadoop fundamentals
 
Hadoop ppt on the basics and architecture
Hadoop ppt on the basics and architectureHadoop ppt on the basics and architecture
Hadoop ppt on the basics and architecture
 
Big data Hadoop
Big data  Hadoop   Big data  Hadoop
Big data Hadoop
 
hadoop distributed file systems complete information
hadoop distributed file systems complete informationhadoop distributed file systems complete information
hadoop distributed file systems complete information
 
Hadoop Maharajathi,II-M.sc.,Computer Science,Bonsecours college for women
Hadoop Maharajathi,II-M.sc.,Computer Science,Bonsecours college for womenHadoop Maharajathi,II-M.sc.,Computer Science,Bonsecours college for women
Hadoop Maharajathi,II-M.sc.,Computer Science,Bonsecours college for women
 
Big data applications
Big data applicationsBig data applications
Big data applications
 

Recently uploaded

2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...
Sandy Millin
 
Thesis Statement for students diagnonsed withADHD.ppt
Thesis Statement for students diagnonsed withADHD.pptThesis Statement for students diagnonsed withADHD.ppt
Thesis Statement for students diagnonsed withADHD.ppt
EverAndrsGuerraGuerr
 
Digital Artifact 1 - 10VCD Environments Unit
Digital Artifact 1 - 10VCD Environments UnitDigital Artifact 1 - 10VCD Environments Unit
Digital Artifact 1 - 10VCD Environments Unit
chanes7
 
World environment day ppt For 5 June 2024
World environment day ppt For 5 June 2024World environment day ppt For 5 June 2024
World environment day ppt For 5 June 2024
ak6969907
 
A Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in EducationA Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in Education
Peter Windle
 
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
Levi Shapiro
 
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
Nguyen Thanh Tu Collection
 
Pride Month Slides 2024 David Douglas School District
Pride Month Slides 2024 David Douglas School DistrictPride Month Slides 2024 David Douglas School District
Pride Month Slides 2024 David Douglas School District
David Douglas School District
 
Delivering Micro-Credentials in Technical and Vocational Education and Training
Delivering Micro-Credentials in Technical and Vocational Education and TrainingDelivering Micro-Credentials in Technical and Vocational Education and Training
Delivering Micro-Credentials in Technical and Vocational Education and Training
AG2 Design
 
The Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official PublicationThe Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official Publication
Delapenabediema
 
How to Add Chatter in the odoo 17 ERP Module
How to Add Chatter in the odoo 17 ERP ModuleHow to Add Chatter in the odoo 17 ERP Module
How to Add Chatter in the odoo 17 ERP Module
Celine George
 
Assignment_4_ArianaBusciglio Marvel(1).docx
Assignment_4_ArianaBusciglio Marvel(1).docxAssignment_4_ArianaBusciglio Marvel(1).docx
Assignment_4_ArianaBusciglio Marvel(1).docx
ArianaBusciglio
 
DRUGS AND ITS classification slide share
DRUGS AND ITS classification slide shareDRUGS AND ITS classification slide share
DRUGS AND ITS classification slide share
taiba qazi
 
Chapter 4 - Islamic Financial Institutions in Malaysia.pptx
Chapter 4 - Islamic Financial Institutions in Malaysia.pptxChapter 4 - Islamic Financial Institutions in Malaysia.pptx
Chapter 4 - Islamic Financial Institutions in Malaysia.pptx
Mohd Adib Abd Muin, Senior Lecturer at Universiti Utara Malaysia
 
The basics of sentences session 5pptx.pptx
The basics of sentences session 5pptx.pptxThe basics of sentences session 5pptx.pptx
The basics of sentences session 5pptx.pptx
heathfieldcps1
 
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
MysoreMuleSoftMeetup
 
Azure Interview Questions and Answers PDF By ScholarHat
Azure Interview Questions and Answers PDF By ScholarHatAzure Interview Questions and Answers PDF By ScholarHat
Azure Interview Questions and Answers PDF By ScholarHat
Scholarhat
 
MATATAG CURRICULUM: ASSESSING THE READINESS OF ELEM. PUBLIC SCHOOL TEACHERS I...
MATATAG CURRICULUM: ASSESSING THE READINESS OF ELEM. PUBLIC SCHOOL TEACHERS I...MATATAG CURRICULUM: ASSESSING THE READINESS OF ELEM. PUBLIC SCHOOL TEACHERS I...
MATATAG CURRICULUM: ASSESSING THE READINESS OF ELEM. PUBLIC SCHOOL TEACHERS I...
NelTorrente
 
Natural birth techniques - Mrs.Akanksha Trivedi Rama University
Natural birth techniques - Mrs.Akanksha Trivedi Rama UniversityNatural birth techniques - Mrs.Akanksha Trivedi Rama University
Natural birth techniques - Mrs.Akanksha Trivedi Rama University
Akanksha trivedi rama nursing college kanpur.
 
Top five deadliest dog breeds in America
Top five deadliest dog breeds in AmericaTop five deadliest dog breeds in America
Top five deadliest dog breeds in America
Bisnar Chase Personal Injury Attorneys
 

Recently uploaded (20)

2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...
 
Thesis Statement for students diagnonsed withADHD.ppt
Thesis Statement for students diagnonsed withADHD.pptThesis Statement for students diagnonsed withADHD.ppt
Thesis Statement for students diagnonsed withADHD.ppt
 
Digital Artifact 1 - 10VCD Environments Unit
Digital Artifact 1 - 10VCD Environments UnitDigital Artifact 1 - 10VCD Environments Unit
Digital Artifact 1 - 10VCD Environments Unit
 
World environment day ppt For 5 June 2024
World environment day ppt For 5 June 2024World environment day ppt For 5 June 2024
World environment day ppt For 5 June 2024
 
A Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in EducationA Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in Education
 
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...
 
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
BÀI TẬP BỔ TRỢ TIẾNG ANH GLOBAL SUCCESS LỚP 3 - CẢ NĂM (CÓ FILE NGHE VÀ ĐÁP Á...
 
Pride Month Slides 2024 David Douglas School District
Pride Month Slides 2024 David Douglas School DistrictPride Month Slides 2024 David Douglas School District
Pride Month Slides 2024 David Douglas School District
 
Delivering Micro-Credentials in Technical and Vocational Education and Training
Delivering Micro-Credentials in Technical and Vocational Education and TrainingDelivering Micro-Credentials in Technical and Vocational Education and Training
Delivering Micro-Credentials in Technical and Vocational Education and Training
 
The Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official PublicationThe Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official Publication
 
How to Add Chatter in the odoo 17 ERP Module
How to Add Chatter in the odoo 17 ERP ModuleHow to Add Chatter in the odoo 17 ERP Module
How to Add Chatter in the odoo 17 ERP Module
 
Assignment_4_ArianaBusciglio Marvel(1).docx
Assignment_4_ArianaBusciglio Marvel(1).docxAssignment_4_ArianaBusciglio Marvel(1).docx
Assignment_4_ArianaBusciglio Marvel(1).docx
 
DRUGS AND ITS classification slide share
DRUGS AND ITS classification slide shareDRUGS AND ITS classification slide share
DRUGS AND ITS classification slide share
 
Chapter 4 - Islamic Financial Institutions in Malaysia.pptx
Chapter 4 - Islamic Financial Institutions in Malaysia.pptxChapter 4 - Islamic Financial Institutions in Malaysia.pptx
Chapter 4 - Islamic Financial Institutions in Malaysia.pptx
 
The basics of sentences session 5pptx.pptx
The basics of sentences session 5pptx.pptxThe basics of sentences session 5pptx.pptx
The basics of sentences session 5pptx.pptx
 
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
 
Azure Interview Questions and Answers PDF By ScholarHat
Azure Interview Questions and Answers PDF By ScholarHatAzure Interview Questions and Answers PDF By ScholarHat
Azure Interview Questions and Answers PDF By ScholarHat
 
MATATAG CURRICULUM: ASSESSING THE READINESS OF ELEM. PUBLIC SCHOOL TEACHERS I...
MATATAG CURRICULUM: ASSESSING THE READINESS OF ELEM. PUBLIC SCHOOL TEACHERS I...MATATAG CURRICULUM: ASSESSING THE READINESS OF ELEM. PUBLIC SCHOOL TEACHERS I...
MATATAG CURRICULUM: ASSESSING THE READINESS OF ELEM. PUBLIC SCHOOL TEACHERS I...
 
Natural birth techniques - Mrs.Akanksha Trivedi Rama University
Natural birth techniques - Mrs.Akanksha Trivedi Rama UniversityNatural birth techniques - Mrs.Akanksha Trivedi Rama University
Natural birth techniques - Mrs.Akanksha Trivedi Rama University
 
Top five deadliest dog breeds in America
Top five deadliest dog breeds in AmericaTop five deadliest dog breeds in America
Top five deadliest dog breeds in America
 

Hadoop ppt1

  • 1. Hadoop Training Institute in Hyderabad ORIENIT Orien IT – www.OrienIT.com Flat No 204, Annapurna Block,Aaditya Enclave Ameerpet, Hyderabad – 500038, Telangana,India.
  • 2. Introduction 1. Introduction: Hadoop’s history and advantages 2. Architecture in detail 3. Hadoop in industry
  • 3. What is Hadoop? • Apache top level project, open-source implementation of frameworks for reliable, scalable, distributed computing and data storage. • It is a flexible and highly-available architecture for large scale computation and data processing on a network of commodity hardware.
  • 4. Brief History of Hadoop • Designed to answer the question: “How to process big data with reasonable cost and time?”
  • 5. Search engines in 1990s 1996 1996 1997 1996
  • 8. Some Hadoop Milestones • 2008 - Hadoop Wins Terabyte Sort Benchmark (sorted 1 terabyte of data in 209 seconds, compared to previous record of 297 seconds) • 2009 - Avro and Chukwa became new members of Hadoop Framework family • 2010 - Hadoop's Hbase, Hive and Pig subprojects completed, adding more computational power to Hadoop framework • 2011 - ZooKeeper Completed • 2013 - Hadoop 1.1.2 and Hadoop 2.0.3 alpha. - Ambari, Cassandra, Mahout have been added
  • 9. What is Hadoop? • Hadoop: • an open-source software framework that supports data- intensive distributed applications, licensed under the Apache v2 license. • Goals / Requirements: • Abstract and facilitate the storage and processing of large and/or rapidly growing data sets • Structured and non-structured data • Simple programming models • High scalability and availability • Use commodity (cheap!) hardware with little redundancy • Fault-tolerance • Move computation rather than data
  • 11. Hadoop’s Architecture • Distributed, with some centralization • Main nodes of cluster are where most of the computational power and storage of the system lies • Main nodes run TaskTracker to accept and reply to MapReduce tasks, and also DataNode to store needed blocks closely as possible • Central control node runs NameNode to keep track of HDFS directories & files, and JobTracker to dispatch compute tasks to TaskTracker • Written in Java, also supports Python and Ruby
  • 13. Hadoop’s Architecture • Hadoop Distributed Filesystem • Tailored to needs of MapReduce • Targeted towards many reads of filestreams • Writes are more costly • High degree of data replication (3x by default) • No need for RAID on normal nodes • Large blocksize (64MB) • Location awareness of DataNodes in network
  • 14. Hadoop’s Architecture NameNode: • Stores metadata for the files, like the directory structure of a typical FS. • The server holding the NameNode instance is quite crucial, as there is only one. • Transaction log for file deletes/adds, etc. Does not use transactions for whole blocks or file-streams, only metadata. • Handles creation of more replica blocks when necessary after a DataNode failure
  • 15. Hadoop’s Architecture DataNode: • Stores the actual data in HDFS • Can run on any underlying filesystem (ext3/4, NTFS, etc) • Notifies NameNode of what blocks it has • NameNode replicates blocks 2x in local rack, 1x elsewhere
  • 17.
  • 18. Hadoop’s Architecture MapReduce Engine: • JobTracker & TaskTracker • JobTracker splits up data into smaller tasks(“Map”) and sends it to the TaskTracker process in each node • TaskTracker reports back to the JobTracker node and reports on job progress, sends data (“Reduce”) or requests new jobs
  • 19. Hadoop’s Architecture • None of these components are necessarily limited to using HDFS • Many other distributed file-systems with quite different architectures work • Many other software packages besides Hadoop's MapReduce platform make use of HDFS
  • 20. Hadoop in the Wild • Hadoop is in use at most organizations that handle big data: o Yahoo! o Facebook o Amazon o Netflix o Etc… • Some examples of scale: o Yahoo!’s Search Webmap runs on 10,000 core Linux cluster and powers Yahoo! Web search o FB’s Hadoop cluster hosts 100+ PB of data (July, 2012) & growing at ½ PB/day (Nov, 2012)
  • 21. Hadoop in the Wild • Advertisement (Mining user behavior to generate recommendations) • Searches (group related documents) • Security (search for uncommon patterns) Three main applications of Hadoop:
  • 22. Hadoop in the Wild • Non-realtime large dataset computing: o NY Times was dynamically generating PDFs of articles from 1851-1922 o Wanted to pre-generate & statically serve articles to improve performance o Using Hadoop + MapReduce running on EC2 / S3, converted 4TB of TIFFs into 11 million PDF articles in 24 hrs
  • 23. Hadoop in the Wild: Facebook Messages • Design requirements: o Integrate display of email, SMS and chat messages between pairs and groups of users o Strong control over who users receive messages from o Suited for production use between 500 million people immediately after launch o Stringent latency & uptime requirements
  • 24. Hadoop in the Wild • System requirements o High write throughput o Cheap, elastic storage o Low latency o High consistency (within a single data center good enough) o Disk-efficient sequential and random read performance
  • 25. Hadoop in the Wild • Classic alternatives o These requirements typically met using large MySQL cluster & caching tiers using Memcached o Content on HDFS could be loaded into MySQL or Memcached if needed by web tier • Problems with previous solutions o MySQL has low random write throughput… BIG problem for messaging! o Difficult to scale MySQL clusters rapidly while maintaining performance o MySQL clusters have high management overhead, require more expensive hardware
  • 26. Hadoop in the Wild • Facebook’s solution o Hadoop + HBase as foundations o Improve & adapt HDFS and HBase to scale to FB’s workload and operational considerations  Major concern was availability: NameNode is SPOF & failover times are at least 20 minutes  Proprietary “AvatarNode”: eliminates SPOF, makes HDFS safe to deploy even with 24/7 uptime requirement  Performance improvements for realtime workload: RPC timeout. Rather fail fast and try a different DataNode
  • 27. Hadoop Highlights • Distributed File System • Fault Tolerance • Open Data Format • Flexible Schema • Queryable Database
  • 28. Why use Hadoop? • Need to process Multi Petabyte Datasets • Data may not have strict schema • Expensive to build reliability in each application • Nodes fails everyday • Need common infrastructure • Very Large Distributed File System • Assumes Commodity Hardware • Optimized for Batch Processing • Runs on heterogeneous OS
  • 29. DataNode • A Block Sever – Stores data in local file system – Stores meta-data of a block - checksum – Serves data and meta-data to clients • Block Report – Periodically sends a report of all existing blocks to NameNode • Facilitate Pipelining of Data – Forwards data to other specified DataNodes
  • 30. Block Placement • Replication Strategy – One replica on local node – Second replica on a remote rack – Third replica on same remote rack – Additional replicas are randomly placed • Clients read from nearest replica
  • 31. Data Correctness • Use Checksums to validate data – CRC32 • File Creation – Client computes checksum per 512 byte – DataNode stores the checksum • File Access – Client retrieves the data and checksum from DataNode – If validation fails, client tries other replicas
  • 32. Data Pipelining • Client retrieves a list of DataNodes on which to place replicas of a block • Client writes block to the first DataNode • The first DataNode forwards the data to the next DataNode in the Pipeline • When all replicas are written, the client moves on to write the next block in file
  • 33. Hadoop MapReduce • MapReduce programming model – Framework for distributed processing of large data sets – Pluggable user code runs in generic framework • Common design pattern in data processing – cat * | grep | sort | uniq -c | cat > file – input | map | shuffle | reduce | output
  • 34. MapReduce Usage • Log processing • Web search indexing • Ad-hoc queries
  • 35. Closer Look • MapReduce Component – JobClient – JobTracker – TaskTracker – Child • Job Creation/Execution Process
  • 36. MapReduce Process (org.apache.hadoop.mapred) • JobClient – Submit job • JobTracker – Manage and schedule job, split job into tasks • TaskTracker – Start and monitor the task execution • Child – The process that really execute the task
  • 37. Inter Process Communication IPC/RPC (org.apache.hadoop.ipc) • Protocol – JobClient <-------------> JobTracker – TaskTracker <------------> JobTracker – TaskTracker <-------------> Child • JobTracker impliments both protocol and works as server in both IPC • TaskTracker implements the TaskUmbilicalProtocol; Child gets task information and reports task status through it. JobSubmissionProtocol InterTrackerProtocol TaskUmbilicalProtocol
  • 38. JobClient.submitJob - 1 • Check input and output, e.g. check if the output directory is already existing – job.getInputFormat().validateInput(job); – job.getOutputFormat().checkOutputSpecs(fs, job); • Get InputSplits, sort, and write output to HDFS – InputSplit[] splits = job.getInputFormat(). getSplits(job, job.getNumMapTasks()); – writeSplitsFile(splits, out); // out is $SYSTEMDIR/$JOBID/job.split
  • 39. JobClient.submitJob - 2 • The jar file and configuration file will be uploaded to HDFS system directory – job.write(out); // out is $SYSTEMDIR/$JOBID/job.xml • JobStatus status = jobSubmitClient.submitJob(jobId); – This is an RPC invocation, jobSubmitClient is a proxy created in the initialization
  • 40. Job initialization on JobTracker - 1 • JobTracker.submitJob(jobID) <-- receive RPC invocation request • JobInProgress job = new JobInProgress(jobId, this, this.conf) • Add the job into Job Queue – jobs.put(job.getProfile().getJobId(), job); – jobsByPriority.add(job); – jobInitQueue.add(job);
  • 41. Job initialization on JobTracker - 2 • Sort by priority – resortPriority(); – compare the JobPrioity first, then compare the JobSubmissionTime • Wake JobInitThread – jobInitQueue.notifyall(); – job = jobInitQueue.remove(0); – job.initTasks();
  • 42. JobInProgress - 1 • JobInProgress(String jobid, JobTracker jobtracker, JobConf default_conf); • JobInProgress.initTasks() – DataInputStream splitFile = fs.open(new Path(conf.get(“mapred.job.split.file”))); // mapred.job.split.file --> $SYSTEMDIR/$JOBID/job.split
  • 43. JobInProgress - 2 • splits = JobClient.readSplitFile(splitFile); • numMapTasks = splits.length; • maps[i] = new TaskInProgress(jobId, jobFile, splits[i], jobtracker, conf, this, i); • reduces[i] = new TaskInProgress(jobId, jobFile, splits[i], jobtracker, conf, this, i); • JobStatus --> JobStatus.RUNNING
  • 44. JobTracker Task Scheduling - 1 • Task getNewTaskForTaskTracker(String taskTracker) • Compute the maximum tasks that can be running on taskTracker – int maxCurrentMap Tasks = tts.getMaxMapTasks(); – int maxMapLoad = Math.min(maxCurrentMapTasks, (int)Math.ceil(double) remainingMapLoad/numTaskTrackers));
  • 45. JobTracker Task Scheduling - 2 • int numMaps = tts.countMapTasks(); // running tasks number • If numMaps < maxMapLoad, then more tasks can be allocated, then based on priority, pick the first job from the jobsByPriority Queue, create a task, and return to TaskTracker – Task t = job.obtainNewMapTask(tts, numTaskTrackers);
  • 46. Start TaskTracker - 1 • initialize() – Remove original local directory – RPC initialization • TaskReportServer = RPC.getServer(this, bindAddress, tmpPort, max, false, this, fConf); • InterTrackerProtocol jobClient = (InterTrackerProtocol) RPC.waitForProxy(InterTrackerProtocol.class, InterTrackerProtocol.versionID, jobTrackAddr, this.fConf);
  • 47. Start TaskTracker - 2 • run(); • offerService(); • TaskTracker talks to JobTracker with HeartBeat message periodically – HeatbeatResponse heartbeatResponse = transmitHeartBeat();
  • 48. Run Task on TaskTracker - 1 • TaskTracker.localizeJob(TaskInProgress tip); • launchTasksForJob(tip, new JobConf(rjob.jobFile)); – tip.launchTask(); // TaskTracker.TaskInProgress – tip.localizeTask(task); // create folder, symbol link – runner = task.createRunner(TaskTracker.this); – runner.start(); // start TaskRunner thread
  • 49. Run Task on TaskTracker - 2 • TaskRunner.run(); – Configure child process’ jvm parameters, i.e. classpath, taskid, taskReportServer’s address & port – Start Child Process • runChild(wrappedCommand, workDir, taskid);
  • 50. Child.main() • Create RPC Proxy, and execute RPC invocation – TaskUmbilicalProtocol umbilical = (TaskUmbilicalProtocol) RPC.getProxy(TaskUmbilicalProtocol.class, TaskUmbilicalProtocol.versionID, address, defaultConf); – Task task = umbilical.getTask(taskid); • task.run(); // mapTask / reduceTask.run
  • 51. Finish Job - 1 • Child – task.done(umilical); • RPC call: umbilical.done(taskId, shouldBePromoted) • TaskTracker – done(taskId, shouldPromote) • TaskInProgress tip = tasks.get(taskid); • tip.reportDone(shouldPromote); – taskStatus.setRunState(TaskStatus.State.SUCCEEDED)
  • 52. Finish Job - 2 • JobTracker – TaskStatus report: status.getTaskReports(); – TaskInProgress tip = taskidToTIPMap.get(taskId); – JobInProgress update JobStatus • tip.getJob().updateTaskStatus(tip, report, myMetrics); – One task of current job is finished – completedTask(tip, taskStatus, metrics); – If (this.status.getRunState() == JobStatus.RUNNING && allDone) {this.status.setRunState(JobStatus.SUCCEEDED)}
  • 53. Demo • Word Count – hadoop jar hadoop-0.20.2-examples.jar wordcount <input dir> <output dir> • Hive – hive -f pagerank.hive