All Products
Search
Document Center

DataWorks:Single-table real-time synchronization: O&M and tuning

Last Updated:Jun 08, 2026

After you develop a task in DataStudio and deploy it to the production environment, you can go to Operation Center to run the real-time synchronization task. In Operation Center, you can also monitor the task status, view runtime metrics, and more. This guide covers common operations and maintenance (O&M) procedures for real-time synchronization tasks.

Prerequisites

A real-time synchronization task has been created and published. For more information, see Configure a real-time synchronization task for a single table.

In DataWorks Data Integration, a single-table real-time synchronization task is a pipeline that synchronizes data from a single source table, topic, Logstore, or a similarly granular data object to a destination. In daily operations, you must be able to quickly identify task anomalies, adjust performance parameters, and ensure data consistency. This topic covers the prerequisites, O&M focus for each stage, performance tuning methods, and typical troubleshooting scenarios to help you establish a comprehensive O&M and tuning framework.

Prerequisites

Ensure that the following prerequisites are met.

Category

Requirement

Verification method

Source Permissions

Ensure you have permission to read metadata from the source and can retrieve complete field information for the source table.

Use the configured account to access the source and confirm that you can read the table structure and field information.

Destination Permissions

Ensure you have permission to create tables or write data to the destination.

Use the configured account to run a test by creating a table or writing data to the destination.

Resource Group

The resource group specifications meet the computing and network demands of the full initialization phase.

Confirm that the resource group is available and its specifications meet the synchronization task's requirements.

Network Connectivity

Ensure network connectivity from the source to the channel and to the destination.

Use a network testing tool to confirm connectivity between all nodes.

Single-table real-time synchronization: O&M and tuning

Single-table real-time synchronization is discussed separately because some source, destination, or channel capabilities are not suitable for entire-database synchronization, or because you only need to synchronize a specific data object. When source and channel capabilities permit, we recommend using an entire-database real-time task and selecting only one table to perform single-table synchronization. This approach allows you to leverage the capabilities of entire-database synchronization for schema migration, full initialization, incremental data onboarding, and future table scaling. Regardless of the task type used, this topic focuses exclusively on the O&M of single-table real-time pipelines and does not cover batch management of multiple tables, entire-database offline synchronization, or entire-database full and incremental real-time synchronization.

Applicable channels and boundaries

First, assess your task based on its form, channel capabilities, and key troubleshooting areas.

Item

Scope

Out of scope / Key focus

Task Form

A single table, topic, Logstore, or a data stream of similar granularity

Does not handle entire-database table discovery, batch table additions, or decommissioning.

Typical Channels

Kafka / DataHub / SLS / LogHub → Hologres / MaxCompute / Kafka / Doris / StarRocks / Lindorm / DLF / OSS

If the source is a database that supports entire-database synchronization, prefer using that task type even for a single table.

Troubleshooting Focus

offset, log retention, primary key, DDL, message backlog, message format, field parsing, dirty data, destination throttling

Do not apply practices from adding or removing tables in entire-database synchronization.

Hologres can also serve as a source for single-table real-time synchronization. For table-level real-time pipelines such as Hologres-to-Hologres, Hologres-to-MaxCompute, or Hologres-to-Doris, troubleshoot them as single-table tasks. Focus on source table permissions, Binlog/change data capture (CDC), primary keys, field mappings, and destination write semantics.

Core Boundary: Single-table real-time synchronization is not a simplified version of entire-database synchronization. It is better suited for scenarios where source permissions, message models, data formats, or destination write semantics are incompatible with entire-database synchronization. When Hologres is the source, troubleshoot it as a table-level real-time pipeline.

Task phases

Phase

Description

O&M focus

Schema Preparation

Reads source fields, primary keys, partitions, or message formats, and creates or confirms the destination schema.

Source metadata permissions, destination table creation or write permissions, field types, primary key, partitions, and mapping rules.

Full initialization

Writes existing historical data to the destination. Whether this phase is included depends on the task configuration and channel capabilities.

split key, full initialization parallelism, source connection count, resource specifications, and destination write capacity.

Incremental synchronization

Continuously consumes Binlog, WAL, logs, messages, or change events and writes them to the destination.

offset, business latency, throughput, checkpoint, failover, DDL, dirty data, and destination write capacity.

Risks in single-table real-time tasks typically fall into two categories. The first is related to offsets and log retention: if a task is stopped for too long, it may not be able to resume from the original offset. The second is related to destination write semantics: if primary keys, write modes, partitions, or field mappings are inconsistent, UPDATE, DELETE, or idempotent writes may not behave as expected.

O&M operations

