DataWorks allows you to use a real-time extract, transform, and load (ETL) synchronization task to synchronize data from Kafka to StarRocks. The task initializes the schema of a destination StarRocks table based on the structure of a specified Kafka topic. Then, the task synchronizes full data from the specified Kafka topic to the destination StarRocks table at a time and synchronizes incremental data from the topic to the destination StarRocks table in real time. This topic describes how to create a real-time ETL synchronization task to synchronize data from Kafka to StarRocks.
Limitations
The version of the Kafka service that you want to use must range from 0.10.2 to 2.2.0.
Prerequisites
You have purchased a Serverless resource group.
You have created Kafka and StarRocks data sources. For more information, see Create a data source in Data Integration.
You have established network connections between the resource group and data sources. For more information, see Network connectivity solutions.
Procedure
1. Select the synchronization task type
Go to the Data Integration page.
Log on to the DataWorks console. In the top navigation bar, select the desired region. In the left-side navigation pane, choose . On the page that appears, select the desired workspace from the drop-down list and click Go to Data Integration.
In the left-side navigation pane, click Synchronization Task, and then click Create Synchronization Task at the top of the page to enter the task creation page. Configure the following basic information:
Source And Destination:
Kafka→StarRocksNew Task Name: Customize a name for the synchronization task.
Synchronization Type:
Real-time synchronization of single table.
2. Configure network and resources
In the Network And Resource Configuration section, select the Resource Group for the synchronization task. You can allocate the number of CUs for Task Resource Usage.
For Source Data Source, select the added
kafkadata source. For Destination Data Source, select the addedStarRocksdata source, then click Test Connectivity.
After ensuring that both the source and destination data sources are successfully connected, click Next.
3. Configure the synchronization link
1. Configure the Kafka source
Click the data source Kafka at the top of the page to edit the Kafka Source Information.

In the Kafka Source Information section, select the Topic from the Kafka cluster that you want to synchronize.
Retain default values for other parameters, or modify their configurations based on your business requirements.
Click Data Sampling in the upper-right corner.
In the dialog box that appears, configure the Start Time and Sampled Data Records parameters and click Start Collection. The system samples data from the Kafka topic that you specified. You can preview the data in the Kafka topic. The data in the Kafka topic is used as input data for data preview and visualization configurations of a data processing node.
In the Output Field Configuration section, select the fields that you want to synchronize as needed.
2. Configure data processing nodes
You can click the
icon to add data processing methods. The following data processing methods are supported: Data Masking, Replace String, Data filtering, JSON Parsing, and Edit Field and Assign Value. You can arrange the data processing methods based on your business requirements. When the synchronization task is run, data is processed based on the processing order that you specify.

After you configure a data processing node, you can click Preview Data Output in the upper-right corner. In the dialog box that appears, click Re-obtain Output Of Ancestor Node to enable the data processing node to process the data that is sampled from the specified Kafka topic and preview the processing result.

Before you preview the result generated after the input data is processed by a data processing node, you must configure Data Sampling settings for the Kafka data source.
3. Configure the StarRocks destination
Click the data destination StarRocks at the top of the page to edit the StarRocks Destination Information.

