blob: f8f8920a5aa135dfd8a8bad445f165fd1180c7d7 [file] [log] [blame]
<!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 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>StoragePlugin (Drill : 1.20.3 API)</title>
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="StoragePlugin (Drill : 1.20.3 API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":6,"i1":6,"i2":6,"i3":38,"i4":6,"i5":6,"i6":6,"i7":6,"i8":6,"i9":6,"i10":6,"i11":6,"i12":6};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"],32:["t6","Deprecated Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<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/StoragePlugin.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/drill/exec/store/StatisticsRecordWriterImpl.html" title="class in org.apache.drill.exec.store"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../org/apache/drill/exec/store/StoragePluginOptimizerRule.html" title="class in org.apache.drill.exec.store"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/drill/exec/store/StoragePlugin.html" target="_top">Frames</a></li>
<li><a href="StoragePlugin.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../allclasses-noframe.html">All&nbsp;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>Field&nbsp;|&nbsp;</li>
<li>Constr&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>Constr&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.drill.exec.store</div>
<h2 title="Interface StoragePlugin" class="title">Interface StoragePlugin</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Superinterfaces:</dt>
<dd><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a>, <a href="../../../../../org/apache/drill/exec/store/SchemaFactory.html" title="interface in org.apache.drill.exec.store">SchemaFactory</a></dd>
</dl>
<dl>
<dt>All Known Implementing Classes:</dt>
<dd><a href="../../../../../org/apache/drill/exec/store/AbstractStoragePlugin.html" title="class in org.apache.drill.exec.store">AbstractStoragePlugin</a>, <a href="../../../../../org/apache/drill/exec/store/cassandra/CassandraStoragePlugin.html" title="class in org.apache.drill.exec.store.cassandra">CassandraStoragePlugin</a>, <a href="../../../../../org/apache/drill/exec/store/druid/DruidStoragePlugin.html" title="class in org.apache.drill.exec.store.druid">DruidStoragePlugin</a>, <a href="../../../../../org/apache/drill/exec/store/elasticsearch/ElasticsearchStoragePlugin.html" title="class in org.apache.drill.exec.store.elasticsearch">ElasticsearchStoragePlugin</a>, <a href="../../../../../org/apache/drill/exec/store/dfs/FileSystemPlugin.html" title="class in org.apache.drill.exec.store.dfs">FileSystemPlugin</a>, <a href="../../../../../org/apache/drill/exec/store/hbase/HBaseStoragePlugin.html" title="class in org.apache.drill.exec.store.hbase">HBaseStoragePlugin</a>, <a href="../../../../../org/apache/drill/exec/store/hive/HiveStoragePlugin.html" title="class in org.apache.drill.exec.store.hive">HiveStoragePlugin</a>, <a href="../../../../../org/apache/drill/exec/store/http/HttpStoragePlugin.html" title="class in org.apache.drill.exec.store.http">HttpStoragePlugin</a>, <a href="../../../../../org/apache/drill/exec/store/ischema/InfoSchemaStoragePlugin.html" title="class in org.apache.drill.exec.store.ischema">InfoSchemaStoragePlugin</a>, <a href="../../../../../org/apache/drill/exec/store/jdbc/JdbcStoragePlugin.html" title="class in org.apache.drill.exec.store.jdbc">JdbcStoragePlugin</a>, <a href="../../../../../org/apache/drill/exec/store/kafka/KafkaStoragePlugin.html" title="class in org.apache.drill.exec.store.kafka">KafkaStoragePlugin</a>, <a href="../../../../../org/apache/drill/exec/store/kudu/KuduStoragePlugin.html" title="class in org.apache.drill.exec.store.kudu">KuduStoragePlugin</a>, <a href="../../../../../org/apache/drill/exec/store/mock/MockBreakageStorage.html" title="class in org.apache.drill.exec.store.mock">MockBreakageStorage</a>, <a href="../../../../../org/apache/drill/exec/store/mock/MockStorageEngine.html" title="class in org.apache.drill.exec.store.mock">MockStorageEngine</a>, <a href="../../../../../org/apache/drill/exec/store/mongo/MongoStoragePlugin.html" title="class in org.apache.drill.exec.store.mongo">MongoStoragePlugin</a>, <a href="../../../../../org/apache/drill/exec/store/openTSDB/OpenTSDBStoragePlugin.html" title="class in org.apache.drill.exec.store.openTSDB">OpenTSDBStoragePlugin</a>, <a href="../../../../../org/apache/drill/exec/store/phoenix/PhoenixStoragePlugin.html" title="class in org.apache.drill.exec.store.phoenix">PhoenixStoragePlugin</a>, <a href="../../../../../org/apache/drill/exec/store/splunk/SplunkStoragePlugin.html" title="class in org.apache.drill.exec.store.splunk">SplunkStoragePlugin</a>, <a href="../../../../../org/apache/drill/exec/store/sys/SystemTablePlugin.html" title="class in org.apache.drill.exec.store.sys">SystemTablePlugin</a></dd>
</dl>
<hr>
<br>
<pre>public interface <span class="typeNameLabel">StoragePlugin</span>
extends <a href="../../../../../org/apache/drill/exec/store/SchemaFactory.html" title="interface in org.apache.drill.exec.store">SchemaFactory</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a></pre>
<div class="block">Interface for all implementations of the storage plugins. Different implementations of the storage
formats will implement methods that indicate if Drill can write or read its tables from that format,
if there are optimizer rules specific for the format, getting a storage config. etc.</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.drill.exec.store.SchemaFactory">
<!-- -->
</a>
<h3>Fields inherited from interface&nbsp;org.apache.drill.exec.store.<a href="../../../../../org/apache/drill/exec/store/SchemaFactory.html" title="interface in org.apache.drill.exec.store">SchemaFactory</a></h3>
<code><a href="../../../../../org/apache/drill/exec/store/SchemaFactory.html#DEFAULT_WS_NAME">DEFAULT_WS_NAME</a></code></li>
</ul>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t6" class="tableTab"><span><a href="javascript:show(32);">Deprecated Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code><a href="../../../../../org/apache/drill/common/logical/StoragePluginConfig.html" title="class in org.apache.drill.common.logical">StoragePluginConfig</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/store/StoragePlugin.html#getConfig--">getConfig</a></span>()</code>
<div class="block">Method returns a Jackson serializable object that extends a StoragePluginConfig.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code><a href="../../../../../org/apache/drill/exec/store/dfs/FormatPlugin.html" title="interface in org.apache.drill.exec.store.dfs">FormatPlugin</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/store/StoragePlugin.html#getFormatPlugin-org.apache.drill.common.logical.FormatPluginConfig-">getFormatPlugin</a></span>(<a href="../../../../../org/apache/drill/common/logical/FormatPluginConfig.html" title="interface in org.apache.drill.common.logical">FormatPluginConfig</a>&nbsp;config)</code>
<div class="block">Allows to get the format plugin for current storage plugin based on appropriate format plugin config usage.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/store/StoragePlugin.html#getName--">getName</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;? extends org.apache.calcite.plan.RelOptRule&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/store/StoragePlugin.html#getOptimizerRules-org.apache.drill.exec.ops.OptimizerRulesContext-">getOptimizerRules</a></span>(<a href="../../../../../org/apache/drill/exec/ops/OptimizerRulesContext.html" title="interface in org.apache.drill.exec.ops">OptimizerRulesContext</a>&nbsp;optimizerContext)</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code><a href="../../../../../org/apache/drill/exec/physical/base/AbstractGroupScan.html" title="class in org.apache.drill.exec.physical.base">AbstractGroupScan</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/store/StoragePlugin.html#getPhysicalScan-java.lang.String-org.apache.drill.common.JSONOptions-">getPhysicalScan</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;userName,
<a href="../../../../../org/apache/drill/common/JSONOptions.html" title="class in org.apache.drill.common">JSONOptions</a>&nbsp;selection)</code>
<div class="block">Get the physical scan operator for the particular GroupScan (read) node.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code><a href="../../../../../org/apache/drill/exec/physical/base/AbstractGroupScan.html" title="class in org.apache.drill.exec.physical.base">AbstractGroupScan</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/store/StoragePlugin.html#getPhysicalScan-java.lang.String-org.apache.drill.common.JSONOptions-java.util.List-">getPhysicalScan</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;userName,
<a href="../../../../../org/apache/drill/common/JSONOptions.html" title="class in org.apache.drill.common">JSONOptions</a>&nbsp;selection,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/drill/common/expression/SchemaPath.html" title="class in org.apache.drill.common.expression">SchemaPath</a>&gt;&nbsp;columns)</code>
<div class="block">Get the physical scan operator for the particular GroupScan (read) node.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code><a href="../../../../../org/apache/drill/exec/physical/base/AbstractGroupScan.html" title="class in org.apache.drill.exec.physical.base">AbstractGroupScan</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/store/StoragePlugin.html#getPhysicalScan-java.lang.String-org.apache.drill.common.JSONOptions-java.util.List-org.apache.drill.exec.server.options.SessionOptionManager-">getPhysicalScan</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;userName,
<a href="../../../../../org/apache/drill/common/JSONOptions.html" title="class in org.apache.drill.common">JSONOptions</a>&nbsp;selection,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/drill/common/expression/SchemaPath.html" title="class in org.apache.drill.common.expression">SchemaPath</a>&gt;&nbsp;columns,
<a href="../../../../../org/apache/drill/exec/server/options/SessionOptionManager.html" title="class in org.apache.drill.exec.server.options">SessionOptionManager</a>&nbsp;options)</code>
<div class="block">Get the physical scan operator for the particular GroupScan (read) node.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code><a href="../../../../../org/apache/drill/exec/physical/base/AbstractGroupScan.html" title="class in org.apache.drill.exec.physical.base">AbstractGroupScan</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/store/StoragePlugin.html#getPhysicalScan-java.lang.String-org.apache.drill.common.JSONOptions-java.util.List-org.apache.drill.exec.server.options.SessionOptionManager-org.apache.drill.exec.metastore.MetadataProviderManager-">getPhysicalScan</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;userName,
<a href="../../../../../org/apache/drill/common/JSONOptions.html" title="class in org.apache.drill.common">JSONOptions</a>&nbsp;selection,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/drill/common/expression/SchemaPath.html" title="class in org.apache.drill.common.expression">SchemaPath</a>&gt;&nbsp;columns,
<a href="../../../../../org/apache/drill/exec/server/options/SessionOptionManager.html" title="class in org.apache.drill.exec.server.options">SessionOptionManager</a>&nbsp;options,
<a href="../../../../../org/apache/drill/exec/metastore/MetadataProviderManager.html" title="interface in org.apache.drill.exec.metastore">MetadataProviderManager</a>&nbsp;providerManager)</code>
<div class="block">Get the physical scan operator for the particular GroupScan (read) node.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code><a href="../../../../../org/apache/drill/exec/physical/base/AbstractGroupScan.html" title="class in org.apache.drill.exec.physical.base">AbstractGroupScan</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/store/StoragePlugin.html#getPhysicalScan-java.lang.String-org.apache.drill.common.JSONOptions-org.apache.drill.exec.server.options.SessionOptionManager-">getPhysicalScan</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;userName,
<a href="../../../../../org/apache/drill/common/JSONOptions.html" title="class in org.apache.drill.common">JSONOptions</a>&nbsp;selection,
<a href="../../../../../org/apache/drill/exec/server/options/SessionOptionManager.html" title="class in org.apache.drill.exec.server.options">SessionOptionManager</a>&nbsp;options)</code>
<div class="block">Get the physical scan operator for the particular GroupScan (read) node.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code><a href="../../../../../org/apache/drill/exec/physical/base/AbstractGroupScan.html" title="class in org.apache.drill.exec.physical.base">AbstractGroupScan</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/store/StoragePlugin.html#getPhysicalScan-java.lang.String-org.apache.drill.common.JSONOptions-org.apache.drill.exec.server.options.SessionOptionManager-org.apache.drill.exec.metastore.MetadataProviderManager-">getPhysicalScan</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;userName,
<a href="../../../../../org/apache/drill/common/JSONOptions.html" title="class in org.apache.drill.common">JSONOptions</a>&nbsp;selection,
<a href="../../../../../org/apache/drill/exec/server/options/SessionOptionManager.html" title="class in org.apache.drill.exec.server.options">SessionOptionManager</a>&nbsp;options,
<a href="../../../../../org/apache/drill/exec/metastore/MetadataProviderManager.html" title="interface in org.apache.drill.exec.metastore">MetadataProviderManager</a>&nbsp;providerManager)</code>
<div class="block">Get the physical scan operator for the particular GroupScan (read) node.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/store/StoragePlugin.html#start--">start</a></span>()</code>
<div class="block">Initialize the storage plugin.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/store/StoragePlugin.html#supportsRead--">supportsRead</a></span>()</code>
<div class="block">Indicates if Drill can read the table from this format.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/drill/exec/store/StoragePlugin.html#supportsWrite--">supportsWrite</a></span>()</code>
<div class="block">Indicates if Drill can write a table to this format (e.g.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.drill.exec.store.SchemaFactory">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.drill.exec.store.<a href="../../../../../org/apache/drill/exec/store/SchemaFactory.html" title="interface in org.apache.drill.exec.store">SchemaFactory</a></h3>
<code><a href="../../../../../org/apache/drill/exec/store/SchemaFactory.html#registerSchemas-org.apache.drill.exec.store.SchemaConfig-org.apache.calcite.schema.SchemaPlus-">registerSchemas</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.AutoCloseable">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/AutoCloseable.html?is-external=true#close--" title="class or interface in java.lang">close</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="getName--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getName</h4>
<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getName()</pre>
</li>
</ul>
<a name="start--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>start</h4>
<pre>void&nbsp;start()
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block">Initialize the storage plugin. The storage plugin will not be used until this method is called.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="supportsRead--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>supportsRead</h4>
<pre>boolean&nbsp;supportsRead()</pre>
<div class="block">Indicates if Drill can read the table from this format.</div>
</li>
</ul>
<a name="supportsWrite--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>supportsWrite</h4>
<pre>boolean&nbsp;supportsWrite()</pre>
<div class="block">Indicates if Drill can write a table to this format (e.g. as JSON, csv, etc.).</div>
</li>
</ul>
<a name="getConfig--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getConfig</h4>
<pre><a href="../../../../../org/apache/drill/common/logical/StoragePluginConfig.html" title="class in org.apache.drill.common.logical">StoragePluginConfig</a>&nbsp;getConfig()</pre>
<div class="block">Method returns a Jackson serializable object that extends a StoragePluginConfig.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an extension of StoragePluginConfig</dd>
</dl>
</li>
</ul>
<a name="getOptimizerRules-org.apache.drill.exec.ops.OptimizerRulesContext-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getOptimizerRules</h4>
<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;? extends org.apache.calcite.plan.RelOptRule&gt;&nbsp;getOptimizerRules(<a href="../../../../../org/apache/drill/exec/ops/OptimizerRulesContext.html" title="interface in org.apache.drill.exec.ops">OptimizerRulesContext</a>&nbsp;optimizerContext)</pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
<div class="block">An implementation of this method will return one or more specialized rules that Drill query
optimizer can leverage in <i>physical</i> space. Otherwise, it should return an empty set.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an empty set or a set of plugin specific physical optimizer rules.</dd>
</dl>
</li>
</ul>
<a name="getPhysicalScan-java.lang.String-org.apache.drill.common.JSONOptions-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPhysicalScan</h4>
<pre><a href="../../../../../org/apache/drill/exec/physical/base/AbstractGroupScan.html" title="class in org.apache.drill.exec.physical.base">AbstractGroupScan</a>&nbsp;getPhysicalScan(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;userName,
<a href="../../../../../org/apache/drill/common/JSONOptions.html" title="class in org.apache.drill.common">JSONOptions</a>&nbsp;selection)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block">Get the physical scan operator for the particular GroupScan (read) node.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>userName</code> - User whom to impersonate when when reading the contents as part of Scan.</dd>
<dd><code>selection</code> - The configured storage engine specific selection.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The physical scan operator for the particular GroupScan (read) node.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="getPhysicalScan-java.lang.String-org.apache.drill.common.JSONOptions-org.apache.drill.exec.server.options.SessionOptionManager-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPhysicalScan</h4>
<pre><a href="../../../../../org/apache/drill/exec/physical/base/AbstractGroupScan.html" title="class in org.apache.drill.exec.physical.base">AbstractGroupScan</a>&nbsp;getPhysicalScan(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;userName,
<a href="../../../../../org/apache/drill/common/JSONOptions.html" title="class in org.apache.drill.common">JSONOptions</a>&nbsp;selection,
<a href="../../../../../org/apache/drill/exec/server/options/SessionOptionManager.html" title="class in org.apache.drill.exec.server.options">SessionOptionManager</a>&nbsp;options)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block">Get the physical scan operator for the particular GroupScan (read) node.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>userName</code> - User whom to impersonate when when reading the contents as part of Scan.</dd>
<dd><code>selection</code> - The configured storage engine specific selection.</dd>
<dd><code>options</code> - (optional) session options</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The physical scan operator for the particular GroupScan (read) node.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="getPhysicalScan-java.lang.String-org.apache.drill.common.JSONOptions-org.apache.drill.exec.server.options.SessionOptionManager-org.apache.drill.exec.metastore.MetadataProviderManager-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPhysicalScan</h4>
<pre><a href="../../../../../org/apache/drill/exec/physical/base/AbstractGroupScan.html" title="class in org.apache.drill.exec.physical.base">AbstractGroupScan</a>&nbsp;getPhysicalScan(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;userName,
<a href="../../../../../org/apache/drill/common/JSONOptions.html" title="class in org.apache.drill.common">JSONOptions</a>&nbsp;selection,
<a href="../../../../../org/apache/drill/exec/server/options/SessionOptionManager.html" title="class in org.apache.drill.exec.server.options">SessionOptionManager</a>&nbsp;options,
<a href="../../../../../org/apache/drill/exec/metastore/MetadataProviderManager.html" title="interface in org.apache.drill.exec.metastore">MetadataProviderManager</a>&nbsp;providerManager)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block">Get the physical scan operator for the particular GroupScan (read) node.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>userName</code> - User whom to impersonate when when reading the contents as part of Scan.</dd>
<dd><code>selection</code> - The configured storage engine specific selection.</dd>
<dd><code>options</code> - (optional) session options</dd>
<dd><code>providerManager</code> - manager for handling metadata providers</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The physical scan operator for the particular GroupScan (read) node.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="getPhysicalScan-java.lang.String-org.apache.drill.common.JSONOptions-java.util.List-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPhysicalScan</h4>
<pre><a href="../../../../../org/apache/drill/exec/physical/base/AbstractGroupScan.html" title="class in org.apache.drill.exec.physical.base">AbstractGroupScan</a>&nbsp;getPhysicalScan(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;userName,
<a href="../../../../../org/apache/drill/common/JSONOptions.html" title="class in org.apache.drill.common">JSONOptions</a>&nbsp;selection,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/drill/common/expression/SchemaPath.html" title="class in org.apache.drill.common.expression">SchemaPath</a>&gt;&nbsp;columns)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block">Get the physical scan operator for the particular GroupScan (read) node.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>userName</code> - User whom to impersonate when when reading the contents as part of Scan.</dd>
<dd><code>selection</code> - The configured storage engine specific selection.</dd>
<dd><code>columns</code> - (optional) The list of column names to scan from the data source.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The physical scan operator for the particular GroupScan (read) node.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="getPhysicalScan-java.lang.String-org.apache.drill.common.JSONOptions-java.util.List-org.apache.drill.exec.server.options.SessionOptionManager-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPhysicalScan</h4>
<pre><a href="../../../../../org/apache/drill/exec/physical/base/AbstractGroupScan.html" title="class in org.apache.drill.exec.physical.base">AbstractGroupScan</a>&nbsp;getPhysicalScan(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;userName,
<a href="../../../../../org/apache/drill/common/JSONOptions.html" title="class in org.apache.drill.common">JSONOptions</a>&nbsp;selection,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/drill/common/expression/SchemaPath.html" title="class in org.apache.drill.common.expression">SchemaPath</a>&gt;&nbsp;columns,
<a href="../../../../../org/apache/drill/exec/server/options/SessionOptionManager.html" title="class in org.apache.drill.exec.server.options">SessionOptionManager</a>&nbsp;options)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block">Get the physical scan operator for the particular GroupScan (read) node.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>userName</code> - User whom to impersonate when when reading the contents as part of Scan.</dd>
<dd><code>selection</code> - The configured storage engine specific selection.</dd>
<dd><code>columns</code> - (optional) The list of column names to scan from the data source.</dd>
<dd><code>options</code> - (optional) session options</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The physical scan operator for the particular GroupScan (read) node.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="getPhysicalScan-java.lang.String-org.apache.drill.common.JSONOptions-java.util.List-org.apache.drill.exec.server.options.SessionOptionManager-org.apache.drill.exec.metastore.MetadataProviderManager-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPhysicalScan</h4>
<pre><a href="../../../../../org/apache/drill/exec/physical/base/AbstractGroupScan.html" title="class in org.apache.drill.exec.physical.base">AbstractGroupScan</a>&nbsp;getPhysicalScan(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;userName,
<a href="../../../../../org/apache/drill/common/JSONOptions.html" title="class in org.apache.drill.common">JSONOptions</a>&nbsp;selection,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/drill/common/expression/SchemaPath.html" title="class in org.apache.drill.common.expression">SchemaPath</a>&gt;&nbsp;columns,
<a href="../../../../../org/apache/drill/exec/server/options/SessionOptionManager.html" title="class in org.apache.drill.exec.server.options">SessionOptionManager</a>&nbsp;options,
<a href="../../../../../org/apache/drill/exec/metastore/MetadataProviderManager.html" title="interface in org.apache.drill.exec.metastore">MetadataProviderManager</a>&nbsp;providerManager)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block">Get the physical scan operator for the particular GroupScan (read) node.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>userName</code> - User whom to impersonate when when reading the contents as part of Scan.</dd>
<dd><code>selection</code> - The configured storage engine specific selection.</dd>
<dd><code>columns</code> - (optional) The list of column names to scan from the data source.</dd>
<dd><code>options</code> - (optional) session options</dd>
<dd><code>providerManager</code> - manager for handling metadata providers</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The physical scan operator for the particular GroupScan (read) node.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="getFormatPlugin-org.apache.drill.common.logical.FormatPluginConfig-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>getFormatPlugin</h4>
<pre><a href="../../../../../org/apache/drill/exec/store/dfs/FormatPlugin.html" title="interface in org.apache.drill.exec.store.dfs">FormatPlugin</a>&nbsp;getFormatPlugin(<a href="../../../../../org/apache/drill/common/logical/FormatPluginConfig.html" title="interface in org.apache.drill.common.logical">FormatPluginConfig</a>&nbsp;config)</pre>
<div class="block">Allows to get the format plugin for current storage plugin based on appropriate format plugin config usage.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>config</code> - format plugin config</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>format plugin instance</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>UnsupportedOperationException,</code> - if storage plugin doesn't support format plugins.</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>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<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/StoragePlugin.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/drill/exec/store/StatisticsRecordWriterImpl.html" title="class in org.apache.drill.exec.store"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../org/apache/drill/exec/store/StoragePluginOptimizerRule.html" title="class in org.apache.drill.exec.store"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/drill/exec/store/StoragePlugin.html" target="_top">Frames</a></li>
<li><a href="StoragePlugin.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../allclasses-noframe.html">All&nbsp;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>Field&nbsp;|&nbsp;</li>
<li>Constr&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>Constr&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 &#169; 1970 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</body>
</html>