Start and stop tasks

  • After starting a task, first confirm that schema preparation is complete. Then, observe whether full initialization has started and is making progress. Finally, verify that incremental synchronization is continuously reading and writing data. For message source tasks, also monitor the consumption offset and message backlog. For database log-based tasks, pay attention to the retention period for Binlog, WAL, or other logs.

  • Before stopping a task, confirm that the source log or message retention period can cover the downtime window. If the downtime exceeds the retention period, the task may not be able to resume from its original offset. This often requires resetting the offset, skipping the historical backlog, or re-initializing the task. Before performing these actions, assess the risks of duplicate writes and data loss.

Configuration changes

Common modifications for single-table real-time tasks include adjusting field mappings, primary keys, write modes, partitioning rules, parallelism, resources, offsets, and dirty data policies.

Change type

Risk

Recommendation

Modify field mappings

May cause missing fields, type conversion failures, or destination write errors.

Before submitting, confirm the source fields, destination fields, field types, and default values.

Modify primary key or write mode

May affect the results of UPDATE, DELETE, idempotent writes, and deduplication.

First, confirm whether the destination supports the corresponding write semantics. Then, assess whether historical data needs to be re-synchronized.

Modify partitioning rules

May cause data to be written to new partitions, incorrect partitions, or generate a large number of small partitions.

Before submitting, confirm the partition field granularity, partition expression, and destination partition limits.

Adjust parallelism and resources

May increase the load on the source, destination, or resource group.

Make adjustments incrementally. After each change, monitor latency, throughput, checkpoints, and failover.

Reset offset

May cause duplicate consumption or skipped data.

First, determine the acceptable recovery point for your business. Then, record the time and offset before and after the reset.

Adjust dirty data policy

May allow the task to continue running while discarding records that cause errors.

Do not simply increase the threshold to bypass an issue. First, determine whether the dirty data affects business results.

Alert configuration

For single-table real-time tasks, monitor at least the task status, business latency, and failover events. Depending on the channel capabilities and task configuration, you can also add alerts for resource utilization, write errors, DDL notifications, and message backlog size.

For message source tasks, you also need to monitor the backlog in the source topic, shard, Logstore, or consumer group. For database log-based tasks, you need to monitor the retention of Binlog, WAL, archive logs, or replication slots. Configuring an alert only for task failure is not enough, as it cannot detect issues such as continuously increasing latency, slow writes, or an offset that is not advancing, even while the task is still running.

Troubleshooting

No data output

If a task shows as running but no new data appears at the destination, first confirm whether the source is generating new data. Then, determine if the reader is not consuming data, the pipeline is failing to process it, or the writer is not committing it.

Follow these steps to troubleshoot:

  1. Check if new data exists at the source table, topic, Logstore, or log offset.

  2. Check if the task is in the full initialization, incremental synchronization, or failover state.

  3. Check if read metrics, write metrics, business latency, and checkpoints are advancing normally.

  4. Check if the destination table, destination partitions, primary key, and write mode match the configuration.

  5. Check for dirty data, field mapping failures, or destination permission issues.

If the DML/DDL statistics in the runtime details show no data for a short period but logs and destination writes appear normal, also investigate potential metric collection delays or errors. This helps avoid misdiagnosing a monitoring display issue as a synchronization interruption.

Slow or failed full initialization

When full initialization is slow, first identify whether the bottleneck is in source reading, the network, the resource group, destination writing, or uneven data splitting.

Symptom

Possible cause

Recommended action

The full initialization task does not start for a long time.

Resource queuing, source or destination connectivity issues, or destination table creation failure.

Check the resource group status, data source connectivity, and destination permissions.

Slow full initialization reads.

An unsuitable split key, a source SQL query not using an index, high source load, or insufficient connections.

Choose a split key that is more evenly distributed and has an index. Adjust parallelism moderately. If the source load is high, apply rate limiting or run the task during off-peak hours.

Slow full initialization writes.

Destination throttling, too many partitions, or high latency for batch commits.

Check the destination's write capacity, number of partitions, batch write parameters, and resource specifications.

The full initialization phase fails.

Incompatible field types, primary key conflicts, destination constraints, or the dirty data limit being exceeded.

First, identify the failing field and the destination error. Then, adjust mappings, clean data, or modify the destination schema.

During the full initialization phase, do not rely solely on average throughput. A few large splits, wide tables, large fields, or hot partitions can determine the overall completion time.

High real-time latency

When real-time latency increases, first check if the latency is continuously decreasing. If the task has just completed full initialization, the real-time pipeline might be catching up on data that accumulated during full initialization. If latency continues to grow, identify whether the bottleneck is the reader, writer, resources, network, or an external system.

Follow this troubleshooting sequence:

  1. In the task's runtime details, check the window wait time to determine if the bottleneck is primarily at the reader or writer.

  2. Examine the task logs from the period of high latency. Search for keywords such as Error, Exception, and OutOfMemory.

  3. Review failover records to check for frequent failover events, out-of-memory (OOM) errors, or external service exceptions.

  4. Examine running metrics and events, focusing on throughput, backpressure, checkpoints, JVM memory, GC, DDL events, and dirty data.

  5. Further troubleshoot the issue by checking the source, destination, resources, parallelism, and network. Do not add parallelism or resources until you identify the bottleneck.

