blob: 66cd657b5a4c514062063849c28e5486e854ff5e [file] [log] [blame]
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"></meta><title>FetchHBaseRow</title><link rel="stylesheet" href="../../../../../css/component-usage.css" type="text/css"></link></head><script type="text/javascript">window.onload = function(){if(self==top) { document.getElementById('nameHeader').style.display = "inherit"; } }</script><body><h1 id="nameHeader" style="display: none;">FetchHBaseRow</h1><h2>Description: </h2><p>Fetches a row from an HBase table. The Destination property controls whether the cells are added as flow file attributes, or the row is written to the flow file content as JSON. This processor may be used to fetch a fixed row on a interval by specifying the table and row id directly in the processor, or it may be used to dynamically fetch rows by referencing the table and row id from incoming flow files.</p><h3>Tags: </h3><p>hbase, scan, fetch, get, enrich</p><h3>Properties: </h3><p>In the list below, the names of required properties appear in <strong>bold</strong>. Any other properties (not in bold) are considered optional. The table also indicates any default values, and whether a property supports the <a href="../../../../../html/expression-language-guide.html">NiFi Expression Language</a>.</p><table id="properties"><tr><th>Display Name</th><th>API Name</th><th>Default Value</th><th>Allowable Values</th><th>Description</th></tr><tr><td id="name"><strong>HBase Client Service</strong></td><td>HBase Client Service</td><td></td><td id="allowable-values"><strong>Controller Service API: </strong><br/>HBaseClientService<br/><strong>Implementations: </strong><a href="../../../nifi-hbase_2-client-service-nar/1.19.1/org.apache.nifi.hbase.HBase_2_ClientService/index.html">HBase_2_ClientService</a><br/><a href="../../../nifi-hbase_1_1_2-client-service-nar/1.19.1/org.apache.nifi.hbase.HBase_1_1_2_ClientService/index.html">HBase_1_1_2_ClientService</a></td><td id="description">Specifies the Controller Service to use for accessing HBase.</td></tr><tr><td id="name"><strong>Table Name</strong></td><td>Table Name</td><td></td><td id="allowable-values"></td><td id="description">The name of the HBase Table to fetch from.<br/><strong>Supports Expression Language: true (will be evaluated using flow file attributes and variable registry)</strong></td></tr><tr><td id="name"><strong>Row Identifier</strong></td><td>Row Identifier</td><td></td><td id="allowable-values"></td><td id="description">The identifier of the row to fetch.<br/><strong>Supports Expression Language: true (will be evaluated using flow file attributes and variable registry)</strong></td></tr><tr><td id="name">Columns</td><td>Columns</td><td></td><td id="allowable-values"></td><td id="description">An optional comma-separated list of "&lt;colFamily&gt;:&lt;colQualifier&gt;" pairs to fetch. To return all columns for a given family, leave off the qualifier such as "&lt;colFamily1&gt;,&lt;colFamily2&gt;".<br/><strong>Supports Expression Language: true (will be evaluated using flow file attributes and variable registry)</strong></td></tr><tr><td id="name">Authorizations</td><td>hbase-fetch-row-authorizations</td><td></td><td id="allowable-values"></td><td id="description">The list of authorizations to pass to the scanner. This will be ignored if cell visibility labels are not in use.<br/><strong>Supports Expression Language: true (will be evaluated using flow file attributes and variable registry)</strong></td></tr><tr><td id="name"><strong>Destination</strong></td><td>Destination</td><td id="default-value">flowfile-attributes</td><td id="allowable-values"><ul><li>flowfile-attributes <img src="../../../../../html/images/iconInfo.png" alt="Adds the JSON document representing the row that was fetched as an attribute named hbase.row. The format of the JSON document is determined by the JSON Format property. NOTE: Fetching many large rows into attributes may have a negative impact on performance." title="Adds the JSON document representing the row that was fetched as an attribute named hbase.row. The format of the JSON document is determined by the JSON Format property. NOTE: Fetching many large rows into attributes may have a negative impact on performance."></img></li><li>flowfile-content <img src="../../../../../html/images/iconInfo.png" alt="Overwrites the FlowFile content with a JSON document representing the row that was fetched. The format of the JSON document is determined by the JSON Format property." title="Overwrites the FlowFile content with a JSON document representing the row that was fetched. The format of the JSON document is determined by the JSON Format property."></img></li></ul></td><td id="description">Indicates whether the row fetched from HBase is written to FlowFile content or FlowFile Attributes.</td></tr><tr><td id="name"><strong>JSON Format</strong></td><td>JSON Format</td><td id="default-value">full-row</td><td id="allowable-values"><ul><li>full-row <img src="../../../../../html/images/iconInfo.png" alt="Creates a JSON document with the format: {&quot;row&quot;:&lt;row-id&gt;, &quot;cells&quot;:[{&quot;fam&quot;:&lt;col-fam&gt;, &quot;qual&quot;:&lt;col-val&gt;, &quot;val&quot;:&lt;value&gt;, &quot;ts&quot;:&lt;timestamp&gt;}]}." title="Creates a JSON document with the format: {&quot;row&quot;:&lt;row-id&gt;, &quot;cells&quot;:[{&quot;fam&quot;:&lt;col-fam&gt;, &quot;qual&quot;:&lt;col-val&gt;, &quot;val&quot;:&lt;value&gt;, &quot;ts&quot;:&lt;timestamp&gt;}]}."></img></li><li>col-qual-and-val <img src="../../../../../html/images/iconInfo.png" alt="Creates a JSON document with the format: {&quot;&lt;col-qual&gt;&quot;:&quot;&lt;value&gt;&quot;, &quot;&lt;col-qual&gt;&quot;:&quot;&lt;value&gt;&quot;." title="Creates a JSON document with the format: {&quot;&lt;col-qual&gt;&quot;:&quot;&lt;value&gt;&quot;, &quot;&lt;col-qual&gt;&quot;:&quot;&lt;value&gt;&quot;."></img></li></ul></td><td id="description">Specifies how to represent the HBase row as a JSON document.</td></tr><tr><td id="name"><strong>JSON Value Encoding</strong></td><td>JSON Value Encoding</td><td id="default-value">none</td><td id="allowable-values"><ul><li>none <img src="../../../../../html/images/iconInfo.png" alt="Creates a String using the bytes of given data and the given Character Set." title="Creates a String using the bytes of given data and the given Character Set."></img></li><li>base64 <img src="../../../../../html/images/iconInfo.png" alt="Creates a Base64 encoded String of the given data." title="Creates a Base64 encoded String of the given data."></img></li></ul></td><td id="description">Specifies how to represent row ids, column families, column qualifiers, and values when stored in FlowFile attributes, or written to JSON.</td></tr><tr><td id="name"><strong>Encode Character Set</strong></td><td>Encode Character Set</td><td id="default-value">UTF-8</td><td id="allowable-values"></td><td id="description">The character set used to encode the JSON representation of the row.</td></tr><tr><td id="name"><strong>Decode Character Set</strong></td><td>Decode Character Set</td><td id="default-value">UTF-8</td><td id="allowable-values"></td><td id="description">The character set used to decode data from HBase.</td></tr></table><h3>Relationships: </h3><table id="relationships"><tr><th>Name</th><th>Description</th></tr><tr><td>success</td><td>All successful fetches are routed to this relationship.</td></tr><tr><td>failure</td><td>All failed fetches are routed to this relationship.</td></tr><tr><td>not found</td><td>All fetches where the row id is not found are routed to this relationship.</td></tr></table><h3>Reads Attributes: </h3>None specified.<h3>Writes Attributes: </h3><table id="writes-attributes"><tr><th>Name</th><th>Description</th></tr><tr><td>hbase.table</td><td>The name of the HBase table that the row was fetched from</td></tr><tr><td>hbase.row</td><td>A JSON document representing the row. This property is only written when a Destination of flowfile-attributes is selected.</td></tr><tr><td>mime.type</td><td>Set to application/json when using a Destination of flowfile-content, not set or modified otherwise</td></tr></table><h3>State management: </h3>This component does not store state.<h3>Restricted: </h3>This component is not restricted.<h3>Input requirement: </h3>This component requires an incoming relationship.<h3>System Resource Considerations:</h3>None specified.</body></html>