UNPKG

cassandra-server

Version:

A thin Javascript wrapper around Apache Cassandra to provide out of the box server support

356 lines (352 loc) 17.8 kB
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <!-- NewPage --> <html lang="en"> <head> <!-- Generated by javadoc (version 1.7.0_67) on Sun Sep 07 15:29:35 CEST 2014 --> <title>ColumnFamilyInputFormat (apache-cassandra API)</title> <meta name="date" content="2014-09-07"> <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style"> </head> <body> <script type="text/javascript"><!-- if (location.href.indexOf('is-external=true') == -1) { parent.document.title="ColumnFamilyInputFormat (apache-cassandra API)"; } //--> </script> <noscript> <div>JavaScript is disabled on your browser.</div> </noscript> <!-- ========= START OF TOP NAVBAR ======= --> <div class="topNav"><a name="navbar_top"> <!-- --> </a><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow"> <!-- --> </a> <ul class="navList" title="Navigation"> <li><a href="../../../../overview-summary.html">Overview</a></li> <li><a href="package-summary.html">Package</a></li> <li class="navBarCell1Rev">Class</li> <li><a href="class-use/ColumnFamilyInputFormat.html">Use</a></li> <li><a href="package-tree.html">Tree</a></li> <li><a href="../../../../deprecated-list.html">Deprecated</a></li> <li><a href="../../../../index-all.html">Index</a></li> <li><a href="../../../../help-doc.html">Help</a></li> </ul> </div> <div class="subNav"> <ul class="navList"> <li><a href="../../../../org/apache/cassandra/hadoop/BulkOutputFormat.NullOutputCommitter.html" title="class in org.apache.cassandra.hadoop"><span class="strong">Prev Class</span></a></li> <li><a href="../../../../org/apache/cassandra/hadoop/ColumnFamilyOutputFormat.html" title="class in org.apache.cassandra.hadoop"><span class="strong">Next Class</span></a></li> </ul> <ul class="navList"> <li><a href="../../../../index.html?org/apache/cassandra/hadoop/ColumnFamilyInputFormat.html" target="_top">Frames</a></li> <li><a href="ColumnFamilyInputFormat.html" target="_top">No Frames</a></li> </ul> <ul class="navList" id="allclasses_navbar_top"> <li><a href="../../../../allclasses-noframe.html">All Classes</a></li> </ul> <div> <script type="text/javascript"><!-- allClassesLink = document.getElementById("allclasses_navbar_top"); if(window==top) { allClassesLink.style.display = "block"; } else { allClassesLink.style.display = "none"; } //--> </script> </div> <div> <ul class="subNavList"> <li>Summary:&nbsp;</li> <li>Nested&nbsp;|&nbsp;</li> <li><a href="#fields_inherited_from_class_org.apache.cassandra.hadoop.AbstractColumnFamilyInputFormat">Field</a>&nbsp;|&nbsp;</li> <li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li> <li><a href="#method_summary">Method</a></li> </ul> <ul class="subNavList"> <li>Detail:&nbsp;</li> <li>Field&nbsp;|&nbsp;</li> <li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li> <li><a href="#method_detail">Method</a></li> </ul> </div> <a name="skip-navbar_top"> <!-- --> </a></div> <!-- ========= END OF TOP NAVBAR ========= --> <!-- ======== START OF CLASS DATA ======== --> <div class="header"> <div class="subTitle">org.apache.cassandra.hadoop</div> <h2 title="Class ColumnFamilyInputFormat" class="title">Class ColumnFamilyInputFormat</h2> </div> <div class="contentContainer"> <ul class="inheritance"> <li>java.lang.Object</li> <li> <ul class="inheritance"> <li>org.apache.hadoop.mapreduce.InputFormat&lt;K,Y&gt;</li> <li> <ul class="inheritance"> <li><a href="../../../../org/apache/cassandra/hadoop/AbstractColumnFamilyInputFormat.html" title="class in org.apache.cassandra.hadoop">org.apache.cassandra.hadoop.AbstractColumnFamilyInputFormat</a>&lt;java.nio.ByteBuffer,java.util.SortedMap&lt;java.nio.ByteBuffer,<a href="../../../../org/apache/cassandra/db/Cell.html" title="interface in org.apache.cassandra.db">Cell</a>&gt;&gt;</li> <li> <ul class="inheritance"> <li>org.apache.cassandra.hadoop.ColumnFamilyInputFormat</li> </ul> </li> </ul> </li> </ul> </li> </ul> <div class="description"> <ul class="blockList"> <li class="blockList"> <dl> <dt>All Implemented Interfaces:</dt> <dd>org.apache.hadoop.mapred.InputFormat&lt;java.nio.ByteBuffer,java.util.SortedMap&lt;java.nio.ByteBuffer,<a href="../../../../org/apache/cassandra/db/Cell.html" title="interface in org.apache.cassandra.db">Cell</a>&gt;&gt;</dd> </dl> <hr> <br> <pre>public class <span class="strong">ColumnFamilyInputFormat</span> extends <a href="../../../../org/apache/cassandra/hadoop/AbstractColumnFamilyInputFormat.html" title="class in org.apache.cassandra.hadoop">AbstractColumnFamilyInputFormat</a>&lt;java.nio.ByteBuffer,java.util.SortedMap&lt;java.nio.ByteBuffer,<a href="../../../../org/apache/cassandra/db/Cell.html" title="interface in org.apache.cassandra.db">Cell</a>&gt;&gt;</pre> <div class="block">Hadoop InputFormat allowing map/reduce against Cassandra rows within one ColumnFamily. At minimum, you need to set the CF and predicate (description of columns to extract from each row) in your Hadoop job Configuration. The ConfigHelper class is provided to make this simple: ConfigHelper.setInputColumnFamily ConfigHelper.setInputSlicePredicate You can also configure the number of rows per InputSplit with ConfigHelper.setInputSplitSize This should be "as big as possible, but no bigger." Each InputSplit is read from Cassandra with multiple get_slice_range queries, and the per-call overhead of get_slice_range is high, so larger split sizes are better -- but if it is too large, you will run out of memory. The default split size is 64k rows.</div> </li> </ul> </div> <div class="summary"> <ul class="blockList"> <li class="blockList"> <!-- =========== FIELD SUMMARY =========== --> <ul class="blockList"> <li class="blockList"><a name="field_summary"> <!-- --> </a> <h3>Field Summary</h3> <ul class="blockList"> <li class="blockList"><a name="fields_inherited_from_class_org.apache.cassandra.hadoop.AbstractColumnFamilyInputFormat"> <!-- --> </a> <h3>Fields inherited from class&nbsp;org.apache.cassandra.hadoop.<a href="../../../../org/apache/cassandra/hadoop/AbstractColumnFamilyInputFormat.html" title="class in org.apache.cassandra.hadoop">AbstractColumnFamilyInputFormat</a></h3> <code><a href="../../../../org/apache/cassandra/hadoop/AbstractColumnFamilyInputFormat.html#CASSANDRA_HADOOP_MAX_KEY_SIZE">CASSANDRA_HADOOP_MAX_KEY_SIZE</a>, <a href="../../../../org/apache/cassandra/hadoop/AbstractColumnFamilyInputFormat.html#CASSANDRA_HADOOP_MAX_KEY_SIZE_DEFAULT">CASSANDRA_HADOOP_MAX_KEY_SIZE_DEFAULT</a>, <a href="../../../../org/apache/cassandra/hadoop/AbstractColumnFamilyInputFormat.html#MAPRED_TASK_ID">MAPRED_TASK_ID</a></code></li> </ul> </li> </ul> <!-- ======== CONSTRUCTOR SUMMARY ======== --> <ul class="blockList"> <li class="blockList"><a name="constructor_summary"> <!-- --> </a> <h3>Constructor Summary</h3> <table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation"> <caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption> <tr> <th class="colOne" scope="col">Constructor and Description</th> </tr> <tr class="altColor"> <td class="colOne"><code><strong><a href="../../../../org/apache/cassandra/hadoop/ColumnFamilyInputFormat.html#ColumnFamilyInputFormat()">ColumnFamilyInputFormat</a></strong>()</code>&nbsp;</td> </tr> </table> </li> </ul> <!-- ========== METHOD SUMMARY =========== --> <ul class="blockList"> <li class="blockList"><a name="method_summary"> <!-- --> </a> <h3>Method Summary</h3> <table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation"> <caption><span>Methods</span><span class="tabEnd">&nbsp;</span></caption> <tr> <th class="colFirst" scope="col">Modifier and Type</th> <th class="colLast" scope="col">Method and Description</th> </tr> <tr class="altColor"> <td class="colFirst"><code>org.apache.hadoop.mapreduce.RecordReader&lt;java.nio.ByteBuffer,java.util.SortedMap&lt;java.nio.ByteBuffer,<a href="../../../../org/apache/cassandra/db/Cell.html" title="interface in org.apache.cassandra.db">Cell</a>&gt;&gt;</code></td> <td class="colLast"><code><strong><a href="../../../../org/apache/cassandra/hadoop/ColumnFamilyInputFormat.html#createRecordReader(org.apache.hadoop.mapreduce.InputSplit,%20org.apache.hadoop.mapreduce.TaskAttemptContext)">createRecordReader</a></strong>(org.apache.hadoop.mapreduce.InputSplit&nbsp;inputSplit, org.apache.hadoop.mapreduce.TaskAttemptContext&nbsp;taskAttemptContext)</code>&nbsp;</td> </tr> <tr class="rowColor"> <td class="colFirst"><code>org.apache.hadoop.mapred.RecordReader&lt;java.nio.ByteBuffer,java.util.SortedMap&lt;java.nio.ByteBuffer,<a href="../../../../org/apache/cassandra/db/Cell.html" title="interface in org.apache.cassandra.db">Cell</a>&gt;&gt;</code></td> <td class="colLast"><code><strong><a href="../../../../org/apache/cassandra/hadoop/ColumnFamilyInputFormat.html#getRecordReader(org.apache.hadoop.mapred.InputSplit,%20org.apache.hadoop.mapred.JobConf,%20org.apache.hadoop.mapred.Reporter)">getRecordReader</a></strong>(org.apache.hadoop.mapred.InputSplit&nbsp;split, org.apache.hadoop.mapred.JobConf&nbsp;jobConf, org.apache.hadoop.mapred.Reporter&nbsp;reporter)</code>&nbsp;</td> </tr> <tr class="altColor"> <td class="colFirst"><code>protected void</code></td> <td class="colLast"><code><strong><a href="../../../../org/apache/cassandra/hadoop/ColumnFamilyInputFormat.html#validateConfiguration(org.apache.hadoop.conf.Configuration)">validateConfiguration</a></strong>(org.apache.hadoop.conf.Configuration&nbsp;conf)</code>&nbsp;</td> </tr> </table> <ul class="blockList"> <li class="blockList"><a name="methods_inherited_from_class_org.apache.cassandra.hadoop.AbstractColumnFamilyInputFormat"> <!-- --> </a> <h3>Methods inherited from class&nbsp;org.apache.cassandra.hadoop.<a href="../../../../org/apache/cassandra/hadoop/AbstractColumnFamilyInputFormat.html" title="class in org.apache.cassandra.hadoop">AbstractColumnFamilyInputFormat</a></h3> <code><a href="../../../../org/apache/cassandra/hadoop/AbstractColumnFamilyInputFormat.html#createAuthenticatedClient(java.lang.String,%20int,%20org.apache.hadoop.conf.Configuration)">createAuthenticatedClient</a>, <a href="../../../../org/apache/cassandra/hadoop/AbstractColumnFamilyInputFormat.html#getSplits(org.apache.hadoop.mapred.JobConf,%20int)">getSplits</a>, <a href="../../../../org/apache/cassandra/hadoop/AbstractColumnFamilyInputFormat.html#getSplits(org.apache.hadoop.mapreduce.JobContext)">getSplits</a></code></li> </ul> <ul class="blockList"> <li class="blockList"><a name="methods_inherited_from_class_java.lang.Object"> <!-- --> </a> <h3>Methods inherited from class&nbsp;java.lang.Object</h3> <code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li> </ul> </li> </ul> </li> </ul> </div> <div class="details"> <ul class="blockList"> <li class="blockList"> <!-- ========= CONSTRUCTOR DETAIL ======== --> <ul class="blockList"> <li class="blockList"><a name="constructor_detail"> <!-- --> </a> <h3>Constructor Detail</h3> <a name="ColumnFamilyInputFormat()"> <!-- --> </a> <ul class="blockListLast"> <li class="blockList"> <h4>ColumnFamilyInputFormat</h4> <pre>public&nbsp;ColumnFamilyInputFormat()</pre> </li> </ul> </li> </ul> <!-- ============ METHOD DETAIL ========== --> <ul class="blockList"> <li class="blockList"><a name="method_detail"> <!-- --> </a> <h3>Method Detail</h3> <a name="createRecordReader(org.apache.hadoop.mapreduce.InputSplit, org.apache.hadoop.mapreduce.TaskAttemptContext)"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> <h4>createRecordReader</h4> <pre>public&nbsp;org.apache.hadoop.mapreduce.RecordReader&lt;java.nio.ByteBuffer,java.util.SortedMap&lt;java.nio.ByteBuffer,<a href="../../../../org/apache/cassandra/db/Cell.html" title="interface in org.apache.cassandra.db">Cell</a>&gt;&gt;&nbsp;createRecordReader(org.apache.hadoop.mapreduce.InputSplit&nbsp;inputSplit, org.apache.hadoop.mapreduce.TaskAttemptContext&nbsp;taskAttemptContext) throws java.io.IOException, java.lang.InterruptedException</pre> <dl> <dt><strong>Specified by:</strong></dt> <dd><code>createRecordReader</code>&nbsp;in class&nbsp;<code>org.apache.hadoop.mapreduce.InputFormat&lt;java.nio.ByteBuffer,java.util.SortedMap&lt;java.nio.ByteBuffer,<a href="../../../../org/apache/cassandra/db/Cell.html" title="interface in org.apache.cassandra.db">Cell</a>&gt;&gt;</code></dd> <dt><span class="strong">Throws:</span></dt> <dd><code>java.io.IOException</code></dd> <dd><code>java.lang.InterruptedException</code></dd></dl> </li> </ul> <a name="getRecordReader(org.apache.hadoop.mapred.InputSplit, org.apache.hadoop.mapred.JobConf, org.apache.hadoop.mapred.Reporter)"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> <h4>getRecordReader</h4> <pre>public&nbsp;org.apache.hadoop.mapred.RecordReader&lt;java.nio.ByteBuffer,java.util.SortedMap&lt;java.nio.ByteBuffer,<a href="../../../../org/apache/cassandra/db/Cell.html" title="interface in org.apache.cassandra.db">Cell</a>&gt;&gt;&nbsp;getRecordReader(org.apache.hadoop.mapred.InputSplit&nbsp;split, org.apache.hadoop.mapred.JobConf&nbsp;jobConf, org.apache.hadoop.mapred.Reporter&nbsp;reporter) throws java.io.IOException</pre> <dl><dt><span class="strong">Throws:</span></dt> <dd><code>java.io.IOException</code></dd></dl> </li> </ul> <a name="validateConfiguration(org.apache.hadoop.conf.Configuration)"> <!-- --> </a> <ul class="blockListLast"> <li class="blockList"> <h4>validateConfiguration</h4> <pre>protected&nbsp;void&nbsp;validateConfiguration(org.apache.hadoop.conf.Configuration&nbsp;conf)</pre> <dl> <dt><strong>Overrides:</strong></dt> <dd><code><a href="../../../../org/apache/cassandra/hadoop/AbstractColumnFamilyInputFormat.html#validateConfiguration(org.apache.hadoop.conf.Configuration)">validateConfiguration</a></code>&nbsp;in class&nbsp;<code><a href="../../../../org/apache/cassandra/hadoop/AbstractColumnFamilyInputFormat.html" title="class in org.apache.cassandra.hadoop">AbstractColumnFamilyInputFormat</a>&lt;java.nio.ByteBuffer,java.util.SortedMap&lt;java.nio.ByteBuffer,<a href="../../../../org/apache/cassandra/db/Cell.html" title="interface in org.apache.cassandra.db">Cell</a>&gt;&gt;</code></dd> </dl> </li> </ul> </li> </ul> </li> </ul> </div> </div> <!-- ========= END OF CLASS DATA ========= --> <!-- ======= START OF BOTTOM NAVBAR ====== --> <div class="bottomNav"><a name="navbar_bottom"> <!-- --> </a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a name="navbar_bottom_firstrow"> <!-- --> </a> <ul class="navList" title="Navigation"> <li><a href="../../../../overview-summary.html">Overview</a></li> <li><a href="package-summary.html">Package</a></li> <li class="navBarCell1Rev">Class</li> <li><a href="class-use/ColumnFamilyInputFormat.html">Use</a></li> <li><a href="package-tree.html">Tree</a></li> <li><a href="../../../../deprecated-list.html">Deprecated</a></li> <li><a href="../../../../index-all.html">Index</a></li> <li><a href="../../../../help-doc.html">Help</a></li> </ul> </div> <div class="subNav"> <ul class="navList"> <li><a href="../../../../org/apache/cassandra/hadoop/BulkOutputFormat.NullOutputCommitter.html" title="class in org.apache.cassandra.hadoop"><span class="strong">Prev Class</span></a></li> <li><a href="../../../../org/apache/cassandra/hadoop/ColumnFamilyOutputFormat.html" title="class in org.apache.cassandra.hadoop"><span class="strong">Next Class</span></a></li> </ul> <ul class="navList"> <li><a href="../../../../index.html?org/apache/cassandra/hadoop/ColumnFamilyInputFormat.html" target="_top">Frames</a></li> <li><a href="ColumnFamilyInputFormat.html" target="_top">No Frames</a></li> </ul> <ul class="navList" id="allclasses_navbar_bottom"> <li><a href="../../../../allclasses-noframe.html">All Classes</a></li> </ul> <div> <script type="text/javascript"><!-- allClassesLink = document.getElementById("allclasses_navbar_bottom"); if(window==top) { allClassesLink.style.display = "block"; } else { allClassesLink.style.display = "none"; } //--> </script> </div> <div> <ul class="subNavList"> <li>Summary:&nbsp;</li> <li>Nested&nbsp;|&nbsp;</li> <li><a href="#fields_inherited_from_class_org.apache.cassandra.hadoop.AbstractColumnFamilyInputFormat">Field</a>&nbsp;|&nbsp;</li> <li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li> <li><a href="#method_summary">Method</a></li> </ul> <ul class="subNavList"> <li>Detail:&nbsp;</li> <li>Field&nbsp;|&nbsp;</li> <li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li> <li><a href="#method_detail">Method</a></li> </ul> </div> <a name="skip-navbar_bottom"> <!-- --> </a></div> <!-- ======== END OF BOTTOM NAVBAR ======= --> <p class="legalCopy"><small>Copyright &copy; 2014 The Apache Software Foundation</small></p> </body> </html>