The window wait time can serve as a first-level diagnostic:

Diagnostic result

Possible cause

Next step

High reader wait time

Slow source reads, partition or shard skew, source throttling, sudden increase in change volume, or log backlog.

Prioritize checking source monitoring, partition or shard distribution, Binlog/WAL/message backlog, and reader data volume.

High writer wait time

Slow destination writes, destination throttling, too many dynamic partitions, slow batch commits, or insufficient network bandwidth.

Prioritize checking destination resources, write QPS, sink logs, batch commit latency, and dynamic partitions.

High wait time on both reader and writer sides

Insufficient task resources, backpressure, slow checkpoints, frequent failover, or external system jitter.

Prioritize checking failover records, JVM/GC, checkpoints, resource group specifications, and task parallelism.

After identifying the bottleneck, you can investigate further based on the symptoms:

Symptom

Possible cause

Recommended action

Latency continuously increases.

The source write rate is higher than the consumption rate, network bandwidth is insufficient, or destination writes are slow.

Check the source generation rate, read rate, write rate, and destination throttling separately.

Significant reader wait time or backpressure.

Large transactions, log backlog, message partition hotspots, or source throttling.

Check for source write spikes, log growth, and partition or shard distribution.

High writer wait time.

Slow destination writes, excessively small batch commits, insufficient connections, or too many partitions.

Prioritize checking destination resources and write limits, then adjust batch, flush, commit, or connection pool parameters.

Checkpoints are slow or failing.

Slow writer commits, large state size, external service jitter, or insufficient resources.

Use checkpoint duration, failed count, state size, and logs to identify the cause.

Frequent failover.

Insufficient memory, external service exceptions, field mapping failures, or DDL processing errors.

Check the exception stack, dirty data, and DDL events before and after the failover.

Logs show OutOfMemory.

Insufficient task memory or excessive processing load on a single parallel instance.

Moderately increase CUs or memory and observe if JVM, GC, checkpoint, and failover performance improves.

  • For message sources like Kafka, DataHub, and LogHub, focus on the number of partitions or shards. A single partition or shard can typically be consumed by only one parallel instance. If data is concentrated in a few partitions, simply increasing the total parallelism may not be effective. Check for hot partitions or shards by combining the cumulative byte counts of different reader threads with source monitoring data.

  • For database log-based sources like MySQL, focus on large transactions, high DML volume, frequent DDL, and Binlog growth rate. If synchronization speed is low but latency continues to increase, check for source database pressure or large volumes of Binlog from unsynchronized tables by examining source audit logs, CPU, I/O, connection counts, and Binlog growth.

  • When writing to MaxCompute, if logs show the error uploader map size has reached uploaderMapMaximumSize, it usually means that too many dynamic partition values were generated within a single flush interval. Prioritize adjusting the partition granularity or dynamic partition field. Avoid using high-cardinality fields such as second-level timestamps, order IDs, or user IDs as partition values. Then, assess whether to increase parallelism or resources.

DDL processing issues

If a task fails, latency increases, or the destination schema becomes inconsistent after a DDL operation, first confirm whether the current channel supports the DDL type and what the task's processing strategy is for that DDL.

Key areas to check:

  • Which DDL operations occurred at the source, such as adding a column, deleting a column, changing a type, renaming, creating a table, deleting a table, or changing an index.

  • Whether the destination supports the same DDL or an equivalent schema change.

  • Whether the task's strategy is to apply, ignore, alert on, or stop on the DDL.

  • Whether the destination account has permission to alter the table.

  • Whether field mappings, the primary key, and partitions remain consistent after the DDL.

Do not simply ignore unsupported DDL. Ignoring a DDL might allow the task to continue running, but subsequent DML writes could fail due to field mismatches, primary key changes, or an inconsistent destination schema.

UPDATE or DELETE issues

If data at the destination does not match expectations after UPDATE or DELETE operations, first check if the destination has a primary or unique key to locate records, and verify that the primary key mapping between the source and destination is consistent.

Common causes include:

  • The destination table lacks a primary or unique key, preventing record-level updates or deletions.

  • The source primary key and destination primary key are inconsistent.

  • The primary key field is transformed, renamed, or written as null.

  • The destination write mode does not support updates or deletes.

  • The task is configured to ignore DELETE operations or has a special write policy.

  • Write failures are recorded as dirty data, but the task continues to run.

To resolve this, first use a few sample records to verify the source events, task mappings, and destination results. Then, decide whether to adjust the primary key, change the write mode, or re-initialize the destination table.

