[Tecnología de base de datos] Replicación de datos de NineData, que acelera la construcción de almacenes de datos en tiempo real

El 30 de agosto, se llevó a cabo con éxito la conferencia de prensa conjunta en línea con el tema "Gestión de datos empresarial inteligente líder basada en datos en tiempo real", organizada conjuntamente por NineData y SelectDB. Las dos partes se centraron en la tecnología de almacenamiento de datos en tiempo real y las capacidades de desarrollo de datos, y demostraron cómo conectarse con productos ecológicos ricos en big data a través de una fuerte compatibilidad de desarrollo ecológico, ayudar a las empresas a desarrollar rápidamente negocios de análisis de datos y explorar conjuntamente datos en tiempo real. futura solución de gestión de datos inteligente empresarial.

Este artículo se basa en el contenido del discurso de apertura pronunciado por Chen Changcheng (Tianyu), vicepresidente de Jiuzhang Arithmetic Technology, en la conferencia conjunta NineData X SelectDB.

Intercambio de tecnología | Replicación de datos de NineData, acelerando la construcción de almacenes de datos en tiempo real
Chen Changcheng (Tianyu), vicepresidente de tecnología aritmética de Jiuzhang

Chen Changcheng, una vez se desempeñó como responsable del Centro de bases de datos de Alibaba Cloud y gerente general del Departamento de herramientas ecológicas de la base de datos de Alibaba Cloud, y ex experto técnico senior de Alibaba Cloud. Liderar la infraestructura de base de datos de Alibaba Cloud para completar tres cambios estructurales, desde la eliminación de IOE hasta la distribución, multiactividad en diferentes lugares, la contenedorización y la separación del almacenamiento y la informática. Liderar la actualización de la arquitectura de herramientas nativas de la nube y crear capacidades de gestión integrales. Publicó muchas patentes técnicas y artículos de conferencias importantes sobre las bases de datos VLDB e ICDE.

01 Introducción del producto NineData

En la era de los datos y la nube, la digitalización empresarial enfrenta muchos desafíos: según los informes de Gartner y Percona, sabemos que más del 80% de las empresas elegirán la nube múltiple o la nube híbrida, y más del 70% de las empresas elegirán utilizar múltiples bases de datos para satisfacer las necesidades comerciales. En el informe de análisis de la industria, descubrimos que si las empresas pueden utilizar eficazmente una infraestructura de fuentes múltiples y una nueva arquitectura de datos, su capacidad de innovación y su rentabilidad general mejorarán significativamente. Sin embargo, en la era de los datos y la nube, existen más desafíos en la gestión de datos empresariales, como silos de datos, complejidad de la gestión de datos heterogéneos de múltiples fuentes y eficiencia del desarrollo, etc., que deben resolverse con urgencia.

Basado en los problemas y desafíos comunes mencionados anteriormente, Jiuzhang Math ha creado la plataforma de gestión de datos inteligente nativa de la nube NineData. La capa de interfaz IaaS inferior conecta varias fuentes de datos en varios escenarios de manera unificada. Sobre esta base, NineData construye cuatro módulos funcionales centrales de respaldo de datos, replicación de datos, comparación de datos y desarrollo de SQL, y se integra con bases de datos empresariales, búsqueda y mensajes. El sistema está estrechamente vinculado para ayudar a las empresas a proteger los activos de datos, construir infraestructuras flexibles basadas en nubes múltiples e híbridas, unificar la gestión de la seguridad y mejorar la eficiencia del desarrollo de bases de datos.

A continuación se ofrece una introducción al desarrollo de SQL. Es una productización de mejores prácticas que permite a todos los desarrolladores dentro y fuera de la empresa seguir la especificación unificada de acceso a datos y mejorar la eficiencia. Actualmente, las empresas se enfrentan a múltiples nubes y múltiples fuentes de datos. Aunque varias fuentes de datos Existen respectivas CLI o herramientas de gestión gráfica, pero con estos problemas:

  1. Autoridad descentralizada, falta de auditoría y difícil gestión y control de la seguridad;

  2. Diferentes herramientas tienen diferentes niveles de construcción, experiencia promedio y baja eficiencia de desarrollo;

  3. Es imposible formar un estándar unificado y no se garantiza la estabilidad de la producción de bases de datos;

  4. No se pueden gestionar múltiples entornos y múltiples fuentes de datos de manera unificada.

