Package com.illumon.iris.importers.util
Interface MergeParameters
@Immutable
public interface MergeParameters
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic interface
A Builder for constructing aMergeParameters
-
Field Summary
Fields -
Method Summary
Modifier and TypeMethodDescriptiondefault boolean
Get if empty input tables are allowed.static MergeParameters.Builder
builder()
Construct an empty builder.static MergeParameters.Builder
Construct a builder, pre-populating the logger, database namespace and table name properties.static MergeParameters.Builder
Construct a builder, pre-populating the database namespace and table name properties.default void
check()
default String
Get the compression codec name to use whenstorageFormat()
isDatabase.StorageFormat.Parquet
.default Database
db()
Get the database to fetch tables from.default String
Compute the effective partition for the merge based upon thepartitionColumnFormula()
andpartitionColumnValue()
.default boolean
force()
Get if merge should overwrite existing data.default boolean
Get if late cleanup is used.default com.fishlib.io.logger.Logger
logger()
Get the logger to use.default boolean
Get if low heap usage mode should be used.default int
The maximum number of columns that may be concurrently processed when in maximum throughput mode.Get the namespace to merge data into.default String
The formula to determine column partition.default String
Get the partitioning column value to use.default String
Get the sorting column formula.Get the sourceTable
for the merge.default Database.StorageFormat
Get theDatabase.StorageFormat
to merge into.default SyncMode
syncMode()
Get theSyncMode
to use.Get the Table to merge intodefault String
tdsName()
Get the name of the Table data service to use.default int
Get the number of threads to use for merge.
-
Field Details
-
FORMAT_DEEPHAVEN
- See Also:
-
FORMAT_PARQUET
- See Also:
-
SORT_COLUMN_ARG_KEY
- See Also:
-
LOW_HEAP_USAGE_MODE_ARG_KEY
- See Also:
-
FORCE_ARG_KEY
- See Also:
-
ALLOW_EMPTY_INPUT_ARG_KEY
- See Also:
-
SYNC_MODE_ARG_KEY
- See Also:
-
MERGE_FORMAT_ARG_KEY
- See Also:
-
PARQUET_CODEC_ARG_KEY
- See Also:
-
DEFAULT_SYNC_MODE
-
-
Method Details
-
builder
Construct an empty builder.- Returns:
- a new empty
MergeParameters.Builder
-
builder
static MergeParameters.Builder builder(@NotNull Database db, @NotNull String namespace, @NotNull String tableName) Construct a builder, pre-populating the database namespace and table name properties.- Parameters:
db
- the databasenamespace
- the namespace to merge totableName
- the table name to merge to- Returns:
- a
MergeParameters.Builder
populated with the specified parameters/
-
builder
static MergeParameters.Builder builder(@NotNull com.fishlib.io.logger.Logger log, @NotNull Database db, @NotNull String namespace, @NotNull String tableName) Construct a builder, pre-populating the logger, database namespace and table name properties.- Parameters:
log
- the loggerdb
- the databasenamespace
- the namespace to merge totableName
- the table name to merge to- Returns:
- a
MergeParameters.Builder
populated with the specified parameters/
-
logger
@Default @Nullable default com.fishlib.io.logger.Logger logger()Get the logger to use.- Returns:
- the logger
-
db
Get the database to fetch tables from.- Returns:
- the database
-
tdsName
Get the name of the Table data service to use.- Returns:
- the table data service name
-
namespace
String namespace()Get the namespace to merge data into.- Returns:
- the namespace
-
tableName
String tableName()Get the Table to merge into- Returns:
- the table name to merge into
-
partitionColumnValue
Get the partitioning column value to use. If apartitionColumnFormula()
was set instead of a value that formula is evaluated and captured wheneffectivePartition()
is called.- Returns:
- the column partition value to use
-
partitionColumnFormula
The formula to determine column partition.- Returns:
- the partitioning column formula.
-
effectivePartition
Compute the effective partition for the merge based upon thepartitionColumnFormula()
andpartitionColumnValue()
.- Returns:
- the effective partition
-
threadPoolSize
@Default default int threadPoolSize()Get the number of threads to use for merge. Defaults to the value of the property `MergeParameters.defaultThreadPoolSize`, which defaults to 1- Returns:
- the number of threads to use
-
maximumConcurrentColumns
@Default default int maximumConcurrentColumns()The maximum number of columns that may be concurrently processed when in maximum throughput mode. In this mode, no matter how many threads are available write jobs will not be enqueued until less than this number of distinct columns are being written. Defaults to unlimited.- Returns:
- the maximum number of columns that may be written concurrently.
-
lowHeapUsage
@Default default boolean lowHeapUsage()Get if low heap usage mode should be used. Defaults tofalse
.- Returns:
- true if low heap usage mode is enabled
-
force
@Default default boolean force()Get if merge should overwrite existing data. Defaults tofalse
.- Returns:
- true if merge should overwrite existing data
-
lateCleanup
@Default default boolean lateCleanup()Get if late cleanup is used. Defaults to false.- Returns:
- if late cleanup is used
-
allowEmptyInput
@Default default boolean allowEmptyInput()Get if empty input tables are allowed. Defaults totrue
.- Returns:
- if empty input tables are allowed
-
sortColumnFormula
Get the sorting column formula. Defaults tonull
.- Returns:
- the sorting column formula
-
storageFormat
Get theDatabase.StorageFormat
to merge into.- Returns:
- the storage format (or null for system default)
-
codecName
Get the compression codec name to use whenstorageFormat()
isDatabase.StorageFormat.Parquet
.- Returns:
- the compression codec or
null
for uncompressed/
-
syncMode
Get theSyncMode
to use.- Returns:
- the
SyncMode
-
sourceTable
Get the sourceTable
for the merge.- Returns:
- the source table.
-
check
-