Article de reference

TiDB

TiDB (/'taɪdiːbi:/, « Ti » signifie Titanium) est une base de données NewSQL open source qui prend en charge les charges de travail HTAP (Hybrid Transactional and Analytical Pro...

TiDB (/'taɪdiːbi:/, « Ti » signifie Titanium) est une base de données NewSQL open source qui prend en charge les charges de travail HTAP (Hybrid Transactional and Analytical Processing ). Conçue pour être compatible avec MySQL , elle est développée et supportée principalement par PingCAP et sous licence Apache 2.0. Elle est également disponible en tant que produit payant. TiDB s'est inspirée des documents Spanner et F1 de Google pour sa conception initiale.

Historique des versions

Voir toutes les notes de version de TiDB.

  • Le 24 mai 2024, TiDB 8.1 GA est sorti.
  • Le 1er décembre 2023, TiDB 7.5 GA est sorti.
  • Le 31 mai 2023, TiDB 7.1 GA est sorti.
  • Le 7 avril 2022, TiDB 6.0 GA est sorti.
  • Le 7 avril 2021, TiDB 5.0 GA est sorti.
  • Le 28 mai 2020, TiDB 4.0 GA est sorti.
  • Le 28 juin 2019, TiDB 3.0 GA est sorti.
  • Le 27 avril 2018, TiDB 2.0 GA est sorti.
  • Le 16 octobre 2017, TiDB 1.0 GA est sorti.

Caractéristiques principales

Évolutivité horizontale

TiDB peut étendre la capacité de traitement et de stockage SQL en ajoutant de nouveaux nœuds.

Compatibilité MySQL

TiDB agit comme s'il s'agissait d'un serveur MySQL 8.0 pour les applications. Un utilisateur peut continuer à utiliser toutes les bibliothèques clientes MySQL existantes. Parce que la couche de traitement SQL de TiDB est construite à partir de zéro, et non à partir d'un fork de MySQL.

Transactions distribuées avec une forte cohérence

TiDB fragmente en interne une table en petits morceaux basés sur des plages, appelés « régions ». Chaque région a une taille par défaut d'environ 100 Mo, et TiDB utilise une validation en deux phases en interne pour garantir que les régions sont maintenues de manière cohérente sur le plan transactionnel.

Natif du cloud

TiDB est conçu pour fonctionner dans le cloud. La couche de stockage de TiDB, appelée TiKV, est devenue un projet membre de la Cloud Native Computing Foundation (CNCF) en août 2018, en tant que projet de niveau Sandbox, et est devenue un projet hébergé de niveau incubation en mai 2019. TiKV a obtenu son diplôme de la CNCF en septembre 2020.

HTAP en temps réel

TiDB peut prendre en charge les charges de travail de traitement des transactions en ligne ( OLTP ) et de traitement analytique en ligne ( OLAP ). TiDB dispose de deux moteurs de stockage : TiKV, un rowstore, et TiFlash, un columnstore.

Haute disponibilité

TiDB utilise l' algorithme de consensus Raft pour garantir que les données sont disponibles et répliquées dans tout le stockage dans les groupes Raft. En cas de défaillance, un groupe Raft élira automatiquement un nouveau leader pour le membre défaillant et auto-réparera le cluster TiDB.

Méthodes de déploiement

Kubernetes avec opérateur

TiDB peut être déployé dans un environnement cloud compatible Kubernetes à l'aide de TiDB Operator. Un opérateur est une méthode de packaging, de déploiement et de gestion d'une application Kubernetes. Il est conçu pour exécuter des charges de travail avec état et a été introduit pour la première fois par CoreOS en 2016. TiDB Operator a été développé à l'origine par PingCAP et open source en août 2018. TiDB Operator peut être utilisé pour déployer TiDB sur un ordinateur portable, Google Cloud Platform 's Google Kubernetes Engine, et Amazon Web Services ' Elastic Container Service for Kubernetes.

TiUP

TiDB 4.0 introduit TiUP, un outil d'exploitation et de maintenance de cluster. Il aide les utilisateurs à installer et à configurer rapidement un cluster TiDB avec quelques commandes.

TiDB Ansible

TiDB peut être déployé à l'aide d'Ansible en utilisant un playbook TiDB Ansible (non recommandé).

Docker

Docker peut être utilisé pour déployer TiDB dans un environnement conteneurisé sur plusieurs nœuds et plusieurs machines, et Docker Compose peut être utilisé pour déployer TiDB avec une seule commande à des fins de test.

Outils

TiDB dispose d'une série d'outils open source construits autour de lui pour aider à la réplication et à la migration des données pour les utilisateurs MySQL et MariaDB existants .

Migration de données TiDB (DM)

TiDB Data Migration (DM) est adapté à la réplication de données à partir de tables MySQL ou MariaDB déjà fragmentées vers TiDB. Un cas d'utilisation courant de DM consiste à connecter des tables MySQL ou MariaDB à TiDB, en traitant TiDB presque comme un esclave, puis à exécuter directement des charges de travail analytiques sur ce cluster TiDB en temps quasi réel.

Sauvegarde et restauration

Backup & Restore (BR) est un outil de sauvegarde et de restauration distribué pour les données de cluster TiDB.

Boulettes

Dumpling est un outil d'exportation de données qui exporte les données stockées dans TiDB ou MySQL. Il permet aux utilisateurs de réaliser des sauvegardes complètes logiques ou des vidages complets à partir de TiDB ou MySQL.

TiDB Lightning

TiDB Lightning est un outil qui prend en charge l'importation complète à grande vitesse d'un grand dump MySQL dans un nouveau cluster TiDB. Cet outil est utilisé pour remplir un cluster TiDB initialement vide avec beaucoup de données, afin d'accélérer les tests ou la migration en production. L'amélioration de la vitesse d'importation est obtenue en analysant les instructions SQL en paires clé-valeur, puis en générant directement des fichiers SST (Sorted String Table) dans RocksDB .

TiCDC

TiCDC est un outil de capture de données modifiées qui diffuse les données de TiDB vers d'autres systèmes comme Apache Kafka .

Journal binaire TiDB

TiDB Binlog est un outil utilisé pour collecter les modifications logiques apportées à un cluster TiDB. Il est utilisé pour fournir une sauvegarde et une réplication incrémentielles, soit entre deux clusters TiDB, soit d'un cluster TiDB vers une autre plate-forme en aval.

Plus d articles de Worldlex Wiki

Revenez a l index pour explorer davantage de pages sur l histoire, la science, la culture, la geographie et la societe en francais.

Explorer l index