Class ElasticsearchTransformClient
- All Implemented Interfaces:
Closeable
,AutoCloseable
-
Field Summary
Fields inherited from class co.elastic.clients.ApiClient
transport, transportOptions
-
Constructor Summary
ConstructorsConstructorDescriptionElasticsearchTransformClient
(ElasticsearchTransport transport, TransportOptions transportOptions) -
Method Summary
Modifier and TypeMethodDescriptiondeleteTransform
(DeleteTransformRequest request) Delete a transform.final DeleteTransformResponse
Delete a transform.Get transforms.getTransform
(GetTransformRequest request) Get transforms.final GetTransformResponse
Get transforms.Get transform stats.getTransformStats
(Function<GetTransformStatsRequest.Builder, ObjectBuilder<GetTransformStatsRequest>> fn) Get transform stats.<TTransform>
PreviewTransformResponse<TTransform>previewTransform
(PreviewTransformRequest request, Class<TTransform> tTransformClass) Preview a transform.<TTransform>
PreviewTransformResponse<TTransform>previewTransform
(PreviewTransformRequest request, Type tTransformType) Preview a transform.final <TTransform>
PreviewTransformResponse<TTransform>previewTransform
(Function<PreviewTransformRequest.Builder, ObjectBuilder<PreviewTransformRequest>> fn, Class<TTransform> tTransformClass) Preview a transform.final <TTransform>
PreviewTransformResponse<TTransform>previewTransform
(Function<PreviewTransformRequest.Builder, ObjectBuilder<PreviewTransformRequest>> fn, Type tTransformType) Preview a transform.putTransform
(PutTransformRequest request) Create a transform.final PutTransformResponse
Create a transform.resetTransform
(ResetTransformRequest request) Reset a transform.final ResetTransformResponse
Reset a transform.Schedule a transform to start now.scheduleNowTransform
(Function<ScheduleNowTransformRequest.Builder, ObjectBuilder<ScheduleNowTransformRequest>> fn) Schedule a transform to start now.startTransform
(StartTransformRequest request) Start a transform.final StartTransformResponse
Start a transform.stopTransform
(StopTransformRequest request) Stop transforms.final StopTransformResponse
Stop transforms.updateTransform
(UpdateTransformRequest request) Update a transform.final UpdateTransformResponse
Update a transform.Upgrade all transforms.Upgrade all transforms.upgradeTransforms
(Function<UpgradeTransformsRequest.Builder, ObjectBuilder<UpgradeTransformsRequest>> fn) Upgrade all transforms.withTransportOptions
(TransportOptions transportOptions) Creates a new client with some request optionsMethods inherited from class co.elastic.clients.ApiClient
_jsonpMapper, _transport, _transportOptions, close, getDeserializer, withTransportOptions
-
Constructor Details
-
ElasticsearchTransformClient
-
ElasticsearchTransformClient
public ElasticsearchTransformClient(ElasticsearchTransport transport, @Nullable TransportOptions transportOptions)
-
-
Method Details
-
withTransportOptions
public ElasticsearchTransformClient withTransportOptions(@Nullable TransportOptions transportOptions) Description copied from class:ApiClient
Creates a new client with some request options- Specified by:
withTransportOptions
in classApiClient<ElasticsearchTransport,
ElasticsearchTransformClient>
-
deleteTransform
public DeleteTransformResponse deleteTransform(DeleteTransformRequest request) throws IOException, ElasticsearchException Delete a transform.- Throws:
IOException
ElasticsearchException
- See Also:
-
deleteTransform
public final DeleteTransformResponse deleteTransform(Function<DeleteTransformRequest.Builder, ObjectBuilder<DeleteTransformRequest>> fn) throws IOException, ElasticsearchExceptionDelete a transform.- Parameters:
fn
- a function that initializes a builder to create theDeleteTransformRequest
- Throws:
IOException
ElasticsearchException
- See Also:
-
getTransform
public GetTransformResponse getTransform(GetTransformRequest request) throws IOException, ElasticsearchException Get transforms. Get configuration information for transforms.- Throws:
IOException
ElasticsearchException
- See Also:
-
getTransform
public final GetTransformResponse getTransform(Function<GetTransformRequest.Builder, ObjectBuilder<GetTransformRequest>> fn) throws IOException, ElasticsearchExceptionGet transforms. Get configuration information for transforms.- Parameters:
fn
- a function that initializes a builder to create theGetTransformRequest
- Throws:
IOException
ElasticsearchException
- See Also:
-
getTransform
Get transforms. Get configuration information for transforms.- Throws:
IOException
ElasticsearchException
- See Also:
-
getTransformStats
public GetTransformStatsResponse getTransformStats(GetTransformStatsRequest request) throws IOException, ElasticsearchException Get transform stats.Get usage information for transforms.
- Throws:
IOException
ElasticsearchException
- See Also:
-
getTransformStats
public final GetTransformStatsResponse getTransformStats(Function<GetTransformStatsRequest.Builder, ObjectBuilder<GetTransformStatsRequest>> fn) throws IOException, ElasticsearchExceptionGet transform stats.Get usage information for transforms.
- Parameters:
fn
- a function that initializes a builder to create theGetTransformStatsRequest
- Throws:
IOException
ElasticsearchException
- See Also:
-
previewTransform
public <TTransform> PreviewTransformResponse<TTransform> previewTransform(PreviewTransformRequest request, Class<TTransform> tTransformClass) throws IOException, ElasticsearchException Preview a transform. Generates a preview of the results that you will get when you create a transform with the same configuration.It returns a maximum of 100 results. The calculations are based on all the current data in the source index. It also generates a list of mappings and settings for the destination index. These values are determined based on the field types of the source index and the transform aggregations.
- Throws:
IOException
ElasticsearchException
- See Also:
-
previewTransform
public final <TTransform> PreviewTransformResponse<TTransform> previewTransform(Function<PreviewTransformRequest.Builder, ObjectBuilder<PreviewTransformRequest>> fn, Class<TTransform> tTransformClass) throws IOException, ElasticsearchExceptionPreview a transform. Generates a preview of the results that you will get when you create a transform with the same configuration.It returns a maximum of 100 results. The calculations are based on all the current data in the source index. It also generates a list of mappings and settings for the destination index. These values are determined based on the field types of the source index and the transform aggregations.
- Parameters:
fn
- a function that initializes a builder to create thePreviewTransformRequest
- Throws:
IOException
ElasticsearchException
- See Also:
-
previewTransform
public <TTransform> PreviewTransformResponse<TTransform> previewTransform(PreviewTransformRequest request, Type tTransformType) throws IOException, ElasticsearchException Preview a transform. Generates a preview of the results that you will get when you create a transform with the same configuration.It returns a maximum of 100 results. The calculations are based on all the current data in the source index. It also generates a list of mappings and settings for the destination index. These values are determined based on the field types of the source index and the transform aggregations.
- Throws:
IOException
ElasticsearchException
- See Also:
-
previewTransform
public final <TTransform> PreviewTransformResponse<TTransform> previewTransform(Function<PreviewTransformRequest.Builder, ObjectBuilder<PreviewTransformRequest>> fn, Type tTransformType) throws IOException, ElasticsearchExceptionPreview a transform. Generates a preview of the results that you will get when you create a transform with the same configuration.It returns a maximum of 100 results. The calculations are based on all the current data in the source index. It also generates a list of mappings and settings for the destination index. These values are determined based on the field types of the source index and the transform aggregations.
- Parameters:
fn
- a function that initializes a builder to create thePreviewTransformRequest
- Throws:
IOException
ElasticsearchException
- See Also:
-
putTransform
public PutTransformResponse putTransform(PutTransformRequest request) throws IOException, ElasticsearchException Create a transform. Creates a transform.A transform copies data from source indices, transforms it, and persists it into an entity-centric destination index. You can also think of the destination index as a two-dimensional tabular data structure (known as a data frame). The ID for each document in the data frame is generated from a hash of the entity, so there is a unique row per entity.
You must choose either the latest or pivot method for your transform; you cannot use both in a single transform. If you choose to use the pivot method for your transform, the entities are defined by the set of
group_by
fields in the pivot object. If you choose to use the latest method, the entities are defined by theunique_key
field values in the latest object.You must have
create_index
,index
, andread
privileges on the destination index andread
andview_index_metadata
privileges on the source indices. When Elasticsearch security features are enabled, the transform remembers which roles the user that created it had at the time of creation and uses those same roles. If those roles do not have the required privileges on the source and destination indices, the transform fails when it attempts unauthorized operations.NOTE: You must use Kibana or this API to create a transform. Do not add a transform directly into any
.transform-internal*
indices using the Elasticsearch index API. If Elasticsearch security features are enabled, do not give users any privileges on.transform-internal*
indices. If you used transforms prior to 7.5, also do not give users any privileges on.data-frame-internal*
indices.- Throws:
IOException
ElasticsearchException
- See Also:
-
putTransform
public final PutTransformResponse putTransform(Function<PutTransformRequest.Builder, ObjectBuilder<PutTransformRequest>> fn) throws IOException, ElasticsearchExceptionCreate a transform. Creates a transform.A transform copies data from source indices, transforms it, and persists it into an entity-centric destination index. You can also think of the destination index as a two-dimensional tabular data structure (known as a data frame). The ID for each document in the data frame is generated from a hash of the entity, so there is a unique row per entity.
You must choose either the latest or pivot method for your transform; you cannot use both in a single transform. If you choose to use the pivot method for your transform, the entities are defined by the set of
group_by
fields in the pivot object. If you choose to use the latest method, the entities are defined by theunique_key
field values in the latest object.You must have
create_index
,index
, andread
privileges on the destination index andread
andview_index_metadata
privileges on the source indices. When Elasticsearch security features are enabled, the transform remembers which roles the user that created it had at the time of creation and uses those same roles. If those roles do not have the required privileges on the source and destination indices, the transform fails when it attempts unauthorized operations.NOTE: You must use Kibana or this API to create a transform. Do not add a transform directly into any
.transform-internal*
indices using the Elasticsearch index API. If Elasticsearch security features are enabled, do not give users any privileges on.transform-internal*
indices. If you used transforms prior to 7.5, also do not give users any privileges on.data-frame-internal*
indices.- Parameters:
fn
- a function that initializes a builder to create thePutTransformRequest
- Throws:
IOException
ElasticsearchException
- See Also:
-
resetTransform
public ResetTransformResponse resetTransform(ResetTransformRequest request) throws IOException, ElasticsearchException Reset a transform.Before you can reset it, you must stop it; alternatively, use the
force
query parameter. If the destination index was created by the transform, it is deleted.- Throws:
IOException
ElasticsearchException
- See Also:
-
resetTransform
public final ResetTransformResponse resetTransform(Function<ResetTransformRequest.Builder, ObjectBuilder<ResetTransformRequest>> fn) throws IOException, ElasticsearchExceptionReset a transform.Before you can reset it, you must stop it; alternatively, use the
force
query parameter. If the destination index was created by the transform, it is deleted.- Parameters:
fn
- a function that initializes a builder to create theResetTransformRequest
- Throws:
IOException
ElasticsearchException
- See Also:
-
scheduleNowTransform
public ScheduleNowTransformResponse scheduleNowTransform(ScheduleNowTransformRequest request) throws IOException, ElasticsearchException Schedule a transform to start now.Instantly run a transform to process data. If you run this API, the transform will process the new data instantly, without waiting for the configured frequency interval. After the API is called, the transform will be processed again at
now + frequency
unless the API is called again in the meantime.- Throws:
IOException
ElasticsearchException
- See Also:
-
scheduleNowTransform
public final ScheduleNowTransformResponse scheduleNowTransform(Function<ScheduleNowTransformRequest.Builder, ObjectBuilder<ScheduleNowTransformRequest>> fn) throws IOException, ElasticsearchExceptionSchedule a transform to start now.Instantly run a transform to process data. If you run this API, the transform will process the new data instantly, without waiting for the configured frequency interval. After the API is called, the transform will be processed again at
now + frequency
unless the API is called again in the meantime.- Parameters:
fn
- a function that initializes a builder to create theScheduleNowTransformRequest
- Throws:
IOException
ElasticsearchException
- See Also:
-
startTransform
public StartTransformResponse startTransform(StartTransformRequest request) throws IOException, ElasticsearchException Start a transform.When you start a transform, it creates the destination index if it does not already exist. The
number_of_shards
is set to1
and theauto_expand_replicas
is set to0-1
. If it is a pivot transform, it deduces the mapping definitions for the destination index from the source indices and the transform aggregations. If fields in the destination index are derived from scripts (as in the case ofscripted_metric
orbucket_script
aggregations), the transform uses dynamic mappings unless an index template exists. If it is a latest transform, it does not deduce mapping definitions; it uses dynamic mappings. To use explicit mappings, create the destination index before you start the transform. Alternatively, you can create an index template, though it does not affect the deduced mappings in a pivot transform.When the transform starts, a series of validations occur to ensure its success. If you deferred validation when you created the transform, they occur when you start the transform—with the exception of privilege checks. When Elasticsearch security features are enabled, the transform remembers which roles the user that created it had at the time of creation and uses those same roles. If those roles do not have the required privileges on the source and destination indices, the transform fails when it attempts unauthorized operations.
- Throws:
IOException
ElasticsearchException
- See Also:
-
startTransform
public final StartTransformResponse startTransform(Function<StartTransformRequest.Builder, ObjectBuilder<StartTransformRequest>> fn) throws IOException, ElasticsearchExceptionStart a transform.When you start a transform, it creates the destination index if it does not already exist. The
number_of_shards
is set to1
and theauto_expand_replicas
is set to0-1
. If it is a pivot transform, it deduces the mapping definitions for the destination index from the source indices and the transform aggregations. If fields in the destination index are derived from scripts (as in the case ofscripted_metric
orbucket_script
aggregations), the transform uses dynamic mappings unless an index template exists. If it is a latest transform, it does not deduce mapping definitions; it uses dynamic mappings. To use explicit mappings, create the destination index before you start the transform. Alternatively, you can create an index template, though it does not affect the deduced mappings in a pivot transform.When the transform starts, a series of validations occur to ensure its success. If you deferred validation when you created the transform, they occur when you start the transform—with the exception of privilege checks. When Elasticsearch security features are enabled, the transform remembers which roles the user that created it had at the time of creation and uses those same roles. If those roles do not have the required privileges on the source and destination indices, the transform fails when it attempts unauthorized operations.
- Parameters:
fn
- a function that initializes a builder to create theStartTransformRequest
- Throws:
IOException
ElasticsearchException
- See Also:
-
stopTransform
public StopTransformResponse stopTransform(StopTransformRequest request) throws IOException, ElasticsearchException Stop transforms. Stops one or more transforms.- Throws:
IOException
ElasticsearchException
- See Also:
-
stopTransform
public final StopTransformResponse stopTransform(Function<StopTransformRequest.Builder, ObjectBuilder<StopTransformRequest>> fn) throws IOException, ElasticsearchExceptionStop transforms. Stops one or more transforms.- Parameters:
fn
- a function that initializes a builder to create theStopTransformRequest
- Throws:
IOException
ElasticsearchException
- See Also:
-
updateTransform
public UpdateTransformResponse updateTransform(UpdateTransformRequest request) throws IOException, ElasticsearchException Update a transform. Updates certain properties of a transform.All updated properties except
description
do not take effect until after the transform starts the next checkpoint, thus there is data consistency in each checkpoint. To use this API, you must haveread
andview_index_metadata
privileges for the source indices. You must also haveindex
andread
privileges for the destination index. When Elasticsearch security features are enabled, the transform remembers which roles the user who updated it had at the time of update and runs with those privileges.- Throws:
IOException
ElasticsearchException
- See Also:
-
updateTransform
public final UpdateTransformResponse updateTransform(Function<UpdateTransformRequest.Builder, ObjectBuilder<UpdateTransformRequest>> fn) throws IOException, ElasticsearchExceptionUpdate a transform. Updates certain properties of a transform.All updated properties except
description
do not take effect until after the transform starts the next checkpoint, thus there is data consistency in each checkpoint. To use this API, you must haveread
andview_index_metadata
privileges for the source indices. You must also haveindex
andread
privileges for the destination index. When Elasticsearch security features are enabled, the transform remembers which roles the user who updated it had at the time of update and runs with those privileges.- Parameters:
fn
- a function that initializes a builder to create theUpdateTransformRequest
- Throws:
IOException
ElasticsearchException
- See Also:
-
upgradeTransforms
public UpgradeTransformsResponse upgradeTransforms(UpgradeTransformsRequest request) throws IOException, ElasticsearchException Upgrade all transforms.Transforms are compatible across minor versions and between supported major versions. However, over time, the format of transform configuration information may change. This API identifies transforms that have a legacy configuration format and upgrades them to the latest version. It also cleans up the internal data structures that store the transform state and checkpoints. The upgrade does not affect the source and destination indices. The upgrade also does not affect the roles that transforms use when Elasticsearch security features are enabled; the role used to read source data and write to the destination index remains unchanged.
If a transform upgrade step fails, the upgrade stops and an error is returned about the underlying issue. Resolve the issue then re-run the process again. A summary is returned when the upgrade is finished.
To ensure continuous transforms remain running during a major version upgrade of the cluster – for example, from 7.16 to 8.0 – it is recommended to upgrade transforms before upgrading the cluster. You may want to perform a recent cluster backup prior to the upgrade.
- Throws:
IOException
ElasticsearchException
- See Also:
-
upgradeTransforms
public final UpgradeTransformsResponse upgradeTransforms(Function<UpgradeTransformsRequest.Builder, ObjectBuilder<UpgradeTransformsRequest>> fn) throws IOException, ElasticsearchExceptionUpgrade all transforms.Transforms are compatible across minor versions and between supported major versions. However, over time, the format of transform configuration information may change. This API identifies transforms that have a legacy configuration format and upgrades them to the latest version. It also cleans up the internal data structures that store the transform state and checkpoints. The upgrade does not affect the source and destination indices. The upgrade also does not affect the roles that transforms use when Elasticsearch security features are enabled; the role used to read source data and write to the destination index remains unchanged.
If a transform upgrade step fails, the upgrade stops and an error is returned about the underlying issue. Resolve the issue then re-run the process again. A summary is returned when the upgrade is finished.
To ensure continuous transforms remain running during a major version upgrade of the cluster – for example, from 7.16 to 8.0 – it is recommended to upgrade transforms before upgrading the cluster. You may want to perform a recent cluster backup prior to the upgrade.
- Parameters:
fn
- a function that initializes a builder to create theUpgradeTransformsRequest
- Throws:
IOException
ElasticsearchException
- See Also:
-
upgradeTransforms
Upgrade all transforms.Transforms are compatible across minor versions and between supported major versions. However, over time, the format of transform configuration information may change. This API identifies transforms that have a legacy configuration format and upgrades them to the latest version. It also cleans up the internal data structures that store the transform state and checkpoints. The upgrade does not affect the source and destination indices. The upgrade also does not affect the roles that transforms use when Elasticsearch security features are enabled; the role used to read source data and write to the destination index remains unchanged.
If a transform upgrade step fails, the upgrade stops and an error is returned about the underlying issue. Resolve the issue then re-run the process again. A summary is returned when the upgrade is finished.
To ensure continuous transforms remain running during a major version upgrade of the cluster – for example, from 7.16 to 8.0 – it is recommended to upgrade transforms before upgrading the cluster. You may want to perform a recent cluster backup prior to the upgrade.
- Throws:
IOException
ElasticsearchException
- See Also:
-