All Products
Search
Document Center

ApsaraMQ for Kafka:Comparison between ApsaraMQ for Kafka and open source Apache Kafka

Last Updated:Nov 17, 2023

This topic compares ApsaraMQ for Kafka and open source Apache Kafka in terms of stability, kernel capabilities, governance capabilities, and user habits.

Stability

Item

ApsaraMQ for Kafka

Apache Kafka

Disk usage

Earlier data is deleted when no free disk space is available.

Breakdowns occur when no free disk space is available.

Thread pool isolation

Data writes are normal when cold data is read.

Threads are blocked when cold data is read. This causes frequent data write failures.

Partition size

Data writes are stable even when the number of partitions is over 10,000.

Jitter occurs frequently when the number of partitions exceeds 1,000.

Inspection system

Deadlocks and breakdowns can be automatically detected and fixed.

None.

Bug fixing

Bugs can be detected and fixed at the earliest opportunity.

Bugs cannot be fixed until the community releases new versions. This takes a long time.

Kernel capabilities

Item

ApsaraMQ for Kafka

Apache Kafka

Scalability

Scaling is completed in seconds without affecting the business.

Scaling is completed in hours. Cluster performance is affected by increased replication traffic.

Storage

The highly reliable cloud storage is used by Professional Edition instance. This helps you save a large amount of storage space.

For availability and reliability reasons, data is stored in three replicas. This imposes a heavy load on storage.

Governance capabilities

Item

ApsaraMQ for Kafka

Apache Kafka

Version upgrade

One-click upgrades are supported.

Manual upgrades that are prone to errors are supported.

Metric curve

Complete metric curves are provided to facilitate traffic tracing and troubleshooting.

Only real-time metrics are displayed. Historical data is difficult to access.

Message accumulation alert

Alerts on message accumulation can be triggered for troubleshooting at the earliest opportunity.

None.

Subscription

Complete subscription information is provided.

Brief subscription information is provided.

Partition status

Complete partition status diagrams are provided.

Brief partition status diagrams are provided.

Message sending

You can send messages in the ApsaraMQ for Kafka console.

You can send messages only by running commands on the CLI. This results in high costs.

Message query

You can query messages by point in time or offset in the ApsaraMQ for Kafka console.

You can consume messages by running commands on the CLI. However, you cannot query messages by point in time or offset.

User habits

ApsaraMQ for Kafka uses the same client protocols as open source Apache Kafka. Therefore, you can seamlessly migrate applications and code that are developed by using open source Apache Kafka to ApsaraMQ for Kafka. To enrich the capabilities in message management and governance, ApsaraMQ for Kafka imposes the following limits on user habits.

Item

ApsaraMQ for Kafka

Apache Kafka

Reason

Topic

Creation method

  • ApsaraMQ for Kafka console

  • ApsaraMQ for Kafka API operations

  • Automatic topic creation on an ApsaraMQ for Kafka broker (disabled by default)

  • Kafka CLI

  • Kafka Manager

  • Automatic topic creation on an Apache Kafka broker

ApsaraMQ for Kafka allows you to manage topics in the ApsaraMQ for Kafka console or by calling API operations to implement security management of features such as fine-grained permission control and resource operation audit.

Note
  • We recommend that you use the automatic topic creation feature only in testing scenarios. For more information, see FAQ about automatic topic creation.

  • ApsaraMQ for Kafka does not allow you to create or delete topics by using Kafka CLI.

Naming convention

The name of a topic can contain letters, digits, underscores (_), hyphens (-), and periods (.), and must be 3 to 64 characters in length.

The name of a topic can contain letters, digits, underscores (_), hyphens (-), and periods (.), and must be 3 to 249 characters in length.

To prevent issues caused by limits on the length of resource names in other systems, ApsaraMQ for Kafka does not allow topic names to be excessively long.

Deletion method

  • ApsaraMQ for Kafka console

  • ApsaraMQ for Kafka API operations

  • Kafka CLI

  • Kafka Manager

ApsaraMQ for Kafka allows you to manage topics in the ApsaraMQ for Kafka console or by calling API operations to implement security management of features such as fine-grained permission control and resource operation audit.

Note

ApsaraMQ for Kafka does not allow you to delete topics by using Kafka CLI or Kafka Manager.

Group

Creation method

  • ApsaraMQ for Kafka console

  • ApsaraMQ for Kafka API operations

  • Automatic topic creation on an ApsaraMQ for Kafka broker (disabled by default)

Automatic topic creation on an Apache Kafka broker

ApsaraMQ for Kafka allows you to manage groups in the ApsaraMQ for Kafka console and by calling API operations to implement features such as fine-grained permission control, resource operation audit, and the alerting and monitoring of message accumulation.

Important

For information about how to flexibly create groups, see Use the flexible group creation feature. After you enable the flexible group creation feature, you can no longer use features such as fine-grained permission control, resource operation audit, or monitoring and alerting of message accumulation.

Naming convention

The name of a group can contain letters, digits, underscores (_), hyphens (-), and periods (.), and must be 3 to 64 characters in length.

The name of a group can contain letters, digits, underscores (_), hyphens (-), and periods (.), and must be 3 to 249 characters in length.

To prevent issues caused by limits on the length of resource names in other systems, ApsaraMQ for Kafka does not allow group names to be excessively long.

Deletion method

  • ApsaraMQ for Kafka console

  • ApsaraMQ for Kafka API operations

Kafka CLI

ApsaraMQ for Kafka allows you to manage groups in the ApsaraMQ for Kafka console or by calling API operations to implement security management of features such as fine-grained permission control and resource operation audit.

Note

ApsaraMQ for Kafka does not allow you to delete groups by using Kafka CLI.