
ScyllaDB Query
CertifiedExecute a CQL query in ScyllaDB
ScyllaDB Query
Execute a CQL query in ScyllaDB
Executes one SELECT statement. FETCH loads all result pages into memory; use STORE for large results. UUIDs and temporal values are strings, blobs are base64 strings, tuples are lists, and UDTs are maps. CQL maps with non-string keys are lists of key/value objects to preserve key types.
type: io.kestra.plugin.scylladb.QueryExamples
Store ScyllaDB node information
id: scylladb_query
namespace: company.team
tasks:
- id: query
type: io.kestra.plugin.scylladb.Query
connection:
contactPoints:
- "{{ secret('SCYLLADB_HOST') }}:9042"
localDatacenter: datacenter1
username: "{{ secret('SCYLLADB_USERNAME') }}"
password: "{{ secret('SCYLLADB_PASSWORD') }}"
cql: SELECT * FROM system.local
fetchType: STORE
fetchSize: 1000
Query one tenant from a flow input
id: scylladb_query_by_tenant
namespace: company.team
inputs:
- id: tenant
type: STRING
defaults: demo
tasks:
- id: by_tenant
type: io.kestra.plugin.scylladb.Query
connection:
contactPoints:
- "{{ secret('SCYLLADB_HOST') }}:9042"
localDatacenter: datacenter1
keyspace: kestra
username: "{{ secret('SCYLLADB_USERNAME') }}"
password: "{{ secret('SCYLLADB_PASSWORD') }}"
cql: SELECT id, value FROM events WHERE tenant = :tenant
parameters:
tenant: "{{ inputs.tenant }}"
fetchType: FETCH
Properties
connection *
Native CQL connection settings, including contact points, local datacenter, authentication, and optional TLS.
ScyllaDB connection
Native CQL connection settings rendered at task execution.
Contact points
Non-empty list of hosts, host: port, or [IPv6]: port addresses. The default port is 9042.
Local datacenter
Datacenter used by the driver's load balancing policy, for example datacenter1.
Keyspace
Optional default keyspace. Omit when creating a keyspace with DDL.
passwordClient keystore password
Optional client keystore password. Requires keystorePath. Use a Kestra secret expression.
Client keystore path
Optional JKS client keystore path on the worker filesystem for mutual TLS. Requires TLS.
passwordPassword
Native CQL authentication password. Use a Kestra secret expression.
Request timeout
Optional strictly positive CQL request timeout as an ISO-8601 duration, for example PT30S. Otherwise the driver default applies.
falseEnable TLS
Enable certificate and hostname verification. Uses JVM trust roots unless a truststore is supplied.
passwordTruststore password
Optional truststore password. Requires truststorePath. Use a Kestra secret expression.
Truststore path
Optional JKS truststore path on the worker filesystem. Requires TLS.
Username
Native CQL authentication username. Set together with password; secret expressions are supported.
cql *string
CQL statement
One non-blank SELECT CQL statement. Bind dynamic values with named : name markers and parameters instead of interpolating them into the statement.
assets
Assets this task consumes as inputs or produces as outputs, for lineage tracking and the asset graph (Enterprise Edition). A flow declaring this property on a task is rejected in the open-source edition.
io.kestra.core.models.assets.AssetsDeclaration
IGNOREFAILWARNAsset failure behavior
Behavior applied to the task state when a declared asset fails to render, emit, or be persisted (e.g. a lock conflict): FAIL escalates it to FAILED, WARN (default) warns it if it would otherwise succeed, IGNORE leaves the state untouched.
Whether to auto-register assets referenced dynamically at runtime that are not statically declared in inputs or outputs.
The assets consumed as inputs.
io.kestra.core.models.assets.AssetIdentifier
1The assets produced as outputs.
io.kestra.plugin.ee.assets.Dataset
1150{}1150io.kestra.plugin.ee.assets.File
1150{}1150io.kestra.plugin.ee.assets.Table
1150{}1150io.kestra.plugin.ee.assets.VM
1150{}1150io.kestra.core.models.assets.External
1150{}1150io.kestra.core.models.assets.Custom
11501Custom asset type
{}1150fetchSize integerstring
Driver page size
Optional positive number of rows requested per page. This is not a result limit; FETCH and STORE consume all pages. When omitted, the driver default is used.
fetchType string
FETCHSTOREFETCHFETCH_ONENONEResult fetch mode
FETCH returns every row, FETCH_ONE returns at most one row, STORE streams every row to an Ion file in internal storage.
parameters object
Bound parameters
Values for named : name markers in cql. Each value is rendered, then bound to a prepared statement using that marker's CQL type. Use this for flow inputs and upstream outputs instead of interpolating them into the statement text. Keys that are not markers of a statement are ignored.
Outputs
row object
First fetched row
Populated for FETCH_ONE; null when the result is empty.
rows array
All fetched rows
Populated for FETCH in result order, including all pages.
size integer
Number of emitted rows
Zero or one for FETCH_ONE, or the total row count for FETCH and STORE.
uri string
uriStored result URI
Internal storage URI of the Ion file, populated for STORE.