En respuesta a estos problemas, NineData ha diseñado capacidades de gestión de seguridad de bases de datos a nivel empresarial, conectando varios proveedores de nube y varias fuentes de datos de creación propia a través de una fuente de datos unificada, diseñando flujo de tareas y flujo de aprobación, configuración de reglas de seguridad, gestión de autoridad y auditoría de operaciones. , Soporte SSO Gestiona los datos empresariales (instancia, biblioteca, tabla) + rol de cuenta + tipo de operación a través del motor de reglas de manera unificada, y tiene estabilidad de desarrollo SQL de base de datos integrada y mejores prácticas de seguridad, proporcionando administración de derechos de acceso a la base de datos. gestión de cambios, gestión de datos confidenciales, importación y exportación de datos y otras funciones. NineData proporciona dos modos de servicio: la versión personal con GUI simple y la versión empresarial con colaboración eficiente, combinada con la capacidad del modelo AIGC a gran escala, para mejorar la eficiencia del desarrollador en términos de datos de consultas de voz naturales, reescritura del diseño de estructuras de tablas y SQL. sugerencias de optimización.

En el escenario de replicación de datos, las empresas también enfrentan múltiples fuentes de datos, conexiones de datos multinube, replicación interregional a largo plazo y los problemas resultantes en términos de rendimiento y estabilidad. La replicación de datos de NineData se compromete a proporcionar la infraestructura para el flujo de datos. Elimine las dificultades del flujo de datos causadas por diferentes tipos de bases de datos, diferentes proveedores y diferentes entornos, y ayude a las empresas a maximizar el valor de los datos. En la actualidad, NineData admite 13 tipos de fuentes de datos con enlaces unidireccionales y bidireccionales, un sólido rendimiento de replicación y una función de comparación de datos perfecta, que se ampliará más adelante.

02 Arquitectura de tecnología de replicación de datos

Primero, presente la arquitectura general de NineData. Basado en capacidades de múltiples nubes y múltiples fuentes, hemos creado capacidades de respaldo de datos, replicación de datos, comparación de datos y desarrollo de SQL.

2.1 Ángulo nublado

Desde la perspectiva de la nube múltiple, para ayudar a las empresas a administrar diversas fuentes de datos dispersas en la nube múltiple o en la nube híbrida de manera unificada, hemos diseñado una arquitectura nativa de la nube flexible, pull-up elástico en contenedores, arquitectura de red, etc. .

Soporte para clústeres dedicados

Si bien admitimos la nube múltiple, podemos permitir que las empresas disfruten exclusivamente de sus propios recursos a través de la tecnología de clústeres dedicados. Incluyendo que podemos colocar los nodos trabajadores de la empresa localmente o dentro de la VPC para realizar el ciclo cerrado interno de datos y mejorar la seguridad de los datos empresariales y la eficiencia de la ejecución de los trabajadores.

Modo SAAS nativo de la nube

Como producto SAAS nativo de la nube, NineData tiene las capacidades más básicas de implementación bajo demanda y escalamiento elástico.

la seguridad cibernética

En términos de red, por consideraciones de seguridad, muchos clientes empresariales no quieren exponer el puerto de red pública de la base de datos. Por lo tanto, diseñamos una puerta de enlace de base de datos. A través de este diseño, los usuarios solo necesitan abrir una puerta de enlace de base de datos NineData para conectarse. a nuestros Nodos de gestión central, para establecer un canal de acceso inverso, pueden gestionar fuentes de datos dispersas por todo el lugar, incluidas las internas. Además, nuestro trabajador NineData también se puede colocar localmente para realizar el circuito cerrado interno del enlace de datos, mientras que el enlace de administración aún puede realizar la administración del enlace unificado a través de la consola central.

