Al crear un topic en una instancia de ApsaraMQ for Kafka, puede especificar el almacenamiento en la nube o el almacenamiento local como motor de almacenamiento. El almacenamiento en la nube utiliza el algoritmo de disco de Alibaba Cloud y ofrece baja latencia y alta capacidad de auto scaling. Este motor es adecuado para la mayoría de los escenarios. Si tiene requisitos específicos, como compactación, idempotencia, transacciones y mensajes ordenados por partición, se recomienda usar el almacenamiento local.
Comparación entre almacenamiento en la nube y almacenamiento local
Para consultar las versiones de Apache Kafka compatibles con las distintas ediciones de ApsaraMQ for Kafka, consulte Instance editions.
Solo puede establecer el parámetro Storage Engine en Cloud Storage o Local Storage al crear un topic si la instancia es de ApsaraMQ for Kafka Professional Edition no serverless. En otros tipos de instancias, el parámetro Storage Engine se configura automáticamente en Cloud Storage, ya que la actualización de Apsara Distributed File System resolvió los problemas de compatibilidad de ciertas funciones del almacenamiento en la nube. Por lo tanto, no se requieren varios motores de almacenamiento complementarios.
El almacenamiento local no hace referencia a discos locales, sino al uso del algoritmo nativo In-Sync Replicas (ISR).
Elemento | Almacenamiento en la nube | Almacenamiento local |
Algoritmo subyacente | Algoritmo de disco de Alibaba Cloud | Algoritmo ISR nativo de Apache Kafka |
Requisitos de edición de la instancia | Ninguna | |
Mecanismo de réplicas | Tres réplicas en modo distribuido
| Tres réplicas en modo distribuido Si adquiere un disco con 300 GB de espacio, puede almacenar 100 GB de datos de negocio. Los 200 GB restantes se usan para las dos réplicas de dichos datos. |
Latencia de envío de mensajes | Baja | Alta |
Proporción de consumo de particiones | 1:1 Si crea un topic que requiere 12 particiones, se descuentan 12 particiones de la cuota de la instancia correspondiente. | 1:3 Si crea un topic que requiere 12 particiones, se descuentan 36 particiones de la cuota de la instancia correspondiente. |
Almacenamiento fragmentado | No | Sí |
Compactación | No compatible | Compatible |
Idempotencia | No compatible | Compatible |
Transacción | No compatible | Compatible |
Tipo de mensaje | Mensajes normales Ante reinicios o fallos en el clúster, algunos mensajes podrían perder el orden. | Mensajes ordenados por partición Si ocurren fallos en el clúster, el sistema selecciona automáticamente un nuevo líder del ISR. |
Referencias
Para obtener información sobre cómo seleccionar un motor de almacenamiento para un topic creado en una instancia de ApsaraMQ for Kafka Professional Edition, consulte Step 1: Create a topic.