Amazon Elastic MapReduce
Based on Hadoop, MapReduce equips users with potent distributed data-processing tools
- Doesn't take long to get the hang of
- Currently available in the US region only
You'll want to be familiar with the Apache Hadoop framework before you jump into Elastic MapReduce. It doesn't take long to get the hang of it, though. Most developers can have a MapReduce application running within a few hours.
Have you got a few hundred gigabytes of data that need processing? Perhaps a dump of radio telescope data that could use some combing through by a squad of processors running Fourier transforms? Or maybe you're convinced some statistical analysis will reveal a pattern hidden in several years of stock market information? Unfortunately, you don't happen to have a grid of distributed processors to run your application, much less the time to construct a parallel processing infrastructure.
Well, cheer up: Amazon has added Elastic MapReduce to its growing list of cloud-based Web services. Currently in beta, Elastic MapReduce uses Amazon's Elastic Compute Cloud (EC2) and Simple Storage Service (S3) to implement a virtualized distributed processing system based on Apache Hadoop.
Hadoop's internal architecture is the MapReduce framework. The mechanics of MapReduce are well documented in a paper by J. Dean and S. Ghemawat [PDF], and a full treatment is beyond the scope of this article. Instead, I'll illustrate by example.
Suppose you have a set of 10 words and you want to count the number of times those words appear in a collection of e-books. Your input data is a set of key/value pairs, the value being a line of text from one of the books and the key being the concatenation of the book's name and the line's number. This set might comprise a few megabytes big -- or gigabytes. MapReduce doesn't much care about size.
You write a routine that reads this input, a pair at a time, and produces another key/value pair as output. The output key is a word (from the original set of 10) and the associated value is the number of times that word appears in the line. (Zero values are not emitted.) This routine is the map part of map/reduce. Its output is referred to as the intermediate key/value pairs.
The intermediate key/value pairs are fed to another function (another "step" in the parlance of MapReduce). For this step, you write a routine that iterates through the intermediate data, sums up the values, and returns a single pair whose key is the word and whose value is the grand total. You don't have to worry about grouping the results of like keys (i.e., gathering all the intermediate key/values for a given word), because Hadoop does that grouping for you in the background.
Join the PC World newsletter!
Most Popular Reviews
- 1 Samsung Galaxy Note 7 review
- 2 Portable power: Venom Blackbook 13 Zero review
- 3 Alcatel Idol 4S review: King of the mid-range?
- 4 Witness a 241% Australian price hike: Dell Latitude 7370 review
- 5 Is this the best value phone on the market? Moto G4 Plus review
Latest News Articles
- LinkedIn ProFinder helps freelancers land jobs
- What you need to do to stop data from leaving with exiting employees
- As Zika looms, a question arises: Who gets to telecommute?
- Surveys suss out Windows 10 enterprise migration timelines
- Facebook battles to banish News Feed clickbait
GGG Evaluation Team
First impression on unpacking the Q702 test unit was the solid feel and clean, minimalist styling.
For work use, Microsoft Word and Excel programs pre-installed on the device are adequate for preparing short documents.
The Fujitsu LifeBook UH574 allowed for great mobility without being obnoxiously heavy or clunky. Its twelve hours of battery life did not disappoint.
The screen was particularly good. It is bright and visible from most angles, however heat is an issue, particularly around the Windows button on the front, and on the back where the battery housing is located.
My first impression after unboxing the Q702 is that it is a nice looking unit. Styling is somewhat minimalist but very effective. The tablet part, once detached, has a nice weight, and no buttons or switches are located in awkward or intrusive positions.
- CCContract Analyst Programmer (JAVA/J2EE/MySQL) 160823/AP/172Asia
- CCWindows EngineerVIC
- CCMurex Developers x 2NSW
- CCBackfill Support Engineer (Renewable 12-month Contract)Asia
- CCInfrastructure Designer - AWSNSW
- FTDB2 Database AdministratorVIC
- FTSharePoint DeveloperNSW
- FTUnix Systems AdministratorNSW
- CCData Migration SpecialistSA
- CCSystem Analyst - NetIQNSW
- CCCA Gen Model Management-Oracle RDBMS, Oracle Solaris, TTNNSW
- CCContract Systems Analyst (Windows 7/8/10) 160901/SA/212Asia
- CCAgile Business AnalystNSW
- CCDevOps Engineer - Php, LAMP, XML, scripting, JavaNSW
- CCMS Access DeveloperNSW
- FTData AnalystsWA
- CCProject Manager, Infrastructure Migration, AWS CloudNSW
- CCPMO AnalystNSW
- CCSenior Business Analyst - TaxVIC
- CCContract Analyst Programmer (JAVA/J2EE) 160901/AP/781Asia
- CCChange AnalystNSW
- CCProgram Director, Cyber Security TransformationNSW
- CCContract Analyst Programmer (JAVA/J2EE/Oracle) 160822/AP/259Asia
- FTBusiness Intelligence Team LeadVIC
- CCChange Communications ManagerNSW