Entity Framework 6.1 Fundamentals

New from our instructor in the land of the midnight sun are new courses covering the fundamentals of Entity Framework 6.1. That instructor is Don Kiely…and between high adventure trips, skijoring, saving sled dogs, dodging moose, and running marathons, Don has found the time to work with us to create two excellent new courses.

According to Microsoft, Entity Framework (EF) is an object-relational mapper that enables .NET developers to work with relational data using domain-specific objects. It eliminates the need for most of the data-access code that developers usually need to write.

In our first new course, Entity Framework 6.1: Introduction, Don covers the basics from data access issues to the EF API and tools. In the second course, Entity Framework 6.1: Data Model, as the title suggests, Don digs in to the entity data model. These courses total over four hours of video training and are now available. Learn more

Entity Framework 6.1: Introduction

Watch trailer – Entity Framework 6.1: Introduction

Entity Framework 6.1: Data Model

Watch trailer – Entity Framework 6.1: Data Model

Watch for more EF courses from Don coming in the near future. In the meantime, I invite you to attend Don’s upcoming webinar on the Entity Framework Entity Data Model. He will be broadcasting live from Alaska beginning at 1pm CST on Wednesday, September 10th. (Don’t be surprised if you hear his dogs barking at moose in the background!) Register now

About the Author

BrianBlogpicBrian Ewoldt is the Project Manager for LearnNowOnline. Brian joined the team in 2008 after 13 years of working for the computer gaming industry as a producer/project manager. Brian is responsible for all production of courses published by LearnNowOnline. In his spare time, Brian enjoys being with his family, watching many forms of racing, racing online, and racing Go-Karts.

Be Sociable, Share!

A New Angle on Web Development

There is a relatively new open source JavaScript framework that is currently taking the web development community by storm. I’m speaking of AngularJS, which Black Duck’s Open Hub Web site (formerly Ohloh) currently has listed as one of the most active open source projects. Although it started at the top of 2010, it has really been in the last couple years that it has grown to rock star status and has become a go-to framework for many web developers.

So what’s so powerful about AngularJS? The power is in how it easily binds data to the objects on a Web page. It is essentially an MVC framework that can efficiently create dynamic views in a Web browser. AngularJS is built to perform all those complex, low-level DOM manipulation commands so you don’t have to. But doesn’t jQuery do that? Sure, but AngularJS is jQuery to the next level, and can be used in tandum with jQuery or as a complete replacement. AngularJS also provides built-in AJAX support and, unlike jQuery, RESTful services support.

AngularJS also has the unfair advantage of being heavily supported by Google with many Google developers actively working to improve the framework. That has led to a huge community that is actively engaged with the open source project on GitHub. So with or without Google, it is destined to stay on top as one of the best frameworks to use—so use it with confidence.

Ok, so what does AngularJS look like? Let’s look at a simple example of data binding using AngularJS. We will take a look at a Web page to do Fahrenheit to Celsius converting. The first step is we need to reference the Angular JavaScript file in the <head> tag. That is shown here:

Next add the following HTML code to the body:

What’s going on here? In the first DIV tag we provide scope for the block of HTML that will leverage AngularJS by including the “ng-app” attribute. AngularJS chose the ng namespace for the fact that when you phonetically say “NG” you say “aye-n-g” which is about as close to “angle” that you can get with two letters. Ok, moving on.

We then see an attribute “ng-init” that is used to initialize a variable “fTemp.” This sets the variable to 32. It is then used in the <input> tag to bind that textbox value to the variable fTemp. This variable is then used in the calculation of Celsius. Next you come across the double curly braces, “{{ }}”, which AngularJS picks up and evaluates what is between them. In this case, we calculated what the equivalent Celsius value is based on the current setting of Fahrenheit.

Below is what the page looks like:
NewAngleWebDevelopmentimg1

