blob: d9ab23c0e512db21e8f688e3d04d510ce6994354 [file] [log] [blame]
<!DOCTYPE html>
<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>apache_beam.io.gcp.datastore.v1.helper module &mdash; Apache Beam documentation</title>
<link rel="stylesheet" href="_static/css/theme.css" type="text/css" />
<link rel="index" title="Index"
href="genindex.html"/>
<link rel="search" title="Search" href="search.html"/>
<link rel="top" title="Apache Beam documentation" href="index.html"/>
<link rel="up" title="apache_beam.io.gcp.datastore.v1 package" href="apache_beam.io.gcp.datastore.v1.html"/>
<link rel="next" title="apache_beam.io.gcp.datastore.v1.query_splitter module" href="apache_beam.io.gcp.datastore.v1.query_splitter.html"/>
<link rel="prev" title="apache_beam.io.gcp.datastore.v1.fake_datastore module" href="apache_beam.io.gcp.datastore.v1.fake_datastore.html"/>
<script src="_static/js/modernizr.min.js"></script>
</head>
<body class="wy-body-for-nav" role="document">
<div class="wy-grid-for-nav">
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
<div class="wy-side-scroll">
<div class="wy-side-nav-search">
<a href="index.html" class="icon icon-home"> Apache Beam
</a>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="search.html" method="get">
<input type="text" name="q" placeholder="Search docs" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
</div>
<div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="apache_beam.coders.html">apache_beam.coders package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.internal.html">apache_beam.internal package</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="apache_beam.io.html">apache_beam.io package</a><ul class="current">
<li class="toctree-l2 current"><a class="reference internal" href="apache_beam.io.html#subpackages">Subpackages</a><ul class="current">
<li class="toctree-l3 current"><a class="reference internal" href="apache_beam.io.gcp.html">apache_beam.io.gcp package</a><ul class="current">
<li class="toctree-l4 current"><a class="reference internal" href="apache_beam.io.gcp.html#subpackages">Subpackages</a></li>
<li class="toctree-l4"><a class="reference internal" href="apache_beam.io.gcp.html#submodules">Submodules</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="apache_beam.io.html#submodules">Submodules</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.metrics.html">apache_beam.metrics package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.options.html">apache_beam.options package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.portability.html">apache_beam.portability package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.runners.html">apache_beam.runners package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.testing.html">apache_beam.testing package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.tools.html">apache_beam.tools package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.transforms.html">apache_beam.transforms package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.typehints.html">apache_beam.typehints package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.utils.html">apache_beam.utils package</a></li>
</ul>
<ul>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.error.html">apache_beam.error module</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.pipeline.html">apache_beam.pipeline module</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.pvalue.html">apache_beam.pvalue module</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.version.html">apache_beam.version module</a></li>
</ul>
</div>
</div>
</nav>
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
<nav class="wy-nav-top" role="navigation" aria-label="top navigation">
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
<a href="index.html">Apache Beam</a>
</nav>
<div class="wy-nav-content">
<div class="rst-content">
<div role="navigation" aria-label="breadcrumbs navigation">
<ul class="wy-breadcrumbs">
<li><a href="index.html">Docs</a> &raquo;</li>
<li><a href="apache_beam.io.html">apache_beam.io package</a> &raquo;</li>
<li><a href="apache_beam.io.gcp.html">apache_beam.io.gcp package</a> &raquo;</li>
<li><a href="apache_beam.io.gcp.datastore.html">apache_beam.io.gcp.datastore package</a> &raquo;</li>
<li><a href="apache_beam.io.gcp.datastore.v1.html">apache_beam.io.gcp.datastore.v1 package</a> &raquo;</li>
<li>apache_beam.io.gcp.datastore.v1.helper module</li>
<li class="wy-breadcrumbs-aside">
<a href="_sources/apache_beam.io.gcp.datastore.v1.helper.rst.txt" rel="nofollow"> View page source</a>
</li>
</ul>
<hr/>
</div>
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody">
<div class="section" id="module-apache_beam.io.gcp.datastore.v1.helper">
<span id="apache-beam-io-gcp-datastore-v1-helper-module"></span><h1>apache_beam.io.gcp.datastore.v1.helper module<a class="headerlink" href="#module-apache_beam.io.gcp.datastore.v1.helper" title="Permalink to this headline"></a></h1>
<p>Cloud Datastore helper functions.</p>
<p>For internal use only; no backwards-compatibility guarantees.</p>
<dl class="function">
<dt id="apache_beam.io.gcp.datastore.v1.helper.key_comparator">
<code class="descclassname">apache_beam.io.gcp.datastore.v1.helper.</code><code class="descname">key_comparator</code><span class="sig-paren">(</span><em>k1</em>, <em>k2</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/io/gcp/datastore/v1/helper.html#key_comparator"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.io.gcp.datastore.v1.helper.key_comparator" title="Permalink to this definition"></a></dt>
<dd><p>A comparator for Datastore keys.</p>
<p>Comparison is only valid for keys in the same partition. The comparison here
is between the list of paths for each key.</p>
</dd></dl>
<dl class="function">
<dt id="apache_beam.io.gcp.datastore.v1.helper.compare_path">
<code class="descclassname">apache_beam.io.gcp.datastore.v1.helper.</code><code class="descname">compare_path</code><span class="sig-paren">(</span><em>p1</em>, <em>p2</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/io/gcp/datastore/v1/helper.html#compare_path"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.io.gcp.datastore.v1.helper.compare_path" title="Permalink to this definition"></a></dt>
<dd><p>A comparator for key path.</p>
<p>A path has either an <cite>id</cite> or a <cite>name</cite> field defined. The
comparison works with the following rules:</p>
<p>1. If one path has <cite>id</cite> defined while the other doesn’t, then the
one with <cite>id</cite> defined is considered smaller.
2. If both paths have <cite>id</cite> defined, then their ids are compared.
3. If no <cite>id</cite> is defined for both paths, then their <cite>names</cite> are compared.</p>
</dd></dl>
<dl class="function">
<dt id="apache_beam.io.gcp.datastore.v1.helper.get_datastore">
<code class="descclassname">apache_beam.io.gcp.datastore.v1.helper.</code><code class="descname">get_datastore</code><span class="sig-paren">(</span><em>project</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/io/gcp/datastore/v1/helper.html#get_datastore"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.io.gcp.datastore.v1.helper.get_datastore" title="Permalink to this definition"></a></dt>
<dd><p>Returns a Cloud Datastore client.</p>
</dd></dl>
<dl class="function">
<dt id="apache_beam.io.gcp.datastore.v1.helper.make_request">
<code class="descclassname">apache_beam.io.gcp.datastore.v1.helper.</code><code class="descname">make_request</code><span class="sig-paren">(</span><em>project</em>, <em>namespace</em>, <em>query</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/io/gcp/datastore/v1/helper.html#make_request"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.io.gcp.datastore.v1.helper.make_request" title="Permalink to this definition"></a></dt>
<dd><p>Make a Cloud Datastore request for the given query.</p>
</dd></dl>
<dl class="function">
<dt id="apache_beam.io.gcp.datastore.v1.helper.make_partition">
<code class="descclassname">apache_beam.io.gcp.datastore.v1.helper.</code><code class="descname">make_partition</code><span class="sig-paren">(</span><em>project</em>, <em>namespace</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/io/gcp/datastore/v1/helper.html#make_partition"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.io.gcp.datastore.v1.helper.make_partition" title="Permalink to this definition"></a></dt>
<dd><p>Make a PartitionId for the given project and namespace.</p>
</dd></dl>
<dl class="function">
<dt id="apache_beam.io.gcp.datastore.v1.helper.retry_on_rpc_error">
<code class="descclassname">apache_beam.io.gcp.datastore.v1.helper.</code><code class="descname">retry_on_rpc_error</code><span class="sig-paren">(</span><em>exception</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/io/gcp/datastore/v1/helper.html#retry_on_rpc_error"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.io.gcp.datastore.v1.helper.retry_on_rpc_error" title="Permalink to this definition"></a></dt>
<dd><p>A retry filter for Cloud Datastore RPCErrors.</p>
</dd></dl>
<dl class="function">
<dt id="apache_beam.io.gcp.datastore.v1.helper.fetch_entities">
<code class="descclassname">apache_beam.io.gcp.datastore.v1.helper.</code><code class="descname">fetch_entities</code><span class="sig-paren">(</span><em>project</em>, <em>namespace</em>, <em>query</em>, <em>datastore</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/io/gcp/datastore/v1/helper.html#fetch_entities"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.io.gcp.datastore.v1.helper.fetch_entities" title="Permalink to this definition"></a></dt>
<dd><p>A helper method to fetch entities from Cloud Datastore.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
<li><strong>project</strong> – Project ID</li>
<li><strong>namespace</strong> – Cloud Datastore namespace</li>
<li><strong>query</strong> – Query to be read from</li>
<li><strong>datastore</strong> – Cloud Datastore Client</li>
</ul>
</td>
</tr>
<tr class="field-even field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">An iterator of entities.</p>
</td>
</tr>
</tbody>
</table>
</dd></dl>
<dl class="function">
<dt id="apache_beam.io.gcp.datastore.v1.helper.is_key_valid">
<code class="descclassname">apache_beam.io.gcp.datastore.v1.helper.</code><code class="descname">is_key_valid</code><span class="sig-paren">(</span><em>key</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/io/gcp/datastore/v1/helper.html#is_key_valid"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.io.gcp.datastore.v1.helper.is_key_valid" title="Permalink to this definition"></a></dt>
<dd><p>Returns True if a Cloud Datastore key is complete.</p>
<p>A key is complete if its last element has either an id or a name.</p>
</dd></dl>
<dl class="function">
<dt id="apache_beam.io.gcp.datastore.v1.helper.write_mutations">
<code class="descclassname">apache_beam.io.gcp.datastore.v1.helper.</code><code class="descname">write_mutations</code><span class="sig-paren">(</span><em>datastore</em>, <em>project</em>, <em>mutations</em>, <em>throttler</em>, <em>rpc_stats_callback=None</em>, <em>throttle_delay=1</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/io/gcp/datastore/v1/helper.html#write_mutations"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.io.gcp.datastore.v1.helper.write_mutations" title="Permalink to this definition"></a></dt>
<dd><p>A helper function to write a batch of mutations to Cloud Datastore.</p>
<p>If a commit fails, it will be retried upto 5 times. All mutations in the
batch will be committed again, even if the commit was partially successful.
If the retry limit is exceeded, the last exception from Cloud Datastore will
be raised.</p>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
<li><strong>datastore</strong> – googledatastore.connection.Datastore</li>
<li><strong>project</strong> – str, project id</li>
<li><strong>mutations</strong> – list of google.cloud.proto.datastore.v1.datastore_pb2.Mutation</li>
<li><strong>rpc_stats_callback</strong> – a function to call with arguments <cite>successes</cite> and
<cite>failures</cite> and <cite>throttled_secs</cite>; this is called to record successful
and failed RPCs to Datastore and time spent waiting for throttling.</li>
<li><strong>throttler</strong> – AdaptiveThrottler, to use to select requests to be throttled.</li>
<li><strong>throttle_delay</strong> – float, time in seconds to sleep when throttled.</li>
</ul>
</td>
</tr>
</tbody>
</table>
<dl class="docutils">
<dt>Returns a tuple of:</dt>
<dd>CommitResponse, the response from Datastore;
int, the latency of the successful RPC in milliseconds.</dd>
</dl>
</dd></dl>
<dl class="function">
<dt id="apache_beam.io.gcp.datastore.v1.helper.make_latest_timestamp_query">
<code class="descclassname">apache_beam.io.gcp.datastore.v1.helper.</code><code class="descname">make_latest_timestamp_query</code><span class="sig-paren">(</span><em>namespace</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/io/gcp/datastore/v1/helper.html#make_latest_timestamp_query"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.io.gcp.datastore.v1.helper.make_latest_timestamp_query" title="Permalink to this definition"></a></dt>
<dd><p>Make a Query to fetch the latest timestamp statistics.</p>
</dd></dl>
<dl class="function">
<dt id="apache_beam.io.gcp.datastore.v1.helper.make_kind_stats_query">
<code class="descclassname">apache_beam.io.gcp.datastore.v1.helper.</code><code class="descname">make_kind_stats_query</code><span class="sig-paren">(</span><em>namespace</em>, <em>kind</em>, <em>latest_timestamp</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/io/gcp/datastore/v1/helper.html#make_kind_stats_query"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.io.gcp.datastore.v1.helper.make_kind_stats_query" title="Permalink to this definition"></a></dt>
<dd><p>Make a Query to fetch the latest kind statistics.</p>
</dd></dl>
<dl class="class">
<dt id="apache_beam.io.gcp.datastore.v1.helper.QueryIterator">
<em class="property">class </em><code class="descclassname">apache_beam.io.gcp.datastore.v1.helper.</code><code class="descname">QueryIterator</code><span class="sig-paren">(</span><em>project</em>, <em>namespace</em>, <em>query</em>, <em>datastore</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/io/gcp/datastore/v1/helper.html#QueryIterator"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.io.gcp.datastore.v1.helper.QueryIterator" title="Permalink to this definition"></a></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal"><span class="pre">future.types.newobject.newobject</span></code></p>
<p>A iterator class for entities of a given query.</p>
<p>Entities are read in batches. Retries on failures.</p>
</dd></dl>
</div>
</div>
<div class="articleComments">
</div>
</div>
<footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="apache_beam.io.gcp.datastore.v1.query_splitter.html" class="btn btn-neutral float-right" title="apache_beam.io.gcp.datastore.v1.query_splitter module" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right"></span></a>
<a href="apache_beam.io.gcp.datastore.v1.fake_datastore.html" class="btn btn-neutral" title="apache_beam.io.gcp.datastore.v1.fake_datastore module" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left"></span> Previous</a>
</div>
<hr/>
<div role="contentinfo">
<p>
&copy; Copyright .
</p>
</div>
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
</footer>
</div>
</div>
</section>
</div>
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT:'./',
VERSION:'',
COLLAPSE_INDEX:false,
FILE_SUFFIX:'.html',
HAS_SOURCE: true,
SOURCELINK_SUFFIX: '.txt'
};
</script>
<script type="text/javascript" src="_static/jquery.js"></script>
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
<script type="text/javascript" src="_static/js/theme.js"></script>
<script type="text/javascript">
jQuery(function () {
SphinxRtdTheme.StickyNav.enable();
});
</script>
</body>
</html>