> ## Documentation Index
> Fetch the complete documentation index at: https://clickhouse.com/docs/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 = "lg"}) => {
  const normalizedSize = ["sm", "md", "lg"].includes(size) ? size : "lg";
  return <div className={`ch-image-${normalizedSize}`}>
      <Frame>
        <img src={img} alt={alt} />
      </Frame>
    </div>;
};

> 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 title="Crear un servicio de ClickHouse" id="1-create-a-clickhouse-service">
    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 elegir registrarte con tu correo electrónico o mediante Google SSO, Microsoft SSO, AWS Marketplace, Google Cloud o Microsoft Azure
    * Si te registras con un correo electrónico y una contraseña, recuerda verificar tu dirección de correo en un plazo de 24 h mediante el enlace que recibirás por correo electrónico
    * Inicia sesión con el nombre de usuario y la contraseña que acabas de crear

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

    <br />

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

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

    <br />

    De forma predeterminada, las nuevas organizaciones se asignan al nivel Scale y crearán 3 réplicas, cada una con 4 vCPU y 16 GiB de RAM. El [escalado vertical automático](/docs/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 'Plans'.

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

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

    <br />

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

  <Step title="Conectarse a ClickHouse" id="2-connect-to-clickhouse">
    Hay 2 formas de conectarse a ClickHouse:

    * Conectarse mediante nuestra consola SQL web
    * Conectarse con su aplicación

    <br />

    ### Conectarse mediante la consola SQL

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

    <Image img="https://mintcdn.com/private-7c7dfe99/CFFsa2agBPbviR4r/images/_snippets/createservice8.webp?fit=max&auto=format&n=CFFsa2agBPbviR4r&q=85&s=6dd410dbfc7e72071431754d93394209" size="md" alt="Consola SQL" border width="3200" height="1800" data-path="images/_snippets/createservice8.webp" />

    Cree una pestaña de consulta e introduzca 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 agregado.

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

    <br />

    Eso es todo: ¡ya estás listo para empezar a usar tu nuevo servicio de ClickHouse!

    ### Conéctate desde tu aplicación

    Pulsa el botón Conectar en el menú de navegación. Se abrirá una ventana modal con las credenciales de tu servicio y un conjunto de instrucciones sobre cómo conectarte mediante tu interfaz o tus clientes para lenguajes.

    <Image img="https://mintcdn.com/private-7c7dfe99/CFFsa2agBPbviR4r/images/_snippets/service_connect.webp?fit=max&auto=format&n=CFFsa2agBPbviR4r&q=85&s=2a4e5eaf1da489019468d5a732877cc2" size="md" alt="Conectar al servicio" border width="3200" height="2125" data-path="images/_snippets/service_connect.webp" />

    <br />

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

  <Step title="Agregar datos" id="3-add-data">
    ¡ClickHouse es mejor con datos! Existen múltiples formas de agregar datos y la mayoría están disponibles en la página de Data Sources, a la que se puede acceder desde el menú de navegación.

    <Image img="https://mintcdn.com/private-7c7dfe99/CFFsa2agBPbviR4r/images/_snippets/data_sources.webp?fit=max&auto=format&n=CFFsa2agBPbviR4r&q=85&s=109802e9e25496f2b56d446e537a910e" size="md" alt="Fuentes de datos" border width="3200" height="1964" data-path="images/_snippets/data_sources.webp" />

    <br />

    Puede cargar datos mediante los siguientes métodos:

    * Configura un ClickPipe para empezar a ingestar datos desde fuentes como S3, Postgres, Kafka y GCS
    * Usa la consola SQL
    * Usa el cliente de ClickHouse
    * Sube un archivo  - los formatos aceptados incluyen JSON, CSV y TSV
    * Sube datos desde la URL de un 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 constantes. 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/CFFsa2agBPbviR4r/images/_snippets/select_data_source.webp?fit=max&auto=format&n=CFFsa2agBPbviR4r&q=85&s=0029e576bd7210788303b88b1c107016" size="md" alt="Seleccionar fuente de datos" border width="3200" height="1964" data-path="images/_snippets/select_data_source.webp" />

    <br />

    ### Agregar datos mediante la SQL Console

    Al igual que 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`](/docs/es/reference/statements/create/database) para crear una nueva base de datos en ClickHouse:

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

    Ejecuta 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`](/docs/es/reference/engines/table-engines/mergetree-family/mergetree) con cuatro columnas:

    * `user_id`:  un entero sin signo de 32 bits ([UInt32](/docs/es/reference/data-types/int-uint))
    * `message`: un tipo de dato [String](/docs/es/reference/data-types/string), que sustituye a tipos como `VARCHAR`, `BLOB`, `CLOB` y otros de otros sistemas de bases de datos
    * `timestamp`: un valor [DateTime](/docs/es/reference/data-types/datetime) que representa un instante en el tiempo
    * `metric`: un número de coma flotante de 32 bits ([Float32](/docs/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 para elegir, pero para una tabla sencilla en un servidor ClickHouse de un solo nodo, [`MergeTree`](/docs/es/reference/engines/table-engines/mergetree-family/mergetree) suele ser 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 en 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 de índice**) crea 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 cantidad mínima 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 clasificació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 ["Core Concepts"](/docs/es/concepts/core-concepts/index).

    #### Insertar datos en tu tabla

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

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

      Inserte una gran cantidad de filas en cada lote: decenas de miles o incluso millones de
      filas de una sola vez. No se preocupe: ClickHouse puede manejar fácilmente ese volumen y [ahorrarle dinero](/docs/es/concepts/best-practices/selecting-an-insert-strategy#batch-inserts-if-synchronous) al enviar menos solicitudes de escritura a su 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>
      Observe que la columna `timestamp` se rellena mediante varias funciones [**Date**](/docs/es/reference/data-types/date) y [**DateTime**](/docs/es/reference/data-types/datetime). ClickHouse tiene cientos de funciones útiles que puede [ver en la sección **Funciones**](/docs/es/reference/functions/index).
    </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**](/docs/es/concepts/features/interfaces/cli). Haga clic en `Connect` en el menú izquierdo para acceder a estos detalles. En el cuadro de diálogo, seleccione `Native` en el menú desplegable:

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

    <br />

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

    2. Ejecute el comando y sustituya el hostname, el nombre de usuario y la contraseña:

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

    Si aparece el indicador de carita sonriente, ya puede ejecutar consultas.

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

    3. Pruébalo ejecutando la siguiente consulta:

    <br />

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

    Observe que la respuesta se muestra en un formato de tabla claro:

    ```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. Añade una cláusula [`FORMAT`](/docs/es/reference/statements/select/format) para especificar uno de los [muchos formatos de salida que admite ClickHouse](/docs/es/reference/formats/index):

    <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 de `clickhouse client`, escriba el comando **exit**:

    <br />

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

    ### Subir 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 puedes 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 la tabla `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. Observe que las nuevas filas ya aparecen en la tabla al consultar desde SQL Console:

    <br />

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

    <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"](/docs/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](/docs/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 [conjuntos de datos de ejemplo](/docs/es/get-started/sample-datasets/index) con instrucciones sobre cómo insertarlos
* Mira nuestro video de 12 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](/docs/es/integrations/home) para conectarte a colas de mensajes, bases de datos, canalizaciones y más
* Si usas una herramienta de visualización UI/BI, consulta las [guías de usuario para conectar una UI a ClickHouse](/docs/es/integrations/connectors/data-visualization/index)
* La guía de usuario sobre [claves primarias](/docs/es/guides/clickhouse/data-modelling/sparse-primary-indexes) contiene todo lo que necesitas saber sobre las claves primarias y cómo definirlas