And if I change the value of Fahrenheit, the Celsius instantly changes as well, as shown here:
NewAngleWebDevelopmentimg2
Although this is a simple AngularJS example, I hope you can see the power behind it. It wouldn’t take much additional code to bind this Web page to a RESTful service that returns the current temperature in your area. And it’s not just weather data – you could hook up dynamic pages to your company’s data and manipulate it easily on the fly without getting buried in all the DOM-related calls or dealing with all the nuances of different browsers.

Check out our AngularJS courses for yourself and see John Culviner break down AngularJS so you can leverage the power in your Web sites.

About the Author

martysMartin Schaeferle is the Vice President of Technology for LearnNowOnline. Martin joined the company in 1994 and started teaching IT professionals nationwide to develop applications using Visual Studio and Microsoft SQL Server. He has been a featured speaker at various conferences including Microsoft Tech-Ed, DevConnections and the Microsoft NCD Channel Summit. Today, he is responsible for all product and software development as well as managing the company’s IT infrastructure. Martin enjoys staying on the cutting edge of technology and guiding the company to produce the best learning content with the best user experience in the industry. In his spare time, Martin enjoys golf, fishing, and being with his wife and three teenage children.

Be Sociable, Share!

What Makes the Best Reference Material

What is the best material to use when you want to learn a new topic within development or IT? If you are an experienced developer or IT pro, what is the best reference material to use?

These questions come up often, and typically developers and IT pros look at reference material and training material as coming from two different sources.  In my opinion, you need robust learning material that can first be used as training and subsequently as reference material.

