• No results found

A B S T R A C T. Index Terms : Apache s Hadoop, Map/Reduce, HDFS, Hashing Algorithm. I. INTRODUCTION

N/A
N/A
Protected

Academic year: 2021

Share "A B S T R A C T. Index Terms : Apache s Hadoop, Map/Reduce, HDFS, Hashing Algorithm. I. INTRODUCTION"

Copied!
8
0
0

Loading.... (view fulltext now)

Full text

(1)

Speed- Up Extension To Hadoop System- A Survey Of HDFS

Data Placement

Sayali Ashok Shivarkar, Prof.Deepali Gatade

Computer Network, Sinhgad College of Engineering, Pune, India

1[email protected]

A B S T R A C T

Apache’s Hadoop is an open source implementation of Google Map/Reduce which is used for large data analysis and storage. Hadoop decompose a massive job into number of smaller tasks. Hadoop uses Hadoop Distributed File System to store data. HDFS stores files as number of blocks and replicated for fault tolerance. The block placement strategy does not consider data placement characteristics. It stores file as block randomly. The block size and replication factor are configurable parameters. An application can specify number of replica of file and it can be changed later. HDFS cluster has master/slave architecture with a single Name Node as master server which manages the file system namespace and regulates access to file by clients. The slaves are called to the number of Data Nodes. File is divided into number of one or more blocks and stores as set of blocks in Data Nodes. Opening, renaming and closing file and directory all operations are done by Name Node and Data Node are responsible for read and write request from Name Node. Hadoop uses Hadoop distributed File System (HDFS) which is an open source implementation Google File System for storing data. HDFS is used in Hadoop for storing data. Strategic data partitioning, processing, replication, layouts and placement of data blocks will increase the performance of Hadoop and a lot of research is going on in this area. This paper reviews and survey some of the major enhancements suggested to Hadoop especially in data storage, processing and placement.

Index Terms : Apache’s Hadoop, Map/Reduce, HDFS, Hashing Algorithm.

I. INTRODUCTION

Today all people live in the data age. It is not easy to measure the total volume of Data stored electronically, but an IDC projects that the digital universe will reach 40 Zettabytes (zb) by 2020. Data is everywhere that data is very large in size. Large scale Distributed system works on this big-data. Apache's hadoop is open source implementations of Google Map/Reduce for storing and analysis such large data. It enables Distributed, data intensive and parallel applications by decomposing a massive job into smaller tasks and a massive data set into smaller partitions such that each task processes

a different partition in parallel. By this task are finished early in manner of time and Work is also divided into different nodes. The main abstractions are:

1. Map tasks that process the partitions of a data set using key/value pairs to generate a set of intermediate results and

2. Reduce tasks that merge all intermediate values associated with the same inter- mediate key. File systems that manage the storage across a network of machines are called distributed File systems. Apache's Hadoop comes with a Distributed file system called HDFS, which stands for Hadoop Distributed File System. HDFS, the Hadoop Distributed File System, is a distributed file system designed to hold very large amounts of data (terabytes or even petabytes), and provide high-throughput access to this

(2)

information. HDFS has a high degree of fault-tolerance and is developed to be deployed on low-cost hardware. HDFS provides efficient access to application data and is suitable for applications having big data sets. HDFS stores files as a series of blocks and are replicated for fault tolerance.

HDFS cluster has master/slave architecture, master node called as Name Node and slave node are called as Data Nodes.

Name Node is which manages the file system namespace and regulates access to files. The slaves are a number of Data Nodes, usually one per node in the cluster, which manage storage attached to the nodes that they run on. HDFS provides a file system namespace and allows user data to be stored in files. A file is partitioned into one or more blocks and these blocks are stored in a set of Data nodes. The file system namespace operations like opening, closing, and renaming of files and directories are done by the Name Node. It also decides the mapping of blocks to Data Nodes.

