<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta content="Apache Forrest" name="Generator">
<meta name="Forrest-version" content="0.8">
<meta name="Forrest-skin-name" content="pelt">
<title>Native Hadoop Libraries</title>
<link type="text/css" href="skin/basic.css" rel="stylesheet">
<link media="screen" type="text/css" href="skin/screen.css" rel="stylesheet">
<link media="print" type="text/css" href="skin/print.css" rel="stylesheet">
<link type="text/css" href="skin/profile.css" rel="stylesheet">
<script src="skin/getBlank.js" language="javascript" type="text/javascript"></script><script src="skin/getMenu.js" language="javascript" type="text/javascript"></script><script src="skin/fontsize.js" language="javascript" type="text/javascript"></script>
<link rel="shortcut icon" href="images/favicon.ico">
</head>
<body onload="init()">
<script type="text/javascript">ndeSetTextSize();</script>
<div id="top">
<!--+
    |breadtrail
    +-->
<div class="breadtrail">
<a href="http://www.apache.org/">Apache</a> &gt; <a href="http://hadoop.apache.org/">Hadoop</a> &gt; <a href="http://hadoop.apache.org/core/">Core</a><script src="skin/breadcrumbs.js" language="JavaScript" type="text/javascript"></script>
</div>
<!--+
    |header
    +-->
<div class="header">
<!--+
    |start group logo
    +-->
<div class="grouplogo">
<a href="http://hadoop.apache.org/"><img class="logoImage" alt="Hadoop" src="images/hadoop-logo.jpg" title="Apache Hadoop"></a>
</div>
<!--+
    |end group logo
    +-->
<!--+
    |start Project Logo
    +-->
<div class="projectlogo">
<a href="http://hadoop.apache.org/core/"><img class="logoImage" alt="Hadoop" src="images/core-logo.gif" title="Scalable Computing Platform"></a>
</div>
<!--+
    |end Project Logo
    +-->
<!--+
    |start Search
    +-->
<div class="searchbox">
<form action="http://www.google.com/search" method="get" class="roundtopsmall">
<input value="hadoop.apache.org" name="sitesearch" type="hidden"><input onFocus="getBlank (this, 'Search the site with google');" size="25" name="q" id="query" type="text" value="Search the site with google">&nbsp; 
                    <input name="Search" value="Search" type="submit">
</form>
</div>
<!--+
    |end search
    +-->
<!--+
    |start Tabs
    +-->
<ul id="tabs">
<li>
<a class="unselected" href="http://hadoop.apache.org/core/">Project</a>
</li>
<li>
<a class="unselected" href="http://wiki.apache.org/hadoop">Wiki</a>
</li>
<li class="current">
<a class="selected" href="index.html">Hadoop 0.17 Documentation</a>
</li>
</ul>
<!--+
    |end Tabs
    +-->
</div>
</div>
<div id="main">
<div id="publishedStrip">
<!--+
    |start Subtabs
    +-->
<div id="level2tabs"></div>
<!--+
    |end Endtabs
    +-->
<script type="text/javascript"><!--
document.write("Last Published: " + document.lastModified);
//  --></script>
</div>
<!--+
    |breadtrail
    +-->
<div class="breadtrail">

             &nbsp;
           </div>
<!--+
    |start Menu, mainarea
    +-->
<!--+
    |start Menu
    +-->
<div id="menu">
<div onclick="SwitchMenu('menu_selected_1.1', 'skin/')" id="menu_selected_1.1Title" class="menutitle" style="background-image: url('skin/images/chapter_open.gif');">Documentation</div>
<div id="menu_selected_1.1" class="selectedmenuitemgroup" style="display: block;">
<div class="menuitem">
<a href="index.html">Overview</a>
</div>
<div class="menuitem">
<a href="quickstart.html">Quickstart</a>
</div>
<div class="menuitem">
<a href="cluster_setup.html">Cluster Setup</a>
</div>
<div class="menuitem">
<a href="hdfs_design.html">HDFS Architecture</a>
</div>
<div class="menuitem">
<a href="hdfs_user_guide.html">HDFS User Guide</a>
</div>
<div class="menuitem">
<a href="hdfs_shell.html">HDFS Shell Guide</a>
</div>
<div class="menuitem">
<a href="hdfs_permissions_guide.html">HDFS Permissions Guide</a>
</div>
<div class="menuitem">
<a href="mapred_tutorial.html">Map-Reduce Tutorial</a>
</div>
<div class="menupage">
<div class="menupagetitle">Native Hadoop Libraries</div>
</div>
<div class="menuitem">
<a href="streaming.html">Streaming</a>
</div>
<div class="menuitem">
<a href="hod.html">Hadoop On Demand</a>
</div>
<div class="menuitem">
<a href="api/index.html">API Docs</a>
</div>
<div class="menuitem">
<a href="http://wiki.apache.org/hadoop/">Wiki</a>
</div>
<div class="menuitem">
<a href="http://wiki.apache.org/hadoop/FAQ">FAQ</a>
</div>
<div class="menuitem">
<a href="http://hadoop.apache.org/core/mailing_lists.html">Mailing Lists</a>
</div>
<div class="menuitem">
<a href="releasenotes.html">Release Notes</a>
</div>
<div class="menuitem">
<a href="changes.html">All Changes</a>
</div>
</div>
<div id="credit"></div>
<div id="roundbottom">
<img style="display: none" class="corner" height="15" width="15" alt="" src="skin/images/rc-b-l-15-1body-2menu-3menu.png"></div>
<!--+
  |alternative credits
  +-->