2.2 Aspectos de múltiples fuentes

En términos de múltiples fuentes, diseñamos principalmente una capa de acceso a fuentes de datos unificadas. Para acceder a muchas fuentes de datos, hemos realizado una abstracción unificada de la administración del grupo de conexiones, la configuración de propiedades, la verificación de conexión y la autenticación de seguridad de la fuente de datos. De esta manera se pueden conectar todas las fuentes de datos de manera uniforme. Nuestros cuatro módulos funcionales principales utilizan la misma capa de acceso a la fuente de datos, lo que permite que todas las funciones estén disponibles para un solo acceso. Para los usuarios, se realiza una verdadera gestión unificada.

En el diseño de productos de NineData, la seguridad no es una tarea o función única, sino que se inculca de principio a fin. En todo el proceso de diseño, desarrollo, operación y mantenimiento del producto, hemos trabajado mucho en el cifrado, operación y mantenimiento de la transmisión de datos. pantalla blanca y auditoría de operaciones y, al mismo tiempo, NineData protege la seguridad de los datos en múltiples aspectos a través de pruebas internas y auditorías tripartitas.

Una topología típica de enlace de replicación de datos de NineData. Después de configurar el origen y el destino, NineData iniciará la ejecución de todo el enlace. Habrá una verificación previa al principio para verificar si su conexión de red, contraseña de cuenta, etc. son correctas. A continuación, se copiará la estructura y se buscarán y escribirán los datos completos e incrementales.

Desde el nivel de producto, necesitamos soportar múltiples nubes y múltiples fuentes. Además de la arquitectura elástica y la arquitectura de red presentadas anteriormente, hemos realizado diseños importantes para la compatibilidad y escalabilidad de múltiples tipos de datos del módulo de replicación. Al mismo tiempo, debe existir una operación heterogénea a largo plazo de múltiples fuentes. Para un pequeño número de escenarios incompatibles, también nos centramos en el diseño funcional en términos de observabilidad e intervención. El objetivo final del módulo del kernel de transmisión de datos es garantizar la coherencia de los datos y, al mismo tiempo, tener ventajas líderes en rendimiento y latencia, por lo que hemos trabajado mucho en este sentido. El intercambio de características principales más adelante girará en torno a estos puntos.

03 Características principales de la replicación de datos

3.1 Capacidad de rendimiento

Tomando como ejemplo el rendimiento total, hay varios elementos de optimización importantes:

Rendimiento de migración de tablas grandes

El rendimiento de la migración de tablas grandes es el cuello de botella más común. Supongamos que tenemos algunos datos para procesar en el lado de origen, hay muchas tablas entre ellas y sus volúmenes de datos son todos diferentes. Si iniciamos el procesamiento de tres subprocesos simultáneos al mismo tiempo, es posible que algunas tablas con una pequeña cantidad de datos se hayan procesado, pero algunas tablas con una gran cantidad de datos todavía están esperando que se procese un solo subproceso. Si el nivel de la tabla es concurrente, habrá un problema similar. Por lo tanto, para mejorar la eficiencia general, debemos mejorar la capacidad de concurrencia en la tabla. Específicamente, debemos considerar si la tabla está dividida uniformemente. Con este fin, hemos formulado una estrategia, es decir, el componente predeterminado admite la división de una clave y admite la división en el orden de clave principal, clave única no nula, clave única que acepta valores NULL, clave común, etc., en orden. para lograr de la forma más equilibrada posible el procesamiento concurrente.

La escritura concurrente también está asociada con un problema de espacio: durante el uso, si escribe 100 G de datos en el extremo de origen, puede convertirse en 150 G en el extremo de destino. Esto se debe a que si una sola tabla se envía desordenada, se pueden generar algunos agujeros en los datos. Con este fin, NineData está optimizado en términos de tamaño de segmento y orden concurrente para controlar la amplificación de escritura.