The default block placement strategy of HDFS doesn't consider the data characteristics and places the data blocks randomly. Data needed to execute map task are placed on various nodes because of random placement, which lead to network traffic.

An observation regarding map task is that they generate a large amount of intermediate data, as result of map task and this abundant information is thrown away after the processing finish. It is also observed that some map tasks are executed again and again. Apache's Hadoop system is not able to find such duplicate task, which lead to time wastage.

If the similar items are clustered, the performance in Hadoop can be improved. Most of the past work provides no methods for clustering in Hadoop. Some of the techniques suggested [3, 4] provides some degree of co-location but required immense changes in the default framework and the physical data layout.

II. EXISITINGSYSTEM

HADOOPDB

HadoopDB[1] is a hybrid system that has the best feature of parallel database and map/reduce. HadoopDB takes performance and efficiency from parallel database. At same time provide fault- tolerance, scalability, flexibility of Map/Reduce. In HadoopDB, multiple nodes database systems are connected using Apache's Hadoop as the network communication layer and task coordinator. It achieves fault tolerance and the ability to operate in heterogeneous environments by taking over the scheduling and job tracking features of Apache's Hadoop and achieves the parallel database performance by executing most of the query processing inside the database engine.

Advantages

1. HadoopDB can perform like parallel database along with high fault tolerance, ability to run in heterogeneous environment

2. It can cut down the data processing time especially on tasks that requires complex query processing

Limitation

1. It forces users to use DBMS. Installing and configuring parallel DBMS is quite difficult.

(3)

3. HadoopDB locally uses ACID conforming DBMS engines which will affect the dynamic scheduling and fault tolerance of Hadoop.

Hadoop++

To overcome limitation of HadoopDB is to create a system that keeps the interface ofApache's Hadoop Map/Reduce, approaches parallel databases in performance and does not change the underlying Apache's Hadoop framework. Hadoop++[2] is Apache's Hadoop with Trojan index and Trojan Join. Hadoop++ improves query runtime of HadoopDB.

Trojan index is used to improve indexing capabilities of Apache's Hadoop. The basic notion behind using Trojan index is that schema and query workload is known already.

The main features of Trojan index are non- invasiveness, no need to create a distributed SQL engine on top of Apache's Hadoop, optional index access path, possibility to create multiple index in the same split and seamless splitting. Trojan indexes are created during the data load time. Trojan join also created during data load time. Trojan join creation is similar to Trojan index creation. The goal behind Trojan join is to avoid reduce phase since the data were already pre-partitioned. The algorithm access each input split and collects records of the same co-group.

Advantages

1. Trojan index increases performance and parallelism since the map tasks processes the index independently.

2. It also keeps the outside view of the block intact.

3. Trojan join gathers the ability to process joins at the map side and thereby allowing Map/Reduce jobs to run faster even for large volumes of data.

4. For selection queries and join operations, Hadoop++ runs faster than HadoopDB and Apache's Hadoop. No modification of Map/Reduce interface is required.

Limitation

1. Arrival of new data or the modification of existing data necessitates the reorganization of Trojan index as well as Trojan join.

2. Trojan index is heavily dependent on the block size. 3. Increased block size leads to augmented index coverage.

Similar to the DBMS, it is assumed that schema and query work load is known in advance static solution.

4. Required that users should reorganize the input data.

Co-Hadoop

Co-Hadoop[3] provides a solution for co-locating related files in Hadoop Distributed File System (HDFS). HDFS is extended to provide co-location at the system level. A new file property is used to identify related files and modify the placement policy of HDFS. This modification retains the benefits of Apache's Hadoop

(4)

including load balancing and fault tolerance. The default block placement policy provides load balancing through even data distribution across the Data Nodes. This policy works well for applications access and use single file improvements in performance can be obtained for applications using data from multiple files using custom-made approaches. Co-Hadoop is one such approach which helps the applications to control data placement at the file-system level.

