Sink data from RisingWave to StarRocks
This guide describes how to sink data from RisingWave to StarRocks.
StarRocks is an open-source, massively parallel processing (MPP) database. For details on how to get started with StarRocks, see the Quick start guide.
The StarRocks stream load does not support sinking struct
type.
Prerequisites
Before sinking data from RisingWave to StarRocks, please ensure the following:
- The StarRocks database you want to sink to is accessible from RisingWave.
- Ensure you have an upstream materialized view or source in RisingWave that you can sink data from.
Syntax
Parameters
All parameters are required unless specified otherwise.
Parameter names | Description |
---|---|
starrocks.host | The StarRocks host address. |
starrocks.query_port | The port to the MySQL server of the StarRocks frontend. |
starrocks.http_port | The port to the HTTP server of the StarRocks frontend. |
starrocks.user | The user name used to access the StarRocks database. |
starrocks.password | The password associated with the user. |
starrocks.database | The StarRocks database where the target table is located |
starrocks.table | The StarRocks table you want to sink data to. |
starrocks.partial_update | Optional. Set it to true to improve performance when you need to update many rows but only change a few columns in each row. |
type | Data format. Allowed formats:
|
force_append_only | If true , forces the sink to be append-only, even if it cannot be. |
primary_key | Required if type is upsert . The primary key of the downstream table. |
commit_checkpoint_interval | Optional. Commit every N checkpoints (N > 0). Default value is 10. The behavior of this field also depends on the sink_decouple setting:
|
Examples
Assume we have a materialized view, bhv_mv
.
Data type mapping
The following table shows the corresponding data type in RisingWave that should be specified when creating a sink. For details on native RisingWave data types, see Overview of data types.
StarRocks type | RisingWave type |
---|---|
BOOLEAN | BOOLEAN |
SMALLINT | SMALLINT |
INT | INTEGER |
BIGINT | BIGINT |
FLOAT | REAL |
DOUBLE | DOUBLE |
DECIMAL | DECIMAL |
DATE | DATE |
VARCHAR | VARCHAR |
No support | TIME |
DATETIME | TIMESTAMP WITHOUT TIME ZONE |
No support | TIMESTAMP WITH TIME ZONE(Can be converted to timestamp in RisingWave then sinked into StarRocks ) |
No support | INTERVAL |
No support | STRUCT |
ARRAY | ARRAY |
No support | BYTEA |
JSON | JSONB |
BIGINT | SERIAL |
If a decimal value is out of bounds or represents inf
, -inf
, or nan
, RisingWave will insert null values.
Was this page helpful?