escritura de la biblioteca de destino

El máximo rendimiento sólo se puede obtener escribiendo en el método con la menor pérdida para la biblioteca de destino. Una vez que se resuelve el rendimiento del canal y se puede expandir linealmente, el cuello de botella en el rendimiento no está en el canal, sino en la escritura de la biblioteca de destino. Por lo tanto, la postura de escritura de la biblioteca de destino es muy importante. Si es necesario analizar cada SQL en el lado de destino, el rendimiento definitivamente será deficiente. Por lo tanto, debemos adoptar algún método de envío por lotes. Al mismo tiempo, cuando se trata de interruptores de compresión, es necesario prestar atención a la cantidad de CPU. En recuentos bajos de CPU, habilitar la compresión puede tener un gran impacto en el rendimiento.

optimización de la memoria

La optimización de la memoria puede mejorar el rendimiento. Debido a que toda la copia completa se caracteriza por la carga por lotes del contenido y la escritura rápida en la biblioteca de destino, estos datos se eliminarán. Por lo tanto, se realizan algunas optimizaciones de configuración específicas en los parámetros de toda la JVM para reducir la sobrecarga de memoria y CPU y mejorar el rendimiento del canal.

3.2 Baja Latencia

Entonces, ¿cómo logra NineData generar una baja latencia? Consideramos funciones de baja latencia desde múltiples dimensiones.

rendimiento del canal

Desde la perspectiva del rendimiento del canal, incluye algunos como la fusión de datos por lotes y en caliente. Para la combinación de datos del punto de acceso, si un registro se cambia de A1 a A2 y luego a A3, el modelo de sincronización general es una modificación de pista completa, pero después de habilitar la capacidad del punto de acceso, se puede fusionar directamente en la declaración de inserción final de A3. y A1 no se insertará ni actualizará A2. A través de esta capacidad, los datos se pueden escribir directamente en el estado final y fusionar esta cola directamente en la memoria. A nivel de rendimiento del canal, existen algunos otros diseños. Por ejemplo, en el enlace de replicación de redis, el costo de serialización de la cola se reduce, de modo que se minimiza el consumo de toda la cola.

Diseño de gestión de canales

La capa de gestión de canales también es muy importante en el diseño general del sistema con baja latencia, que es la experiencia adquirida durante muchos años de práctica. Es necesario poder afrontar diversas anomalías en el enlace de sincronización con el mínimo coste.

(a) Reducir la posibilidad de volver a dibujar en condiciones anormales. Hay un retraso en la base de datos, pero los registros en el servidor de datos se han borrado; como nuestros productos nativos de la nube, ¿qué debemos hacer? Obtendremos la interfaz de la base de datos de origen y comprobaremos si hay registros cargados en OSS u otro almacenamiento de objetos. Si lo hay, automáticamente obtendremos y continuaremos con el registro anterior, para evitar volver a retirar el monto total y reducir la demora.

 (b) Revertir datos lo menos posible. Diseñamos sitios de seguridad a nivel de tabla. Cada tabla tendrá su propia ubicación más reciente. Si la posición de esta tabla se ha utilizado durante la reproducción, la descartaremos para evitar el retroceso de posición.

(c) Operar limpiamente. Para las operaciones diarias de operación y mantenimiento, el subproceso de replicación NineData enviará todos los datos en la cola, de modo que 16 subprocesos alcancen una posición consistente y luego cerrarán el proceso. A través de esta capacidad, hemos logrado una limpieza limpia y los usuarios no tendrán la necesidad de reproducir datos después de reiniciar, que es una de las formas más elegantes.

3.3 Sincronización consistente de datos

La importancia de la coherencia de los datos es incuestionable. Aquí nos centraremos en presentar una característica de diseño de NineData desde dos aspectos: coherencia de los datos y coherencia de la estructura DDL. Mientras tanto, NineData ha realizado una función completa de comparación de datos.

consistencia de los datos

