- Mayor rendimiento de inserción
- Mayor rendimiento de las fusiones en segundo plano
- Mayor rendimiento de las mutaciones
- Operaciones de escalado y reducción de escala más rápidas
- Consistencia fuerte con menor sobrecarga para las consultas SELECT
Introspección
system.replication_queue y system.replicated_fetches, ya que no se produce replicación de datos ni de metadatos. Sin embargo, SharedMergeTree tiene alternativas equivalentes para estas dos tablas.
system.virtual_parts
Esta tabla sirve como alternativa a system.replication_queue para SharedMergeTree. Almacena información sobre el conjunto más reciente de partes actuales, así como sobre partes futuras en proceso, como fusiones, mutaciones y particiones eliminadas.
system.shared_merge_tree_fetches
Esta tabla es la alternativa a system.replicated_fetches para SharedMergeTree. Contiene información sobre los fetches actualmente en curso de claves primarias y checksums en memoria.
SharedMergeTree está habilitado de forma predeterminada.
En los servicios que admiten el motor de tabla SharedMergeTree, no necesita habilitar nada manualmente. Puede crear tablas de la misma forma que antes, y se utilizará automáticamente un motor de tabla basado en SharedMergeTree correspondiente al motor especificado en su consulta CREATE TABLE.
my_table con el motor de tabla SharedMergeTree.
No es necesario especificar ENGINE=MergeTree, ya que en ClickHouse Cloud default_table_engine=MergeTree. La siguiente consulta es idéntica a la anterior.
CREATE TABLE con SHOW CREATE TABLE:
Configuración
insert_quorum— todas las inserciones en SharedMergeTree son inserciones con cuórum (se escriben en almacenamiento compartido), por lo que esta configuración no es necesaria al usar el motor de tabla SharedMergeTree.insert_quorum_parallel— todas las inserciones en SharedMergeTree son inserciones con cuórum (se escriben en almacenamiento compartido), por lo que esta configuración no es necesaria al usar el motor de tabla SharedMergeTree.select_sequential_consistency— no requiere inserciones con cuórum y generará carga adicional en clickhouse-keeper en las consultasSELECT
Consistencia
insert_quorum o insert_quorum_parallel. Las inserciones se realizan con cuórum, lo que significa que los metadatos se almacenan en ClickHouse-Keeper y se replican al menos al cuórum de nodos de ClickHouse-Keeper. Cada réplica del clúster recuperará de forma asíncrona la información nueva desde ClickHouse-Keeper.
La mayoría de las veces, no debería usar select_sequential_consistency ni SYSTEM SYNC REPLICA LIGHTWEIGHT. La replicación asíncrona debería cubrir la mayoría de los escenarios y tiene una latencia muy baja. En el caso poco frecuente de que necesite evitar por completo las lecturas obsoletas, siga estas recomendaciones en este orden de preferencia:
-
Si ejecuta sus consultas en la misma sesión o en el mismo nodo para las lecturas y escrituras, no es necesario usar
select_sequential_consistency, porque su réplica ya tendrá los metadatos más recientes. -
Si escribe en una réplica y lee desde otra, puede usar
SYSTEM SYNC REPLICA LIGHTWEIGHTpara forzar a la réplica a recuperar los metadatos desde ClickHouse-Keeper. -
Use
select_sequential_consistencycomo ajuste de la consulta.