L'interrogation et la maintenance des données dans les scénarios de sharding de base de données et de partitionnement de table peuvent s'avérer complexes. Data Management Service (DMS) simplifie ce processus grâce aux fonctionnalités de base de données logique et de table logique. Vous pouvez regrouper une ou plusieurs bases de données physiques en une seule base de données logique, offrant ainsi une vue unifiée pour interroger et gérer vos données distribuées.
Contexte
Dans une architecture utilisant le sharding de base de données et le partitionnement de table, les données métier sont réparties sur de nombreuses tables au sein de plusieurs bases de données physiques, selon un algorithme de routage. Cette architecture présente souvent les défis suivants :
L'interrogation et l'analyse des données sont difficiles, car vous devez souvent parcourir chaque table pour trouver les informations requises.
L'ajout ou la suppression d'un champ demande des efforts considérables, puisque la modification doit être appliquée à chaque partition de table.
La fonctionnalité de base de données logique de DMS répond à ces défis. Elle vous permet de créer une table logique à partir de tables physiques partageant la même structure et un préfixe de nom commun. Vous pouvez ensuite gérer cette table logique comme s'il s'agissait d'une table unique.
Prérequis
-
Les bases de données physiques doivent être d'un type pris en charge :
-
Bases de données relationnelles :
MySQL : ApsaraDB RDS for MySQL, PolarDB for MySQL, ApsaraDB MyBase for MySQL, AnalyticDB for MySQL V3.0 et les bases de données MySQL provenant d'autres sources
SQL Server : ApsaraDB RDS for SQL Server, ApsaraDB MyBase for SQL Server et les bases de données SQL Server provenant d'autres sources
PostgreSQL : ApsaraDB RDS for PostgreSQL, PolarDB for PostgreSQL, ApsaraDB MyBase for PostgreSQL, AnalyticDB for PostgreSQL et les bases de données PostgreSQL provenant d'autres sources
OceanBase : ApsaraDB for OceanBase in MySQL mode, ApsaraDB for OceanBase in Oracle mode et les bases de données OceanBase gérées par vous-même
PolarDB for PostgreSQL (Compatible with Oracle)
Oracle
Db2
Entrepôts de données : Data Lake Analytics (DLA), ApsaraDB for ClickHouse et Hologres
-
Les instances hébergeant les bases de données physiques doivent être gérées en mode Sécurité collaborative. Pour plus d'informations, consultez Afficher le mode de contrôle.
Vous devez être administrateur, DBA ou propriétaire des données des bases de données physiques. Pour plus d'informations, consultez Afficher les rôles système et Afficher les rôles de ressource.
Configurer une base de données logique
Connectez-vous à DMS 5.0.
-
Placez le pointeur sur l'icône
située dans le coin supérieur gauche de la console DMS, puis choisissez .RemarqueSi vous utilisez la console DMS en mode normal, choisissez dans la barre de navigation supérieure.
Dans la zone de recherche, saisissez le nom d'une base de données physique, puis cliquez sur l'icône
.Dans la colonne Actions correspondant à la base de données physique cible, choisissez . Cette base de données physique devient le premier shard de base de données au sein de la base de données logique.
-
Facultatif : Dans la boîte de dialogue Create Logical Database Configuration, ajoutez d'autres shards de bases de données physiques.
Les shards de bases de données physiques ajoutés doivent répondre aux exigences suivantes :
Ils doivent être du même type de base de données. Par exemple, tous doivent être des bases de données MySQL.
Ils doivent appartenir au même type d'environnement, tel que l'environnement de développement (dev). Pour plus d'informations, consultez Environnements d'instance.
Une base de données physique ne peut être configurée que dans une seule base de données logique. Si une base de données physique fait déjà partie de la Base de données logique A, vous devez d'abord la retirer de A avant de pouvoir l'ajouter à la Base de données logique B.
Pour ajouter des shards de bases de données physiques :
Recherchez et sélectionnez les bases de données physiques cibles.
-
Cliquez sur l'icône
pour ajouter les bases de données physiques sélectionnées à la liste de droite.RemarqueL'ordre des bases de données physiques dans la liste de droite détermine l'ordre de partitionnement au sein de la base de données logique. Cet ordre doit correspondre à la séquence de partitionnement réelle afin de garantir le bon fonctionnement des requêtes sur les tables logiques.
-
Définissez un alias pour la base de données logique.
Le nom de la base de données logique s'affiche au format suivant : Nom de la base de données logique [Alias].
-
Définissez le propriétaire des données.
Si vous êtes administrateur ou DBA, cliquez sur Change Data Owners pour attribuer un ou plusieurs utilisateurs en tant que propriétaires des données pour tous les shards de bases de données physiques. Ces utilisateurs deviennent les propriétaires des données de la base de données logique.
RemarqueSi vous recevez le message « Failed to provide recommendations because databases in the logical database belong to different owners. », cela signifie que les shards de bases de données physiques ont des propriétaires de données différents. Vous devez attribuer un propriétaire de données unifié pour tous les shards. Pour obtenir des instructions, consultez Gérer les autorisations.
Cliquez sur Save Configuration.
Étapes suivantes
Après avoir configuré une base de données logique, vous devez créer des tables logiques avant de pouvoir interroger les données qu'elles contiennent. Pour plus d'informations, consultez Tables logiques.