Coherencia de los datos en sí, cómo garantizar la coherencia de las transacciones. Por ejemplo, supongamos que tenemos cinco transacciones de T1 a T5, donde B1 es el estado del pedido, el pedido se crea desde B1 y el pago del usuario puede realizarse a B3, y en este momento se generará un pedido logístico L. Si utilizamos el método normal de sincronización a nivel de fila, los pedidos y los pedidos logísticos se almacenarán en tablas diferentes y su orden no se puede garantizar debido a la concurrencia a nivel de fila. Por tanto, B1 y L pueden aparecer en la biblioteca de destino al mismo tiempo, es decir, cuando se crea el pedido, también se ha creado el pedido logístico. Para las empresas en línea, esto definitivamente va en contra de la lógica empresarial y no puede respaldar el funcionamiento normal de las empresas en línea.

Por lo tanto, hemos creado una capacidad de coherencia de transacciones y los usuarios pueden habilitar capacidades de transacción. Cuando el usuario habilita la capacidad de transacción, verificaremos si cada registro en esta transacción de T3 tiene una relación de dependencia con todas las transacciones anteriores. Si existe, T3 esperará a que se envíen otras transacciones antes de enviarlas para garantizar la coherencia de los datos. Por lo tanto, el primer envío solo enviará T1 a T4, y T3 esperará a que se envíe T2 antes de enviar. Este es un mecanismo de sincronización que garantiza la coherencia de los datos.

Coherencia de la sincronización de cambios DDL

Consistencia de la sincronización de cambios DDL. Específicamente, tome la estructura de la tabla como ejemplo. Si encontramos un cambio en la estructura de la tabla, la solución general es verificar la estructura de la tabla en la fuente. Sin embargo, dado que la mayoría de los registros de datos solo tienen datos y nombres de tablas, y carecen de información como estructura y tipo, debemos verificar la fuente de datos para obtener información estructural y dividir el resultado final. Sin embargo, es muy probable que ya haya ocurrido un segundo DDL en la fuente durante la revisión, y lo que obtenemos es el DDL que se ha modificado nuevamente, lo que resulta en inconsistencias y errores en los datos empalmados.

Por lo tanto, hemos desarrollado una capacidad de análisis DDL, es decir, una vez completado el análisis DDL, la reproducción se realiza directamente en el hilo de análisis de subprocesos sincrónicos. Al mismo tiempo, registramos la versión de cada cambio y generamos una nueva versión mientras reproducimos, y la versión anterior no se elimina. De esta manera, cualquier tabla puede verificar su Metaestructura en cualquier momento y en cualquier momento, en lugar de reproducirla desde el principio como en otras prácticas de la industria.

Comparación de datos

En términos de comparación de datos, NineData lo convierte en una capacidad de producto importante y creemos que el impacto de la comparación de datos en la calidad general de los datos es muy importante. Por eso somos muy completos en términos de comparación de estructuras, comparación de datos y generación de SQL revisado. En segundo lugar, consideraremos la carga que genera la comparación de datos entre las bases de datos de origen y de destino del usuario. Estas cargas son muy importantes para mucho personal de producción. Por lo tanto, hemos formulado muchas estrategias, tales como: volver a verificar solo datos inconsistentes, controlar la concurrencia y la limitación actual, establecer la proporción de muestreo y el filtrado condicional, comparar solo datos dentro de un cierto rango, etc. Al mismo tiempo, en términos de rendimiento, también realizamos optimizaciones únicas. La comparación de datos convencional extraerá todos los datos del origen y del destino, lo que consumirá muchos recursos informáticos y ancho de banda. Por lo tanto, hemos realizado un cálculo más elegante y solo devolvemos los datos inconsistentes a la tabla y los comparamos. campo por campo.

3.4 Escalabilidad, acelerando la construcción de almacenes de datos en tiempo real

