Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

Compatibilidad con Cloud

Esta guía ofrece una visión general de qué esperar, tanto a nivel funcional como operativo, en ClickHouse Cloud. Aunque ClickHouse Cloud se basa en la distribución de código abierto de ClickHouse, puede haber algunas diferencias en la arquitectura y en la implementación. Puede resultarle interesante y útil, como contexto, este blog sobre cómo creamos ClickHouse Cloud.

Arquitectura de ClickHouse Cloud

ClickHouse Cloud simplifica significativamente la carga operativa y reduce los costos de ejecutar ClickHouse a escala. No es necesario dimensionar el despliegue por adelantado, configurar la replicación para alta disponibilidad, segmentar manualmente los datos, ampliar los servidores cuando aumente la carga de trabajo ni reducirlos cuando no se utilicen; nosotros nos encargamos de ello.

Estos beneficios son el resultado de las decisiones arquitectónicas en las que se basa ClickHouse Cloud:

  • El cómputo y el almacenamiento están separados y, por tanto, pueden escalarse automáticamente de forma independiente, por lo que no tiene que sobreaprovisionar ni almacenamiento ni cómputo en configuraciones estáticas de instancias.
  • El almacenamiento por niveles sobre almacenamiento de objetos y el almacenamiento en caché multinivel proporcionan una escalabilidad prácticamente ilimitada y una buena relación precio-rendimiento, por lo que no tiene que dimensionar por adelantado su partición de almacenamiento ni preocuparse por los altos costos de almacenamiento.
  • La alta disponibilidad está activada de forma predeterminada y la replicación se gestiona de forma transparente, para que pueda centrarse en crear sus aplicaciones o analizar sus datos.
  • El escalado automático para cargas de trabajo continuas y variables está activado de forma predeterminada, por lo que no tiene que dimensionar el servicio por adelantado, ampliar sus servidores cuando aumente la carga de trabajo ni reducirlos manualmente cuando haya menos actividad
  • La hibernación fluida para cargas de trabajo intermitentes está activada de forma predeterminada. Pausamos automáticamente sus recursos de cómputo tras un período de inactividad y los reanudamos de forma transparente cuando llega una nueva consulta, para que no tenga que pagar por recursos inactivos.
  • Los controles avanzados de escalado permiten establecer un máximo de autoescalado para un mayor control de costos o un mínimo de autoescalado para reservar recursos de cómputo para aplicaciones con requisitos de rendimiento específicos.

Funcionalidades

ClickHouse Cloud ofrece acceso a un conjunto seleccionado de funcionalidades de la distribución de código abierto de ClickHouse. En las tablas siguientes se describen algunas funciones que actualmente están deshabilitadas en ClickHouse Cloud.

Motores de bases de datos y tablas

ClickHouse Cloud es, de forma predeterminada, un servicio replicado y de alta disponibilidad, basado en la familia de motores de tabla SharedMergeTree. Al crear una tabla con un motor estándar de la familia MergeTree, Cloud sustituye automáticamente el motor correspondiente por Shared*. No debes añadir tú mismo un prefijo Shared o Replicated.

Especificas Cloud usa
MergeTree (o ningún motor) SharedMergeTree
ReplacingMergeTree SharedReplacingMergeTree
SummingMergeTree SharedSummingMergeTree
AggregatingMergeTree SharedAggregatingMergeTree
CollapsingMergeTree SharedCollapsingMergeTree
VersionedCollapsingMergeTree SharedVersionedCollapsingMergeTree
GraphiteMergeTree SharedGraphiteMergeTree

Los motores Replicated* se convierten en sus equivalentes Shared*. La sustitución puede verse en SHOW CREATE TABLE, que muestra el motor Shared* aunque tu sentencia especifique la variante simple.

Los siguientes motores de tabla también son compatibles y se usan tal cual. El motor de tabla MySQL compatible es distinto del motor de base de datos MySQL no compatible:

  • URL
  • View
  • MaterializedView
  • GenerateRandom
  • Null
  • Buffer
  • Memory
  • IcebergS3 y IcebergAzure
  • Deltalake
  • Hudi
  • MySQL
  • MongoDB
  • NATS
  • RabbitMQ
  • PostgreSQL
  • S3
  • Kafka

Los motores de tabla experimentales PaimonS3 y PaimonAzure pueden habilitarse en determinados servicios de ClickHouse Cloud. Ponte en contacto con Support para confirmar la disponibilidad.

Interfaces

ClickHouse Cloud admite HTTPS, interfaces nativas y el protocolo de red de MySQL. Próximamente también ofrecerá compatibilidad con más interfaces, como Postgres.

