title: Which is the best HBase connector to use for batch loading data into HBase from Spark?
body: <p>As mentioned also in 
  <a href="https://stackoverflow.com/questions/40908891/which-hbase-connector-for-spark-2-0-should-i-use">Which HBase connector for Spark 2.0 should I use?</a>
  mainly there are two options:</p>
  
  <ul>
  <li>RDD based <a href="https://github.com/apache/hbase/tree/master/hbase-spark" rel="nofollow noreferrer">https://github.com/apache/hbase/tree/master/hbase-spark</a></li>
  <li>DataFrame based <a href="https://github.com/hortonworks-spark/shc" rel="nofollow noreferrer">https://github.com/hortonworks-spark/shc</a></li>
  </ul>
  
  <p>I do understand the optimizations and the differences with regard to READING from HBase.</p>
  
  <p>However it's not clear for me which should I use for <strong>BATCH inserting</strong> into HBase.</p>
  
  <p>I am not interested in one by one records, but by high throughput.</p>
  
  <p>After digging through code, it seems that both resort to TableOutputFormat,
  <a href="http://hbase.apache.org/1.2/book.html#arch.bulk.load" rel="nofollow noreferrer">http://hbase.apache.org/1.2/book.html#arch.bulk.load</a></p>
  
  <p>The project uses Scala 2.11, Spark 2, HBase 1.2</p>
  
  <p>Does the DataFrame library provide any performance improvements over the RDD lib specifically for BULK LOAD ?</p>