En términos de escalabilidad, ¿cómo admitir nuevas fuentes de datos rápidas en NineData? Significa que debemos respaldar rápidamente la conversión de estructuras y tipos de datos, y producir canales rápidamente, que son nuestras consideraciones importantes actuales. Toda nuestra idea de diseño es decir que el método topológico de multiplicar N por M desde varias fuentes originales hasta los objetivos se puede realizar sumando N a M.

Hablemos primero del tipo de datos, porque el tipo de datos puede estar más preocupado por la consistencia final y la industria ha definido muchos tipos intermedios. Hoy en día, NineData también define algunos tipos intermedios, porque cuanto mejor es la abstracción del tipo intermedio, menos tipos hay, lo que significa que necesitamos menos trabajo para desarrollar conversiones para nuevas fuentes de datos. Por lo tanto, cómo abstraer mejor en menos conjuntos de muestras es un mejor método de abstracción en general.

El complemento del segundo módulo de captura y escritura maximiza la reutilización del código y mejora la eficiencia y estabilidad del producto. Proporcionamos un marco llamado Compromiso de datos relacionales. Este marco abstrae la biblioteca DDL/DML, la tabla, la espera de conflicto a nivel de clave primaria, la espera de conflicto de transacción, la fusión de puntos de acceso y la optimización por lotes de SQL, de modo que la fuente de datos conectada más tarde pueda tener estas capacidades de forma natural.

En la actualidad, NineData admite ampliamente MySQL, PostgreSQL, SQLServer, Redis, MongoDB, Kafka, ElasticSearch, SelectDB (Doris) y otras bases de datos, y sus series se han conectado a los productos de los principales proveedores de nube. Aquí nos centramos en el diseño de funciones de SelectDB y ClickHouse.

replicación de estructura

NineData admite la sincronización automática de todos los DDL de MySQL con SelectDB, incluida la adaptación de Distribute Key y la reescritura de SQL, la creación de tablas entre bases de datos como la reescritura de SQL, etc.

replicación de datos

Definimos el mapeo uno a uno del tipo intermedio NineData al tipo de datos SelectDB para realizar el mapeo de tipos de datos y conjuntos de caracteres. Al mismo tiempo, para el tipo de hora, admite la migración de datos entre zonas horarias de acuerdo con el zona horaria global del servidor.

procesamiento de datos

Admite el filtrado de objetos de sincronización durante el proceso de copia y, al mismo tiempo, realiza el filtrado de tipos de operación (como copiar solo Insertar pero no copiar Eliminar), filtrado basado en cálculos de datos y conversión de tipos de datos.

optimización del rendimiento

Además de la combinación de escritura admitida por el marco de replicación, la replicación de datos NineData admite escritura completa o incremental en modo Stream. En la prueba de MySQL-> SelectDB (Doris), la concurrencia de 30 regiones en la misma región en la nube puede alcanzar 209 MB/S, 88 W RPS (aproximadamente 250 B en promedio para una sola línea).

NineData también ha diseñado cuidadosamente el soporte de ClickHouse. En términos de mapeo de estructura, los usuarios pueden elegir CollapsingMergeTree o ReplacingMergeTree para copiar, y admite el mapeo de varios tipos de datos en ClickHouse, incluido el procesamiento de diferencias de valores predeterminados. En términos de rendimiento, un enfoque similar a Airbyte combinará todos los datos incrementales en un solo archivo, porque muchas adiciones, eliminaciones y cambios en el motor ClickHouse se agregan directamente, por lo que este método es relativamente simple. Pero este método traerá un gran retraso. Por lo tanto, en el proceso de implementación, consideramos usar SQL para enviar. Cuantos haya, se transferirán inmediatamente al envío por lotes, lo que se puede controlar dinámicamente. Por ejemplo, si son más de 1000 o 0,5 segundos, puede ser enviado en unos cientos de milisegundos. Además, Jdbc de ClickHouse tiene un rendimiento deficiente al analizar cada declaración, por lo que realizamos algunas optimizaciones y adoptamos el envío por lotes para mejorar el rendimiento.

3.5 Mecanismo de alta disponibilidad

