ClickHouse/docs/es/operations/table_engines/replacingmergetree.md
Ivan Blinkov f315e5079b
More complete "es" translation (#9791)
* replace exit with assert in test_single_page

* improve save_raw_single_page docs option

* More grammar fixes

* "Built from" link in new tab

* fix mistype

* Example of include in docs

* add anchor to meeting form

* Draft of translation helper

* WIP on translation helper

* Replace some fa docs content with machine translation

* add normalize-en-markdown.sh

* normalize some en markdown

* normalize some en markdown

* admonition support

* normalize

* normalize

* normalize

* support wide tables

* normalize

* normalize

* normalize

* normalize

* normalize

* normalize

* normalize

* normalize

* normalize

* normalize

* normalize

* normalize

* normalize

* lightly edited machine translation of introdpection.md

* lightly edited machhine translation of lazy.md

* WIP on translation utils

* Normalize ru docs

* Normalize other languages

* some fixes

* WIP on normalize/translate tools

* add requirements.txt

* [experimental] add es docs language as machine translated draft

* remove duplicate script

* Back to wider tab-stop (narrow renders not so well)

* Links to nowhere check at least for English

* use f string

* More complete es translation
2020-03-21 12:17:06 +03:00

2.7 KiB

ReplacingMergeTree

El motor difiere de Método de codificación de datos: en que elimina las entradas duplicadas con el mismo valor de clave principal (o más exactamente, con el mismo clave de clasificación de valor).

La desduplicación de datos solo se produce durante una fusión. La fusión se produce en segundo plano en un momento desconocido, por lo que no se puede planificar para ello. Algunos de los datos pueden permanecer sin procesar. Aunque puede ejecutar una fusión no programada utilizando el OPTIMIZE Consulta, no cuente con su uso, porque el OPTIMIZE consulta leerá y escribirá una gran cantidad de datos.

Así, ReplacingMergeTree es adecuado para borrar datos duplicados en segundo plano para ahorrar espacio, pero no garantiza la ausencia de duplicados.

Creación de una tabla

CREATE TABLE [IF NOT EXISTS] [db.]table_name [ON CLUSTER cluster]
(
    name1 [type1] [DEFAULT|MATERIALIZED|ALIAS expr1],
    name2 [type2] [DEFAULT|MATERIALIZED|ALIAS expr2],
    ...
) ENGINE = ReplacingMergeTree([ver])
[PARTITION BY expr]
[ORDER BY expr]
[PRIMARY KEY expr]
[SAMPLE BY expr]
[SETTINGS name=value, ...]

Para obtener una descripción de los parámetros de solicitud, consulte descripción de la solicitud.

ReplacingMergeTree Parámetros

  • ver — columna con versión. Tipo UInt*, Date o DateTime. Parámetro opcional.

    Al fusionar, ReplacingMergeTree de todas las filas con la misma clave primaria deja solo una:

    • Último en la selección, si ver no establecido.
    • Con la versión máxima, si ver indicado.

Cláusulas de consulta

Al crear un ReplacingMergeTree mesa de la misma clausula se requieren, como al crear un MergeTree tabla.

Método obsoleto para crear una tabla

!!! attention "Atención" No use este método en proyectos nuevos y, si es posible, cambie los proyectos antiguos al método descrito anteriormente.

CREATE TABLE [IF NOT EXISTS] [db.]table_name [ON CLUSTER cluster]
(
    name1 [type1] [DEFAULT|MATERIALIZED|ALIAS expr1],
    name2 [type2] [DEFAULT|MATERIALIZED|ALIAS expr2],
    ...
) ENGINE [=] ReplacingMergeTree(date-column [, sampling_expression], (primary, key), index_granularity, [ver])

Todos los parámetros excepto ver el mismo significado que en MergeTree.

  • ver - columna con la versión. Parámetro opcional. Para una descripción, vea el texto anterior.

Artículo Original