More about BIG Data

I hope everyone is aware of archaeological periods (like stone age,bronze age,iron age and now historical periods). But scientists feels like we live in “Data age”now. Its not so easy to measure digital universe, IDC estimates 1.8 Zettabytes(10^21 bytes which is equal to 1 Billion TeraBytes) of data in 2011. Sources: http://www.emc.com/leadership/programs/digital-universe.htm

Flood of data is coming from many sources like

  • FB hosts approximately 10 billion photos taking up 1 PB of storage
  • BSE sensex generates 1TB/day..flight simulator generates the same for each trip it travels..all your footprints are tracked digitally by machinelogs, RFID readers, GPS etc etc
  • Your day to day life individuals interactions like phone calls, emails, documents, transactions etc..all to be saved somewhere crucially.

How to organize this huge volume of data without any loss?? How the company use this data for analysis like transaction analytics, claim fraud analytics, surveillance analytics etc ?? How safe can we keep all data in a single drive/cluster ?? what happens when it crashes?? How about processing this huge data from a drive?? Performance ??

All can be overcome easily..How??

BIG DATA:

Specifically, Big Data relates to data creation, storage, retrieval and analysis that is remarkable in terms of volume, velocity, and variety (3 V’s)

What is 3V?

  1. Volume(Huge volume)
  2. Variety(Diff kinds of data(structured,semi structured and unstructured))

3.Velocity(Speed,performance,real time streaming,batch processing)

How to operate BIG DATA??

Here comes Hadoop- a software framework written by Doug Cutting in java language.

Hadoop is a software framework for distributed processing of large datasets across large clusters of computers.

Origin of name Hadoop: The name Hadoop is not an acronym; it’s a madeup name. Doug named it by his kid toy(elephant) name. His kid use to call up that toy as “Hadoop”.

Major benefit: In application layer itself it process everything and finally gives result through network. This means smooth and fast processing. Hadoop reads 64MB file at once where as normal file system in windows/linux os only reads 4KB at a time.

Digging deeper into Hadoop:

In a hadoop distributed architecture, both data and processing are distributed across multiple servers. The following are some of the key points to remember about the hadoop:

  • Each and every server offers local computation and storage. i.e When you run a query against a large data set, every server in this distributed architecture will be executing the query on its local machine against the local data set. Finally, the resultset from all this local servers are consolidated.
  • In simple terms, instead of running a query on a single server, the query is split across multiple servers, and the results are consolidated. This means that the results of a query on a larger dataset are returned faster.
  • You don’t need a powerful server. Just use several less expensive commodity servers as hadoop individual nodes.
  • High fault-tolerance. If any of the nodes fails in the hadoop environment, it will still return the dataset properly, as hadoop takes care of replicating and distributing the data efficiently across the multiple nodes.
  • A simple hadoop implementation can use just two servers. But you can scale up to several thousands of servers without any additional effort.
  • Hadoop is written in Java. So, it can run on any platform.

Please keep in mind that hadoop is not a replacement for your RDBMS. You’ll typically use hadoop for unstructured data.

HDFS (Storage)

HDFS stands for Hadoop Distributed File System, which is the storage system used by Hadoop. The following is a high-level architecture that explains how HDFS works.

hadoop1

 

The following are some of the key points to remember about the HDFS

  • In the above diagram, there is one NameNode, and multiple DataNodes (servers). b1, b2, indicates data blocks.
  • When you dump a file (or data) into the HDFS, it stores them in blocks on the various nodes in the hadoop cluster. HDFS creates several replication of the data blocks and distributes them accordingly in the cluster in way that will be reliable and can be retrieved faster. A typical HDFS block size is 128MB. Each and every data block is replicated to multiple nodes across the cluster.
  • Hadoop will internally make sure that any node failure will never results in a data loss.
  • There will be one NameNode that manages the file system metadata
  • There will be multiple DataNodes (These are the real cheap commodity servers) that will store the data blocks
  • When you execute a query from a client, it will reach out to the NameNode to get the file metadata information, and then it will reach out to the DataNodes to get the real data blocks

MapReduce (Processing)

hadoop2

 

MapReduce is a parallel programming model that is used to retrieve the data from the Hadoop cluster

  • In this model, the library takes care of parallelization, fault tolerance, data distribution, load balancing, etc.
  • This splits the tasks and executes on the various nodes parallely, thus speeding up the computation and retrieving required data from a huge dataset in a fast manner.
  • Programmers have to just implement (or use) two functions: map and reduce