Recuperación ante desastres del nodo

Todos los componentes de NineData adoptan una arquitectura de alta disponibilidad para evitar riesgos de punto único. Los nodos de tareas se ejecutan en el clúster de contenedores distribuidos y el sistema de recuperación ante desastres detecta automáticamente tareas anormales y nodos anormales y completa automáticamente la tarea de recuperación ante desastres por deriva entre máquinas.

robustez de la tarea

A través de la administración dinámica de la memoria, combinada con tecnologías como fragmentación dinámica, procesamiento por lotes dinámico, lectura y escritura en tiempo real y expansión y contracción elástica, se mejora la capacidad del enlace para adaptarse a la carga y se garantiza de manera efectiva la estabilidad de la tarea.

http

Todos los módulos admiten registros de ubicación regulares, incluida la replicación de estructuras, la replicación completa, la replicación incremental y la comparación de datos; si alguna tarea o nodo de servicio es anormal, la tarea se reiniciará según el punto de interrupción. A través de métodos perfectos de reintento e intervención, se mejora la solidez del enlace en escenarios como red deficiente, alta carga de datos y anomalías de hardware.

3.6 Capacidades Observables y de Intervención

Observabilidad

(1) El sistema de replicación tiene administración de registros de segundo nivel para cada enlace. Puede ver el RPS de segundo nivel, el número acumulado de operaciones DDL / DML, el número de acumulaciones de colas y otros indicadores, y verificar el estado de cada módulo. de la tarea.

(2) Ver el estado del hilo de envío en tiempo real. Por ejemplo, si hay 16 subprocesos en ejecución, mostraremos qué SQL se están ejecutando estos 16 subprocesos respectivamente, o si la tarea está bloqueada por DDL, etc. Puede ver qué operaciones está realizando cada hilo, cuánto tiempo se ha realizado y otra información de forma similar a MySQL Processlist. Durante el proceso de sincronización, el usuario puede encontrar algunos problemas en el lado de destino, nuevas escrituras, etc., lo que resultará en conflictos de datos entre los dos lados. Por lo tanto, en términos de observabilidad, no solo revelaremos completamente el estado básico al usuario, sino que también proporcionaremos las declaraciones enviadas por cada hilo.

Capacidad de intervención

(1) Modifique el objeto de sincronización. Para tareas de replicación a largo plazo, es posible que el usuario necesite agregar un nuevo objeto al enlace de sincronización debido a cambios comerciales. Puede agregarlo directamente en la interfaz. El fondo creará la inicialización de la estructura, cantidad total e incremento del nuevo objeto y fusionar el objeto de sincronización en el enlace existente después de ponerse al día.

(2) Capacidades maduras de manejo de excepciones. Para tareas anormales, NineData mostrará información de error específica, y los usuarios pueden corregir y volver a intentar declaraciones en el nivel SQL, u omitirlas, de modo que las tareas puedan repararse rápidamente en caso de una pequeña cantidad de inconsistencias estructurales o de doble escritura en el objetivo. garantizar la integridad de los datos objetivo, la puntualidad y la corrección.

3.6 Resumen de replicación de datos de capacidad

El objetivo de diseño de la replicación de datos de NineData es el escenario de flujo de datos de los clientes del servicio Any Where, Any Data, Any Time. Las principales fuentes de datos actuales son relativamente completas, compatibles y adaptadas a diversos entornos de red complejos, profundamente adaptadas a VPN, línea privada, host bastión, VPC de proveedor de nube y acceso a red privada, etc., y pueden servir a los clientes a través de servicios SaaS o clústeres dedicados. Garantizar la seguridad de los datos y la estabilidad de la replicación.

04 Casos de usuario típicos

4.1 Clientes de la nube de propiedad estatal

