<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>B&#039;Cognizance &#187; Tech-Hive</title>
	<atom:link href="http://bcognizance.iiita.ac.in/archive/aug-nov14/?cat=12&#038;feed=rss2" rel="self" type="application/rss+xml" />
	<link>https://bcognizance.iiita.ac.in/archive/aug-nov14</link>
	<description></description>
	<lastBuildDate>Fri, 10 Apr 2015 04:56:11 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
		<item>
		<title>Responsive Web Designing</title>
		<link>https://bcognizance.iiita.ac.in/archive/aug-nov14/?p=874</link>
		<comments>https://bcognizance.iiita.ac.in/archive/aug-nov14/?p=874#comments</comments>
		<pubDate>Fri, 14 Nov 2014 10:46:37 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Tech-Hive]]></category>

		<guid isPermaLink="false">http://bcognizance.iiita.ac.in/archive/aug-nov14/?p=874</guid>
		<description><![CDATA[Target readers: Website Designers and Developers, Programmers Keywords: CSS, HTML, Frameworks Introduction It is the web development approach, which emphasizes on user experience practices to make reading easier with minimum scrolling, clicks and resizing required. It is responding to the size of the browser window or the device, maintaining a single code. Why do we<p class="readmore"> <a href="https://bcognizance.iiita.ac.in/archive/aug-nov14/?p=874" title="Read Responsive Web Designing">  CONTINUE READING ...</a> </p>]]></description>
			<content:encoded><![CDATA[<p><strong>Target readers:</strong> <em>Website Designers and Developers, Programmers</em><br />
<strong>Keywords:</strong> <em>CSS, HTML, Frameworks</em></p>
<p><strong>Introduction</strong></p>
<p>It is the web development approach, which emphasizes on user experience practices to make reading easier with minimum scrolling, clicks and resizing required. It is responding to the size of the browser window or the device, maintaining a single code.</p>
<p><strong>Why do we need RWD?</strong></p>
<p>Web development has been in market since internet is. But why suddenly a new concept, which led to redesigning of thousands of existing web sites, was introduced and welcomed by all designers. Emerge of RWD is basically an outcome of astonishing progress of smart phones and tablets in market. Each month there is an increasing amount of people who switch to using mobile and tablets instead of desktops, for surfing.</p>
<a href="http://bcognizance.iiita.ac.in/archive/aug-nov14/wp-content/uploads/2014/11/11.bmp"><img src="http://bcognizance.iiita.ac.in/archive/aug-nov14/archive/aug-nov14/wp-content/uploads/2014/11/11.bmp" alt="RWD" title="RWD" class="aligncenter size-full wp-image-877" /></a>
<p>To make the same website look good across all devices, there can be two approaches<br />
<strong>1.</strong> <em>Maintaining different code base for these devices.</em> But here, you will have to develop different code base, which leads to high development and maintenance cost.<br />
<strong>2.</strong> <em>Use responsive web designing approach.</em> You design for three device sizes but develop a single code base in HTML that makes the same website look good on large desktop monitors and small smart phones and anywhere in between.</p>
<p><strong>How to create RWD?</strong></p>
<p>It is the same HTML used for all devices, using CSS (which determines the layout of webpage) to change the appearance of the page. It relies on proportion-based grids to rearrange content and design elements. For example, media queries are used to make certain css styles apply only for devices with screen width as small as mobiles:</p>
<p>@media only screen and (max-width:500px){<br />
	#wrapper #nav{ margin: 0 0 0 -160px;<br />
}</p>
<p><strong>Popular responsive css frameworks in market</strong></p>
<p>There are certain css frameworks available that make responsive development easier. The most popular are:<br />
1.	Bootstrap.<br />
2.	Foundation.<br />
3.	Gumby.<br />
4.	Skeleton.</p>
<blockquote><p><strong><em>Richa Deshwal<br />
Deloitte. |Bengaluru Area<br />
Email: deshwalricha8@gmail.com<br />
</em></strong></p></blockquote>
]]></content:encoded>
			<wfw:commentRss>https://bcognizance.iiita.ac.in/archive/aug-nov14/?feed=rss2&#038;p=874</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>3D Printing an emerging technology</title>
		<link>https://bcognizance.iiita.ac.in/archive/aug-nov14/?p=755</link>
		<comments>https://bcognizance.iiita.ac.in/archive/aug-nov14/?p=755#comments</comments>
		<pubDate>Fri, 14 Nov 2014 06:02:41 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Tech-Hive]]></category>

		<guid isPermaLink="false">http://bcognizance.iiita.ac.in/archive/aug-nov14/?p=755</guid>
		<description><![CDATA[3D printing or additive manufacturing( AM) refers to various processors for printing a 3-dimentional object primarily additive processes are used, in which successive layer of material are laid down under computer control. These object can be of almost any shape or geometry, and are produced from a 3D model other electronic data source. A 3D<p class="readmore"> <a href="https://bcognizance.iiita.ac.in/archive/aug-nov14/?p=755" title="Read 3D Printing an emerging technology">  CONTINUE READING ...</a> </p>]]></description>
			<content:encoded><![CDATA[<p>3D printing or additive manufacturing( AM) refers to various processors for printing a 3-dimentional object primarily additive processes are used, in which successive layer of material are laid down under computer control. These object can be of almost any shape or geometry, and are produced from a 3D model other electronic data source. A 3D printer is a type of industrial machine.</p>
<p>General principles used in 3D printing, 3D models can be created with a CAD package or via 3D scanner. The manual modeling of process preparing geometric data for 3D computer graphics is similar to plastic art such as sculpting. 3D scanning is a process of analyzing and collection digital data on the shape and appearance of real object can then be produced. Both manual and automatic creation of 3D printable models is difficult for average consumer. This is why several 3D printing marketplaces have emerged over the last years.</p>
<p>Application of 3D printing are in the fields like product development, data visualization, rapid prototype and specialize manufacturing .The  technology is also expanding toward field like job production, industrial design, toys industries,  engineering designs, automotive designing , dental , military etc.</p>
<p>Most recent update in 3D printing use is now expanding towards space and aeronautics, where some components of satellite will be replaced by printed component on the same place; this means astronauts can now print any component of satellite in space with help of highly advance 3D printer.  </p>
<p><strong>References:</strong> <em>Wikipedia ,Journals ,informative websites</em></p>
<blockquote><p><strong><i>Shrut Kirti Nandan<br />
MBA-IT<br />
IIIT Allahabad<i></strong></p></blockquote>
]]></content:encoded>
			<wfw:commentRss>https://bcognizance.iiita.ac.in/archive/aug-nov14/?feed=rss2&#038;p=755</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hadoop</title>
		<link>https://bcognizance.iiita.ac.in/archive/aug-nov14/?p=749</link>
		<comments>https://bcognizance.iiita.ac.in/archive/aug-nov14/?p=749#comments</comments>
		<pubDate>Fri, 14 Nov 2014 06:00:50 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Tech-Hive]]></category>

		<guid isPermaLink="false">http://bcognizance.iiita.ac.in/archive/aug-nov14/?p=749</guid>
		<description><![CDATA[Target readers: All Keywords: Big Data, Hadoop, Architecture Introduction of Hadoop: Apache Hadoop software framework that supports the applications that use intensive amount of data. It makes the applications to work with thousands of machines and with petabytes of data. Hadoop was created by Doug Cutting and Michael J. Cafarella. Hadoop is an activity that<p class="readmore"> <a href="https://bcognizance.iiita.ac.in/archive/aug-nov14/?p=749" title="Read Hadoop">  CONTINUE READING ...</a> </p>]]></description>
			<content:encoded><![CDATA[<p><strong>Target readers:</strong> <em>All</em><br />
<strong>Keywords:</strong> <em>Big Data, Hadoop, Architecture</em></p>
<p><strong>Introduction of Hadoop:</strong></p>
<p>Apache Hadoop software framework that supports the applications that use intensive amount of data. It makes the applications to work with thousands of machines and with petabytes of data. Hadoop was created by Doug Cutting and Michael J. Cafarella. Hadoop is an activity that is used globally using Java as a programming language.</p>
<p><strong>Architecture of HADOOP:</strong></p>
<p>Hadoop consists of the common area which is known as the Hadoop Common. It is used to provide access to the systems supported by it. As Hadoop used java as programming language so the Hadoop common contains the needed jar files.</p>
<p>Every file system will provide the awareness of the location for the better scheduling. Hadoop can use this application for better scheduling of the work. HDFS (Hadoop Distribution File System) is used in Hadoop for replicating the data in different networks. The main purpose for this replication is to use the data even during the network failure.</p>
<p>Hadoop can be consists of single node known as master node or multiple nodes known as worker nodes. Master node consists of JobTracker, TaskTracker, NameNode, and DataNode and worker node can act both as the DataNode and TaskTracker. </p>
<p>In a large Hadoop each HDFS is assigned with particular primary NameNode to host and secondary NameNode for taking snapshots of NameNode memory structures resulting in dropping the amount of loss of data and file system alteration. Single JobTracker can manage the arrangement of jobs. </p>
<p><strong>File systems In HADOOP:</p>
<p>HDFS:</strong></p>
<p>HDFS is designed to run on hardware. It is similar to other file system but there are some differences which make it highly compatible. It is highly tolerant to any failures and can operate on low cost hardware. HDFS can give the frequent admittance for the data and is appropriate for an application which contains Big Data.</p>
<p>HDFS has potential to backing the data in case of failure of the NameNode. It includes secondary name node which deceives people about the secondary node taking over primary node in case of failure. An advantage of taking snapshots by slave nodes is that in case of primary name node goes offline without rerunning the complete cycle by referring to the snapshot entire directory can be created.</p>
<p>HDFS also creates alertness between JobTracker and Tasktracker. Jobtracker will plan for the jobs to TaskTracker with knowledge to TaskTracker about the data site. It can be helpful for reducing the redundant transfer of data.</p>
<p><strong>Multi Node Hadoop Cluster:</strong></p>
<a href="http://bcognizance.iiita.ac.in/archive/aug-nov14/wp-content/uploads/2014/11/2.jpg"><img src="http://bcognizance.iiita.ac.in/archive/aug-nov14/archive/aug-nov14/wp-content/uploads/2014/11/2.jpg" alt="" title="2" width="645" height="500" class="aligncenter size-full wp-image-750" /></a>
<p><strong>HDFS Architecture:</strong></p>
<a href="http://bcognizance.iiita.ac.in/archive/aug-nov14/wp-content/uploads/2014/11/3.jpg"><img src="http://bcognizance.iiita.ac.in/archive/aug-nov14/archive/aug-nov14/wp-content/uploads/2014/11/3.jpg" alt="" title="3" width="727" height="567" class="aligncenter size-full wp-image-751" /></a>
<p><strong>Block Replication in HDFS:</strong></p>
<p>Block replication is a very special feature of HDFS file system. This can be used to recover the data in case of failure of the NameNode.</p>
<a href="http://bcognizance.iiita.ac.in/archive/aug-nov14/wp-content/uploads/2014/11/4.jpg"><img src="http://bcognizance.iiita.ac.in/archive/aug-nov14/archive/aug-nov14/wp-content/uploads/2014/11/4.jpg" alt="" title="4" width="718" height="170" class="aligncenter size-full wp-image-752" /></a>
<p><strong>Disadvantages of Hadoop:</strong></p>
<p>Generally in Hadoop complex queries with multiple joins cannot be supported. Also normalized documents cannot be used developer has to do the DE normalization. Or we can say Hadoop is best suited for OLTP.<br />
•	No uniformity.<br />
•	While using Hadoop the access control is insufficient.<br />
•	The program becomes more complicated with time.<br />
•	Hadoop systems cannot support the relationship features.<br />
•	Hadoop cannot perform better in real time scenarios.</p>
<blockquote><p><strong><i>Anshruta<br />
MBA-IT<br />
IIIT Allahabad<br />
</i></strong></p></blockquote>
]]></content:encoded>
			<wfw:commentRss>https://bcognizance.iiita.ac.in/archive/aug-nov14/?feed=rss2&#038;p=749</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hadoop Ecosystem</title>
		<link>https://bcognizance.iiita.ac.in/archive/aug-nov14/?p=746</link>
		<comments>https://bcognizance.iiita.ac.in/archive/aug-nov14/?p=746#comments</comments>
		<pubDate>Fri, 14 Nov 2014 05:53:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Tech-Hive]]></category>

		<guid isPermaLink="false">http://bcognizance.iiita.ac.in/archive/aug-nov14/?p=746</guid>
		<description><![CDATA[Target readers: All Big Data Aspirants Keywords: Hadoop, HDFS, Map or Reduce We have huge volumes of untapped information in unstructured documents spread across the networks. This data helps us to create new products, refine existing products, discover new trends &#038; moreover helps in understanding our business. Hadoop is a distributed framework which is designed<p class="readmore"> <a href="https://bcognizance.iiita.ac.in/archive/aug-nov14/?p=746" title="Read Hadoop Ecosystem">  CONTINUE READING ...</a> </p>]]></description>
			<content:encoded><![CDATA[<p><strong>Target readers:</strong> <em>All Big Data Aspirants</em><br />
<strong>Keywords:</strong> <em>Hadoop, HDFS, Map or Reduce</em></p>
<p>We have huge volumes of untapped information in unstructured documents spread across the networks. This data helps us to create new products, refine existing products, discover new trends &#038; moreover helps in understanding our business. Hadoop is a distributed framework which is designed to handle such huge volumes, literally Petabytes of data. It helps in processing large datasets in a scalable and fault tolerant manner. </p>
<a href="http://bcognizance.iiita.ac.in/archive/aug-nov14/wp-content/uploads/2014/11/1.png"><img src="http://bcognizance.iiita.ac.in/archive/aug-nov14/archive/aug-nov14/wp-content/uploads/2014/11/1.png" alt="" title="1" width="631" height="533" class="aligncenter size-full wp-image-747" /></a>
<p>As we see in the above picture, the core of the Hadoop is HDFS &#038; Map Reduce. HDFS provides distributed storage across the clusters consisting of commodity machines. Map Reduce is the programming model we use to process voluminous amounts of data stored across the clusters. There are many Hadoop projects inside the Hadoop Ecosystem. Each of the projects is designed to solve a specific problem. Most of the projects are in the incubation stage. In this document we will see about the projects which are graduated from the incubator stage and have already become part of Hadoop implementations. </p>
<p><strong>Data Processing:</strong>  Hive &#038; Pig are the data processing libraries available which help us to process data stored in the HDFS. The main reason why we need these different ways to process data inside Hadoop is, we don’t find many professionals who are a low level Java, Python, or a C/C++ programmer’s that can write Map/Reduce jobs for fetching the data from HDFS and processing it. Moreover some things like filtering data, joining, grouping which we do using SQL language are very difficult to implement using programming languages like Java, also time consuming.</p>
<p><strong>Hive:</strong> Hive is an open source data processing project from the Apache Software Foundation. It is a data warehouse built on top of Hadoop. It contains a query language called Hive QL, which is very much similar to SQL. Hive provides a way to project structure on to the large datasets residing in the Hadoop Distributed File System , helps in managing them using HiveQL. Hive converts the queries we write into Map/Reduce jobs and submits them to the HDFS cluster. Hive provides access to the data stored in HDFS or in other databases like Hbase. Hive is designed for OLAP, not for OLTP.</p>
<p><strong>Pig</strong>: Pig is a high-level data flow scripting language. Pig was initially developed at Yahoo! The core components of Pig are Pig Latin and Pig compiler. Pig Latin is the programming language, Pig Runtime/Compiler compiles the Pig Latin and converts to Map/Reduce job, submits to the cluster. Pig helps you in analyzing the data residing in HDFS even if you do not have any idea on Map Reduce concepts.<br />
Data Storage:</p>
<p><strong>HBase</strong>: Apache HBase is an open source implementation of Google’s Big Table.  It is a database which sits on top of the Hadoop Distributed file System: it is a scalable, non-Relational, distributed, column-oriented, multi-dimensional &#038; a highly available database. It is NoSQL database – it means that the underlying structure of this database is not very strict (schema oriented) like in the traditional relational databases, it is very flexible which makes it very scalable. HBase provides an efficient way of storing both structured and semi structured data; it is also capable of storing large amounts of sparse data (data which contains lot of void).  HBase is better suited for application areas which need random, real times write/read access to the large volumes of data. You can write Pig and Hive queries against the data residing in HBase tables.</p>
<p><strong>Cassandra</strong>: Cassandra database has its roots in Amazon’s Dynamo data store. It was originally developed at Facebook, after Facebook open sourced the code; Cassandra became a top-level Apache project. It is Real time interactive transaction processing on top of Hadoop. It is also a NoSQL database which is designed for providing high availability of large volumes of data spanning across clusters, data centers with no single point of failure. If the application area needs high availability, scalability &#038; require high performance seeking against Hadoop data, Cassandra best suits it.<br />
Note: As most of the features and details of these databases overlap with each other, it is our duty initially to smoke test with each of these technologies and find out which better suits our application area.<br />
Data Serialization (Avro &#038; Thrift): Serialization is a way that we can take data from an application, package it into format that we can either store it on the disk, transfer/exchange to another application, unpack it, then desterilize into a format they understand. Most of the times data is serialized as xml or json or some binary format.</p>
<p><strong> Avro</strong> is a generic data serialization exchange framework. Thrift is language neutral serialization framework. Thrift is more specific to creating flexible schemas that work with Hadoop data, it is meant for cross language compatibility. If you built an application that works with Hadoop data in java, and you want to use those same objects inside of an application that is built in Ruby or Python or C++ or JavaScript you can consume it.</p>
<p><strong>Data Intelligence – Mahout</strong>: Mahout is a machine learning algorithm library that conquers the three C’s. 1) Collaborative filtering (recommendation), 2) Clustering – way to group related documents, 3) Classification – way to categorize related documents. Mahout is mainly used in the areas where predictive analysis, recommendations need to be made using the previous trends of the data.<br />
Data Extraction Tools:</p>
<p><strong>Sqoop</strong>: Sqoop, a top level Apache project, is used for importing data from relational databases such as Oracle, MySQL into the HDFS storage &#038; vice-versa. For instance say we have the result of a map reduce, rather than taking those results and putting them in HDFS, we can send those results to relational world so that data professionals can do their own analysis. Sqoop is useful for pushing bulk loads of data from HDFS to relational databases &#038; also useful for pushing data from relational world into Hadoop for archiving and other purposes. Sqoop can be used to integrate Hadoop with various other relational world databases like Oracle, MySQL, and Teradata etc.  </p>
<p><strong>Flume</strong>: Apache Flume is an application which is useful for streaming large volumes of data from various web sources on the internet to Hadoop Distributed File System. Flume helps in real time log processing. For instance, the huge amounts of log data that is generated by the web servers can be pushed to HDFS in real time, stored and analyzed thus helping the users to obtain some meaningful information. Flume ensures there is no data loss during the streaming process. It is very reliable.</p>
<p><strong>Orchestration, Management, Monitoring:</strong></p>
<p><strong>Scheduler &#8211; Oozie</strong>:  Oozie is integrated with Hadoop and can be used for scheduling the Hadoop jobs. It is a workflow library that allows us to connect the dots between the essential Hadoop projects like Hive, Pig and Sqoop. For instance, we want to run a Pig script, when that was completed kick off a Hive query, after which we want to start a Sqoop job, Oozie allows us to do this.<br />
Management &#8211; Zookeeper: It is a distributed service coordinator. It is a way to keep all the services running in your cluster to keep in sync. It helps us in synchronization of various services by providing a centralized management point. Zookeeper will have the health reports of all the nodes in all the clusters.  You can also add nodes to your cluster with the help of Zookeeper. </p>
<p><strong>Administration &#8211; Ambari</strong>: Ambari helps us to provision a cluster, which means that we can install services like Hive, Pig, Oozie, HBase, and Sqoop across all the nodes in a cluster. Ambari lets us manage all the services in the cluster, like stopping &#038; starting services from one centralized path.  Ambari has got a nice Web UI –dashboard, helps us to monitor the health of Hadoop clusters.</p>
<blockquote><p><strong><i>Ankrish<br />
MBA-IT<br />
IIIT Allahabad<br />
</i></strong></p></blockquote>
]]></content:encoded>
			<wfw:commentRss>https://bcognizance.iiita.ac.in/archive/aug-nov14/?feed=rss2&#038;p=746</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Map Reduce Framework</title>
		<link>https://bcognizance.iiita.ac.in/archive/aug-nov14/?p=744</link>
		<comments>https://bcognizance.iiita.ac.in/archive/aug-nov14/?p=744#comments</comments>
		<pubDate>Fri, 14 Nov 2014 05:33:33 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Tech-Hive]]></category>

		<guid isPermaLink="false">http://bcognizance.iiita.ac.in/archive/aug-nov14/?p=744</guid>
		<description><![CDATA[Target readers: All, Developers, Programmers Keywords: Hadoop, HDFS, Map Reduce Introduction Hadoop In this era we have huge amount of data to manage. As per the IDC estimate, the total size of our “digital Universe” is around 2 zetta bytes(1 zetta byte = 270 bytes). The enormous data which is present subsumes the data generated<p class="readmore"> <a href="https://bcognizance.iiita.ac.in/archive/aug-nov14/?p=744" title="Read Map Reduce Framework">  CONTINUE READING ...</a> </p>]]></description>
			<content:encoded><![CDATA[<p><strong>Target readers:</strong> <em>All, Developers, Programmers</em><br />
<strong>Keywords:</strong> <em>Hadoop, HDFS, Map Reduce</em></p>
<p><strong>Introduction</p>
<p>Hadoop</strong><br />
In this era we have huge amount of data to manage. As per the IDC estimate, the total size of our “digital Universe” is around 2 zetta bytes(1 zetta byte = 270 bytes). The enormous data which is present subsumes the data generated by machines and people. Machine Logs, Vehicle GPS, and RFID readers etc., are contributing to this huge mountain of data. Storing and analyzing this vast data is a major concern. The speed to access data from the hard drives has failed to keep up with the drastic increase in the storage capacity of hard drives. For instance, if 1 TB (240bytes) of data is read with a speed of 100 MB/sec, it would take roughly 3 hours to complete the process. The solution to the above problem is <strong>Hadoop</strong>. Hadoop provides a reliable shared storage along with analysis of the performance.<strong> The storage is done by HDFS and analysis is done by Map Reduce.</strong></p>
<p><strong>Map Reduce </strong><br />
Map Reduce is a programming framework which abstracts the problem from disks read and write and transforms it into a computation over multiple sets of keys and values. Map Reduce is a batch query processor and is capable of getting result for a given dataset, by running an ad hoc query, in a reasonable amount of time.<br />
<strong><br />
RDBMS vs. Map Reduce</strong><br />
1. Traditional RDBMS is capable of handling data in terms of Gigabytes, whereas Map Reduce can handle data of size up to Peta bytes (250 bytes).<br />
2. Traditional databases works well for structured data (data which is in defined format. Ex-XML documents). As far as Map Reduce is concerned, it works well on unstructured data also (for data like plain text or image data).<br />
3. Map Reduce is linearly scalable. There are two functions Map and Reduce for defining mapping between one set of key value pairs to other. These functions are not dependent on the size of the data. This is not true for Relational databases.<br />
4. Traditional databases are normalized to retain integrity as well as reduce redundancy, but we cannot apply normalization to Map Reduce, since data is read as a non-local operation.</p>
<p><strong>Grid Computing vs. Map Reduce</strong><br />
Grid Computing works well for compute-intensive jobs. However this doesn’t works in a desired manner when nodes have to access larger amount of data. The network bandwidth becomes the bottleneck. Map Reduce tries to collate the data with compute nodes. This leads to faster data access. Map Reduce gives good performance because of the concept of data locality. MapReduce models network topology in such a fashion that it helps in conserving network bandwidth. In large scale distributed computing, coordinating a process is a challenge. Problems like remote process failure, partial failures have to be handled properly. With Map Reduce, as a programmer, one doesn’t have to worry about such failures, since the implementation automatically detects failed map or reduce tasks and reschedule replacements. This is possible since Map Reduce is a Shared-nothing architecture, which means that tasks do not have any dependence on each other. </p>
<p><strong>Power of Hadoop</strong><br />
There is a wide range of algorithms expressed in Map Reduce. Problems like graph-based problems, image processing etc. can be solved using Hadoop. Using Hadoop, team at Yahoo was able to sort 1 terabyte (240  bytes) in 62 seconds. Hadoop is mostly known for Map Reduce and distributed file system, but it is also used in lot other related projects that fall under the category of large scale data processing and distributed computing.</p>
<p><strong>MapReduce</strong><br />
Map Reduce is a programming framework for processing of data. Hadoop can run Map Reduce programs written in different languages like Java, Ruby, Python, and C++ etc. Hadoop also provides parallel processing which makes large scale data analysis very simple. This advantage can be utilized by writing our query as a Map Reduce job. Map Reduce breaks the process in two phases:<br />
1.	Map Phase<br />
2.	Reduce Phase</p>
<p>In each phase both input and output will be represented by a Key-value pair. The programmer has to specify:<br />
1.	The type of pair.<br />
2.	Two functions :<br />
a)	Map Function<br />
b)	Reduce Function</p>
<p><strong>Working of MapReduce Model</strong><br />
Map Function reads each line of raw input and pulls out the relevant data as key-value pair. The Map Function sends this to the Reducer function, which does the processing of each pair accordingly. For example, if certain university wants to find out the marks of topper (among all streams and batches) for each year, from 1900 to 2011, where the data is saved in different files and directories, in format:<br />
Year#Name#RollNumber#Stream#Marks#Batch#Country#PhoneNumber#Address#VehicleNumber#…..</p>
<p><strong>To visualize the working of MapReduce, let’s consider the following data,</strong></p>
<p>1950#Ram#12345#Science#78#mar1950batch#India#NA#NA#NA<br />
1950#SRam#123456#Science#75#mar1950batch#India#NA#NA#NA<br />
1950#DRam#123457#Science#98#mar1950batch#India#NA#NA#NA<br />
1950#VRam#123458#Science#68#mar1950batch#India#NA#NA#NA<br />
….<br />
1951#KRam#123459#Science#78#mar1951batch#India#NA#NA#NA<br />
1951#TRam#123451#Science#68#mar1951batch#India#NA#NA#NA<br />
1951#ERam#123452#commerce#99#mar1951cbatch#India#NA#NA#NA<br />
1951#QRam#123453#Arts#12#mar1951abatch#India#NA#NA#NA<br />
…..<br />
Let’s assume we have 75 lakhs of such data records with us.<br />
The input to the map function will be the complete set of this raw data. The Map function will extract the year and marks from each data record, like,<br />
(1950, 78)<br />
(1950, 75)<br />
(1950, 98)<br />
(1950, 68)<br />
…<br />
(1951, 78)<br />
(1951, 68)<br />
(1951, 99)<br />
(1951, 12)<br />
…</p>
<p>Before sending this data to the reduce function, the output of the Map function is processed by MapReduce Framework. In this example, the framework will process each pair and group it, like,<br />
(1950, [78, 75, 98, 68,])<br />
(1951, [78, 68, 99, 12 …])<br />
 ….</p>
