public static class ElasticsearchIO.Write
extends org.apache.beam.sdk.transforms.PTransform<org.apache.beam.sdk.values.PCollection<java.lang.String>,org.apache.beam.sdk.values.PCollectionTuple>
PTransform writing data to Elasticsearch.
This PTransform acts as a convenience wrapper for doing both document to bulk API
serialization as well as batching those Bulk API entities and writing them to an Elasticsearch
cluster. This class is effectively a thin proxy for DocToBulk->BulkIO all-in-one for
convenience and backward compatibility.
| Modifier and Type | Class and Description |
|---|---|
static interface |
ElasticsearchIO.Write.BooleanFieldValueExtractFn |
static interface |
ElasticsearchIO.Write.FieldValueExtractFn |
| Modifier and Type | Field and Description |
|---|---|
static org.apache.beam.sdk.values.TupleTag<ElasticsearchIO.Document> |
FAILED_WRITES |
static org.apache.beam.sdk.values.TupleTag<ElasticsearchIO.Document> |
SUCCESSFUL_WRITES |
| Constructor and Description |
|---|
Write() |
public static final org.apache.beam.sdk.values.TupleTag<ElasticsearchIO.Document> SUCCESSFUL_WRITES
public static final org.apache.beam.sdk.values.TupleTag<ElasticsearchIO.Document> FAILED_WRITES
public ElasticsearchIO.DocToBulk getDocToBulk()
public ElasticsearchIO.BulkIO getBulkIO()
public ElasticsearchIO.Write withIdFn(ElasticsearchIO.Write.FieldValueExtractFn idFn)
public ElasticsearchIO.Write withIndexFn(ElasticsearchIO.Write.FieldValueExtractFn indexFn)
public ElasticsearchIO.Write withRoutingFn(ElasticsearchIO.Write.FieldValueExtractFn routingFn)
public ElasticsearchIO.Write withTypeFn(ElasticsearchIO.Write.FieldValueExtractFn typeFn)
public ElasticsearchIO.Write withDocVersionFn(ElasticsearchIO.Write.FieldValueExtractFn docVersionFn)
public ElasticsearchIO.Write withDocVersionType(java.lang.String docVersionType)
public ElasticsearchIO.Write withUsePartialUpdate(boolean usePartialUpdate)
public ElasticsearchIO.Write withAppendOnly(boolean appendOnly)
public ElasticsearchIO.Write withUpsertScript(java.lang.String source)
public ElasticsearchIO.Write withBackendVersion(int backendVersion)
public ElasticsearchIO.Write withIsDeleteFn(ElasticsearchIO.Write.BooleanFieldValueExtractFn isDeleteFn)
public ElasticsearchIO.Write withConnectionConfiguration(ElasticsearchIO.ConnectionConfiguration connectionConfiguration)
public ElasticsearchIO.Write withMaxBatchSize(long batchSize)
public ElasticsearchIO.Write withMaxBatchSizeBytes(long batchSizeBytes)
public ElasticsearchIO.Write withRetryConfiguration(ElasticsearchIO.RetryConfiguration retryConfiguration)
public ElasticsearchIO.Write withIgnoreVersionConflicts(boolean ignoreVersionConflicts)
public ElasticsearchIO.Write withUseStatefulBatches(boolean useStatefulBatches)
public ElasticsearchIO.Write withMaxBufferingDuration(org.joda.time.Duration maxBufferingDuration)
public ElasticsearchIO.Write withMaxParallelRequestsPerWindow(int maxParallelRequestsPerWindow)
public ElasticsearchIO.Write withAllowableResponseErrors(@Nullable java.util.Set<java.lang.String> allowableResponseErrors)
public ElasticsearchIO.Write withThrowWriteErrors(boolean throwWriteErrors)
public org.apache.beam.sdk.values.PCollectionTuple expand(org.apache.beam.sdk.values.PCollection<java.lang.String> input)
expand in class org.apache.beam.sdk.transforms.PTransform<org.apache.beam.sdk.values.PCollection<java.lang.String>,org.apache.beam.sdk.values.PCollectionTuple>