<div id="credit2"></div>
</div>
<!--+
    |end Menu
    +-->
<!--+
    |start content
    +-->
<div id="content">
<div title="Portable Document Format" class="pdflink">
<a class="dida" href="native_libraries.pdf"><img alt="PDF -icon" src="skin/images/pdfdoc.gif" class="skin"><br>
        PDF</a>
</div>
<h1>Native Hadoop Libraries</h1>
<div id="minitoc-area">
<ul class="minitoc">
<li>
<a href="#Purpose">Purpose</a>
</li>
<li>
<a href="#Components">Components</a>
</li>
<li>
<a href="#Usage">Usage</a>
</li>
<li>
<a href="#Supported+Platforms">Supported Platforms</a>
</li>
<li>
<a href="#Building+Native+Hadoop+Libraries">Building Native Hadoop Libraries</a>
<ul class="minitoc">
<li>
<a href="#Notes">Notes</a>
</li>
</ul>
</li>
</ul>
</div>
  
    
<a name="N1000D"></a><a name="Purpose"></a>
<h2 class="h3">Purpose</h2>
<div class="section">
<p>Hadoop has native implementations of certain components for reasons of 
      both performace &amp; non-availability of Java implementations. These 
      components are available in a single, dynamically-linked, native library. 
      On the *nix platform it is <em>libhadoop.so</em>. This document describes 
      the usage &amp; details on how to build the native libraries.</p>
</div>
    
    
<a name="N1001A"></a><a name="Components"></a>
<h2 class="h3">Components</h2>
<div class="section">
<p>Hadoop currently has the following 
      <a href="api/org/apache/hadoop/io/compress/CompressionCodec.html">
      compression codecs</a> as the native components:</p>
<ul>
        
<li>
<a href="http://www.zlib.net/">zlib</a>
</li>
        
<li>
<a href="http://www.gzip.org/">gzip</a>
</li>
        
<li>
<a href="http://www.oberhumer.com/opensource/lzo/">lzo</a>
</li>
      
</ul>
<p>Of the above, the availability of native hadoop libraries is imperative 
      for the lzo and gzip compression codecs to work.</p>
</div>

    
<a name="N1003D"></a><a name="Usage"></a>
<h2 class="h3">Usage</h2>
<div class="section">
<p>It is fairly simple to use the native hadoop libraries:</p>
<ul>
        
<li>
          Take a look at the 
          <a href="#Supported+Platforms">supported platforms</a>.
        </li>
        
<li>
          Either <a href="http://hadoop.apache.org/core/releases.html#Download">download</a> the pre-built 
          32-bit i386-Linux native hadoop libraries (available as part of hadoop 
          distribution in <span class="codefrag">lib/native</span> directory) or 
          <a href="#Building+Native+Hadoop+Libraries">build</a> them yourself.
        </li>
        
<li>
          Ensure you have either or both of <strong>&gt;zlib-1.2</strong> and 
          <strong>&gt;lzo2.0</strong> packages for your platform installed; 
          depending on your needs.
        </li>
      
</ul>
<p>The <span class="codefrag">bin/hadoop</span> script ensures that the native hadoop 
      library is on the library path via the system property 
      <em>-Djava.library.path=&lt;path&gt;</em>.</p>
<p>To check everything went alright check the hadoop log files for:</p>
<p>
        
<span class="codefrag">
          DEBUG util.NativeCodeLoader - Trying to load the custom-built 
          native-hadoop library... 
        </span>
<br>
        
<span class="codefrag">
          INFO  util.NativeCodeLoader - Loaded the native-hadoop library
        </span>
      