Increased dirty data

When the amount of dirty data increases, do not simply raise the dirty data threshold. First, confirm whether the dirty data will cause missing data, null fields, field truncation, primary key conflicts, or partition errors at the destination.

Key areas to check:

  • Whether field types, lengths, precision, and non-null constraints match.

  • Whether the destination's primary key, unique key, or partition field meets requirements.

  • Whether the source has introduced oversized strings, invalid encodings, special JSON, unparsable timestamps, or unsupported data types.

  • Whether the destination is experiencing throttling, write failures, or server-side filtering.

Only consider temporarily increasing the dirty data threshold if you can confirm that your business can tolerate discarding these error records. Plan to fix the source data or destination schema later.

Tuning

Tuning item

Use case

Recommendation

Resource specifications / CUs

High CPU, memory, network, or resource group utilization.

Gradually increase resources and observe whether latency, failover, and checkpoint performance improve.

Real-time parallelism

Both the source and destination can handle increased parallelism.

First, confirm there are no single-partition, single-shard, or single-table hotspots before increasing parallelism.

Full initialization parallelism and split key

Slow full initialization.

Select a split key that is evenly distributed, indexed, and has a supported data type.

Checkpoint / Flush interval

Frequent writer commits or high commit overhead.

Adjust in small increments and observe throughput, data visibility latency, and failure rates. Do not make large adjustments at once.

Batch write parameters

High writer wait time.

Adjust batch, flush, commit, and connection pool parameters based on destination limits.

Partition granularity

Too many destination partitions or high commit latency.

Avoid using high-cardinality fields such as second-level timestamps, order IDs, or user IDs for dynamic partitioning.

Message source partitions

High latency for sources like Kafka, DataHub, or LogHub.

Look for hot partitions and consumption parallelism limits. Adjust the source partition design if necessary.

Transformer logic

Complex JSON parsing, field processing, or numerous filtering rules.

Reduce unnecessary complex transformations, or add resources and observe changes in CPU and latency.

When adjusting the checkpoint or flush interval, increase it in small increments, for example, from 5 seconds to 10 or 30 seconds. Then, monitor write throughput, checkpoint duration, end-to-end latency, and destination load for 10 to 30 minutes. If latency decreases but data visibility does not meet business requirements, you must revert to a shorter interval.

Note

After tuning, monitor the task for a stable window. Short-term throughput after a restart may not represent long-term performance, especially when there is a data backlog, destination throttling, or checkpoint jitter.

FAQ

Question

Key areas to check

Recommended action

The task is running, but no data appears at the destination.

Is there new data at the source? Is the offset advancing? Is the destination being written to? Is metric collection normal?

Simultaneously check source data, task logs, DML metrics, and destination results. Do not rely on a single metric or page for diagnosis.

Cannot resume from original offset after stopping.

Has the retention period for Binlog, WAL, logs, or messages been exceeded?

Before resetting the offset or re-initializing, assess the impact of duplicate consumption, data skipping, and downstream systems.

Latency for message sources like Kafka appears high.

Are message timestamps historical? Is the consumption offset lagging? Are there hot partitions?

Distinguish between high latency reported due to historical message timestamps and actual insufficient consumption capacity.

High write or consumption latency for DataHub.

Has the traffic limit been triggered? Is the batch size too small? Is there backpressure?

Adjust parameters or quotas based on source throttling, task backpressure, and writer throughput.

Writes to destinations like MaxCompute are slow.

Number of partitions, Tunnel sessions, checkpoint commit time.

Prioritize reducing the number of partitions involved in a single checkpoint, then adjust batch commit parameters and resources.

High write latency for Hologres.

Destination table primary key, Segment Key, table type, write mode, and Holo instance load.

First, confirm that the destination table is designed for real-time writes, then adjust task resources and batch write parameters.

UPDATE or DELETE operations do not take effect on the destination.

Destination primary key, write mode, field mapping, and dirty data logs.

Prioritize using sample records to verify the source events, destination primary key, and actual write results.

Task fails after a DDL operation.

DDL type, destination support, DDL strategy, and destination permissions.

Check the DDL event and failure logs. Determine if you need to manually adjust the destination table schema before resuming the task.

High-risk operations checklist

Before you perform high-risk operations such as resetting an offset, restarting a task, modifying a primary key or write mode, making significant parameter adjustments, re-running full initialization, or clearing a destination table, confirm the following:

  • Is the source log or message retention period sufficient?

  • Have you recorded the current offset, business timestamp, and the latest data in the destination?

  • Will the operation cause duplicate writes, data skipping, or data overwrites at the destination?

  • Are downstream systems already consuming data from the destination table?

  • Are there any unprocessed DDL events, dirty data, or frequent failover events?

  • Do alerts cover task status, business latency, failover events, write errors, and dirty data?