Diccionarios

Los diccionarios son una forma habitual de acelerar las búsquedas en ClickHouse. Actualmente, ClickHouse Cloud admite diccionarios de PostgreSQL, MySQL, servidores remotos y locales de ClickHouse, Redis, MongoDB y fuentes HTTP.

Consultas federadas

Ofrecemos compatibilidad con consultas federadas de ClickHouse para la comunicación entre clústeres en la nube y con clústeres externos autogestionados de ClickHouse. Actualmente, ClickHouse Cloud admite consultas federadas mediante los siguientes motores de integración:

  • IcebergS3 y IcebergAzure
  • PaimonS3 y PaimonAzure (experimental; contacte con Support para conocer la disponibilidad)
  • Deltalake
  • Hudi
  • MySQL
  • MongoDB
  • NATS
  • RabbitMQ
  • PostgreSQL
  • S3

Las consultas federadas con algunos motores externos de bases de datos y de tablas, como SQLite, ODBC, JDBC, Redis, HDFS y Hive, todavía no son compatibles.

Funciones definidas por el usuario

Las funciones definidas por el usuario en ClickHouse Cloud se encuentran en beta pública.

Comportamiento de los ajustes

Esto significa:

  • Los ajustes a nivel de sesión (establecidos mediante la instrucción SET) no se propagan al contexto de ejecución de las UDFs
  • Las UDFs no heredan los ajustes del perfil de usuario
  • Los ajustes a nivel de consulta no se aplican durante la ejecución de las UDFs

Funcionalidades experimentales

Las funcionalidades experimentales están deshabilitadas en los servicios de ClickHouse Cloud para garantizar la estabilidad de los despliegues de servicios.

Colecciones con nombre

Las colecciones con nombre creadas mediante DDL pueden habilitarse en algunos servicios de ClickHouse Cloud. Contacta con Support para confirmar la disponibilidad. Las colecciones con nombre definidas en archivos de configuración no están disponibles porque los usuarios no pueden modificar los archivos de configuración del servidor en ClickHouse Cloud.

Valores predeterminados y consideraciones operativas

A continuación se indican los ajustes predeterminados de los servicios de ClickHouse Cloud. En algunos casos, estos ajustes son fijos para garantizar el correcto funcionamiento del servicio y, en otros, pueden modificarse.

Límites operacionales

max_parts_in_total: 10,000

El valor predeterminado de la configuración max_parts_in_total para las tablas MergeTree se ha reducido de 100,000 a 10,000. El motivo de este cambio es que hemos observado que un gran número de partes de datos probablemente provoque un inicio lento de los servicios en la nube. Un gran número de partes suele indicar que se ha elegido una clave de partición demasiado granular, algo que normalmente ocurre por accidente y debe evitarse. Este cambio en el valor predeterminado permitirá detectar estos casos antes.

max_concurrent_queries: 1,000

Se aumentó esta configuración a nivel de servidor del valor predeterminado de 100 a 1000 para permitir una mayor concurrencia. Esto da como resultado número de réplicas * 1,000 consultas concurrentes para un servicio. Un servicio con una sola réplica admite hasta 1000 consultas concurrentes independientemente del nivel. Los servicios con varias réplicas en los niveles Scale y Enterprise admiten hasta 1000 consultas concurrentes por réplica.

max_table_size_to_drop: 1,000,000,000,000

Se aumentó este ajuste de 50 GB para permitir eliminar tablas o particiones de hasta 1 TB.

Ajustes del sistema

ClickHouse Cloud está optimizado para cargas de trabajo variables y, por ese motivo, la mayoría de los ajustes del sistema no se pueden configurar en este momento. No prevemos que la mayoría de los usuarios necesiten ajustar los ajustes del sistema, pero si tiene alguna pregunta sobre la optimización avanzada del sistema, póngase en contacto con ClickHouse Cloud Support.

Administración avanzada de la seguridad

Como parte de la creación del servicio de ClickHouse, creamos una base de datos predeterminada y el usuario default, que tiene amplios permisos sobre esta base de datos. Este usuario inicial puede crear usuarios adicionales y asignarles permisos sobre esta base de datos. Más allá de esto, por el momento no se admite habilitar las siguientes funciones de seguridad dentro de la base de datos mediante autenticación Kerberos, LDAP o certificados SSL X.509.

Lista de funcionalidades no compatibles

Las siguientes tablas enumeran las funcionalidades y los procedimientos autogestionados que no son compatibles con ClickHouse Cloud. Cada entrada indica la funcionalidad específica no compatible, incluso cuando su página de origen también abarca funcionalidades compatibles.

Infraestructura y operaciones gestionadas

