blob: 127f693a01887e525f6588fe55020b0699a3f5cb [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 (1.8.0_181-google-v7) on Mon Jan 27 16:42:28 PST 2020 -->
<title>SpannerIO.Write (Apache Beam 2.20.0-SNAPSHOT)</title>
<meta name="date" content="2020-01-27">
<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="SpannerIO.Write (Apache Beam 2.20.0-SNAPSHOT)";
}
}
catch(err) {
}
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete 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="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/beam/sdk/io/gcp/spanner/SpannerIO.ReadAll.html" title="class in org.apache.beam.sdk.io.gcp.spanner"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.WriteGrouped.html" title="class in org.apache.beam.sdk.io.gcp.spanner"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../../index.html?org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html" target="_top">Frames</a></li>
<li><a href="SpannerIO.Write.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><a href="#fields.inherited.from.class.org.apache.beam.sdk.transforms.PTransform">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&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><a href="#constructor.detail">Constr</a>&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.beam.sdk.io.gcp.spanner</div>
<h2 title="Class SpannerIO.Write" class="title">Class SpannerIO.Write</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li><a href="../../../../../../../org/apache/beam/sdk/transforms/PTransform.html" title="class in org.apache.beam.sdk.transforms">org.apache.beam.sdk.transforms.PTransform</a>&lt;<a href="../../../../../../../org/apache/beam/sdk/values/PCollection.html" title="class in org.apache.beam.sdk.values">PCollection</a>&lt;<a href="https://static.javadoc.io/com.google.cloud/google-cloud-spanner/1.6.0/com/google/cloud/spanner/Mutation.html?is-external=true" title="class or interface in com.google.cloud.spanner">Mutation</a>&gt;,<a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerWriteResult.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerWriteResult</a>&gt;</li>
<li>
<ul class="inheritance">
<li>org.apache.beam.sdk.io.gcp.spanner.SpannerIO.Write</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd>java.io.Serializable, <a href="../../../../../../../org/apache/beam/sdk/transforms/display/HasDisplayData.html" title="interface in org.apache.beam.sdk.transforms.display">HasDisplayData</a></dd>
</dl>
<dl>
<dt>Enclosing class:</dt>
<dd><a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerIO</a></dd>
</dl>
<hr>
<br>
<pre><a href="../../../../../../../org/apache/beam/sdk/annotations/Experimental.html" title="annotation in org.apache.beam.sdk.annotations">@Experimental</a>(<a href="../../../../../../../org/apache/beam/sdk/annotations/Experimental.html#value--">value</a>=<a href="../../../../../../../org/apache/beam/sdk/annotations/Experimental.Kind.html#SOURCE_SINK">SOURCE_SINK</a>)
public abstract static class <span class="typeNameLabel">SpannerIO.Write</span>
extends <a href="../../../../../../../org/apache/beam/sdk/transforms/PTransform.html" title="class in org.apache.beam.sdk.transforms">PTransform</a>&lt;<a href="../../../../../../../org/apache/beam/sdk/values/PCollection.html" title="class in org.apache.beam.sdk.values">PCollection</a>&lt;<a href="https://static.javadoc.io/com.google.cloud/google-cloud-spanner/1.6.0/com/google/cloud/spanner/Mutation.html?is-external=true" title="class or interface in com.google.cloud.spanner">Mutation</a>&gt;,<a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerWriteResult.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerWriteResult</a>&gt;</pre>
<div class="block">A <a href="../../../../../../../org/apache/beam/sdk/transforms/PTransform.html" title="class in org.apache.beam.sdk.transforms"><code>PTransform</code></a> that writes <a href="https://static.javadoc.io/com.google.cloud/google-cloud-spanner/1.6.0/com/google/cloud/spanner/Mutation.html?is-external=true" title="class or interface in com.google.cloud.spanner"><code>Mutation</code></a> objects to Google Cloud Spanner.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.html" title="class in org.apache.beam.sdk.io.gcp.spanner"><code>SpannerIO</code></a>,
<a href="../../../../../../../serialized-form.html#org.apache.beam.sdk.io.gcp.spanner.SpannerIO.Write">Serialized Form</a></dd>
</dl>
</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.beam.sdk.transforms.PTransform">
<!-- -->
</a>
<h3>Fields inherited from class&nbsp;org.apache.beam.sdk.transforms.<a href="../../../../../../../org/apache/beam/sdk/transforms/PTransform.html" title="class in org.apache.beam.sdk.transforms">PTransform</a></h3>
<code><a href="../../../../../../../org/apache/beam/sdk/transforms/PTransform.html#name">name</a></code></li>
</ul>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html#Write--">Write</a></span>()</code>&nbsp;</td>
</tr>
</table>
</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="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete 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/beam/sdk/io/gcp/spanner/SpannerWriteResult.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerWriteResult</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html#expand-org.apache.beam.sdk.values.PCollection-">expand</a></span>(<a href="../../../../../../../org/apache/beam/sdk/values/PCollection.html" title="class in org.apache.beam.sdk.values">PCollection</a>&lt;<a href="https://static.javadoc.io/com.google.cloud/google-cloud-spanner/1.6.0/com/google/cloud/spanner/Mutation.html?is-external=true" title="class or interface in com.google.cloud.spanner">Mutation</a>&gt;&nbsp;input)</code>
<div class="block">Override this method to specify how this <code>PTransform</code> should be expanded on the given
<code>InputT</code>.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code><a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.WriteGrouped.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerIO.WriteGrouped</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html#grouped--">grouped</a></span>()</code>
<div class="block">Same transform but can be applied to <a href="../../../../../../../org/apache/beam/sdk/values/PCollection.html" title="class in org.apache.beam.sdk.values"><code>PCollection</code></a> of <a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/MutationGroup.html" title="class in org.apache.beam.sdk.io.gcp.spanner"><code>MutationGroup</code></a>.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html#populateDisplayData-org.apache.beam.sdk.transforms.display.DisplayData.Builder-">populateDisplayData</a></span>(<a href="../../../../../../../org/apache/beam/sdk/transforms/display/DisplayData.Builder.html" title="interface in org.apache.beam.sdk.transforms.display">DisplayData.Builder</a>&nbsp;builder)</code>
<div class="block">Register display data for the given transform or component.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code><a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerIO.Write</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html#withBatchSizeBytes-long-">withBatchSizeBytes</a></span>(long&nbsp;batchSizeBytes)</code>
<div class="block">Specifies the batch size limit (max number of bytes mutated per batch).</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code><a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerIO.Write</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html#withDatabaseId-java.lang.String-">withDatabaseId</a></span>(java.lang.String&nbsp;databaseId)</code>
<div class="block">Specifies the Cloud Spanner database.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code><a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerIO.Write</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html#withDatabaseId-org.apache.beam.sdk.options.ValueProvider-">withDatabaseId</a></span>(<a href="../../../../../../../org/apache/beam/sdk/options/ValueProvider.html" title="interface in org.apache.beam.sdk.options">ValueProvider</a>&lt;java.lang.String&gt;&nbsp;databaseId)</code>
<div class="block">Specifies the Cloud Spanner database.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code><a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerIO.Write</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html#withFailureMode-org.apache.beam.sdk.io.gcp.spanner.SpannerIO.FailureMode-">withFailureMode</a></span>(<a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.FailureMode.html" title="enum in org.apache.beam.sdk.io.gcp.spanner">SpannerIO.FailureMode</a>&nbsp;failureMode)</code>
<div class="block">Specifies failure mode.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code><a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerIO.Write</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html#withGroupingFactor-int-">withGroupingFactor</a></span>(int&nbsp;groupingFactor)</code>
<div class="block">Specifies the multiple of max mutation (in terms of both bytes per batch and cells per batch)
that is used to select a set of mutations to sort by key for batching.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code><a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerIO.Write</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html#withHost-java.lang.String-">withHost</a></span>(java.lang.String&nbsp;host)</code>
<div class="block">Specifies the Cloud Spanner host.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code><a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerIO.Write</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html#withHost-org.apache.beam.sdk.options.ValueProvider-">withHost</a></span>(<a href="../../../../../../../org/apache/beam/sdk/options/ValueProvider.html" title="interface in org.apache.beam.sdk.options">ValueProvider</a>&lt;java.lang.String&gt;&nbsp;host)</code>
<div class="block">Specifies the Cloud Spanner host.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code><a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerIO.Write</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html#withInstanceId-java.lang.String-">withInstanceId</a></span>(java.lang.String&nbsp;instanceId)</code>
<div class="block">Specifies the Cloud Spanner instance.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code><a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerIO.Write</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html#withInstanceId-org.apache.beam.sdk.options.ValueProvider-">withInstanceId</a></span>(<a href="../../../../../../../org/apache/beam/sdk/options/ValueProvider.html" title="interface in org.apache.beam.sdk.options">ValueProvider</a>&lt;java.lang.String&gt;&nbsp;instanceId)</code>
<div class="block">Specifies the Cloud Spanner instance.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code><a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerIO.Write</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html#withMaxNumMutations-long-">withMaxNumMutations</a></span>(long&nbsp;maxNumMutations)</code>
<div class="block">Specifies the cell mutation limit (maximum number of mutated cells per batch).</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code><a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerIO.Write</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html#withMaxNumRows-long-">withMaxNumRows</a></span>(long&nbsp;maxNumRows)</code>
<div class="block">Specifies the row mutation limit (maximum number of mutated rows per batch).</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code><a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerIO.Write</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html#withProjectId-java.lang.String-">withProjectId</a></span>(java.lang.String&nbsp;projectId)</code>
<div class="block">Specifies the Cloud Spanner project.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code><a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerIO.Write</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html#withProjectId-org.apache.beam.sdk.options.ValueProvider-">withProjectId</a></span>(<a href="../../../../../../../org/apache/beam/sdk/options/ValueProvider.html" title="interface in org.apache.beam.sdk.options">ValueProvider</a>&lt;java.lang.String&gt;&nbsp;projectId)</code>
<div class="block">Specifies the Cloud Spanner project.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code><a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerIO.Write</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html#withSchemaReadySignal-org.apache.beam.sdk.values.PCollection-">withSchemaReadySignal</a></span>(<a href="../../../../../../../org/apache/beam/sdk/values/PCollection.html" title="class in org.apache.beam.sdk.values">PCollection</a>&nbsp;signal)</code>
<div class="block">Specifies an optional input PCollection that can be used as the signal for <code>Wait.OnSignal</code> to indicate when the database schema is ready to be read.</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code><a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerIO.Write</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html#withSpannerConfig-org.apache.beam.sdk.io.gcp.spanner.SpannerConfig-">withSpannerConfig</a></span>(<a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerConfig.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerConfig</a>&nbsp;spannerConfig)</code>
<div class="block">Specifies the Cloud Spanner configuration.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.beam.sdk.transforms.PTransform">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;org.apache.beam.sdk.transforms.<a href="../../../../../../../org/apache/beam/sdk/transforms/PTransform.html" title="class in org.apache.beam.sdk.transforms">PTransform</a></h3>
<code><a href="../../../../../../../org/apache/beam/sdk/transforms/PTransform.html#compose-org.apache.beam.sdk.transforms.SerializableFunction-">compose</a>, <a href="../../../../../../../org/apache/beam/sdk/transforms/PTransform.html#compose-java.lang.String-org.apache.beam.sdk.transforms.SerializableFunction-">compose</a>, <a href="../../../../../../../org/apache/beam/sdk/transforms/PTransform.html#getAdditionalInputs--">getAdditionalInputs</a>, <a href="../../../../../../../org/apache/beam/sdk/transforms/PTransform.html#getDefaultOutputCoder--">getDefaultOutputCoder</a>, <a href="../../../../../../../org/apache/beam/sdk/transforms/PTransform.html#getDefaultOutputCoder-InputT-">getDefaultOutputCoder</a>, <a href="../../../../../../../org/apache/beam/sdk/transforms/PTransform.html#getDefaultOutputCoder-InputT-org.apache.beam.sdk.values.PCollection-">getDefaultOutputCoder</a>, <a href="../../../../../../../org/apache/beam/sdk/transforms/PTransform.html#getKindString--">getKindString</a>, <a href="../../../../../../../org/apache/beam/sdk/transforms/PTransform.html#getName--">getName</a>, <a href="../../../../../../../org/apache/beam/sdk/transforms/PTransform.html#toString--">toString</a>, <a href="../../../../../../../org/apache/beam/sdk/transforms/PTransform.html#validate-org.apache.beam.sdk.options.PipelineOptions-">validate</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait</code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="Write--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>Write</h4>
<pre>public&nbsp;Write()</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="withSpannerConfig-org.apache.beam.sdk.io.gcp.spanner.SpannerConfig-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>withSpannerConfig</h4>
<pre>public&nbsp;<a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerIO.Write</a>&nbsp;withSpannerConfig(<a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerConfig.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerConfig</a>&nbsp;spannerConfig)</pre>
<div class="block">Specifies the Cloud Spanner configuration.</div>
</li>
</ul>
<a name="withProjectId-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>withProjectId</h4>
<pre>public&nbsp;<a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerIO.Write</a>&nbsp;withProjectId(java.lang.String&nbsp;projectId)</pre>
<div class="block">Specifies the Cloud Spanner project.</div>
</li>
</ul>
<a name="withProjectId-org.apache.beam.sdk.options.ValueProvider-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>withProjectId</h4>
<pre>public&nbsp;<a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerIO.Write</a>&nbsp;withProjectId(<a href="../../../../../../../org/apache/beam/sdk/options/ValueProvider.html" title="interface in org.apache.beam.sdk.options">ValueProvider</a>&lt;java.lang.String&gt;&nbsp;projectId)</pre>
<div class="block">Specifies the Cloud Spanner project.</div>
</li>
</ul>
<a name="withInstanceId-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>withInstanceId</h4>
<pre>public&nbsp;<a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerIO.Write</a>&nbsp;withInstanceId(java.lang.String&nbsp;instanceId)</pre>
<div class="block">Specifies the Cloud Spanner instance.</div>
</li>
</ul>
<a name="withInstanceId-org.apache.beam.sdk.options.ValueProvider-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>withInstanceId</h4>
<pre>public&nbsp;<a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerIO.Write</a>&nbsp;withInstanceId(<a href="../../../../../../../org/apache/beam/sdk/options/ValueProvider.html" title="interface in org.apache.beam.sdk.options">ValueProvider</a>&lt;java.lang.String&gt;&nbsp;instanceId)</pre>
<div class="block">Specifies the Cloud Spanner instance.</div>
</li>
</ul>
<a name="withDatabaseId-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>withDatabaseId</h4>
<pre>public&nbsp;<a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerIO.Write</a>&nbsp;withDatabaseId(java.lang.String&nbsp;databaseId)</pre>
<div class="block">Specifies the Cloud Spanner database.</div>
</li>
</ul>
<a name="withDatabaseId-org.apache.beam.sdk.options.ValueProvider-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>withDatabaseId</h4>
<pre>public&nbsp;<a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerIO.Write</a>&nbsp;withDatabaseId(<a href="../../../../../../../org/apache/beam/sdk/options/ValueProvider.html" title="interface in org.apache.beam.sdk.options">ValueProvider</a>&lt;java.lang.String&gt;&nbsp;databaseId)</pre>
<div class="block">Specifies the Cloud Spanner database.</div>
</li>
</ul>
<a name="withHost-org.apache.beam.sdk.options.ValueProvider-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>withHost</h4>
<pre>public&nbsp;<a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerIO.Write</a>&nbsp;withHost(<a href="../../../../../../../org/apache/beam/sdk/options/ValueProvider.html" title="interface in org.apache.beam.sdk.options">ValueProvider</a>&lt;java.lang.String&gt;&nbsp;host)</pre>
<div class="block">Specifies the Cloud Spanner host.</div>
</li>
</ul>
<a name="withHost-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>withHost</h4>
<pre>public&nbsp;<a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerIO.Write</a>&nbsp;withHost(java.lang.String&nbsp;host)</pre>
<div class="block">Specifies the Cloud Spanner host.</div>
</li>
</ul>
<a name="grouped--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>grouped</h4>
<pre>public&nbsp;<a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.WriteGrouped.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerIO.WriteGrouped</a>&nbsp;grouped()</pre>
<div class="block">Same transform but can be applied to <a href="../../../../../../../org/apache/beam/sdk/values/PCollection.html" title="class in org.apache.beam.sdk.values"><code>PCollection</code></a> of <a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/MutationGroup.html" title="class in org.apache.beam.sdk.io.gcp.spanner"><code>MutationGroup</code></a>.</div>
</li>
</ul>
<a name="withBatchSizeBytes-long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>withBatchSizeBytes</h4>
<pre>public&nbsp;<a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerIO.Write</a>&nbsp;withBatchSizeBytes(long&nbsp;batchSizeBytes)</pre>
<div class="block">Specifies the batch size limit (max number of bytes mutated per batch). Default value is 1MB</div>
</li>
</ul>
<a name="withFailureMode-org.apache.beam.sdk.io.gcp.spanner.SpannerIO.FailureMode-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>withFailureMode</h4>
<pre>public&nbsp;<a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerIO.Write</a>&nbsp;withFailureMode(<a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.FailureMode.html" title="enum in org.apache.beam.sdk.io.gcp.spanner">SpannerIO.FailureMode</a>&nbsp;failureMode)</pre>
<div class="block">Specifies failure mode. <a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.FailureMode.html#FAIL_FAST"><code>SpannerIO.FailureMode.FAIL_FAST</code></a> mode is selected by default.</div>
</li>
</ul>
<a name="withMaxNumMutations-long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>withMaxNumMutations</h4>
<pre>public&nbsp;<a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerIO.Write</a>&nbsp;withMaxNumMutations(long&nbsp;maxNumMutations)</pre>
<div class="block">Specifies the cell mutation limit (maximum number of mutated cells per batch). Default value
is 5000</div>
</li>
</ul>
<a name="withMaxNumRows-long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>withMaxNumRows</h4>
<pre>public&nbsp;<a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerIO.Write</a>&nbsp;withMaxNumRows(long&nbsp;maxNumRows)</pre>
<div class="block">Specifies the row mutation limit (maximum number of mutated rows per batch). Default value is
1000</div>
</li>
</ul>
<a name="withSchemaReadySignal-org.apache.beam.sdk.values.PCollection-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>withSchemaReadySignal</h4>
<pre>public&nbsp;<a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerIO.Write</a>&nbsp;withSchemaReadySignal(<a href="../../../../../../../org/apache/beam/sdk/values/PCollection.html" title="class in org.apache.beam.sdk.values">PCollection</a>&nbsp;signal)</pre>
<div class="block">Specifies an optional input PCollection that can be used as the signal for <code>Wait.OnSignal</code> to indicate when the database schema is ready to be read.
<p>To be used when the database schema is created by another section of the pipeline, this
causes this transform to wait until the <code>signal PCollection</code> has been closed before
reading the schema from the database.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><code>Wait.OnSignal</code></dd>
</dl>
</li>
</ul>
<a name="withGroupingFactor-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>withGroupingFactor</h4>
<pre>public&nbsp;<a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerIO.Write</a>&nbsp;withGroupingFactor(int&nbsp;groupingFactor)</pre>
<div class="block">Specifies the multiple of max mutation (in terms of both bytes per batch and cells per batch)
that is used to select a set of mutations to sort by key for batching. This sort uses local
memory on the workers, so using large values can cause out of memory errors. Default value is
1000.</div>
</li>
</ul>
<a name="expand-org.apache.beam.sdk.values.PCollection-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>expand</h4>
<pre>public&nbsp;<a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerWriteResult.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerWriteResult</a>&nbsp;expand(<a href="../../../../../../../org/apache/beam/sdk/values/PCollection.html" title="class in org.apache.beam.sdk.values">PCollection</a>&lt;<a href="https://static.javadoc.io/com.google.cloud/google-cloud-spanner/1.6.0/com/google/cloud/spanner/Mutation.html?is-external=true" title="class or interface in com.google.cloud.spanner">Mutation</a>&gt;&nbsp;input)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../../org/apache/beam/sdk/transforms/PTransform.html#expand-InputT-">PTransform</a></code></span></div>
<div class="block">Override this method to specify how this <code>PTransform</code> should be expanded on the given
<code>InputT</code>.
<p>NOTE: This method should not be called directly. Instead apply the <code>PTransform</code> should
be applied to the <code>InputT</code> using the <code>apply</code> method.
<p>Composite transforms, which are defined in terms of other transforms, should return the
output of one of the composed transforms. Non-composite transforms, which do not apply any
transforms internally, should return a new unbound output and register evaluators (via
backend-specific registration methods).</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../../org/apache/beam/sdk/transforms/PTransform.html#expand-InputT-">expand</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../../org/apache/beam/sdk/transforms/PTransform.html" title="class in org.apache.beam.sdk.transforms">PTransform</a>&lt;<a href="../../../../../../../org/apache/beam/sdk/values/PCollection.html" title="class in org.apache.beam.sdk.values">PCollection</a>&lt;<a href="https://static.javadoc.io/com.google.cloud/google-cloud-spanner/1.6.0/com/google/cloud/spanner/Mutation.html?is-external=true" title="class or interface in com.google.cloud.spanner">Mutation</a>&gt;,<a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerWriteResult.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerWriteResult</a>&gt;</code></dd>
</dl>
</li>
</ul>
<a name="populateDisplayData-org.apache.beam.sdk.transforms.display.DisplayData.Builder-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>populateDisplayData</h4>
<pre>public&nbsp;void&nbsp;populateDisplayData(<a href="../../../../../../../org/apache/beam/sdk/transforms/display/DisplayData.Builder.html" title="interface in org.apache.beam.sdk.transforms.display">DisplayData.Builder</a>&nbsp;builder)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../../org/apache/beam/sdk/transforms/PTransform.html#populateDisplayData-org.apache.beam.sdk.transforms.display.DisplayData.Builder-">PTransform</a></code></span></div>
<div class="block">Register display data for the given transform or component.
<p><code>populateDisplayData(DisplayData.Builder)</code> is invoked by Pipeline runners to collect
display data via <a href="../../../../../../../org/apache/beam/sdk/transforms/display/DisplayData.html#from-org.apache.beam.sdk.transforms.display.HasDisplayData-"><code>DisplayData.from(HasDisplayData)</code></a>. Implementations may call <code>super.populateDisplayData(builder)</code> in order to register display data in the current namespace,
but should otherwise use <code>subcomponent.populateDisplayData(builder)</code> to use the namespace
of the subcomponent.
<p>By default, does not register any display data. Implementors may override this method to
provide their own display data.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../../org/apache/beam/sdk/transforms/display/HasDisplayData.html#populateDisplayData-org.apache.beam.sdk.transforms.display.DisplayData.Builder-">populateDisplayData</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../../org/apache/beam/sdk/transforms/display/HasDisplayData.html" title="interface in org.apache.beam.sdk.transforms.display">HasDisplayData</a></code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../../../org/apache/beam/sdk/transforms/PTransform.html#populateDisplayData-org.apache.beam.sdk.transforms.display.DisplayData.Builder-">populateDisplayData</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../../org/apache/beam/sdk/transforms/PTransform.html" title="class in org.apache.beam.sdk.transforms">PTransform</a>&lt;<a href="../../../../../../../org/apache/beam/sdk/values/PCollection.html" title="class in org.apache.beam.sdk.values">PCollection</a>&lt;<a href="https://static.javadoc.io/com.google.cloud/google-cloud-spanner/1.6.0/com/google/cloud/spanner/Mutation.html?is-external=true" title="class or interface in com.google.cloud.spanner">Mutation</a>&gt;,<a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerWriteResult.html" title="class in org.apache.beam.sdk.io.gcp.spanner">SpannerWriteResult</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>builder</code> - The builder to populate with display data.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../../org/apache/beam/sdk/transforms/display/HasDisplayData.html" title="interface in org.apache.beam.sdk.transforms.display"><code>HasDisplayData</code></a></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="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/beam/sdk/io/gcp/spanner/SpannerIO.ReadAll.html" title="class in org.apache.beam.sdk.io.gcp.spanner"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../../../org/apache/beam/sdk/io/gcp/spanner/SpannerIO.WriteGrouped.html" title="class in org.apache.beam.sdk.io.gcp.spanner"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../../index.html?org/apache/beam/sdk/io/gcp/spanner/SpannerIO.Write.html" target="_top">Frames</a></li>
<li><a href="SpannerIO.Write.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><a href="#fields.inherited.from.class.org.apache.beam.sdk.transforms.PTransform">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&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><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>