> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-mintlify-3a82795f.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Inicio rápido de ClickHouse Cloud

> Guía de inicio rápido para ClickHouse Cloud

export const Image = ({img, alt, size}) => {
  return <Frame>
      <img src={img} alt={alt} />
    </Frame>;
};

> La forma más rápida y sencilla de empezar a usar ClickHouse es crear un nuevo
> servicio en [ClickHouse Cloud](https://console.clickhouse.cloud). En esta guía de inicio rápido, lo configurarás
> en tres sencillos pasos.

<Steps>
  <Step>
    ## Crear un servicio de ClickHouse

    Para crear un servicio gratuito de ClickHouse en [ClickHouse Cloud](https://console.clickhouse.cloud), solo tienes que registrarte siguiendo estos pasos:

    * Crea una cuenta en la [página de registro](https://console.clickhouse.cloud/signUp)
    * Puedes registrarte con tu correo electrónico o mediante Google SSO, Microsoft SSO, AWS Marketplace, Google Cloud o Microsoft Azure
    * Si te registras con correo electrónico y contraseña, recuerda verificar tu dirección de correo en las siguientes 24 h mediante el enlace que recibirás por correo
    * Inicia sesión con el nombre de usuario y la contraseña que acabas de crear

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-3a82795f/aRvsybqUpVR5ZXyi/images/_snippets/signup_page.png?fit=max&auto=format&n=aRvsybqUpVR5ZXyi&q=85&s=dbcd7fa7b7f1eb32f38879864db0694a" size="md" alt="Seleccionar plan" border width="3200" height="2218" data-path="images/_snippets/signup_page.png" />

    <br />

    Una vez que hayas iniciado sesión, ClickHouse Cloud inicia el asistente de configuración inicial, que te guía para crear un nuevo servicio de ClickHouse. Selecciona la región en la que quieres desplegar el servicio y asígnale un nombre a tu nuevo servicio:

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-3a82795f/XFccO_5diusZJegS/images/_snippets/createservice1.png?fit=max&auto=format&n=XFccO_5diusZJegS&q=85&s=23f1a163022bd4b85f69be0a97b27519" size="md" alt="Nuevo servicio de ClickHouse" border width="3200" height="1766" data-path="images/_snippets/createservice1.png" />

    <br />

    De forma predeterminada, las nuevas organizaciones se crean en el nivel Scale y tendrán 3 réplicas, cada una con 4 vCPU y 16 GiB de RAM. [Vertical autoscaling](/es/products/cloud/features/autoscaling/vertical) estará habilitado de forma predeterminada en el nivel Scale. Puedes cambiar el nivel de la organización más adelante en la página 'Planes'.

    Si es necesario, personaliza los recursos del servicio especificando un tamaño mínimo y máximo entre los que podrán escalar las réplicas. Cuando esté todo listo, selecciona `Create service`.

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-3a82795f/aRvsybqUpVR5ZXyi/images/_snippets/scaling_limits.png?fit=max&auto=format&n=aRvsybqUpVR5ZXyi&q=85&s=51089518d164d35687a8ce18199a8f61" size="md" alt="Límites de escalado" border width="3200" height="2014" data-path="images/_snippets/scaling_limits.png" />

    <br />

    ¡Enhorabuena! Tu servicio de ClickHouse Cloud ya está en funcionamiento y la configuración inicial se ha completado. Sigue leyendo para conocer cómo empezar a ingestar y consultar tus datos.
  </Step>

  <Step>
    ## Conéctate a ClickHouse

    Hay 2 formas de conectarte a ClickHouse:

    * Conéctate usando nuestra consola SQL basada en web
    * Conéctate con tu aplicación

    <br />

    ### Conéctate usando la consola SQL

    Para empezar rápidamente, ClickHouse ofrece una consola SQL basada en web a la que se te redirigirá al completar el onboarding.

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-3a82795f/aRvsybqUpVR5ZXyi/images/_snippets/createservice8.png?fit=max&auto=format&n=aRvsybqUpVR5ZXyi&q=85&s=3f0afd0de46a4babe7e6e7ae77675a99" size="md" alt="SQL Console" border width="3200" height="1800" data-path="images/_snippets/createservice8.png" />

    Crea una pestaña de consulta e introduce una consulta sencilla para verificar que la conexión funciona:

    ```sql theme={null}
    SHOW databases
    ```

    Deberías ver 4 bases de datos en la lista, además de las que hayas añadido.

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-3a82795f/aRvsybqUpVR5ZXyi/images/_snippets/show_databases.png?fit=max&auto=format&n=aRvsybqUpVR5ZXyi&q=85&s=a60ec671df95c92089c911b035775272" size="md" alt="SQL Console" border width="3200" height="1800" data-path="images/_snippets/show_databases.png" />

    <br />

    Eso es todo: ¡ya puedes empezar a usar tu nuevo servicio de ClickHouse!

    ### Conéctate con tu aplicación

    Haz clic en el botón Connect del menú de navegación. Se abrirá una ventana modal con las credenciales de tu servicio y una serie de instrucciones sobre cómo conectarte mediante tu interfaz o los clients de tu lenguaje.

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-3a82795f/aRvsybqUpVR5ZXyi/images/_snippets/service_connect.png?fit=max&auto=format&n=aRvsybqUpVR5ZXyi&q=85&s=f9cb7092e97c1f15c3731bc7bfc0408f" size="md" alt="Service Connect" border width="3200" height="2125" data-path="images/_snippets/service_connect.png" />

    <br />

    Si no encuentras el client para tu lenguaje, quizá quieras consultar nuestra lista de [Integrations](/es/integrations/home).
  </Step>

  <Step>
    ## Agregar datos

    ¡ClickHouse es mejor con datos! Existen múltiples formas de agregar datos y la mayoría están disponibles en la página de Fuentes de datos, a la que se puede acceder desde el menú de navegación.

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-3a82795f/aRvsybqUpVR5ZXyi/images/_snippets/data_sources.png?fit=max&auto=format&n=aRvsybqUpVR5ZXyi&q=85&s=6c8ac43ace16249c4d218e8149e109be" size="md" alt="Fuentes de datos" border width="3200" height="1964" data-path="images/_snippets/data_sources.png" />

    <br />

    Puede cargar datos mediante los siguientes métodos:

    * Configure un ClickPipe para empezar a ingestar datos de fuentes como S3, Postgres, Kafka y GCS
    * Usa la consola SQL
    * Use el cliente de ClickHouse
    * Sube un archivo  - los formatos admitidos incluyen JSON, CSV y TSV
    * Cargar datos desde la URL del archivo

    ### ClickPipes

    [ClickPipes](http://clickhouse.com/docs/integrations/clickpipes) es una plataforma de integración administrada que simplifica la ingesta de datos desde un conjunto diverso de fuentes con solo unos pocos clics. Diseñada para los workloads más exigentes, la arquitectura robusta y escalable de ClickPipes garantiza un rendimiento y una fiabilidad consistentes. ClickPipes puede utilizarse tanto para necesidades de streaming a largo plazo como para trabajos puntuales de carga de datos.

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-3a82795f/aRvsybqUpVR5ZXyi/images/_snippets/select_data_source.png?fit=max&auto=format&n=aRvsybqUpVR5ZXyi&q=85&s=46231ac417677fc98a07ce7f57d387b7" size="md" alt="Seleccionar fuente de datos" border width="3200" height="1964" data-path="images/_snippets/select_data_source.png" />

    <br />

    ### Agregar datos mediante la SQL Console

    Como la mayoría de los sistemas de gestión de bases de datos, ClickHouse agrupa lógicamente las tablas en **bases de datos**. Use el comando [`CREATE DATABASE`](/es/reference/statements/create/database) para crear una nueva base de datos en ClickHouse:

    ```sql theme={null}
    CREATE DATABASE IF NOT EXISTS helloworld
    ```

    Ejecute el siguiente comando para crear una tabla llamada `my_first_table` en la base de datos `helloworld`:

    ```sql theme={null}
    CREATE TABLE helloworld.my_first_table
    (
        user_id UInt32,
        message String,
        timestamp DateTime,
        metric Float32
    )
    ENGINE = MergeTree()
    PRIMARY KEY (user_id, timestamp)
    ```

    En el ejemplo anterior, `my_first_table` es una tabla [`MergeTree`](/es/reference/engines/table-engines/mergetree-family/mergetree) con cuatro columnas:

    * `user_id`:  un entero sin signo de 32 bits ([UInt32](/es/reference/data-types/int-uint))
    * `message`: un tipo de dato [String](/es/reference/data-types/string) que sustituye tipos como `VARCHAR`, `BLOB`, `CLOB` y otros de otros sistemas de bases de datos
    * `timestamp`: un valor [DateTime](/es/reference/data-types/datetime) que representa un instante en el tiempo
    * `metric`: un número de coma flotante de 32 bits ([Float32](/es/reference/data-types/float))

    <Info>
      **Motores de tabla**

      Los motores de tabla determinan:

      * Cómo y dónde se almacenan los datos
      * Qué consultas se admiten
      * Si los datos se replican o no

      <br />

      Hay muchos motores de tabla entre los que elegir, pero para una tabla sencilla en un servidor ClickHouse de un solo nodo, [`MergeTree`](/es/reference/engines/table-engines/mergetree-family/mergetree) será probablemente la opción más adecuada.
    </Info>

    #### Breve introducción a las claves primarias

    Antes de continuar, es importante entender cómo funcionan las claves primarias en ClickHouse (¡la implementación
    de las claves primarias puede resultar sorprendente!):

    * las claves primarias de ClickHouse ***no son únicas*** para cada fila de una tabla

    La clave primaria de una tabla de ClickHouse determina cómo se ordenan los datos al escribirse en disco. Cada 8.192 filas o 10 MB de
    datos (denominado **granularidad del índice**) genera una entrada en el archivo de índice de clave primaria. Este concepto de granularidad
    crea un **índice disperso** que cabe fácilmente en memoria, y los gránulos representan una franja de la menor cantidad de
    datos de columna que se procesa durante las consultas `SELECT`.

    La clave primaria puede definirse mediante el parámetro `PRIMARY KEY`. Si se define una tabla sin especificar un `PRIMARY KEY`,
    la clave pasa a ser la tupla indicada en la cláusula `ORDER BY`. Si se especifican tanto `PRIMARY KEY` como `ORDER BY`, la clave primaria debe ser un subconjunto del orden de ordenación.

    La clave primaria es también la clave de ordenación, que es una tupla de `(user_id, timestamp)`.  Por lo tanto, los datos almacenados en cada
    archivo de columna estarán ordenados por `user_id` y, a continuación, por `timestamp`.

    Para profundizar en los conceptos fundamentales de ClickHouse, consulte ["Conceptos fundamentales"](/es/concepts/core-concepts).

    #### Insertar datos en tu tabla

    Puede utilizar el conocido comando [`INSERT INTO TABLE`](/es/reference/statements/insert-into) con ClickHouse, pero es importante entender que cada inserción en una tabla [`MergeTree`](/es/reference/engines/table-engines/mergetree-family/mergetree) genera la creación de una **parte** en el almacenamiento.

    <Tip>
      **Práctica recomendada de ClickHouse**

      Inserta una gran cantidad de filas por lote: decenas de miles o incluso millones de
      filas de una sola vez. No te preocupes: ClickHouse puede manejar fácilmente ese volumen, y [te ahorrará dinero](/es/concepts/best-practices/selecting-an-insert-strategy#batch-inserts-if-synchronous) al enviar menos solicitudes de escritura a tu servicio.
    </Tip>

    <br />

    Incluso para un ejemplo sencillo, insertemos más de una fila a la vez:

    ```sql theme={null}
    INSERT INTO helloworld.my_first_table (user_id, message, timestamp, metric) VALUES
        (101, 'Hello, ClickHouse!',                                 now(),       -1.0    ),
        (102, 'Insert a lot of rows per batch',                     yesterday(), 1.41421 ),
        (102, 'Sort your data based on your commonly-used queries', today(),     2.718   ),
        (101, 'Granules are the smallest chunks of data read',      now() + 5,   3.14159 )
    ```

    <Note>
      Observa que la columna `timestamp` se rellena mediante varias funciones de [**Date**](/es/reference/data-types/date) y [**DateTime**](/es/reference/data-types/datetime). ClickHouse tiene cientos de funciones útiles que puedes [consultar en la sección **Funciones**](/es/reference/functions).
    </Note>

    Verifiquemos que funcionó:

    ```sql theme={null}
    SELECT * FROM helloworld.my_first_table
    ```

    ### Agregar datos con el ClickHouse Client

    También puede conectarse a su servicio de ClickHouse Cloud mediante una herramienta de línea de comandos llamada [**clickhouse client**](/es/concepts/features/interfaces/cli). Haga clic en `Connect` en el menú de la izquierda para acceder a estos detalles. En el cuadro de diálogo, seleccione `Native` en el menú desplegable:

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-3a82795f/XFccO_5diusZJegS/images/_snippets/client_details.png?fit=max&auto=format&n=XFccO_5diusZJegS&q=85&s=a47c95cf4f63636919cc3d619ab5680b" size="md" alt="detalles de conexión del cliente de ClickHouse" border width="3200" height="1800" data-path="images/_snippets/client_details.png" />

    <br />

    1. Instala [ClickHouse](/es/concepts/features/interfaces/cli).

    2. Ejecute el comando sustituyendo su hostname, username y password:

    ```bash theme={null}
    ./clickhouse client --host HOSTNAME.REGION.CSP.clickhouse.cloud \
    --secure --port 9440 \
    --user default \
    --password <password>
    ```

    Si aparece el prompt con la carita sonriente, ¡ya está listo para ejecutar consultas!

    ```response theme={null}
    :)
    ```

    3. Pruébelo ejecutando la siguiente consulta:

    <br />

    ```sql theme={null}
    SELECT *
    FROM helloworld.my_first_table
    ORDER BY timestamp
    ```

    Observe que la respuesta se devuelve en un formato de tabla ordenado:

    ```response theme={null}
    ┌─user_id─┬─message────────────────────────────────────────────┬───────────timestamp─┬──metric─┐
    │     102 │ Insert a lot of rows per batch                     │ 2022-03-21 00:00:00 │ 1.41421 │
    │     102 │ Sort your data based on your commonly-used queries │ 2022-03-22 00:00:00 │   2.718 │
    │     101 │ Hello, ClickHouse!                                 │ 2022-03-22 14:04:09 │      -1 │
    │     101 │ Granules are the smallest chunks of data read      │ 2022-03-22 14:04:14 │ 3.14159 │
    └─────────┴────────────────────────────────────────────────────┴─────────────────────┴─────────┘

    4 rows in set. Elapsed: 0.008 sec.
    ```

    4. Agregue una cláusula [`FORMAT`](/es/reference/statements/select/format) para especificar uno de los [numerosos formatos de salida que admite ClickHouse](/es/reference/formats):

    <br />

    ```sql theme={null}
    SELECT *
    FROM helloworld.my_first_table
    ORDER BY timestamp
    FORMAT TabSeparated
    ```

    En la consulta anterior, la salida se devuelve separada por tabulaciones:

    ```response theme={null}
    Query id: 3604df1c-acfd-4117-9c56-f86c69721121

    102 Insert a lot of rows per batch      2022-03-21 00:00:00     1.41421
    102 Sort your data based on your commonly-used queries  2022-03-22 00:00:00     2.718
    101 Hello, ClickHouse!  2022-03-22 14:04:09     -1
    101 Granules are the smallest chunks of data read       2022-03-22 14:04:14     3.14159

    4 rows in set. Elapsed: 0.005 sec.
    ```

    5. Para salir del `clickhouse client`, escriba el comando **exit**:

    <br />

    ```bash theme={null}
    exit
    ```

    ### Cargar un archivo

    Una tarea habitual al comenzar a trabajar con una base de datos es insertar datos que ya se tienen en archivos. Disponemos de datos de muestra en línea que puede insertar y que representan datos de clickstream; incluyen un ID de usuario, una URL visitada y el timestamp del evento.

    Supongamos que tenemos el siguiente texto en un archivo CSV llamado `data.csv`:

    ```bash title="data.csv" theme={null}
    102,This is data in a file,2022-02-22 10:43:28,123.45
    101,It is comma-separated,2022-02-23 00:00:00,456.78
    103,Use FORMAT to specify the format,2022-02-21 10:43:30,678.90
    ```

    1. El siguiente comando inserta los datos en `my_first_table`:

    <br />

    ```bash theme={null}
    ./clickhouse client --host HOSTNAME.REGION.CSP.clickhouse.cloud \
    --secure --port 9440 \
    --user default \
    --password <password> \
    --query='INSERT INTO helloworld.my_first_table FORMAT CSV' < data.csv
    ```

    2. Observa que las nuevas filas ya aparecen en la tabla al consultar desde la SQL Console:

    <br />

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-3a82795f/aRvsybqUpVR5ZXyi/images/_snippets/new_rows_from_csv.png?fit=max&auto=format&n=aRvsybqUpVR5ZXyi&q=85&s=4da9199a3235a7884dcfc69de3375fe0" size="md" alt="Nuevas filas de un archivo CSV" width="3200" height="1800" data-path="images/_snippets/new_rows_from_csv.png" />

    <br />
  </Step>
</Steps>

<Tip>
  **Filtrado mediante lista de acceso IP**

  Antes de continuar, recomendamos configurar el filtrado mediante lista de acceso IP.
  Consulta ["Configurar filtros IP"](/es/products/cloud/guides/security/connectivity/setting-ip-filters) para obtener más información.
</Tip>

<div id="whats-next">
  ## ¿Qué sigue?
</div>

* El [Tutorial](/es/get-started/quickstarts/tutorial) te guía para insertar 2 millones de filas en una tabla y escribir algunas consultas analíticas
* Tenemos una lista de [datasets de ejemplo](/es/get-started/sample-datasets) con instrucciones sobre cómo insertarlos
* Consulta nuestro video de 25 minutos sobre [Primeros pasos con ClickHouse](https://clickhouse.com/company/events/getting-started-with-clickhouse/)
* Si tus datos provienen de una fuente externa, consulta nuestra [colección de guías de integración](/es/integrations/home) para conectarte a colas de mensajes, bases de datos, canalizaciones y mucho más
* Si usas una herramienta de visualización o BI, consulta las [guías de usuario para conectar una UI a ClickHouse](/es/integrations/connectors/data-visualization)
* La guía de usuario sobre [claves primarias](/es/guides/clickhouse/data-modelling/sparse-primary-indexes) contiene todo lo que necesitas saber sobre las claves primarias y cómo definirlas