Funcionalidad no compatible Documentación
Implementación y configuración autogestionadas de ClickHouse Keeper Guía de Keeper, Conexiones seguras a ZooKeeper
Aprovisionamiento manual de certificados TLS y configuración del servidor Aprovisionamiento de ACME, Configuración de TLS
Configuración manual de niveles de almacenamiento activo/intermedio/frío con TTL Guía
Ejecución de pruebas de rendimiento de hardware autogestionado Guía
Aplicación de recomendaciones operativas para entornos autogestionados Guía

Autenticación y seguridad

Funcionalidad no compatible Documentación
Autenticación externa mediante HTTP Referencia
Autenticación externa mediante Kerberos Referencia
Autenticación LDAP y asignación de roles Configuración, Autenticador
Autenticación mediante certificado X.509 Autenticación de usuarios, Autenticador externo

Interfaces e integraciones

Funcionalidad no compatible Documentación
Interfaz del protocolo wire de PostgreSQL Referencia
Interfaz SSH con PTY Referencia
Motor de replicación MaterializedPostgreSQL Guía de ClickPipes, Guía del conector, Motor de base de datos, Motor de tabla
Motor de tabla ODBC Referencia
Integración de almacenamiento de objetos compatible con S3 de MinIO Guía
Integración de almacenamiento de objetos compatible con S3 de Tigris Guía

Motores de bases de datos y de tablas

Funcionalidad no compatible Documentación
Motor de base de datos MySQL Referencia
Motor de tabla EmbeddedRocksDB Referencia
Motor de tabla HDFS Referencia
Motor de tabla Hive Referencia
Motor de tabla JDBC Referencia
Motor de tabla Redis para consultas federadas Referencia
Motor de tabla SQLite Referencia
Motor de tabla TimeSeries Referencia
Motor de tabla YTsaurus Referencia
Motores de tabla de la familia Log (Log, StripeLog y TinyLog) Descripción general de la familia, Log, StripeLog, TinyLog

Diccionarios y configuración del servidor

Funcionalidad no compatible Documentación
Colecciones con nombre y las sentencias CREATE NAMED COLLECTION y ALTER NAMED COLLECTION Descripción general, Crear, Modificar
Configuración de diccionarios basada en archivos Referencia
Diccionarios de geobase integrados Referencia
Fuentes locales de diccionario YAMLRegExpTree Guía de diseños, Referencia de fuentes
Fuente de diccionario YTsaurus Referencia
Diccionarios de tokenizadores japoneses configurados en el servidor Referencia

Formatos de datos y códecs

Funcionalidad no compatible Documentación
Formato CapnProto con archivos de esquema del lado del servidor Referencia de formatos, Guía
Formatos Protobuf, ProtobufList y ProtobufSingle con archivos de esquema del lado del servidor Guía, ProtobufList, ProtobufSingle
Códecs ZSTD_QAT y DEFLATE_QPL obsoletos ZSTD_QAT, DEFLATE_QPL

Funciones y características experimentales

Funcionalidad no compatible Documentación
Funciones experimentales de procesamiento del lenguaje natural Referencia
Transacciones experimentales de múltiples sentencias con commit y rollback Guía
Funciones experimentales de introspección de transacciones transactionID, transactionLatestSnapshot, transactionOldestSnapshot
Funciones de ventana temporal para WindowView Referencia
WindowView experimental Referencia
Funciones definidas por el usuario en WebAssembly Descripción general, Guía
Funciones definidas por el usuario ejecutables basadas en controladores Referencia
Función de tabla filesystem para archivos locales del servidor Referencia

Administración y control de acceso

Funcionalidad no compatible Documentación
Operaciones de estadísticas de columnas con ALTER TABLE Referencia
Suplantación de usuarios con EXECUTE AS Referencia
Privilegios específicos de motores de tabla Concesión, Configuración del servidor
El atajo de privilegio GRANT ALL Referencia
Apagado del servidor con SYSTEM SHUTDOWN Referencia
Inicio y detención de fetches en segundo plano con sentencias SYSTEM SYSTEM STOP FETCHES, SYSTEM START FETCHES
Inicio y detención de merges en segundo plano con sentencias SYSTEM SYSTEM STOP MERGES, SYSTEM START MERGES
Inicio y detención de merges de TTL en segundo plano con sentencias SYSTEM SYSTEM STOP TTL MERGES, SYSTEM START TTL MERGES

Hoja de ruta

Estamos evaluando el interés por muchas otras funcionalidades en ClickHouse Cloud. Si tienes comentarios y quieres solicitar una funcionalidad específica, envíala aquí.

Navigation