Generally if someone needs to learn a skill (like how to effectively manage a project), a programming language (like C# or JavaScript), or a technology (like SharePoint or SQL Server), they will look for learning material that is focused on that specific subject. Many will look for “courses” on the topic thinking that is all they need. Effective developers and IT pros will instead look for “solutions” that will give them the best approach to solving their issue both in learning the subject from beginning to advanced and for reference material later.

Great reference material…

  • Is very searchable, including the ability to easily filter and find the needed material quickly.
  • Is built with short learning bytes so the user can learn it fast and get back to work.
  • Fits different learning styles.
  • Is practical and thorough.

Great training material has many of the same attributes…

  • Is well-organized, taking the learner from intro level concepts to advanced development.
  • Includes varied learning resources that will work well for different learning styles – learning visually, plus learning by doing, listening and reading. Many people learn best from different learning modalities.
  • Includes labs and “try-it-outs” so a person can practice and reinforce what he or she has learned.

Once you have learned your new skill, language, or technology, you are not done learning. You will continue to learn on-the-job and through trial and error. And sometimes you’ll encounter issues where you don’t know or can’t remember what to do.

When reference material is needed to solve a problem, what do you look for? Ideally it is best for developers and IT pros to find training material that also can function as easy-to-use reference material, such as…

  • Providing a strong search/filter system so you can find what you need quickly. There is nothing worse than needing a quick answer on how to do something and then spending hours searching for that answer. You need to find it fast, learn it fast, and get on with your life.
  • Being concise to best address your specific issue quickly. You don’t want to listen to someone blab on and on in a training video who never gets to the point. You need specific, practical advice—not training where the ego of the instructor gets in the way.
  • Training material that covers multiple learning modalities: read, listen, watch, do.

LearnNowOnline training has been designed to be excellent resource for both training and reference material, including:

  • Resources that will support all learning modalities: video training, ebooks/courseware, sample code, hands-on labs, and “try-it-outs.”
  • The best search/filter system to help you to access what you need quickly and easily.
  • Videos built in 5-10 minute nuggets so you can learn exactly what you need fast.
  • Content that is thorough, deep and comprehensive, written and presented by the best experts in that technology.

If you need learning resources for SharePoint, Visual Studio, SQL Server, JavaScript, PMP or other Developer and IT Pro technologies, I invite you to check out LearnNowOnline for yourself and experience a solution that provides both excellent training AND reference material.

About the Author

Craig PhotoCraig Jensen is the President and CEO of LearnNowOnline. Craig has led the company’s change from instructor-led classroom training, to self-study CD/DVD training, to the award winning online learning solutions offered today. Craig is passionate about helping individuals and businesses of all sizes solve their problems through practical learning and technology. He is involved in setting direction for the company, including selecting training content for development with resources to support all learning styles. He is also involved in The CEO Roundtable organization in the Twin Cities as well as the Minnesota High Tech organization. In his spare time, Craig loves to travel, golf, and partake in water sports of all kinds.

Be Sociable, Share!

Introduction to Python 3

python-logo-master-v3-TM-flattened

This week marked the release of our new courses covering Python 3. The Python language was originally developed in 1989 by Guido van Rossum.

And now for something completely different…”The Larch.”

As you can tell, I am a fan of Monty Python’s Flying Circus and so is Mr. Rossum. In fact that is why the language is called Python. If you don’t know who or what Monty Python’s Flying Circus is, they were a British comedy troop seen on British TV from the late 60s to the early 70s, followed up by several movies. Mr. Rossum still heads up the Python project, which is an Open Source project, and he has been given the title of Benevolent Dictator for Life (BDFL).

The Python language is a general purpose programming language that allows the programmer to create applications using less code by using constructs. Python is an object-oriented language and supports multiple programming paradigms and functional programming.

Peter Thorsteinson is the instructor for our Python courses.  I don’t know if he is a Monty Python fan, but I do know that he did a great job with these courses, making sure to cover every detail that someone who is new to Python will need in order to use the language to create applications. Our courses include:

Unlike the Monty Python TV show, there will be no dead parrots or need to figure out the weight of a swallow. Also, be thankful that the language was not named “Ekki-ekki-ekki-ekki-PTANG. Zoom-Boing, z’nourrwringmm.”

About the Author

BrianBlogpicBrian Ewoldt is the Project Manager for LearnNowOnline. Brian joined the team in 2008 after 13 years of working for the computer gaming industry as a producer/project manager. Brian is responsible for all production of courses published by LearnNowOnline. In his spare time, Brian enjoys being with his family, watching many forms of racing, racing online, and racing Go-Karts.

Be Sociable, Share!

Power Pivot Dashboards

powerpivotdashboardwithDO

It was a sunny day last Wednesday, but our instructor Doug Ortiz spent it indoors giving a great presentation on Power Pivot Dashboards. As the moderator of this event, I also spent the time inside watching how to turn data into compelling graphical representations so you can impress your colleagues in those “we have the data but we don’t know what it means” meetings.

Those who joined us for this event saw Doug show us how to can create Dashboards, Pivot Charts, Pivot Tables and Power Views. At the end of the one hour session, Doug answered lots of good questions from the attendees. If you didn’t get a chance to ask your question, you can always e-mail webinar@learnnowonline.com and I’ll be sure your question gets to Doug.

Now for those of you who spent your time outside, or missed our webinar because there was something “more important” to do, you can find the replay in our webinar archive. You can also watch our past events, or sign up for the next webinar with Mike Benkovich and learn about Avoiding Hacker Tricks.

About the Author

BrianBlogpicBrian Ewoldt is the Project Manager for LearnNowOnline. Brian joined the team in 2008 after 13 years of working for the computer gaming industry as a producer/project manager. Brian is responsible for all production of courses published by LearnNowOnline. In his spare time, Brian enjoys being with his family, watching many forms of racing, racing online, and racing Go-Karts.

Be Sociable, Share!

Hadoop…Pigs, Hives, and Zookeepers, Oh My!

zookeeper

If there is one aspect of Hadoop that I find particularly entertaining, it is the naming of the various tools that surround Hadoop. In my 7/3 post, I introduced Hadoop, the reasons for its growing popularity, and the core framework features. In this post, I will introduce you to the many different tools, and their clever names, that augment Hadoop and make it more powerful. And yes, the names in the title of this blog are actual tools.

Pig
The power behind Pig is that it provides developers with a simple scripting language that performs rather complex MapReduce queries. Originally developed by a team at Yahoo and named for its ability to devour any amount and any kind of data. The scripting language (yes, you guessed it, called Pig Latin) provides the developer with a set of high level commands to do all kinds of data manipulation like joins, filters, and sorts.

Unlike the SQL language, Pig is a more procedure or script-oriented query language. SQL, by design, is more declarative. The benefit of a procedural design is that you have more control over the processing of your data. For example, you can inject user code at any point within the process to control the flow.

Hive
To complement Pig, Hive provides developers a declarative query language similar to SQL. For many developers who are familiar with building SQL statements for relational databases like SQL Server and Oracle, Hive will be significantly easier to master. Originally developed by a team at Facebook, it has quickly become one of the most popular methods of retrieving data from Hadoop.

Hive uses a SQL-like implementation called HiveQL or HQL. Although it doesn’t strictly conform to the SQL ’92 standard, it does provide many of the same commands. The key language limitation relative to the standard is that there is no transactional support. HQL supports both ODBC and JDBC so developers can leverage many different programming languages like Java, C#, PHP, Python, and Ruby.

Oozie
To tie these query languages together for complex tasks requires an advanced workflow engine. Enter Oozie—a workflow scheduler for Hadoop that allows multiple queries from multiple query languages to be assembled into a convenient automated step-by-step process. With Oozie, you have total control over the flow to perform branching, decision-making, joining, and more. It can be configured to run at specific times or intervals and reports back logging and status information to the system. Oozie workflows can also accept user input parameters to add additional control. This allows developers to tweak the flow based on changing states or conditions of the system.

Sqoop
When deploying a Hadoop solution, one of the first steps is populating the system with data. Although data can come from many different sources, the most likely would be a relational database like Oracle, MySQL or SQL Server. For moving data to and from relational databases, Apache’s Sqoop is great tool to use. The name is derived from combining “SQL” and “Hadoop”; signifying the connection between SQL and Hadoop data.

Part of Sqoop’s power comes from the intelligence built-in to optimize the transfer of data both on the SQL side and the Hadoop side. It can query the SQL table’s schema to determine the structure of the incoming data, translate it into a set of intelligent data classes, and configure MapReduce to import the data efficiently into a Hadoop data store like HBase. Sqoop also provides the developer more granular control over the transfer by allowing them to import subsets of the data; for example, Sqoop can be told to only import specific columns within the table instead of the whole table.

Sqoop was even chosen by Microsoft as their preferred tool for moving SQL Server data into Hadoop.

Flume
Another popular data source for Hadoop outside of relational data is log or streaming data. Web sites, in particular, have a propensity to generate massive amounts of log data and more and more companies are finding out how valuable this data is to better understand their audience and their buying habits. So another challenge for the Hadoop community to solve was how to move log-based data into Hadoop. Apache tackled that challenge and released Flume (yes, think of a log flume).

The flume metaphor symbolizes the fact that this tool is dealing with streaming data like water down a rushing river. Unlike Sqoop which is typically moving static data, Flume needs to manage constant changes in data flow and be able to adjust to handle very busy times. For example, Web data may be coming in at an extreme high rate during a promotion. Flume is designed to scale itself to handle these changes in rates. Flume can also receive data from multiple streaming sources, even beyond Web logs, and does so with guaranteed delivery.

Zookeeper
There are many more tools I could cover but I’m going to wrap it up with one of my favorite tool names— Zookeeper. This tool comes into play when dealing with very large Hadoop installations. At some point in the growth of the system, as more and more computers are added to the cluster, there will be an increasing need to be able to manage and optimize the various nodes involved.

Zookeeper collects information about all nodes and organizes them in a hierarchy similar to how your operating system will create a hierarchy of all the files on your hard drive to make them easier to manage. The Zookeeper service is an in-memory service making it extremely fast, although it is limited by available RAM which may affect its scalability. It replicates itself across many of the nodes in the Hadoop system so that it maintains high availability and does not create a weak-link situation.

Zookeeper becomes the main hub that client machines connect to in order to obtain health information about the system as a whole. It is constantly monitoring all the nodes and logging events as they happen. With Zookeeper’s organized map of the system, it makes what could be a cumbersome task of checking on and maintaining each of the nodes individually a more enjoyable and manageable experience.

Summary
I hope this give you a taste of the many support tools that are available to Hadoop as well as illustrates the community’s commitment to this project. As technology goes, Hadoop is in the very early stages of its lifespan and components and tools are constantly changing. For more information about these and other tools, be sure to check out our new Hadoop course.

About the Author

martysMartin Schaeferle is the Vice President of Technology for LearnNowOnline. Martin joined the company in 1994 and started teaching IT professionals nationwide to develop applications using Visual Studio and Microsoft SQL Server. He has been a featured speaker at various conferences including Microsoft Tech-Ed, DevConnections and the Microsoft NCD Channel Summit. Today, he is responsible for all product and software development as well as managing the company’s IT infrastructure. Martin enjoys staying on the cutting edge of technology and guiding the company to produce the best learning content with the best user experience in the industry. In his spare time, Martin enjoys golf, fishing, and being with his wife and three teenage children.

Be Sociable, Share!

Bootstrap Fundamentals with Adam Barney

Bootstrap 3.1: Introduction and Installing
Watch the trailer for Bootstrap 3.1: Introduction and Installing

The LearnNowOnline production department has been busy working on four new courses for Bootstrap. So why would you need a course about how to use a bootstrap, you ask? How hard can it be? Actually, if you are going to create a web site about how to strap on your boots, you may want to use Bootstrap. Okay, enough with the bad play on words! The Bootstrap I’m talking about here is a free collection of web site creation tools. It was developed by engineers at Twitter as a framework to create uniformity in the development of websites.

Our new Bootstrap courses are presented by Adam Barney. Adam is a Microsoft C# MVP, consultant, speaker, author, and instructor. Starting in the 4th grade on a Commodore64, Adam has continually pushed himself to learn more about the construction of software, and he loves sharing that knowledge and passion with others. He is the instructor of our Microsoft Silverlight 5 courses, and we’re happy to have him back sharing his wisdom once again with these four new Bootstrap courses:

Bootstrap 3.1: Introduction and Installing (now available)
This course will take you through the process of acquiring Bootstrap – you’ll see how we can download Bootstrap distributions and sources or use a CDN or front-end package manager like Bower to get Bootstrap.

Bootstrap 3.1: Base CSS (now available)
This course will show you what basic CSS classes come with Bootstrap and how to apply them to your site to make it look great.

Bootstrap 3.1: Components (coming soon)
In this course you’ll learn about creating some different input elements, page navigation, emphasizing content in subtle ways with labels and badges, or in big ways with jumbotrons. You’ll also check out how you can visually separate content from its surroundings — both text-based content in wells, panels and alerts, and images in thumbnails.

Bootstrap 3.1: JavaScript (coming soon)
In this course, you’ll see that Bootstrap comes loaded with a ton of great JavaScript plugins to help you create powerful and engaging sites for customers and users. You’ll learn how to capture users’ attention with modal dialogs and create an auto-updating navigation element that remains fixed in the browser window as you scroll through your site.  You’ll also learn how to add some interactive elements to your site as we show and hide content dynamically using the tab and collapse plugins, and add some additional contextual content to our users in the form of tool-tips ad popovers.

One last item of note…yes Bootstrap 3.2 has just been released, but have no fear. All topics in these courses will still apply to Bootstrap 3.2.

About the Author

BrianBlogpicBrian Ewoldt is the Project Manager for LearnNowOnline. Brian joined the team in 2008 after 13 years of working for the computer gaming industry as a producer/project manager. Brian is responsible for all production of courses published by LearnNowOnline. In his spare time, Brian enjoys being with his family, watching many forms of racing, racing online, and racing Go-Karts.

Be Sociable, Share!

Watch “Getting Started with AngularJS”

GettingStartedwithAngularJSwJC

This week expert John Culviner presented the webinar “Getting Started with AngularJS.” John covered how AngularJS can be used to create interactive web pages, and how it makes this process quicker and easier than most JavaScript frameworks. He presented some very valuable material during the 90-minute presentation and Q&A session. If you missed this event, you can watch the replay now. In fact, replays of all of our past events are now available in the LearnNowOnline webinar archive – be sure to check it out.

Our next webinar is Wednesday, July 23rd and will be presented by Doug Ortiz. Doug will be demonstrating the power of Power Pivot Dashboards and how you can add graphics to your company’s data so your audience can more easily see what all that data means. Register now

About the Author

BrianBlogpicBrian Ewoldt is the Project Manager for LearnNowOnline. Brian joined the team in 2008 after 13 years of working for the computer gaming industry as a producer/project manager. Brian is responsible for all production of courses published by LearnNowOnline. In his spare time, Brian enjoys being with his family, watching many forms of racing, racing online, and racing Go-Karts.

Be Sociable, Share!

Agile/Scrum Essentials for Practitioners

GeofLory-300x200
Geof Lory, Agile/Scrum instructor

This last week we had Geof Lory in our production studio recording our new Agile/Scrum Essentials for Practitioners course. Geof is from the Twin Cities and has been introducing Agile and Lean principles into organizations since the mid-90s.

So what is the Agile/Scrum methodology of project management? For starters, it’s unlike the standard waterfall project management methodology where you assign tasks with a given order and time frame for completion. (For example, Task A is done before task B, and so on until the project is complete.) This process involves a project manager whose job it is to plan and assign each task within a given time frame.

The Agile/Scrum methodology does not have a traditional project manager, but rather a project team who divides the project management duties among its members. Instead of a task-driven schedule, a circular approach is taken. Each part of the project has a series of meetings to help in the development process. There is a kick-off meeting to start the project, daily meetings or Scrums, and Sprint meetings. Each type of meeting has a specific role within the project.

The Agile/Scrum method started in the software development industry as an answer to the quick changing technology needs of clients. Over time, the Agile/Scrum method has been adopted by other industries because of the flexibility it provides to the project team for adjusting to a changing feature list or other unforeseen circumstances.

Our new Agile/Scrum Essentials for Practitioners course is scheduled to be released later this month. Watch our web site for more information.

About the Author

BrianBlogpicBrian Ewoldt is the Project Manager for LearnNowOnline. Brian joined the team in 2008 after 13 years of working for the computer gaming industry as a producer/project manager. Brian is responsible for all production of courses published by LearnNowOnline. In his spare time, Brian enjoys being with his family, watching many forms of racing, racing online, and racing Go-Karts.

Be Sociable, Share!

The Power of Hadoop

hadoop.jpb

Even within the context of other hi-tech technologies, Hadoop went from obscurity to fame in a miraculously short about of time. It had to… the pressures driving the development of this technology were too great. If you are not familiar with Hadoop, let’s start by looking at the void it is trying to fill.

Companies, up until recently—say the last five to ten years or so—did not have the massive amounts of data to manage as they do today. Most companies only had to manage the data relating to running their business and managing their customers. Even those with millions of customers didn’t have trouble storing data using your everyday relational database like Microsoft SQL Server or Oracle.

But today, companies are realizing that with the growth of the Internet and with self-servicing (or SaaS) Web sites, there are now hundreds of millions of potential customers that are all voluntarily providing massive amounts of valuable business intelligence. Think of storing something as simple as a Web log that provides every click of every user on your site. How does a company store and manipulate this data when it is generating potentially trillions of rows of data every year?

Generally speaking, the essence of the problem Hadoop is attempting to solve is that data is coming in faster than hard drive capacities are growing. Today we have 4 TB drives available which can then be assembled on SAN or NAS devices to easily get 40 TB volumes or maybe even 400 TB volumes. But what if you needed a 4,000 TB or 4 Petabytes (PB) volume? The costs quickly get incredibly high for most companies to absorb…until now. Enter Hadoop.

Hadoop Architecture
One of the keys to Hadoop’s success is that it operates on everyday common hardware. A typical company has a backroom with hardware that has since past its prime. Using old and outdated computers, one can pack them full of relatively inexpensive hard drives (doesn’t need to be the same total capacity within each computer) and use them within a Hadoop cluster. Need to expand capacity? Add more computers or hard drives. Hadoop can leverage all the hard drives into one giant volume available for storing all types of data, from web logs to large video files. It is not uncommon for Hadoop to be used to store rows of data that are over 1GB per row!

The file system that Hadoop uses is called the Hadoop Distributed File System or HDFS. It is a highly fault tolerant file system that focuses on high availability and fast readabilities. It is best used for data that is written once and read often. It leverages all the hard drives in the systems when writing data because Hadoop knows that bottlenecks stem from writing and reading to a single hard drive. The more hard drives are used simultaneously during the writing and reading of data, the faster the system operates as a whole.

The HDFS file system operates in small file blocks which are spread across all hard drives available within a cluster. The block size is configurable and optimized to the data being stored. It also replicates the blocks over multiple drives across multiple computers and even across multiple network subnets. This allows for hard drives or computers to fail (and they will) and not disrupt the system. It also allows Hadoop to be strategic in which blocks it accesses during a read. Hadoop will choose to read certain replicated blocks when it feels it can retrieve the data faster using one computer over another. Hadoop analyses which computers and hard drives are currently being utilized, along with network bandwidth, to strategically pick the next hard drive to read a block. This produces a system that is very quick to respond to requests.

MapReduce
Despite the relatively odd name, MapReduce is the cornerstone of Hadoop’s data retrieval system. It is an abstracted programming layer on top of HDFS and is responsible for simplifying how data is read back to the user. It has a purpose similar to SQL in that it allows programmers to focus on building intelligent queries and not get involved in the underlying plumbing responsible for implementing or optimizing the queries. The “Map” part of the name refers to the task of building a map on the best way to sort and filter the information requested and then to return it as a pseudo result set. The “Reduce” task summarizes the data like the counting and summing of certain columns.

These two tasks are both analyzed by the Hadoop engine and then broken into many pieces or nodes (a divide and conquer model) which are all processed in parallel by individual workers. This result is the ability to process Petabytes of data in a matter of hours.

MapReduce is an open source project originally developed by Google and has been now ported over to many programming languages. You can find out more on MapReduce by visiting http://mapreduce.org.

In my next post, I’ll take a look at some of the other popular components around Hadoop, including advanced analytical tools like Hive and Pig. In the meantime, if you’d like to learn more about Hadoop, check out our new course.

Apache Hadoop, Hadoop, Apache, the Apache feather logo, and the Apache Hadoop project logo are either registered trademarks or trademarks of the Apache Software Foundation in the United States and other countries.

About the Author

martysMartin Schaeferle is the Vice President of Technology for LearnNowOnline. Martin joined the company in 1994 and started teaching IT professionals nationwide to develop applications using Visual Studio and Microsoft SQL Server. He has been a featured speaker at various conferences including Microsoft Tech-Ed, DevConnections and the Microsoft NCD Channel Summit. Today, he is responsible for all product and software development as well as managing the company’s IT infrastructure. Martin enjoys staying on the cutting edge of technology and guiding the company to produce the best learning content with the best user experience in the industry. In his spare time, Martin enjoys golf, fishing, and being with his wife and three teenage children.

Be Sociable, Share!