In the StarRocks Destination Information section, select whether to Create Tables Automatically or Use Existing Table for the StarRocks table to which you want to write data.
If you select to create tables automatically, the system creates a table with the same name as the source table by default. You can manually modify the destination table name.
If you select to use an existing table, select the target table from the drop-down list.
(Optional) Modify the schema of a destination table.
If you select Create Tables Automatically, click Edit Table Schema. In the dialog box that appears, edit the schema of the destination table. You can also click Re-generate Table Schema Based On Output Column Of Ancestor Node to re-generate a table schema based on the output columns of an ancestor node. You can select a column from the generated table schema and configure the column as the primary key and bucket column.
NoteThe destination table must have a primary key and bucket column. Otherwise, the configurations cannot be saved.
Configure mappings between fields in the source and fields in the destination.
After you complete the preceding configuration, the system automatically establishes mappings between fields in the source and fields in the destination based on the Map Fields with Same Name principle. You can modify the mappings based on your business requirements. One field in the source can map to multiple fields in the destination. Multiple fields in the source cannot map to the same field in the destination. If a field in the source has no mapped field in the destination, data in the field in the source is not synchronized to the destination.
4. Configure alert rules
To prevent the failure of the synchronization task from causing latency on business data synchronization, you can configure different alert rules for the synchronization task.
In the upper-right corner of the page, click Configure Alert Rule to go to the Alert Rule Configurations for Real-time Synchronization Subnode panel.
In the Configure Alert Rule panel, click Add Alert Rule. In the Add Alert Rule dialog box, configure the parameters to configure an alert rule.
NoteThe alert rules that you configure in this step take effect for the real-time synchronization subtask that will be generated by the synchronization task. After the configuration of the synchronization task is complete, you can refer to Run and manage real-time synchronization tasks to go to the Real-time Synchronization Task page and modify alert rules configured for the real-time synchronization subtask.
Manage alert rules.
You can enable or disable alert rules that are created. You can also specify different alert recipients based on the severity levels of alerts.
5. Configure advanced parameters
DataWorks allows you to modify the configurations of specific parameters. You can change the values of these parameters based on your business requirements.
To prevent unexpected errors or data quality issues, we recommend that you understand the meanings of the parameters before you change the values of the parameters.
In the upper-right corner of the configuration page, click Configure Advanced Parameters.
In the Configure Advanced Parameters panel, change the values of the desired parameters.
6. Configure resource groups
You can click Configure Resource Group in the upper-right corner of the page to view and change the resource groups that are used to run the current synchronization task.
7. Perform simulated running
After the preceding configuration is complete, you can click Perform Simulated Running in the upper-right corner of the configuration page to enable the synchronization task to synchronize the sampled data to the destination table. You can view the synchronization result in the destination table. If specific configurations of the synchronization task are invalid, an exception occurs during the test run, or dirty data is generated, the system reports an error in real time. This can help you check the configurations of the synchronization task and determine whether expected results can be obtained at the earliest opportunity.
In the dialog box that appears, configure the parameters for data sampling from the specified table, including the Start At and Sampled Data Records parameters.
Click Start Collection to enable the synchronization task to sample data from the source.
Click Preview to enable the synchronization task to synchronize the sampled data to the destination.
8. Run the synchronization task
After the configuration of the synchronization task is complete, click Complete in the lower part of the page.
In the page of page, find the created synchronization task and click Start in the Operation column.
Click the Name or ID of the synchronization task in the Tasks section and view the detailed running process of the synchronization task.
Perform O&M operations on the data synchronization task
View the status of the synchronization task
After the synchronization task is created, you can go to the Synchronization Task page to view all synchronization tasks that are created in the workspace and the basic information of each synchronization task.

You can Start or Stop the synchronization task in the Actions column. In the More menu, you can Edit, View, and perform other operations on the synchronization task.
For tasks that have been started, you can see the basic running status in the Running Details section, or click the corresponding area to view execution details.

The real-time synchronization task from Kafka to StarRocks has two stages:
Schema Migration: This tab displays information such as the generation methods of destination tables (using existing tables or creating tables). If the generation method of a destination table is creating tables, the DDL statement that is used to create the table is displayed.
Real-time Data Synchronization: This tab displays statistics about real-time synchronization, DDL records, and alert information.
Rerun the synchronization task
In some special cases, if you want to modify the fields to synchronize, the fields in a destination table, or table name information, you can also click Rerun in the Operation column of the desired synchronization task. This way, the system synchronizes the changes that are made to the destination. Data in the tables that are already synchronized and are not modified will not be synchronized again.
Directly click Rerun without modifying the configurations of the synchronization task to enable the system to rerun the synchronization task.
Modify the configurations of the synchronization task and then click Complete. Click Apply Updates that is displayed in the Operation column of the synchronization task to rerun the synchronization task for the latest configurations to take effect.