blob: 04b4220e1115076c30e894e957e0abf14e027b28 [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.19"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Kudu C++ client API: kudu::client::KuduTable Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Kudu C++ client API
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.19 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduTable.html">KuduTable</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classkudu_1_1client_1_1KuduTable-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">kudu::client::KuduTable Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>A representation of a table on a particular cluster.
<a href="classkudu_1_1client_1_1KuduTable.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="client_8h_source.html">client.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for kudu::client::KuduTable:</div>
<div class="dyncontent">
<div class="center">
<img src="classkudu_1_1client_1_1KuduTable.png" alt=""/>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:ae1ada81a49d909fab15694ed3e2f5244"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#ae1ada81a49d909fab15694ed3e2f5244">name</a> () const</td></tr>
<tr class="separator:ae1ada81a49d909fab15694ed3e2f5244"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac5436bdd675d45de6c2980f3a05f5e20"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#ac5436bdd675d45de6c2980f3a05f5e20">id</a> () const</td></tr>
<tr class="separator:ac5436bdd675d45de6c2980f3a05f5e20"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aefc75c9c36846675e4b8bd53075f6f5c"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#aefc75c9c36846675e4b8bd53075f6f5c">schema</a> () const</td></tr>
<tr class="separator:aefc75c9c36846675e4b8bd53075f6f5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac8f62fdc5c12af06fc9cec0f1d006fed"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#ac8f62fdc5c12af06fc9cec0f1d006fed">num_replicas</a> () const</td></tr>
<tr class="separator:ac8f62fdc5c12af06fc9cec0f1d006fed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a58abf46f2fe2cd2adab8c7a872cd0a3d"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a58abf46f2fe2cd2adab8c7a872cd0a3d">owner</a> () const</td></tr>
<tr class="separator:a58abf46f2fe2cd2adab8c7a872cd0a3d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0c78f86c5d0fbf53437c2c9db26f92b6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduInsert.html">KuduInsert</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a0c78f86c5d0fbf53437c2c9db26f92b6">NewInsert</a> ()</td></tr>
<tr class="separator:a0c78f86c5d0fbf53437c2c9db26f92b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2cc4b8f9fcbff1450d0a056e8f9a8103"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduInsertIgnore.html">KuduInsertIgnore</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a2cc4b8f9fcbff1450d0a056e8f9a8103">NewInsertIgnore</a> ()</td></tr>
<tr class="separator:a2cc4b8f9fcbff1450d0a056e8f9a8103"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a19e92dbaeeff86c5d707b15b2a7051fc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduUpsert.html">KuduUpsert</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a19e92dbaeeff86c5d707b15b2a7051fc">NewUpsert</a> ()</td></tr>
<tr class="separator:a19e92dbaeeff86c5d707b15b2a7051fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7e95271452d608fc2b563f7b46ddcda8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduUpdate.html">KuduUpdate</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a7e95271452d608fc2b563f7b46ddcda8">NewUpdate</a> ()</td></tr>
<tr class="separator:a7e95271452d608fc2b563f7b46ddcda8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad873078bdbcafe015d359a65c370a89a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduDelete.html">KuduDelete</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#ad873078bdbcafe015d359a65c370a89a">NewDelete</a> ()</td></tr>
<tr class="separator:ad873078bdbcafe015d359a65c370a89a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aed6c3571aff35270a3e6cd66770f1cea"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#aed6c3571aff35270a3e6cd66770f1cea">NewComparisonPredicate</a> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;col_name, <a class="el" href="classkudu_1_1client_1_1KuduPredicate.html#ad58e80ced596d7738f99b5b83ba24eb4">KuduPredicate::ComparisonOp</a> op, <a class="el" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a> *value)</td></tr>
<tr class="separator:aed6c3571aff35270a3e6cd66770f1cea"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a356e8d0d10491d4d8540adefac86be94"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a356e8d0d10491d4d8540adefac86be94">NewInBloomFilterPredicate</a> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;col_name, std::vector&lt; <a class="el" href="classkudu_1_1client_1_1KuduBloomFilter.html">KuduBloomFilter</a> * &gt; *bloom_filters)</td></tr>
<tr class="separator:a356e8d0d10491d4d8540adefac86be94"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a453ffb83cf7c12541caba5ea182fadd9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a453ffb83cf7c12541caba5ea182fadd9">NewInListPredicate</a> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;col_name, std::vector&lt; <a class="el" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a> * &gt; *values)</td></tr>
<tr class="separator:a453ffb83cf7c12541caba5ea182fadd9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af6e70f115cf3c0359b1c170533a2d523"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#af6e70f115cf3c0359b1c170533a2d523">NewIsNotNullPredicate</a> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;col_name)</td></tr>
<tr class="separator:af6e70f115cf3c0359b1c170533a2d523"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5f453909cdeda167ad15506358470466"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a5f453909cdeda167ad15506358470466">NewIsNullPredicate</a> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;col_name)</td></tr>
<tr class="separator:a5f453909cdeda167ad15506358470466"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a23a66ada3e868985467b2ded94cb24bf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a23a66ada3e868985467b2ded94cb24bf">client</a> () const</td></tr>
<tr class="separator:a23a66ada3e868985467b2ded94cb24bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0f3728fb6eab9e1d099f02e378c27af2"><td class="memItemLeft" align="right" valign="top">const PartitionSchema &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a0f3728fb6eab9e1d099f02e378c27af2">partition_schema</a> () const</td></tr>
<tr class="separator:a0f3728fb6eab9e1d099f02e378c27af2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a79eae97f8828a50d0d21d85c623bd0ec"><td class="memItemLeft" align="right" valign="top">const std::map&lt; std::string, std::string &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#a79eae97f8828a50d0d21d85c623bd0ec">extra_configs</a> () const</td></tr>
<tr class="separator:a79eae97f8828a50d0d21d85c623bd0ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Advanced/Unstable API</div></td></tr>
<tr><td colspan="2"><div class="groupText"><p>There are no guarantees on the stability of this client API. </p>
</div></td></tr>
<tr class="memitem:aff0381dcf80981edfa7182618b9fc7a3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduTable.html#aff0381dcf80981edfa7182618b9fc7a3">NewInBloomFilterPredicate</a> (const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;col_name, const std::vector&lt; <a class="el" href="classkudu_1_1Slice.html">Slice</a> &gt; &amp;bloom_filters)</td></tr>
<tr class="separator:aff0381dcf80981edfa7182618b9fc7a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>A representation of a table on a particular cluster. </p>
<p>A <a class="el" href="classkudu_1_1client_1_1KuduTable.html" title="A representation of a table on a particular cluster.">KuduTable</a> holds the current schema of the table. Any given <a class="el" href="classkudu_1_1client_1_1KuduTable.html" title="A representation of a table on a particular cluster.">KuduTable</a> object belongs to a specific <a class="el" href="classkudu_1_1client_1_1KuduClient.html" title="A handle for a connection to a cluster.">KuduClient</a> object.</p>
<p>Upon construction, the table is looked up in the catalog (or catalog cache), and the schema fetched for introspection.</p>
<p>This class is also a factory for write operation on the table. The provided operations are: </p><ul>
<li>INSERT Adds a new row. Fails if the row already exists. </li>
<li>UPSERT Adds a new row. If there's an existing row, updates it. </li>
<li>UPDATE Updates an existing row. Fails if the row does not exist. </li>
<li>DELETE Deletes an existing row. Fails if the row does not exist.</li>
</ul>
<dl class="section note"><dt>Note</dt><dd>This class is thread-safe. </dd></dl>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a id="a23a66ada3e868985467b2ded94cb24bf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a23a66ada3e868985467b2ded94cb24bf">&#9670;&nbsp;</a></span>client()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a>* kudu::client::KuduTable::client </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>The <a class="el" href="classkudu_1_1client_1_1KuduClient.html" title="A handle for a connection to a cluster.">KuduClient</a> object associated with the table. The caller should not free the returned pointer. </dd></dl>
</div>
</div>
<a id="a79eae97f8828a50d0d21d85c623bd0ec"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a79eae97f8828a50d0d21d85c623bd0ec">&#9670;&nbsp;</a></span>extra_configs()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const std::map&lt;std::string, std::string&gt;&amp; kudu::client::KuduTable::extra_configs </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>The table's extra configuration properties. </dd></dl>
</div>
</div>
<a id="ac5436bdd675d45de6c2980f3a05f5e20"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac5436bdd675d45de6c2980f3a05f5e20">&#9670;&nbsp;</a></span>id()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const std::string&amp; kudu::client::KuduTable::id </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the table's ID.</p>
<p>This is an internal identifier which uniquely identifies a table. If the table is deleted and recreated with the same name, the ID will distinguish the old table from the new.</p>
<dl class="section return"><dt>Returns</dt><dd>Identifier string for the table. </dd></dl>
</div>
</div>
<a id="ae1ada81a49d909fab15694ed3e2f5244"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae1ada81a49d909fab15694ed3e2f5244">&#9670;&nbsp;</a></span>name()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const std::string&amp; kudu::client::KuduTable::name </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>Name of the table. </dd></dl>
</div>
</div>
<a id="aed6c3571aff35270a3e6cd66770f1cea"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aed6c3571aff35270a3e6cd66770f1cea">&#9670;&nbsp;</a></span>NewComparisonPredicate()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a>* kudu::client::KuduTable::NewComparisonPredicate </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;&#160;</td>
<td class="paramname"><em>col_name</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html#ad58e80ced596d7738f99b5b83ba24eb4">KuduPredicate::ComparisonOp</a>&#160;</td>
<td class="paramname"><em>op</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a> *&#160;</td>
<td class="paramname"><em>value</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Create a new comparison predicate.</p>
<p>This method creates new instance of a comparison predicate which can be used for scanners on this table object.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">col_name</td><td>Name of column to use for comparison. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">op</td><td>Comparison operator to use. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>The type of the value must correspond to the type of the column to which the predicate is to be applied. For example, if the given column is any type of integer, the <a class="el" href="classkudu_1_1client_1_1KuduValue.html" title="A constant cell value with a specific type.">KuduValue</a> should also be an integer, with its value in the valid range for the column type. No attempt is made to cast between floating point and integer values, or numeric and string values. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Raw pointer to instance of comparison predicate. The caller owns the result until it is passed into <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a47b0fcd30f8002cb4fdcf69351896b74">KuduScanner::AddConjunctPredicate()</a>. The returned predicate object takes ownership over the <code>value</code> Non-NULL is returned both in success and error cases. In the case of an error (e.g. invalid column name), a non-NULL value is still returned. The error will be returned when attempting to add this predicate to a <a class="el" href="classkudu_1_1client_1_1KuduScanner.html" title="This class is a representation of a single scan.">KuduScanner</a>. </dd></dl>
</div>
</div>
<a id="ad873078bdbcafe015d359a65c370a89a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad873078bdbcafe015d359a65c370a89a">&#9670;&nbsp;</a></span>NewDelete()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduDelete.html">KuduDelete</a>* kudu::client::KuduTable::NewDelete </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>New <code>DELETE</code> operation for this table. It is the caller's responsibility to free the result, unless it is passed to <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad3f7324b27fca298c5ca3d07b4741943">KuduSession::Apply()</a>. </dd></dl>
</div>
</div>
<a id="aff0381dcf80981edfa7182618b9fc7a3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aff0381dcf80981edfa7182618b9fc7a3">&#9670;&nbsp;</a></span>NewInBloomFilterPredicate() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a>* kudu::client::KuduTable::NewInBloomFilterPredicate </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;&#160;</td>
<td class="paramname"><em>col_name</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const std::vector&lt; <a class="el" href="classkudu_1_1Slice.html">Slice</a> &gt; &amp;&#160;</td>
<td class="paramname"><em>bloom_filters</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Create a new IN Bloom filter predicate using direct BlockBloomFilter pointers which can be used for scanners on this table.</p>
<p>A Bloom filter is a space-efficient probabilistic data structure used to test set membership with a possibility of false positive matches.</p>
<p>IN list predicate can be used with small number of values; on the other hand with IN Bloom filter predicate large number of values can be tested for membership in a space-efficient manner.</p>
<p>IN Bloom filter predicate may be automatically disabled if determined to be ineffective in filtering rows during scan requests.</p>
<p>Users are expected to perform further filtering to guard against false positives and automatic disablement of an ineffective Bloom filter predicate to get precise set membership information.</p>
<dl class="section warning"><dt>Warning</dt><dd>This method is experimental and may change or disappear in future.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">col_name</td><td>Name of the column to which the predicate applies. </td></tr>
<tr><td class="paramdir"></td><td class="paramname">bloom_filters</td><td>Vector of BlockBloomFilter pointers that contain the values inserted to match against the column. The column value must match against all the supplied Bloom filters to be returned by the scanner. On return, regardless of success or error, the returned predicate will NOT take ownership of the pointers contained in <code>bloom_filters</code> and caller is responsible for the lifecycle management of the Bloom filters. The supplied Bloom filters are expected to remain valid for the lifetime of the <a class="el" href="classkudu_1_1client_1_1KuduScanner.html" title="This class is a representation of a single scan.">KuduScanner</a>. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Raw pointer to an IN Bloom filter predicate. The caller owns the predicate until it is passed into <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a47b0fcd30f8002cb4fdcf69351896b74">KuduScanner::AddConjunctPredicate()</a>. In the case of an error (e.g. an invalid column name), a non-NULL value is still returned. The error will be returned when attempting to add this predicate to a <a class="el" href="classkudu_1_1client_1_1KuduScanner.html" title="This class is a representation of a single scan.">KuduScanner</a>. </dd></dl>
</div>
</div>
<a id="a356e8d0d10491d4d8540adefac86be94"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a356e8d0d10491d4d8540adefac86be94">&#9670;&nbsp;</a></span>NewInBloomFilterPredicate() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a>* kudu::client::KuduTable::NewInBloomFilterPredicate </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;&#160;</td>
<td class="paramname"><em>col_name</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">std::vector&lt; <a class="el" href="classkudu_1_1client_1_1KuduBloomFilter.html">KuduBloomFilter</a> * &gt; *&#160;</td>
<td class="paramname"><em>bloom_filters</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Create a new IN Bloom filter predicate which can be used for scanners on this table.</p>
<p>A Bloom filter is a space-efficient probabilistic data structure used to test set membership with a possibility of false positive matches. See <code><a class="el" href="classkudu_1_1client_1_1KuduBloomFilter.html" title="Bloom filter to be used with IN Bloom filter predicate.">KuduBloomFilter</a></code> for creating Bloom filters.</p>
<p>IN list predicate can be used with small number of values; on the other hand with IN Bloom filter predicate large number of values can be tested for membership in a space-efficient manner.</p>
<p>IN Bloom filter predicate may be automatically disabled if determined to be ineffective in filtering rows during scan requests.</p>
<p>Users are expected to perform further filtering to guard against false positives and automatic disablement of an ineffective Bloom filter predicate to get precise set membership information.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">col_name</td><td>Name of the column to which the predicate applies. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">bloom_filters</td><td>Vector of Bloom filters that contain the values inserted to match against the column. The column value must match against all the supplied Bloom filters to be returned by the scanner. On return, regardless of success or error, the returned predicate will take ownership of the pointers contained in <code>bloom_filters</code>. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Raw pointer to an IN Bloom filter predicate. The caller owns the predicate until it is passed into <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a47b0fcd30f8002cb4fdcf69351896b74">KuduScanner::AddConjunctPredicate()</a>. In the case of an error (e.g. an invalid column name), a non-NULL value is still returned. The error will be returned when attempting to add this predicate to a <a class="el" href="classkudu_1_1client_1_1KuduScanner.html" title="This class is a representation of a single scan.">KuduScanner</a>. </dd></dl>
</div>
</div>
<a id="a453ffb83cf7c12541caba5ea182fadd9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a453ffb83cf7c12541caba5ea182fadd9">&#9670;&nbsp;</a></span>NewInListPredicate()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a>* kudu::client::KuduTable::NewInListPredicate </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;&#160;</td>
<td class="paramname"><em>col_name</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">std::vector&lt; <a class="el" href="classkudu_1_1client_1_1KuduValue.html">KuduValue</a> * &gt; *&#160;</td>
<td class="paramname"><em>values</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Create a new IN list predicate which can be used for scanners on this table.</p>
<p>The IN list predicate is used to specify a list of values that a column must match. A row is filtered from the scan if the value of the column does not equal any value from the list.</p>
<p>The type of entries in the list must correspond to the type of the column to which the predicate is to be applied. For example, if the given column is any type of integer, the KuduValues should also be integers, with the values in the valid range for the column type. No attempt is made to cast between floating point and integer values, or numeric and string values.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">col_name</td><td>Name of the column to which the predicate applies. </td></tr>
<tr><td class="paramdir">[in]</td><td class="paramname">values</td><td>Vector of values which the column will be matched against. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Raw pointer to an IN list predicate. The caller owns the predicate until it is passed into <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a47b0fcd30f8002cb4fdcf69351896b74">KuduScanner::AddConjunctPredicate()</a>. The returned predicate takes ownership of the values vector and its elements. In the case of an error (e.g. an invalid column name), a non-NULL value is still returned. The error will be returned when attempting to add this predicate to a <a class="el" href="classkudu_1_1client_1_1KuduScanner.html" title="This class is a representation of a single scan.">KuduScanner</a>. </dd></dl>
</div>
</div>
<a id="a0c78f86c5d0fbf53437c2c9db26f92b6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0c78f86c5d0fbf53437c2c9db26f92b6">&#9670;&nbsp;</a></span>NewInsert()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduInsert.html">KuduInsert</a>* kudu::client::KuduTable::NewInsert </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>New <code>INSERT</code> operation for this table. It is the caller's responsibility to free the result, unless it is passed to <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad3f7324b27fca298c5ca3d07b4741943">KuduSession::Apply()</a>. </dd></dl>
</div>
</div>
<a id="a2cc4b8f9fcbff1450d0a056e8f9a8103"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2cc4b8f9fcbff1450d0a056e8f9a8103">&#9670;&nbsp;</a></span>NewInsertIgnore()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduInsertIgnore.html">KuduInsertIgnore</a>* kudu::client::KuduTable::NewInsertIgnore </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>New <code>INSERT_IGNORE</code> operation for this table. It is the caller's responsibility to free the result, unless it is passed to <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad3f7324b27fca298c5ca3d07b4741943">KuduSession::Apply()</a>. </dd></dl>
</div>
</div>
<a id="af6e70f115cf3c0359b1c170533a2d523"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af6e70f115cf3c0359b1c170533a2d523">&#9670;&nbsp;</a></span>NewIsNotNullPredicate()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a>* kudu::client::KuduTable::NewIsNotNullPredicate </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;&#160;</td>
<td class="paramname"><em>col_name</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Create a new IS NOT NULL predicate which can be used for scanners on this table.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">col_name</td><td>Name of the column to which the predicate applies </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Raw pointer to an IS NOT NULL predicate. The caller owns the predicate until it is passed into <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a47b0fcd30f8002cb4fdcf69351896b74">KuduScanner::AddConjunctPredicate()</a>. In the case of an error (e.g. an invalid column name), a non-NULL value is still returned. The error will be returned when attempting to add this predicate to a <a class="el" href="classkudu_1_1client_1_1KuduScanner.html" title="This class is a representation of a single scan.">KuduScanner</a>. </dd></dl>
</div>
</div>
<a id="a5f453909cdeda167ad15506358470466"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5f453909cdeda167ad15506358470466">&#9670;&nbsp;</a></span>NewIsNullPredicate()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduPredicate.html">KuduPredicate</a>* kudu::client::KuduTable::NewIsNullPredicate </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classkudu_1_1Slice.html">Slice</a> &amp;&#160;</td>
<td class="paramname"><em>col_name</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Create a new IS NULL predicate which can be used for scanners on this table.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">col_name</td><td>Name of the column to which the predicate applies </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Raw pointer to an IS NULL predicate. The caller owns the predicate until it is passed into <a class="el" href="classkudu_1_1client_1_1KuduScanner.html#a47b0fcd30f8002cb4fdcf69351896b74">KuduScanner::AddConjunctPredicate()</a>. In the case of an error (e.g. an invalid column name), a non-NULL value is still returned. The error will be returned when attempting to add this predicate to a <a class="el" href="classkudu_1_1client_1_1KuduScanner.html" title="This class is a representation of a single scan.">KuduScanner</a>. </dd></dl>
</div>
</div>
<a id="a7e95271452d608fc2b563f7b46ddcda8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7e95271452d608fc2b563f7b46ddcda8">&#9670;&nbsp;</a></span>NewUpdate()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduUpdate.html">KuduUpdate</a>* kudu::client::KuduTable::NewUpdate </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>New <code>UPDATE</code> operation for this table. It is the caller's responsibility to free the result, unless it is passed to <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad3f7324b27fca298c5ca3d07b4741943">KuduSession::Apply()</a>. </dd></dl>
</div>
</div>
<a id="a19e92dbaeeff86c5d707b15b2a7051fc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a19e92dbaeeff86c5d707b15b2a7051fc">&#9670;&nbsp;</a></span>NewUpsert()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduUpsert.html">KuduUpsert</a>* kudu::client::KuduTable::NewUpsert </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>New <code>UPSERT</code> operation for this table. It is the caller's responsibility to free the result, unless it is passed to <a class="el" href="classkudu_1_1client_1_1KuduSession.html#ad3f7324b27fca298c5ca3d07b4741943">KuduSession::Apply()</a>. </dd></dl>
</div>
</div>
<a id="ac8f62fdc5c12af06fc9cec0f1d006fed"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac8f62fdc5c12af06fc9cec0f1d006fed">&#9670;&nbsp;</a></span>num_replicas()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int kudu::client::KuduTable::num_replicas </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>Replication factor of the table. </dd></dl>
</div>
</div>
<a id="a58abf46f2fe2cd2adab8c7a872cd0a3d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a58abf46f2fe2cd2adab8c7a872cd0a3d">&#9670;&nbsp;</a></span>owner()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const std::string&amp; kudu::client::KuduTable::owner </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>Owner of the table (empty string if unset). </dd></dl>
</div>
</div>
<a id="a0f3728fb6eab9e1d099f02e378c27af2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0f3728fb6eab9e1d099f02e378c27af2">&#9670;&nbsp;</a></span>partition_schema()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const PartitionSchema&amp; kudu::client::KuduTable::partition_schema </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>The partition schema for the table. </dd></dl>
</div>
</div>
<a id="aefc75c9c36846675e4b8bd53075f6f5c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aefc75c9c36846675e4b8bd53075f6f5c">&#9670;&nbsp;</a></span>schema()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="classkudu_1_1client_1_1KuduSchema.html">KuduSchema</a>&amp; kudu::client::KuduTable::schema </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>Reference to the table's schema object. </dd></dl>
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>include/kudu/client/<a class="el" href="client_8h_source.html">client.h</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/>
<address class="footer">
<small>Generated for Kudu version 1.13.0 on Fri Sep 18 2020 15:03:20 by Doxygen 1.8.19</small>
<br>
<small>Copyright © 2020 The Apache Software Foundation.</small>
</address>
</body>
</html>