Uso de Spring Data con Azure Cosmos DB para Apache Cassandra

En este artículo se muestra cómo usar Spring Data con Azure Cosmos DB para Apache Cassandra para crear una aplicación de Java de ejemplo que almacena y recupera datos.

Prerrequisitos

  • Un cliente de Git .

  • cURL o una utilidad HTTP similar para probar la funcionalidad.

Creación de una cuenta de Azure Cosmos DB

El procedimiento siguiente crea y configura una cuenta de Azure Cosmos DB en Azure Portal.

Creación de una cuenta de Azure Cosmos DB mediante el portal de Azure

Nota

Para obtener más información sobre la creación de cuentas, consulte la documentación de Azure Cosmos DB.

  1. Vaya a Azure Portal en https://portal.azure.com/ e inicie sesión.

  2. Seleccione Crear un recurso, seleccione Introducción y, a continuación, seleccione Azure Cosmos DB.

  3. En la pantalla Seleccionar opción de API, elija Cassandra.

    Captura de pantalla de la página de la opción api del portal de Azure con Cassandra seleccionada.

  4. Especifique la siguiente información:

    • Suscripción: especifique la suscripción de Azure que se va a usar.
    • Grupo de recursos: especifique si desea crear un nuevo grupo de recursos o elegir un grupo de recursos existente.
    • Nombre de cuenta: elija un nombre único para la cuenta de Azure Cosmos DB. Este nombre se usa para crear un nombre de dominio completo como wingtiptoyscassandra.documents.azure.com.
    • API: especifique Cassandra para este tutorial.
    • Ubicación: especifique la región geográfica más cercana para la base de datos.

    Captura de pantalla de Azure Cosmos DB configuración de la cuenta en el portal de Azure.

  5. Cuando escriba toda la información anterior, seleccione Revisar y crear.

  6. Si todo parece correcto en la página de revisión, seleccione Crear.

La implementación de la base de datos tarda unos minutos.

Agregar un espacio de claves a tu cuenta de Azure Cosmos DB

  1. Vaya a Azure Portal en https://portal.azure.com/ e inicie sesión.

  2. Seleccione Todos los recursos y, a continuación, seleccione la cuenta de Azure Cosmos DB que creó.

  3. Seleccione Data Explorer, seleccione la flecha abajo y seleccione Nuevo espacio de claves. Escriba un identificador único para el identificador del espacio de claves y, a continuación, seleccione Aceptar.

    Captura de pantalla de Data Explorer con la opción Nuevo espacio de claves seleccionada.

    Captura de pantalla del cuadro de diálogo usado para crear un espacio de claves Azure Cosmos DB.

Recuperación de la configuración de conexión de la cuenta de Azure Cosmos DB

  1. Vaya a Azure Portal en https://portal.azure.com/ e inicie sesión.

  2. Seleccione Todos los recursos y, a continuación, seleccione la cuenta de Azure Cosmos DB que creó.

  3. Seleccione Cadenas de conexión y copie los valores de los campos Punto de contacto, Puerto, Nombre de usuario y Contraseña principal . Estos valores se usan para configurar la aplicación más adelante.

    Captura de pantalla de la configuración de Azure Cosmos DB cadena de conexión en el portal de Azure.

Configuración de la aplicación de ejemplo

El siguiente procedimiento configura la aplicación de prueba.

  1. Abra un shell de comandos y clone el proyecto de ejemplo mediante un comando git como en el ejemplo siguiente:

    git clone https://github.com/Azure-Samples/spring-data-cassandra-on-azure.git
    
  2. Busque el archivo application.properties en el directorio recursos del proyecto de ejemplo o cree el archivo si aún no existe.

  3. Abra el archivo application.properties en un editor de texto y agregue o configure las líneas siguientes en el archivo y reemplace los valores de ejemplo por los valores adecuados de anteriormente:

    spring.data.cassandra.contact-points=wingtiptoyscassandra.cassandra.cosmos.azure.com
    spring.data.cassandra.port=10350
    spring.data.cassandra.username=wingtiptoyscassandra
    spring.data.cassandra.password=********
    

    Dónde:

    Parámetro Descripción
    spring.data.cassandra.contact-points Especifica el punto de contacto que se mencionó anteriormente en este artículo.
    spring.data.cassandra.port Especifica el puerto mencionado anteriormente en este artículo.
    spring.data.cassandra.username Especifica el nombre de usuario que se mencionó anteriormente en este artículo.
    spring.data.cassandra.password Especifica la contraseña principal que se mencionó anteriormente en este artículo.
  4. Guarde y cierre el archivo application.properties.

Empaquetar y probar la aplicación de ejemplo

Vaya al directorio que contiene el archivo pom.xml para compilar y probar la aplicación.

  1. Compile la aplicación de ejemplo con Maven; por ejemplo:

    mvn clean package
    
  2. Inicie la aplicación de ejemplo; por ejemplo:

    java -jar target/spring-data-cassandra-on-azure-0.1.0-SNAPSHOT.jar
    
  3. Cree registros nuevos mediante curl desde un símbolo del sistema. En los ejemplos siguientes se muestra cómo crear registros:

    curl -s -d "{\"name\":\"dog\",\"species\":\"canine\"}" -H "Content-Type: application/json" -X POST http://localhost:8080/pets
    
    curl -s -d "{\"name\":\"cat\",\"species\":\"feline\"}" -H "Content-Type: application/json" -X POST http://localhost:8080/pets
    

    La aplicación debe devolver valores como el ejemplo siguiente:

    Added Pet{id=60fa8cb0-0423-11e9-9a70-39311962166b, name='dog', species='canine'}.
    
    Added Pet{id=72c1c9e0-0423-11e9-9a70-39311962166b, name='cat', species='feline'}.
    
  4. Recupere todos los registros existentes mediante curl desde un símbolo del sistema. En los ejemplos siguientes se muestra cómo recuperar registros:

    curl -s http://localhost:8080/pets
    

    La aplicación debe devolver valores como los ejemplos siguientes:

    [{"id":"60fa8cb0-0423-11e9-9a70-39311962166b","name":"dog","species":"canine"},{"id":"72c1c9e0-0423-11e9-9a70-39311962166b","name":"cat","species":"feline"}]
    

Resumen

En este tutorial, creó una aplicación de ejemplo Java que usa Spring Data para almacenar y recuperar información mediante Azure Cosmos DB para Apache Cassandra.

Limpieza de recursos

Cuando ya no necesite los recursos, use el portal de Azure para eliminarlos. La eliminación de los recursos le ayuda a evitar cargos inesperados.

Pasos siguientes

Para más información sobre Spring y Azure, continúe con el Centro de documentación de Spring en Azure.

Consulte también

Para más información sobre el uso de Azure con Java, consulte Azure para desarrolladores de Java y Trabajando con Azure DevOps y Java.