Articulo de referencia

TiDB

{{cite web|title=1.0 GA release notes|website=[[GitHub]] |url=https://github.com/pingcap/tidb/releases/tag/v1.0.0}} "},"latest release version":{"wt":"{{wikidata|property|edit|r...

TiDB ( / ˈ t d b / ; "Ti" significa Titanium) es una base de datos NewSQL de código abierto que admite cargas de trabajo de procesamiento híbrido transaccional y analítico ( HTAP ). [ 3 ] Diseñada para ser compatible con MySQL , es desarrollada y mantenida principalmente por PingCAP y licenciada bajo Apache 2.0. También está disponible como producto de pago. TiDB se inspiró inicialmente en los documentos Spanner y F1 de Google. [ 4 ] [ 5 ] [ 6 ]

Historial de lanzamientos

Consulte todas las notas de la versión de TiDB .

  • El 19 de diciembre de 2024 se lanzó la versión general de TiDB 8.5 .
  • El 24 de mayo de 2024 se lanzó la versión general de TiDB 8.1 .
  • El 1 de diciembre de 2023 se lanzó la versión general de TiDB 7.5 .
  • El 31 de mayo de 2023 se lanzó la versión general de TiDB 7.1 .
  • El 7 de abril de 2022 se lanzó la versión general de TiDB 6.0 .
  • El 7 de abril de 2021 se lanzó la versión general de TiDB 5.0 .
  • El 28 de mayo de 2020 se lanzó la versión general de TiDB 4.0 .
  • El 28 de junio de 2019 se lanzó la versión general de TiDB 3.0 .
  • El 27 de abril de 2018 se lanzó la versión general de TiDB 2.0 .
  • El 16 de octubre de 2017 se lanzó la versión 1.0 GA de TiDB .

Características principales

Escalabilidad horizontal

TiDB puede ampliar tanto la capacidad de procesamiento SQL como la de almacenamiento añadiendo nuevos nodos.

Compatibilidad con MySQL

TiDB actúa como un servidor MySQL 8.0 para las aplicaciones. Un usuario puede seguir utilizando todas las bibliotecas cliente de MySQL existentes. [ 7 ] Dado que la capa de procesamiento SQL de TiDB se construyó desde cero, no es una bifurcación de MySQL. [ 8 ]

Transacciones distribuidas con gran consistencia

TiDB divide internamente una tabla en pequeños fragmentos basados ​​en rangos que se denominan "Regiones". [ 9 ] Cada Región tiene un tamaño predeterminado de aproximadamente 100 MB, y TiDB utiliza internamente una confirmación en dos fases para garantizar que las regiones se mantengan de forma transaccionalmente consistente.

nativo de la nube

TiDB está diseñado para funcionar en la nube. La capa de almacenamiento de TiDB, llamada TiKV, se convirtió en un proyecto miembro de la Cloud Native Computing Foundation (CNCF) en agosto de 2018, como un proyecto de nivel Sandbox, [ 10 ] y se convirtió en un proyecto alojado de nivel de incubación en mayo de 2019. [ 11 ] TiKV se graduó de la CNCF en septiembre de 2020. [ 12 ]

HTAP en tiempo real

TiDB admite cargas de trabajo tanto de procesamiento de transacciones en línea ( OLTP ) como de procesamiento analítico en línea ( OLAP ). TiDB cuenta con dos motores de almacenamiento: TiKV, un almacén de filas, y TiFlash, un almacén de columnas.

Alta disponibilidad

TiDB utiliza el algoritmo de consenso Raft [ 13 ] para garantizar que los datos estén disponibles y se repliquen en todo el almacenamiento en grupos Raft. En caso de fallo, un grupo Raft elegirá automáticamente un nuevo líder para el miembro que falló y se recuperará automáticamente del clúster TiDB.

TiDB tiene un tipo de datos vectorial e índices vectoriales. [ 14 ] Esto permite que TiDB se utilice como base de datos vectorial en aplicaciones de generación aumentada por recuperación de IA .

Métodos de despliegue

Kubernetes con operador

TiDB se puede implementar en un entorno de nube habilitado para Kubernetes mediante TiDB Operator. [ 15 ] Un operador es un método para empaquetar, implementar y administrar una aplicación de Kubernetes. Está diseñado para ejecutar cargas de trabajo con estado y fue introducido por primera vez por CoreOS en 2016. [ 16 ] TiDB Operator [ 17 ] fue desarrollado originalmente por PingCAP y publicado como código abierto en agosto de 2018. [ 18 ] TiDB Operator se puede usar para implementar TiDB en una computadora portátil, [ 19 ] Google Kubernetes Engine de Google Cloud Platform , [ 20 ] y Elastic Container Service para Kubernetes de Amazon Web Services . [ 21 ]

TiUP

TiDB 4.0 introduce TiUP , una herramienta de operación y mantenimiento de clústeres. Ayuda a los usuarios a instalar y configurar rápidamente un clúster TiDB con unos pocos comandos. [ 22 ]

Herramientas

TiDB cuenta con una serie de herramientas de código abierto desarrolladas a su alrededor para ayudar con la replicación y migración de datos para los usuarios existentes de MySQL y MariaDB .

Migración de datos de TiDB (DM)

TiDB Data Migration (DM) es adecuado para replicar datos de tablas MySQL o MariaDB ya fragmentadas a TiDB. [ 23 ] Un caso de uso común de DM es conectar tablas MySQL o MariaDB a TiDB, tratando a TiDB casi como un esclavo, y luego ejecutar directamente cargas de trabajo analíticas en este clúster de TiDB en tiempo casi real.

Copia de seguridad y restauración

Backup & Restore (BR) es una herramienta distribuida de copia de seguridad y restauración para datos de clúster TiDB. [ 24 ]

Bola de masa hervida

Dumpling es una herramienta de exportación de datos que exporta datos almacenados en TiDB o MySQL. Permite a los usuarios realizar copias de seguridad completas lógicas o volcados completos desde TiDB o MySQL. [ 25 ]

TiDB Lightning

TiDB Lightning es una herramienta que permite la importación completa a alta velocidad de un volcado MySQL de gran tamaño a un nuevo clúster TiDB. Esta herramienta se utiliza para poblar un clúster TiDB inicialmente vacío con gran cantidad de datos, con el fin de acelerar las pruebas o la migración a producción. La mejora en la velocidad de importación se logra analizando las sentencias SQL en pares clave-valor y generando directamente archivos de tabla de cadenas ordenadas (SST) en RocksDB . [ 26 ] [ 27 ]

TiCDC

TiCDC es una herramienta de captura de cambios de datos que transmite datos desde TiDB a otros sistemas como Apache Kafka .

Véase también

Referencias

  1. "Notas de la versión 1.0 GA" . GitHub .
  2. "Versión 8.5.7" . 9 de julio de 2026. Consultado el 9 de julio de 2026 .
  3. Xu, Kevin (17 de octubre de 2018). "Cómo TiDB combina OLTP y OLAP en una base de datos distribuida" . InfoWorld .
  4. "F1: Una base de datos SQL distribuida y escalable" . 2013.
  5. "Spanner: la base de datos distribuida globalmente de Google" . 2012.
  6. Hall, Susan (17 de abril de 2017). "TiDB aporta escalabilidad distribuida a SQL" . The New Stack .
  7. Tocker, Morgan (14 de noviembre de 2018). "Conozca TiDB: una base de datos NewSQL de código abierto" . Opensource.com .
  8. "Compatibilidad con MySQL" . PingCAP .
  9. "Arquitectura TiKV" . TiKV .
  10. Evans, Kristen (28 de agosto de 2018). "CNCF alojará TiKV en el entorno aislado" . Cloud Native Computing Foundation .
  11. CNCF (21 de mayo de 2019). "TOC vota a favor de trasladar TiKV a la incubadora de CNCF" . Cloud Native Computing Foundation . Consultado el 19 de agosto de 2020 .
  12. Autores de TiKV (2 de septiembre de 2020). "Celebrando la graduación de TiKV en la CNCF" . TiKV .
  13. "El algoritmo de consenso de Raft" .
  14. "Búsqueda vectorial TiDB" .
  15. Jackson, Joab (22 de enero de 2019). "Los operadores de bases de datos llevan cargas de trabajo con estado a Kubernetes" . The New Stack .
  16. Philips, Brandon (3 de noviembre de 2016). "Introducción a los operadores: Incorporando el conocimiento operativo al software" . CoreOS .
  17. «Repositorio de GitHub del operador TiDB» . GitHub .
  18. "Presentación del operador de Kubernetes para TiDB" . InfoWorld . 16 de agosto de 2018.
  19. "Implementar TiDB en Kubernetes en su portátil" .
  20. "Implementar TiDB, una base de datos distribuida compatible con MySQL, en Kubernetes en Google Cloud" .
  21. "Implementar TiDB, una base de datos distribuida compatible con MySQL, en Kubernetes a través de AWS EKS" . GitHub .
  22. Long, Heng (19 de abril de 2020). "Ponga en marcha un clúster TiDB en tan solo un minuto" . PinCAP . Consultado el 19 de agosto de 2020 .
  23. "Repositorio DM de GitHub" . GitHub .
  24. Shen, Taining (13 de abril de 2020). "Cómo hacer copias de seguridad y restaurar un clúster de 10 TB a más de 1 GB/s" . PingCAP .
  25. "Descripción general de las empanadillas" . PingCAP .
  26. Chan, Kenny (30 de enero de 2019). "Presentación de TiDB Lightning" . PingCAP .
  27. "Descripción general de TiDB Lightning" . PingCAP .