writers.tiledb
Implements TileDB 2.3.0+ reads from an array.
Dynamic Plugin
This stage requires a dynamic plugin to operate
Streamable Stage
This stage supports streaming operations
Example
[
{
"type":"readers.las",
"array_name":"input.las"
},
{
"type":"filters.stats"
},
{
"type":"writers.tiledb",
"array_name":"output_array"
}
]
Options
- array_name
TileDB array to write to. Synonymous with filename. [Required]
- config_file
TileDB configuration file. [Optional]
- data_tile_capacity
Number of points per tile. Not used when append=true. [Default: 100,000]
- x_tile_size
Tile size (x). Floating point value used for determining on-disk data order. Not used when append=true. [Optional]
- y_tile_size
Tile size (y). Floating point value used for determining on-disk data order. Not used when append=true. [Optional]
- z_tile_size
Tile size (z). Floating point value used for determining on-disk data order. Not used when append=true. [Optional]
- time_tile_size
Tile size (time). Not used when append=true. [Optional]
- x_domain_st
Domain minimum for x. Not used when append=true. [Optional]
- x_domain_end
Domain maximum for x. Not used when append=true. [Optional]
- y_domain_st
Domain minimum for y. Not used when append=true. [Optional]
- y_domain_end
Domain maximum for y. Not used when append=true. [Optional]
- z_domain_st
Domain minimum for z. Not used when append=true. [Optional]
- z_domain_end
Domain maximum for z. Not used when append=true. [Optional]
- time_domain_st
Domain minimum for GpsTime. Not used when append=true. [Optional]
- time_domain_end
Domain maximum for GpsTime. Not used when append=true. [Optional]
- use_time_dim
Use GpsTime coordinate data as an array dimension instead of an array attribute. Not used when append=true. [Default: false]
- time_first
Put the GpsTime dimension first instead of last. Only used when use_time_dim=true. Not used when append=true. [Default: false]
- combine_bit_fields
Store all sub-byte fields together in an attribute named BitFields. Not used when append=true. [Default: true]
- chunk_size
Point cache size for chunked writes. [Default: 1,000,000]
- append
Instead of creating a new array, append to an existing array that has the dimensions stored as a TileDB dimension or TileDB attribute. [Default: false]
- stats
Dump query stats to stdout. [Default: false]
- filters
JSON array or object of compression filters for either dimenions or attributes of the form {dimension/attribute name : {“compression”: name, compression_options: value, …}}. Not used when append=true. [Optional]
- filter_profile
Profile of compression filters to use for dimensions and attributes not provided in filters. Options include balanced, aggressive, and none. Not used when append=true. [Default: balanced]
- scale_x, scale_y, scale_z
Scale factor used for the float-scale filter for the X, Y, and Z dimensions, respectively, when using the balanced or aggressive filter profile. Not used when append=true. [Default: 0.01]
Note: written value = (nominal value - offset) / scale.
- offset_x, offset_y, offset_z
Offset used for the float-scale filter for the X, Y and Z dimenisons, respectively, when using the balanced or aggressive filter profile. Not used when append=true. [Default: 0.0]
Note: written value = (nominal value - offset) / scale.
- compression
The default TileDB compression filter to use. Only used if the dimension or attribute name is not included in filters. Not used when append=true. [Default: none]
- compression_level
The TileDB compression level to use for the default compression. Option is ignored if set to -1. Not used when append=true. [Default: -1]
- timestamp
Sets the TileDB timestamp for this write. [Optional]
- where
An expression that limits points passed to a writer. Points that don’t pass the expression skip the stage but are available to subsequent stages in a pipeline. [Default: no filtering]
- where_merge
A strategy for merging points skipped by a ‘where’ option when running in standard mode. If
true
, the skipped points are added to the first point view returned by the skipped filter. Iffalse
, skipped points are placed in their own point view. Ifauto
, skipped points are merged into the returned point view provided that only one point view is returned and it has the same point count as it did when the writer was run. [Default:auto
]
TileDB provides default filter profiles. The filters can be over-written by the filters option. If a TileDB attribute is not set by the filter profile or the filter option, the compression filter set by the compression option is used.
Filters set by the balanced (default) filter profile (the delta filter is skipped if using TileDB version less than 2.16.0):
X
Float-scale filter (factor=`scale_x`, offset=`offset_x`, scale_float_bytewidth=4)
Delta filter (reinterpret_datatype=`INT32`)
Bit shuffle filter
Zstd filter (level=7)
Y
Float-scale filter (factor=`scale_y`, offset=`offset_y`, scale_float_bytewidth=4)
Delta filter (reinterpret_datatype=`INT32`)
Bit shuffle filter
Zstd filter (level=7)
Z
Float-scale filter (factor=`scale_z`, offset=`offset_z`, scale_float_bytewidth=4)
Delta filter (reinterpret_datatype=`INT32`)
Bit shuffle filter
Zstd filter (level=7)
GPSTime
Delta filter (reinterpret_datatype=”INT64”)
Bit width reduction filter
Zstd filter (level=7)
Intensity
Delta filter
Zstd filter (level=5)
BitFields
Zstd filter (level=5)
ReturnNumber
Zstd filter (level=5)
NumberOfReturns
Zstd filter (level=5)
ScanDirectionFlag
Zstd filter (level=5)
EdgeOfFlightLine
Zstd filter (level=5)
Classification
Zstd filter (level=5)
UserData
Zstd filter (level=5)
PointSourceId
Zstd filter (level=5)
Red
Delta filter
Bit width reduction filter
Zstd filter (level=7)
Green
Delta filter
Bit width reduction filter
Zstd filter (level=7)
Blue
Delta filter
Bit width reduction filter
Zstd filter (level=7)
Filters set by the aggressive filter profile (the delta filter is skipped if using TileDB version less than 2.16.0):
X
Float-scale filter (factor=`scale_x`, offset=`offset_x`, scale_float_bytewidth=4)
Delta filter (reinterpret_datatype=`INT32`)
Bit width reduction filter
BZIP2 filter (level=5)
Y
Float-scale filter (factor=`scale_y`, offset=`offset_y`, scale_float_bytewidth=4)
Delta filter (reinterpret_datatype=`INT32`)
Bit width reduction filter
BZIP2 filter (level=5)
Z
Float-scale filter (factor=`scale_z`, offset=`offset_z`, scale_float_bytewidth=4)
Delta filter (reinterpret_datatype=`INT32`)
Bit width reduction filter
BZIP2 filter (level=5)
GPSTime
Delta filter (reinterpret_datatype=”INT64”)
Bit width reduction filter
BZIP2 filter (level=9)
Intensity
Delta filter
Bit width reduction
BZIP2 filter (level=5)
BitFields
BZIP2 filter (level=9)
ReturnNumber
BZIP2 filter (level=9)
NumberOfReturns
BZIP2 filter (level=9)
ScanDirectionFlag
BZIP2 filter (level=9)
EdgeOfFlightLine
BZIP2 filter (level=9)
Classification
BZIP2 filter (level=9)
UserData
BZIP2 filter (level=9)
PointSourceId
BZIP2 filter (level=9)
Red
Delta filter
Bit width reduction filter
BZIP2 filter (level=9)
Green
Delta filter
Bit width reduction filter
BZIP2 filter (level=9)
Blue
Delta filter
Bit width reduction filter
BZIP2 filter (level=9)
The filter profile none does not set any default filters.