In Co-Hadoop, HDFS is extended with new file level property called locator, which gives information where file to be stored. Files with same locator value are placed in same data node but a file which does not have locator value are placed using default placement strategies. To manage locator information with files locator table is added in Name Node.

Advantages

1. Flexible compare to HadoopDB and Hadoop++. Improves performance without affecting framework of 2. 2. Hadoop Best for application which continually consumes data.

Limitation:

1. Slightly slow due to high network utilization.

2. Indexing aspect are not improved and Detail knowledge of input data are required

HAIL

HAIL (Hadoop Aggression Indexing Library) is an enhancement of HDFS and Apache's Hadoop Map/Reduce which improves the performance of Map/Reduce tasks. The basic idea behind HAIL is to create indexes on attributes of interest at load time with minimal changes to Apache's Hadoop. HAIL achieves this by modifying the data loading pipeline so that the index is created on each replica as it is loaded into HDFS. While Apache's Hadoop uses a pipeline that takes a block of data from the client and passes it without any change to the three replicas (default replication factor is 3) sequentially, HAIL buffers the block at each replica, sorts it based on the attribute which is indexed, create index for that block and flushes it to disk.

Advantages

1. HAIL improves both upload and query times.

2. Fail over properties of Apache's Hadoop are not changed. HAIL works with existing Map/Reduce jobs incurring only minimal changes to these jobs.

Limitation

1. Jobs can use only one index at a time and, memory requirements are more compared to standard Apache's Hadoop.

ERMS (Elastic Replica management system)

Based on data access patterns, data can be classified into three different types: hot data data having a large number of concurrent accesses and high intensity of access, cold data unpopular and rarely accessed data, normal data rest of the data other than hot and cold. In a large and busy HDFS network, hot data will have concurrent and intense access. Replicating hot data only on three different nodes is not

(5)

adequate to avoid contention. Also for cold data, three replicas may produce unnecessary overhead. ERMS,[5] is proposed is proposed which introduces an active/standby storage model which takes advantage of a high performance complex event processing engine to distinguish the real time data types and brings an elastic replication policy for the different types of data.

It uses Condor to increase the replication factor of hot data in standby nodes and to remove extra replicas of cold data. Erasure codes can be used to save storage space and network bandwidth when hot data changes to cold data.

Advantages

1. Improves data locality by keeping more replicas of hot data and less replicas of cold data.

2. Dynamically adapts to changes in data access patterns and data popularity and network overhead is less.

3. Enhances the reliability and availability of data.

Limitations

1. Efficiency depends on a number of threshold values and hence the careful selection of threshold values is needed.

2. Memory requirement is high.

DARE

Placing data near to computation enhances performance in data intensive applications. DARE is an adaptive data replication mechanism that helps in achieving a high degree of data locality. DARE[6] adapts to the change in workload conditions. Each node executes the algorithm to create replicas independently of heavily accessed files in a short interval of time. Data with correlated access are distributed to various nodes as new replicas are created and old ones expire which also enhance data locality. No extra network overhead is incurred since it is making use of existing remote data retrieval. The algorithm creates replicas of popular files and at the same time minimizes the number of replicas of unpopular files.

A greedy approach is used which incurs no extra network traffic since it is making use of existing remote data retrieval. Usually when a map task is launched the required data may be present locally or in a remote node. The remote data will be fetched and used without any local storage. But in DARE this remote data will be stored locally thereby increasing the replication factor by one. It also uses a replication budget to limit the storage consumed by the dynamically created replica.

An Elephant Trap , a mechanism to find the largest flows in a network link structure is used to replicate popular files. A probabilistic approach is also used for the ageing mechanism.

Advantages

1. Improves data locality with no extra network overhead. Turn around and slow down time is improved.

(6)

Limitations

1. Storage requirements are high. More data structures and synchronization mechanisms are needed. Intense modification of Hadoop is required.

CHEETAH:

Data warehouse built on top of Hadoop with flexibility and scalability is Cheetah[7]. Cheetah combines both data warehouse and Map/Reduce technologies. It makes easier for SQL user to work. Since data is usually stored in column format, it has the overhead of query reconstruction and cannot guarantee that all fields of the needed record are present in the same Data Node.

Cheetah provides only identical layout for all replicas and no column grouping. For processing any data in the cell, it has to decompress the whole cell which will result in unnecessary column reads and I/O throughput is limited.

Advantages:

1. It provides a simple query language which is easily understood by people having little SQL knowledge.

2. It utilizes Hadoop's optimization techniques for data compression, access methods and materialized views and provides high performance by processing 1 GB of raw data per second.

Limitation:

1. Query reconstruction overhead and cannot guarantee that all fields of the needed record are

present in the same Data Node.

2. Identical layout for all replicas and no column grouping. Unnecessary column reads and I/O throughput is limited.

3. Modification to the existing Hadoop framework is needed to incorporate the changes. In the proposed method, there is no need for the client to provide the hint explicitly. Hadoop Name Node can be used which will make the placement process quite easy.

III. PROPOSEDSYSTEM

Clustering is the classification of objects (documents) into different groups in such a way that the objects in the same group will have some same characteristic. The common trait may be a defined feature vector such that it is within a defined proximity to the feature vector of the cluster in which the object may be placed.

Clustering can be used in different contexts like news article feeds, data mining, machine learning, pattern recognition, Bioinformatics etc. Conventional clustering can be classified into hierarchical and partitional Clustering. Hierarchical clustering finds new clusters using the previously created clusters where as partitional clustering finds the clusters all at once. The main problem with hierarchical and partitional clustering is that they are computation ally intensive. They require more memory and reduce the clustering rate of the system. The growth of the intern et allowed massive dissemination of online data from Google, Yahoo etc.

Conventional clustering methods are inadequate in these cases due to inaccuracies and huge delays. This is because these methods may need multiple iterations and whenever an object arrives, it may need to be compared with all of the existing clusters to find an appropriate one. Since the number of clusters is very large, this incurs much delay. So some alternate methods are needed which will improve the clustering of massive online data.

(7)

Instead of using the above mentioned approaches, a method for clustering related documents incrementally in Hadoop - HDFS using Locality Sensitive Hashing (LSH)[8]. The main idea behind LSH is that hash functions are used for hashing data points to hash values or signatures and there is a high probability of collision for the data points which are similar i.e. similar data objects will be having the similar signatures or hash values.

1. Preprocessing File: File contain collection of words, file is pre-process means words like stop words are removed, stop word are word like ‘a ’, ‘of ’, ‘the’ etc. and also stemming (historical is replace with history ) and many techniques are used to pre-process a file. After preprocessing file will contain collection of word which related to particular file and which can be use to represent that file.

2. File Vector: after preprocessing file which contains collection of words from that words which are presenting that file need to find, this is done using TFIDF technique. TF-IDF(Term Frequencies-Inverse Document Frequencies) technique finds words in file that come many times compare to all remaining files, which indicate that word is representing a file and it is important word in file. If word is representing that file then that word can be use to find similar files.

3. Create Signature - To find similar file it should be compared with content of each and every files available but there are millions of files which makes process time consuming. So to make process faster compact bit representation of each file vector is created, Signature. To create Signature f bit vector is used and this vector initialized to zero first then it hashed with file vector and comparing value is 0 or 1 weight of word will be incremented or decremented. Advantage of Signature is that similar file will have same Signature which makes process faster.

4. Use Locality Sensitive Hashing to store related files-for storing related files together LSH is used,for this hashing function is used to file Signature and all files with same signature are stored within same node in chunks.

Now suppose client want execute task and system should not execute repeated tasks for this, cache will be implemented. Cache table will be created which stores file name, operation perform on that file and result file name.