Una replicación de datos en la nube de propiedad estatal a gran escala, el cliente tiene más de 30 regiones en todo el país y hay muchos datos que deben sincronizarse. Al mismo tiempo, también necesita proporcionar productos de replicación de datos para sus clientes. Por ejemplo, los clientes de esta nube migran desde otros proveedores de nube o sistemas de creación propia. Incluye muchos escenarios de aplicaciones complejos, como migración a la nube, migración entre nubes, migración entre regiones, recuperación de desastres de datos, multiactividad remota y otros escenarios comerciales. También se enfrenta a un entorno de red muy complejo, varios vínculos dentro/entre regiones y entre otros proveedores de nube y sistemas propiedad de los clientes. El cliente eligió NineData después de examinar las soluciones de los principales proveedores de nube y de replicación de datos del mercado.

4.2 Empresas de comercio electrónico transfronterizo

Una empresa de comercio electrónico transfronterizo implementa un almacén de datos en tiempo real a través de NineData para guiar el análisis operativo y la toma de decisiones. Las actividades analíticas y operativas del cliente se basan en ClickHouse. La producción de MySQL está dispersa por todo el mundo, como Japón, Corea del Sur, etc., y agrega datos en línea de varios lugares al ClickHouse nacional para un análisis unificado y la toma de decisiones operativas. En este proceso, utilizó nuestro producto de replicación NineData, que tiene algunas ventajas en la replicación interregional. Nuestro módulo de análisis, módulo de lectura y módulo de escritura se pueden implementar en diferentes lugares, el módulo de análisis puede estar cerca del extremo de origen del usuario y el extremo de escritura puede estar cerca del extremo de destino del usuario, logrando así un rendimiento general más optimizado.

4.3 Grandes empresas inmobiliarias

Una gran empresa inmobiliaria utiliza NineData para realizar una gestión de datos unificada. La empresa tiene una gran base de datos, pero su proceso de desarrollo involucra a muchos socios, como ISV o proveedores de desarrollo de software externos. Por lo tanto, necesitan delegar el control de acceso a las fuentes de datos a estos socios. En el proceso de gestión manual anterior, la gestión de autoridades se ha vuelto muy complicada y el proceso es engorroso, lo que dificulta la gestión de forma unificada. Para ello, NineData proporciona una solución para la gestión unificada de fuentes de datos. A través de esta solución, todas las fuentes de datos de la empresa se unifican y administran, y se optimizan la inicialización de la cuenta del desarrollador, la solicitud de permisos y la visualización del proceso de desarrollo de datos, mejorando así en gran medida la eficiencia del desarrollo y la eficiencia de la colaboración. 

Finalmente, NineData ha establecido muchas relaciones de cooperación estrechas con fuentes de datos y proveedores de nube, y ha obtenido múltiples certificaciones en servicios en la nube, gestión de seguridad de la información y gestión de calidad, y se utiliza ampliamente en empresas líderes en múltiples industrias. NineData se compromete a brindar a los clientes servicios de bases de datos más estables e inteligentes, ayudándolos a construir rápidamente una administración de datos unificada, para que todos puedan hacer un buen uso de los datos y la nube, y darles la bienvenida a todos a experimentarlos.

NineData es una plataforma de gestión de datos inteligente nativa de la nube de nueva generación, que incluye múltiples funciones como replicación de datos, desarrollo de SQL, copia de seguridad de datos y comparación de datos. NineData utiliza tecnologías AIGC y nativas de la nube líderes para proporcionar una plataforma de gestión de datos inteligente para el diseño de arquitectura en la era de la nube y la IA. Como la primera plataforma de la industria que admite la integración perfecta de IDC local y entre nubes, puede ayudar a los clientes a completar fácilmente la migración de datos a la nube, la transmisión en tiempo real de datos entre nubes, ETL, copia de seguridad de datos y desarrollo SQL inteligente a nivel empresarial. , especificaciones de desarrollo de bases de datos, cambios de producción y gestión de datos confidenciales y otras funciones, para hacer que el uso de los datos del cliente sea más seguro y eficiente.

Supongo que te gusta

Origin blog.csdn.net/NineData/article/details/132597836
Recomendado
Clasificación