</p>
<p>If something goes wrong, then:</p>
<p>
        
<span class="codefrag">
          INFO util.NativeCodeLoader - Unable to load native-hadoop library for 
          your platform... using builtin-java classes where applicable
        </span>
      
</p>
</div>
    
    
<a name="N10087"></a><a name="Supported+Platforms"></a>
<h2 class="h3">Supported Platforms</h2>
<div class="section">
<p>Hadoop native library is supported only on *nix platforms only.
      Unfortunately it is known not to work on <a href="http://www.cygwin.com/">Cygwin</a> 
      and <a href="http://www.apple.com/macosx">Mac OS X</a> and has mainly been used on the 
      GNU/Linux platform.</p>
<p>It has been tested on the following GNU/Linux distributions:</p>
<ul>
        
<li>
          
<a href="http://www.redhat.com/rhel/">RHEL4</a>/<a href="http://fedora.redhat.com/">Fedora</a>
        
</li>
        
<li>
<a href="http://www.ubuntu.com/">Ubuntu</a>
</li>
        
<li>
<a href="http://www.gentoo.org/">Gentoo</a>
</li>
      
</ul>
<p>On all the above platforms a 32/64 bit Hadoop native library will work 
      with a respective 32/64 bit jvm.</p>
</div>
    
    
<a name="N100B7"></a><a name="Building+Native+Hadoop+Libraries"></a>
<h2 class="h3">Building Native Hadoop Libraries</h2>
<div class="section">
<p>Hadoop native library is written in 
      <a href="http://en.wikipedia.org/wiki/ANSI_C">ANSI C</a> and built using 
      the GNU autotools-chain (autoconf, autoheader, automake, autoscan, libtool). 
      This means it should be straight-forward to build them on any platform with 
      a standards compliant C compiler and the GNU autotools-chain. 
      See <a href="#Supported+Platforms">supported platforms</a>.</p>
<p>In particular the various packages you would need on the target 
      platform are:</p>
<ul>
        
<li>
          C compiler (e.g. <a href="http://gcc.gnu.org/">GNU C Compiler</a>)
        </li>
        
<li>
          GNU Autools Chain: 
          <a href="http://www.gnu.org/software/autoconf/">autoconf</a>, 
          <a href="http://www.gnu.org/software/automake/">automake</a>, 
          <a href="http://www.gnu.org/software/libtool/">libtool</a>
        
</li>
        
<li> 
          zlib-development package (stable version &gt;= 1.2.0)
        </li>
        
<li> 
          lzo-development package (stable version &gt;= 2.0)
        </li> 
      
</ul>
<p>Once you have the pre-requisites use the standard <span class="codefrag">build.xml</span> 
      and pass along the <span class="codefrag">compile.native</span> flag (set to 
      <span class="codefrag">true</span>) to build the native hadoop library:</p>
<p>
<span class="codefrag">$ ant -Dcompile.native=true &lt;target&gt;</span>
</p>
<p>The native hadoop library is not built by default since not everyone is 
      interested in building them.</p>
<p>You should see the newly-built native hadoop library in:</p>
<p>
<span class="codefrag">$ build/native/&lt;platform&gt;/lib</span>
</p>
<p>where &lt;platform&gt; is combination of the system-properties: 
      <span class="codefrag">${os.name}-${os.arch}-${sun.arch.data.model}</span>; for e.g. 
      Linux-i386-32.</p>
<a name="N1010A"></a><a name="Notes"></a>
<h3 class="h4">Notes</h3>
<ul>
          
<li>
            It is <strong>mandatory</strong> to have both the zlib and lzo 
            development packages on the target platform for building the 
            native hadoop library; however for deployment it is sufficient to 
            install zlib or lzo if you wish to use only one of them.
          </li>
          
<li>
            It is necessary to have the correct 32/64 libraries of both zlib/lzo 
            depending on the 32/64 bit jvm for the target platform for 
            building/deployment of the native hadoop library.
          </li>
        
</ul>
</div>
  
</div>
<!--+
    |end content
    +-->
<div class="clearboth">&nbsp;</div>
</div>
<div id="footer">
<!--+
    |start bottomstrip
    +-->
<div class="lastmodified">
<script type="text/javascript"><!--
document.write("Last Published: " + document.lastModified);
//  --></script>
</div>
<div class="copyright">
        Copyright &copy;
         2007 <a href="http://www.apache.org/licenses/">The Apache Software Foundation.</a>
</div>
<!--+
    |end bottomstrip
    +-->
</div>
</body>
</html>