<p>Now when this grouped data is given to the ‘Reduce function’, the only work of the function is to find out the maximum number out of each group. So the final output from Reduce Function looks like,<br />
(1950, 98)<br />
(1951, 99)<br />
….. </p>
<p><strong>Dataflow</strong><br />
Hadoop executes the jobs by dividing it into two tasks i.e. Map tasks and reduce tasks.<br />
The job execution is controlled by two types of nodes:<br />
1.	Multiple task trackers<br />
2.	Job tracker</p>
<p>Job tracker coordinates the jobs running on the system by scheduling tasks (dividing the jobs into tasks) to run on task trackers. Task trackers runs the task assigned and sends the progress report to the job tracker. Hadoop divides the input into fixed size pieces named splits. One map task is created for each split. This map task runs the user-defined function for each record in the split. Once the Map task has executed successfully, it writes its corresponding output to local disks. Map output is actually an intermediate output which is given to Reduce tasks to produce the final output.</p>
<p><strong>HDFS</strong><br />
HDFS is the acronym for Hadoop distributed file system .It is a file system for storing very large files. A HDFS cluster consists of Name Node which manages the file system’s metadata and data Nodes are used to store the important data. Hadoop and HDFS are best suited for distributed storage and distributed processing. It is scalable and fault tolerable. HDFS is easily configurable with a default configuration which is used for many installations. Generally, configuration needs to be tuned for extremely large clusters. </p>
<p>Some of the salient features of HDFS are:-</p>
<p>o	<strong>Rack awareness</strong>: The node’s physical allocation list is taken in account when scheduling tasks as well as allocating storage.<br />
o	<strong>Safe mode</strong>: It is an administrative mode used for maintenance.<br />
o	<strong>Upgrade and rollback</strong>: It is possible to roll back to HDFS’s earlier state before the upgrade in case of unwanted problems.<br />
o	<strong>Backup node</strong>: This is an extension to Checkpoint node. Along with   check pointing, it also receives edits from Name Node and maintains its own in-memory copy of namespace, which remains always in sync with active Name Node namespace state. One Backup node may be registered with Name Node at the same time. </p>
<blockquote><p><strong><i>Abhishek Malik<br />
MBA-IT<br />
IIIT Allahabad<i></strong></p></blockquote>
]]></content:encoded>
			<wfw:commentRss>https://bcognizance.iiita.ac.in/archive/aug-nov14/?feed=rss2&#038;p=744</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