When client wants to execute any map task first then it request cache[9] manager to find file name and operation. If file name and operation performed on that file is same then result file name will be given to directly to reduce phase which completely save execution time of task.

IV. CONCLUSION

A new approach to incremental document clustering is proposed for HDFS which will cluster similar documents in the same set of data nodes with minimal changes to the existing framework. For faster clustering operations bit wise representation of the feature vectors called fingerprints or signatures are used.

V. REFERENCES

[1] A. Abouzeid, K. Bajda-Pawlikowski, D. Abadi, A. Silberschatz and A. Rasin, “HadoopDB: An architectural Hybrid of Map/Reduce and DBMS Technologies for Analytical Workloads,” Proceedings of VLDB Endowment, 2(1), pp.922-933, August 2009.

(8)

[2] J. Dittrich, J.-A. Quian´e-Ruiz, A. Jindal, Y. Kargin, V. Setty and J. Schad, “Hadoop++: Making a yellow elephant run like a cheetah (without it even noticing),” Proceedings of VLDB Endowment,3 (2), pp. 515-529, September 2010.

[3] M. Y. Eltabakh, Y. Tian, F. Özcan, R. Gemulla, A. Krettek, J. McPherson, “CoHadoop: flexible data placement and its exploitation in Hadoop,” Proceedings of the VLDB Endowment, 4 (9), pp. 575-585, June 2011.

[4] Z. Cheng et al., An Elastic Replication Management System for HDFS,” Workshop on Interfaces and Abstractions for Scientific Data Storage, IEEE Cluster 2012, 2012.

[5] S. Chen, ‘‘Cheetah: A high performance, custom data warehouse on top of mapreduce,’’ Proceedings of VLDB, 3(2), pp. 1459--1468, 2010.

[6] L. Abad, Y. Lu and R. H. Campbell, “DARE: Adaptive Data Replication for Efficient Cluster Scheduling,” Proceedings of the IEEE International Conference on Cluster Computing (CLUSTER 11), pp.159-168, 2011.

[7] Y. Lu, B. Prabhakar and F. Bonomi, “ElephantTrap: A low cost device for identifying large flows,” Proceedings of IEEE Symposium on High- Performance Interconnects, HOTI ‘07, pp. 99-108, 2007. [8] Kala, K.A.; Chitharanjan, K., ”Locality Sensitive Hashing based incremental clustering for creating affinity groups in Hadoop HDFS - An infrastructure extension,” Circuits, Power and Computing Technologies (ICCPCT), 2013 International Conference on , vol., no., pp.1243,1249, 20-21 March 2013

[9] Yaxiong Zhao; Jie Wu, ”Dache: A data aware caching for big-data applications using the MapReduce framework,” INFOCOM, 2013 Proceedings IEEE , vol., no., pp.35,39, 14-19 April 2013

References

Related documents

Conductor Wise, who went up on the Mid night Express and came down on the White sent a dog to be company young watchman.. Charley

Therefore, the most likely scenario for China in the coming two decades is that China will continue its own approach to political reform, and the relative successful experience of

Then, each Facebook post and Twitter tweet were interpreted and classified into 13 general categories of planning topics, including transportation, infrastructure,

Now that we have estimated the variance of the measurement error, as well as the mean and variance of the variable of interest x ∗ , we can use a simple linear stochastic model

Therefore, this study sought to further explore the role of the smartphone for final year medical students and foundation trainee doctors in an attempt to appreciate how and why

18 30 % anketirancev se v večini strinja s trditvijo, da se v organizaciji ceni dobro opravljeno delo, 14 23 % se jih popolnoma strinja, nihče pa ni odgovoril, da se sploh ne strinja

From the panel data results, this study noted that regression result of the vector of variables that are suggested in the Solow model such as provincial rate physical capital

The issue in ACLU v Holder should not have been whether the seal provision violates the right of access doctrine. Instead, the issue should have been whether the