Importación de la base de datos de ejemplo AdventureWorks en el servidor PostgreSQL habilitado para Azure Arc
AdventureWorks es una base de datos de ejemplo que contiene una base de datos OLTP que se usa en los tutoriales y ejemplos. Microsoft la proporciona y mantiene como parte del repositorio de GitHub de ejemplos de SQL Server.
Un proyecto de código abierto ha convertido la base de datos AdventureWorks para que sea compatible con el servidor PostgreSQL habilitado para Azure Arc.
- Proyecto original
- Seguimiento del proyecto que hace una conversión previa de los archivos CSV para que sean compatibles con PostgreSQL
En este documento se describe un proceso sencillo para importar la base de datos de ejemplo AdventureWorks en el servidor PostgreSQL habilitado para Azure Arc.
Nota:
Como característica en versión preliminar, la tecnología que se presenta en este artículo está sujeta a los términos de uso complementarios para las versiones preliminares de Microsoft Azure.
Las actualizaciones más recientes están disponibles en las notas de la versión.
Descarga del archivo de copia de seguridad de AdventureWorks
Descargue el archivo AdventureWorks.sql en el contenedor del servidor PostgreSQL. En este ejemplo, usaremos el comando kubectl exec
para ejecutar de forma remota un comando en el contenedor del servidor PostgreSQL para descargar el archivo en ese contenedor. Puede descargar este archivo desde cualquier ubicación a la que tenga acceso curl
. Use este mismo método si tiene otros archivos de copia de seguridad de base de datos que desea extraer en el contenedor del servidor PostgreSQL. Una vez que la copia de seguridad se encuentra en el contenedor del servidor PostgreSQL, es fácil crear la base de datos, el esquema y rellenar los datos.
Ejecute un comando como este para descargar los archivos. Reemplace antes el valor del nombre del pod y del espacio de nombres:
Nota:
El contenedor deberá tener conectividad a Internet a través del puerto 443 para descargar el archivo de GitHub.
Nota:
Use el nombre de pod del nodo de coordinación del servidor PostgreSQL. Su nombre es <nombre del grupo de servidor>c-0 (por ejemplo, postgres01c-0, donde c significa nodo de coordinación). Si no está seguro del nombre del pod, ejecute el comando kubectl get pod
.
kubectl exec <PostgreSQL pod name> -n <namespace name> -c postgres -- /bin/bash -c "cd /tmp && curl -k -O https://raw.githubusercontent.com/microsoft/azure_arc/main/azure_arc_data_jumpstart/cluster_api/capi_azure/arm_template/artifacts/AdventureWorks2019.sql"
#Example:
#kubectl exec postgres02-0 -n arc -c postgres -- /bin/bash -c "cd /tmp && curl -k -O hthttps://raw.githubusercontent.com/microsoft/azure_arc/main/azure_arc_data_jumpstart/cluster_api/capi_azure/arm_template/artifacts/AdventureWorks2019.sql"
Importación de la base de datos de AdventureWorks
Del mismo modo, puede ejecutar un comando kubectl exec para usar la herramienta CLI de psql que se incluye en los contenedores de servidor PostgreSQL para crear y cargar la base de datos.
Ejecute un comando como este para crear la base de datos vacía. Antes, sustituya el valor del nombre del pod y del espacio de nombres.
kubectl exec <PostgreSQL pod name> -n <namespace name> -c postgres -- psql --username postgres -c 'CREATE DATABASE "adventureworks";'
#Example
#kubectl exec postgres02-0 -n arc -c postgres -- psql --username postgres -c 'CREATE DATABASE "adventureworks";'
A continuación, ejecute un comando como este para importar la base de datos; sustituya el valor del nombre del pod y del espacio de nombres antes de ejecutarlo.
kubectl exec <PostgreSQL pod name> -n <namespace name> -c postgres -- psql --username postgres -d adventureworks -f /tmp/AdventureWorks.sql
#Example
#kubectl exec postgres02-0 -n arc -c postgres -- psql --username postgres -d adventureworks -f /tmp/AdventureWorks.sql
Pasos siguientes sugeridos
Lea los conceptos y las guías paso a paso de Azure Database for PostgreSQL para distribuir los datos entre varios nodos de servidor PostgreSQL y beneficiarse de toda la eficacia de Azure Database for PostgreSQL: :
- Nodos y tablas
- Determinar el tipo de aplicación
- Elección de una columna de distribución
- Colocación de tabla
- Distribución y modificación de tablas
- Diseño de una base de datos multiinquilino*
- Diseño de un panel de análisis en tiempo real*
* En los documentos anteriores, omita las secciones Inicio de sesión en Azure Portal y Creación de una instancia de Azure Database for PostgreSQL. Aplique los pasos restantes en la implementación de Azure Arc. Esas secciones son específicas del servidor de Azure Database for PostgreSQL que se ofrece como un servicio PaaS en la nube de Azure, pero las demás partes de los documentos se aplican directamente a servidor PostgreSQL habilitado para Azure Arc.