En este documento, se muestra cómo configurar y consultar Spanner Graph con la consola de Google Cloud. En este documento, aprenderás a hacer lo siguiente:
- Crear una instancia de Spanner
- Crea una base de datos.
- Crear un esquema de grafo
- Insertar datos del gráfico.
- Consulta el grafo que creaste.
Para obtener información sobre los detalles de los precios de Spanner, consulta Precios de Spanner.
Para probar un codelab, consulta Cómo comenzar a usar Spanner Graph.
Antes de comenzar
- Accede a tu cuenta de Google Cloud. Si eres nuevo en Google Cloud, crea una cuenta para evaluar el rendimiento de nuestros productos en situaciones reales. Los clientes nuevos también obtienen $300 en créditos gratuitos para ejecutar, probar y, además, implementar cargas de trabajo.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Asegúrate de que la facturación esté habilitada para tu proyecto de Google Cloud.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Asegúrate de que la facturación esté habilitada para tu proyecto de Google Cloud.
- La API de Spanner debería habilitarse automáticamente. De lo contrario, habilítala de forma manual: Habilitar la API de Spanner
-
A fin de obtener los permisos que necesitas para crear instancias y bases de datos, solicita a tu administrador que te otorgue el Rol de IAM Administrador de Cloud Spanner (
roles/spanner.admin
) en tu proyecto.
Crea una instancia
Cuando uses Spanner por primera vez, deberás crear una instancia, que es una asignación de recursos que usan las bases de datos de Spanner en esa instancia.
En la consola de Google Cloud, ve a la página de Spanner.
Selecciona o crea un proyecto de Google Cloud si aún no lo has hecho.
En la página de Spanner, haz clic en CREAR INSTANCIA. Si ya usaste Spanner, verás la página Instancias de Spanner en lugar de la página del producto.
- En la página Asigna un nombre a tu instancia, ingresa un nombre de instancia, por ejemplo: Instancia de prueba. El ID de la instancia se ingresa automáticamente según el el nombre de la instancia, por ejemplo, test-instance. Si es necesario, cámbialo.
- Haga clic en Continuar.
- En la página Configura tu instancia, mantén la opción predeterminada. Regional y selecciona una configuración del menú desplegable. La configuración de tu instancia determina la ubicación geográfica donde tus instancias se almacenan y se replican.
- Haga clic en Continuar.
- En la página Asignar capacidad de procesamiento, selecciona Unidades de procesamiento (PU) y conserva el valor predeterminado de 1,000 unidades de procesamiento.
- Haz clic en Crear. La consola de Google Cloud muestra la página Descripción general de la instancia que creaste.
Crea una base de datos
En la consola de Google Cloud, ve a Spanner de instancias.
Haz clic en la instancia que creaste, por ejemplo, Instancia de prueba.
En la página Resumen de la instancia que se abre, haz clic en Crear base de datos.
Ingresa un nombre como el nombre de la base de datos, por ejemplo, example-db.
Para el dialecto de la base de datos, elige SQL estándar de Google. Gráfico de Spanner no está disponible en el dialecto PostgreSQL. La página de creación de tu base de datos ahora se ve así:
Haz clic en Crear.
La consola de Google Cloud muestra la página Descripción general de la base de datos que creaste.
Crea un esquema para tu base de datos de Spanner Graph
- En el menú de navegación, haz clic en Spanner Studio.
- En la página Spanner Studio, haz clic en Nueva pestaña o usa la pestaña del editor.
Copia y pega el siguiente esquema en la pestaña del editor. El esquema contiene dos definiciones de tabla de nodos,
Person
yAccount
, y dos extremos las definiciones de la tabla,PersonOwnAccount
yAccountTransferAccount
. Spanner Graph usa tablas relacionales para definir grafos, por lo que puedes ver ambas opciones las tablas relacionales y las declaraciones de grafos del esquema. Para obtener más información el esquema del gráfico de Spanner, consulta Descripción general del esquema del gráfico de Spanner.CREATE TABLE Person ( id INT64 NOT NULL, name STRING(MAX), birthday TIMESTAMP, country STRING(MAX), city STRING(MAX), ) PRIMARY KEY (id); CREATE TABLE Account ( id INT64 NOT NULL, create_time TIMESTAMP, is_blocked BOOL, nick_name STRING(MAX), ) PRIMARY KEY (id); CREATE TABLE PersonOwnAccount ( id INT64 NOT NULL, account_id INT64 NOT NULL, create_time TIMESTAMP, FOREIGN KEY (account_id) REFERENCES Account (id) ) PRIMARY KEY (id, account_id), INTERLEAVE IN PARENT Person ON DELETE CASCADE; CREATE TABLE AccountTransferAccount ( id INT64 NOT NULL, to_id INT64 NOT NULL, amount FLOAT64, create_time TIMESTAMP NOT NULL, order_number STRING(MAX), FOREIGN KEY (to_id) REFERENCES Account (id) ) PRIMARY KEY (id, to_id, create_time), INTERLEAVE IN PARENT Account ON DELETE CASCADE; CREATE OR REPLACE PROPERTY GRAPH FinGraph NODE TABLES (Account, Person) EDGE TABLES ( PersonOwnAccount SOURCE KEY (id) REFERENCES Person (id) DESTINATION KEY (account_id) REFERENCES Account (id) LABEL Owns, AccountTransferAccount SOURCE KEY (id) REFERENCES Account (id) DESTINATION KEY (to_id) REFERENCES Account (id) LABEL Transfers );
Haz clic en Ejecutar. En la página Resultados, se muestra que se están ejecutando las actualizaciones de esquemas. Cuando se haya completado la actualización, la página tendrá el siguiente aspecto:
Para ver el esquema del grafo de propiedades que definiste, haz clic en Mostrar DDL equivalente.
Insertar datos del gráfico
La consola de Google Cloud proporciona una interfaz para insertar, editar y borrar datos.
Inserta datos
- En la página de Spanner Studio, haz clic en Nueva pestaña o usa la Editor.
Copia y pega las siguientes instrucciones de inserción de datos del grafo en los nodos. y bordes.
INSERT INTO Account (id, create_time, is_blocked, nick_name) VALUES (7,"2020-01-10 06:22:20.222",false,"Vacation Fund"), (16,"2020-01-27 17:55:09.206",true,"Vacation Fund"), (20,"2020-02-18 05:44:20.655",false,"Rainy Day Fund"); INSERT INTO Person (id, name, birthday, country, city) VALUES (1,"Alex","1991-12-21 00:00:00","Australia","Adelaide"), (2,"Dana","1980-10-31 00:00:00","Czech_Republic","Moravia"), (3,"Lee","1986-12-07 00:00:00","India","Kollam"); INSERT INTO AccountTransferAccount (id, to_id, amount, create_time, order_number) VALUES (7,16,300,"2020-08-29 15:28:58.647","304330008004315"), (7,16,100,"2020-10-04 16:55:05.342","304120005529714"), (16,20,300,"2020-09-25 02:36:14.926","103650009791820"), (20,7,500,"2020-10-04 16:55:05.342","304120005529714"), (20,16,200,"2020-10-17 03:59:40.247","302290001255747"); INSERT INTO PersonOwnAccount (id, account_id, create_time) VALUES (1,7,"2020-01-10 06:22:20.222"), (2,20,"2020-01-27 17:55:09.206"), (3,16,"2020-02-18 05:44:20.655");
El siguiente gráfico muestra a las personas, las cuentas, la propiedad de la cuenta y las transferencias de cuentas de las inserciones:
Haz clic en Ejecutar.
Cuando finaliza la ejecución, la pestaña Resultados muestra el resultado de filas insertadas.
Ejecuta una consulta de grafo
- En la página Descripción general de la base de datos, haz clic en Spanner Studio. el menú de navegación.
- En la página Spanner Studio, haz clic en Nueva pestaña o usa la pestaña del editor.
Ingresa la siguiente consulta en el editor de consultas. La consulta encuentra a todos a la que Dana transfirió dinero y el importe de esas transferencias.
GRAPH FinGraph MATCH (from_person:Person {name: "Dana"})-[:Owns]-> (from_account:Account)-[transfer:Transfers]-> (to_account:Account)<-[:Owns]-(to_person:Person) RETURN from_person.name AS from_account_owner, from_account.id AS from_account_id, to_person.name AS to_account_owner, to_account.id AS to_account_id, transfer.amount AS amount
Haz clic en Ejecutar.
En la pestaña Resultados, se muestran las siguientes rutas de acceso de Dana a
Account {id:20}
:- A
Account {id:7}
, propiedad de Alex. A
Account {id:16}
propiedad de Lee.
- A
Limpia
En muchos de los ejemplos de Próximos pasos, se usan los recursos que configuraste en este documento. Si quieres seguir trabajando Usar uno de estos ejemplos para el grafo de Spanner, no debes realizar esta limpieza pasos aún.
De lo contrario, para evitar cargos adicionales en tu cuenta de Facturación de Cloud, borra la base de datos y la instancia que creaste durante la configuración. Borrar un borra automáticamente todas las bases de datos creadas en ella.
Borra la base de datos
En la consola de Google Cloud, ve a la página Instancias de Spanner.
Haz clic en el nombre de la instancia que tiene la base de datos que deseas borrar, por ejemplo, Instancia de prueba.
Haz clic en el nombre de la base de datos que deseas borrar, por ejemplo: example-db.
En la página Detalles de la base de datos, haz clic en Borrar Borrar base de datos.
Para confirmar que quieres borrar la base de datos, ingresa su nombre y haz clic en Borrar.
Borra la instancia
En la consola de Google Cloud, ve a la página Instancias de Spanner.
Haz clic en el nombre de la instancia que deseas borrar, por ejemplo: Instancia de prueba.
Haz clic en Borrar instancia.
Para confirmar que quieres borrar la instancia, ingrésala y haz clic en Borrar.
¿Qué sigue?
- Obtén más información sobre Spanner Graph con un codelab.
- Obtén más información sobre el esquema del gráfico de Spanner.
- Crea, actualiza o descarta un esquema de grafo de Spanner.
- Insertar, actualizar o borrar datos del gráfico de Spanner.
- Descripción general de las consultas del gráfico de Spanner.
- Migra al grafo de Spanner.