Overview of the data transmission service

更新时间:
复制 MD 格式

The data transmission service is MaxCompute's primary data movement layer, built on the Tunnel service. It supports two modes: a regular tunnel for batch uploads and downloads, and a stream tunnel for continuous low-latency writes. Shared resource groups are available at no cost within the allocated quota; exclusive resource groups are available for purchase for predictable, high-throughput workloads. Data Transmission Service is also available(subscription)exclusive resource groups.

Tunnel服务

Choose a tunnel mode

Scenario

Recommended mode

Bulk load or export of offline data (tables, partitions, query results)

Regular tunnel

Continuous, low-latency writes from event streams or pipelines

Stream tunnel

Upsert operations on Delta Tables

Regular tunnel (UpsertSession)

Running data transfer commands from the MaxCompute client

Regular tunnel

How it works

Regular tunnel — Uses an UploadSession or DownloadSession to move data in blocks. Each session has a lifecycle of up to 24 hours. Concurrent writes are ACID-compliant (atomicity, consistency, isolation, and durability). For Delta Table upserts, use a UpsertSession instead of a standard UploadSession.

Stream tunnel — Writes data in micro-batches to table partitions. Each flush operation occupies one slot. Use this mode when your pipeline produces data continuously and you need it available in MaxCompute with minimal delay.

Product architecture

The Data Transmission Service product architecture is as follows,Currently, each region has only one Data Transmission Service shared resource group,, and resources are shared by all users in the region,, with concurrency limits for each tenant。Data Transmission Service(subscription)exclusive resource groups require separate purchase by users,. You can purchase one or more exclusive resource groups,. After purchase, the exclusive resource groups will be exclusively used by you。. You can also manually specify exclusive resource groups to execute data transmission tasks。. If not specifically designated,, the default exclusive resource group of the project will be used to execute Data Transmission Service。Data Transmission Service product architecture

For more information about Data Transmission Service shared resource groups and exclusive Data Transmission Service(subscription) details, see Purchase and use exclusive Data Transmission Service resource groups.

Limitations

Regular tunnel — uploads

Item

Limit

UploadSession lifecycle

24 hours

Blocks per UploadSession

20,000

Block write speed

10 MB/s

Block size

100 GB

UploadSessions created per table

500 per 5 minutes

Blocks written to a table

500 per 5 minutes

Concurrent UploadSessions per table

32

Single-table write commits

75 per 15 seconds

Concurrent block writes

Subject to available slot count

Concurrent write consistency

ACID-guaranteed

When the concurrent UploadSession limit (32) or the write commit rate (75 per 15 seconds) is exceeded, requests return an error. Design your upload clients to respect exponential backoff; see Retry policy.

STRING field size limit: 8 MB per field. For all other types, see Data type editions. During upload, multiple records are packaged into a single package file.

Delta Table upsert limits:

Item

Limit

UpsertSession lifecycle

24 hours

Max write speed

Number of tables or partition buckets × 10 MB/s

Max slots

Number of tables or partition buckets

Commit frequency

1 commit per minute per partition

If two commits occur within the same minute, the service returns ErrorCode=FlowExceeded, ErrorMessage=CommitUpsert QPS Quota exceeded.

Regular tunnel — downloads

Item

Limit

DownloadSession lifecycle

24 hours

InstanceDownloadSession lifecycle

24 hours (bounded by instance lifecycle)

InstanceDownloadSessions per project

200 per 5 minutes

DownloadSessions per table

200 per 5 minutes

Single download request speed

10 MB/s

Concurrent DownloadSessions

Subject to available slot count

Concurrent InstanceDownloadSessions

Subject to available slot count

Concurrent download requests

Subject to available slot count

Stream tunnel

Item

Limit

Write speed per slot

10 MB/s

Concurrent partitions per table

64

Max slots per partition

32

Flush concurrency

Each flush occupies one slot

Network limits for exclusive resource groups

  • Only virtual private cloud (VPC) access is supported; Internet access is not.

  • Data transmission is supported within the same region only; cross-region transmission is not supported.

Network bandwidth directly affects upload and download speed. Typical throughput is 1–20 MB/s. For slow uploads, switch to multi-threaded uploads.

Shared resource groups

The following table lists the maximum number of shared slots available per project in each region. Shared resource groups are free of charge.

Site

Region

Slots

China

China (Hangzhou)

300

China

China East 1 Finance

50

China

China (Shanghai)

600

China

China East 2 Finance

50

China

China (Beijing)

300

China

China North 2 Ali Gov

100

China

China (Zhangjiakou)

300

China

China (Ulanqab)

300

China

China (Shenzhen)

150

China

China South 1 Finance

50

China

China (Chengdu)

150

China

China (Hong Kong)

50

Asia Pacific

Singapore

100

Asia Pacific

Malaysia (Kuala Lumpur)

50

Asia Pacific

Indonesia (Jakarta)

50

Asia Pacific

Japan (Tokyo)

50

Europe and Americas

Germany (Frankfurt)

50

Europe and Americas

US (Silicon Valley)

100

Europe and Americas

US (Virginia)

50

Europe and Americas

UK (London)

50

Middle East and India

UAE (Dubai)

50

HTTP status codes

The Tunnel service uses standard HTTP status codes. The following codes are valid responses:

Status code

Name

200

HTTP_OK

201

HTTP_CREATED

400

HTTP_BAD_REQUEST

401

HTTP_UNAUTHORIZED

403

HTTP_FORBIDDEN

404

HTTP_NOT_FOUND

405

HTTP_METHOD_NOT_ALLOWED

409

HTTP_CONFLICT

422

HTTP_UNPROCESSABLE_ENTITY

429

HTTP_TOO_MANY_REQUESTS

499

HTTP_CLIENT_CLOSED_REQUEST

500

HTTP_INTERNAL_SERVER_ERROR

502

HTTP_BAD_GATEWAY

503

HTTP_SERVICE_UNAVAILABLE

504

HTTP_GATEWAY_TIME_OUT

Retry policy

For failed requests, use exponential backoff before retrying. The minimum wait is 1 second, doubling with each consecutive failure up to a cap of 32 seconds: 1 s → 2 s → 4 s → 8 s → 16 s → 32 s → 32 s.

Request classifications

Type

Definition

SLA coverage

Repeated request

Requests with the same URL, or consecutive requests from the same client IP address

Valid request

Status code is valid and request complies with the retry policy

Covered

Invalid request

Status code is valid but request does not comply with the retry policy

Not covered

Attack request

Status 429 or 503 returned, and the client does not comply with the retry policy

Not covered

For attack requests, MaxCompute isolates the IP address, UID, and project of the offending client. Isolated clients cannot access MaxCompute as expected.

FAQ

Why is my upload or download speed slow?

The Tunnel service occasionally experiences latency spikes due to shared resource contention — a 10 MB transfer that normally takes seconds can extend to minutes. The most common causes are:

  • Shared resource exhaustion — CPU or network bandwidth in the shared tunnel pool is fully consumed. If this happens repeatedly, purchase an exclusive resource group.

  • Unstable Internet connection — Internet connectivity between your client and the Tunnel endpoint is unreliable. Switch to a VPC connection for a stable, predictable path.

  • Client resource exhaustion — Your local CPU or network bandwidth is saturated. Profile your client's resource usage and scale accordingly.

  • Long-connection code logic — Upload and download loops that hold connections open too long can degrade throughput. Review your client code to ensure connections are managed efficiently.

Where can I find more troubleshooting guidance?