hadoop3

 

  • The data are fed into the map function as key value pairs to produce intermediate key/value pairs
  • Once the mapping is done, all the intermediate results from various nodes are reduced to create the final output
  • JobTracker keeps track of all the MapReduces jobs that are running on various nodes. If any one of those jobs fails, it reallocates the job to another node, etc.
  • TaskTracker performs the map and reduce tasks that are assigned by the JobTracker.

 

Map and Reduce Example

 

MapReduce works by breaking the processing into two phases: the map phase and the

reduce phase. Each phase has key-value pairs as input and output, the types of which

may be chosen by the programmer. The programmer also specifies two functions: the

map function and the reduce function.

The input to our map phase is the raw NCDC data.

Our map function is simple. We pull out the year and the air temperature, since these

are the only fields we are interested in.

To visualize the way the map works, consider the following sample lines of input data.

These lines are presented to the map function as the key-value pairs:

(0, 0067011990999991950051507004…9999999N9+00001+99999999999…)

(106, 0043011990999991950051512004…9999999N9+00221+99999999999…)

(212, 0043011990999991950051518004…9999999N9-00111+99999999999…)

(318, 0043012650999991949032412004…0500001N9+01111+99999999999…)

(424, 0043012650999991949032418004…0500001N9+00781+99999999999…)

The map function merely extracts the year and the air temperature (indicated in bold text),

and emits them as its output.

(1950, 0)

(1950, 22)

(1950, −11)

(1949, 111)

(1949, 78)

This processing sorts and groups the key-value pairs by key.

(1949, [111, 78])

(1950, [0, 22, −11])

All the reduce function

has to do now is iterate through the list and pick up the maximum reading:

(1949, 111)

(1950, 22)

This is the final output: the maximum global temperature recorded in each year.

Hadoop eco-system tools:

  1. Pig (programming tool for creating MapReduce programs used with Hadoop)
  2. Hive(data warehouse infrastructure built on top of Hadoop for providing data summarization, query, and analysis)
  3. Hbase(HBase is an open source, non-relational, distributed database runs on top of HDFS)
  4. Zookeeper(an open source distributed configuration service,synchronization service  and naming registry for large distributed systems. ZooKeeper’s architecture supports high-availability through redundant services.)
  5. Avro (Avro is a remote procedure call and serialization framework which means communication between Hadoop nodes, and from client programs to the Hadoop services.)
  6. Sqoop(Sqoop is a tool designed for efficiently transferring bulk data between Apache Hadoop and structured datastores such as relational databases)

 

What is BIG Data??

What is big data?

Every day, we create 2.5 quintillion bytes of data — so much that 90% of the data in the world today has been created in the last two years alone. This data comes from everywhere: sensors used to gather climate information, posts to social media sites, digital pictures and videos, purchase transaction records, and cell phone GPS signals to name a few. This data is big data.

 

Big data spans four dimensions: Volume, Velocity, Variety, and Veracity.

Volume: Enterprises are awash with ever-growing data of all types, easily amassing terabytes—even petabytes—of information.

  • Turn 12 terabytes of Tweets created each day into improved product sentiment analysis
  • Convert 350 billion annual meter readings to better predict power consumption

Velocity: Sometimes 2 minutes is too late. For time-sensitive processes such as catching fraud, big data must be used as it streams into your enterprise in order to maximize its value.

  • Scrutinize 5 million trade events created each day to identify potential fraud
  • Analyze 500 million daily call detail records in real-time to predict customer churn faster

Variety: Big data is any type of data – structured and unstructured data such as text, sensor data, audio, video, click streams, log files and more. New insights are found when analyzing these data types together.

  • Monitor 100’s of live video feeds from surveillance cameras to target points of interest
  • Exploit the 80% data growth in images, video and documents to improve customer satisfaction

Veracity: 1 in 3 business leaders don’t trust the information they use to make decisions. How can you act upon information if you don’t trust it? Establishing trust in big data presents a huge challenge as the variety and number of sources grows.

Big data is more than simply a matter of size; it is an opportunity to find insights in new and emerging types of data and content, to make your business more agile, and to answer questions that were previously considered beyond your reach. Until now, there was no practical way to harvest this opportunity. Today, IBM’s platform for big data uses state of the art technologies including patented advanced analytics to open the door to a world of possibilities.