En esta página, se presenta y explica cómo funciona la partición geográfica en Spanner.
Spanner ofrece configuraciones de instancias regionales y multirregionales, que te permiten replicar tus datos en diferentes ubicaciones geográficas. La partición geográfica te permite segmentar y almacenar aún más las filas en tu tabla de base de datos en diferentes configuraciones de instancias.
Beneficios y casos prácticos
Entre los beneficios de la partición geográfica, se incluyen los siguientes:
Reduce la latencia de escritura y de lectura sólida, ya que te permite almacenar tus datos en la misma ubicación geográfica que tu consulta.
Optimiza los costos de las cargas de trabajo globales asimétricas (por ejemplo, con una partición
us-central1
con 10 nodos y una particiónasia-south1
con 2 nodos).
Los siguientes son casos de uso comunes:
Datos relacionados con el usuario: Particiona geográficamente los datos relacionados con el usuario para procesarlos y almacenarlos en una región que esté más cerca del usuario.
Datos localizados: Información específica de la ubicación, como el tráfico y los eventos especiales
Cómo funciona la partición geográfica
Todas las instancias de Spanner tienen una partición de instancia principal que se llama
partición default
. Si no creas particiones adicionales, todos los objetos de la base de datos se almacenarán en la partición predeterminada, que se encuentra en la misma ubicación que la configuración de tu instancia.
Si deseas particionar los datos en una base de datos, debes crear particiones adicionales en tu instancia. Estas particiones creadas por el usuario tienen su propia configuración (regional o multirregional) y recuento de nodos. Crea tu base de datos como lo harías normalmente. Tu base de datos puede interactuar con las particiones que se crearon en la misma instancia. Luego, crea posiciones en tu base de datos que estén asociadas con la partición. Por último, puedes crear tablas de posiciones que tengan un atributo de clave de posición. Debes usar la clave de posición en tus sentencias DML para especificar en qué partición residen los datos de la fila. Si creas tablas que no son de ubicación en tu base de datos, Spanner almacena esos datos en la partición predeterminada.
Para obtener instrucciones sobre cómo usar particiones, consulta Cómo crear y administrar particiones.
Consideraciones importantes
Ten en cuenta lo siguiente antes de crear tus particiones, posiciones y tablas de posiciones:
Ubicación de la partición: Selecciona cuidadosamente las regiones de partición que proporcionen los mayores beneficios para tu aplicación.
Aunque puedes crear particiones en una instancia con una configuración de instancia regional, te recomendamos que crees particiones en una instancia con una configuración de instancia multirregional para que la ubicación de partición predeterminada también esté en una configuración multirregional.
Además, selecciona una ubicación de partición predeterminada multirregional que tenga regiones de lectura y escritura, y de solo lectura que abarquen todas las jurisdicciones que requiera tu aplicación. Luego, crea particiones adicionales (que pueden ser regionales) con regiones líderes que coincidan con las regiones de la partición predeterminada multirregional.
Cantidad de particiones: Demasiadas particiones pueden generar sobrecarga, mientras que muy pocas podrían no ofrecer suficientes beneficios. Puedes crear un máximo de diez particiones por instancia.
Limitaciones
Se aplican las siguientes limitaciones durante la versión Versión preliminar y están sujetas a cambios o eliminaciones en la versión GA o después:
- No puedes crear una partición de instancia con una configuración de doble región.
- Para cada partición, la capacidad de procesamiento debe ser de al menos un nodo (1,000 unidades de procesamiento).
- Para una instancia determinada, no puedes crear más de una partición de instancia que use la misma configuración de instancia base. Por ejemplo, dentro de
test-instance
, no puedes crear dos particiones,partition-1
ypartition-2
, que usenus-central1
como configuración de partición. - Para cada nodo de tu partición, puedes colocar un máximo de 100 millones de filas de ubicación. Puedes ver la cantidad de filas de ubicación que se colocaron en cada una de tus particiones en la página Particiones de la consola de Google Cloud .
- Para cada nodo de la partición de tu instancia de destino, Spanner puede mover alrededor de 10 filas de ubicación por segundo.
- No puedes crear particiones en instancias de prueba gratuita ni en instancias de tamaño detallado más pequeñas que un nodo (1,000 unidades de procesamiento).
- No puedes crear copias de seguridad para instancias con particiones.
- No puedes usar claves de encriptación administradas por el cliente para instancias con particiones.
- No puedes crear particiones de instancias en una instancia con el ajustador automático administrado habilitado.
- No puedes mover la partición a una configuración de instancia diferente.
- No puedes mover una instancia que tenga particiones. (Puedes mover filas individuales a diferentes particiones para no tener que mover la instancia).
- El uso de particiones no garantiza el cumplimiento de los requisitos regulatorios.
- Los flujos de cambios no admiten datos particionados.
- Para usar el particionamiento geográfico, debes crear una base de datos nueva y vacía, y establecer la opción
opt_in_dataplacement_preview
entrue
. Para obtener más información, consulta Crea y administra particiones. - Si usas una declaración DML
INSERT
oDELETE
para una tabla de posiciones, esa sentencia debe ser la única en la transacción.
Control de acceso con IAM
Debes tener los permisos spanner.instancePartitions.create
, spanner.instancePartitions.update
y spanner.instancePartitions.delete
para crear y administrar particiones. Si solo necesitas ver las particiones, debes tener el permiso spanner.instancePartitions.list
o spanner.instancePartitions.get
. Para obtener más información, consulta la descripción general de IAM.
Para obtener información sobre cómo otorgar permisos de IAM de Spanner, consulta Cómo aplicar permisos de IAM.
Supervisión
Spanner proporciona varias métricas para ayudarte a supervisar tus particiones. Después de crear una partición adicional, verás un filtro desplegable adicional para Particiones en la página Información del sistema de la consola de Google Cloud . La selección predeterminada es mostrar las métricas de Todas las particiones. Puedes usar el menú desplegable para filtrar las métricas de una partición específica.
Para obtener más información sobre la supervisión de tus recursos de Spanner, consulta Supervisa instancias con Cloud Monitoring.
Precios
No se aplican cargos adicionales por usar el particionamiento geográfico. Se te cobra el precio estándar de Spanner por la cantidad de capacidad de procesamiento que usa tu instancia y la cantidad de almacenamiento que usa tu base de datos.
Para obtener más información, consulta Precios de Spanner.
¿Qué sigue?
- Obtén más información para crear y administrar particiones.
- Obtén más información para crear y administrar posiciones de datos.