Remarque
L’accès à cette page requiert une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page requiert une autorisation. Vous pouvez essayer de modifier des répertoires.
L’E/S prédictive est une collection d’optimisations Azure Databricks qui accélèrent la lecture et la mise à jour des données :
- Les lectures accélérées accélèrent les requêtes sélectives qui autrement scanneraient bien plus de données qu’elles ne le retournent.
- Les mises à jour accélérées réduisent les données réécrites lorsqu’une mise à jour, une suppression ou une fusion ne modifie que quelques lignes dans un fichier.
Les E/S prédictives sont exclusives au moteur Photon sur Azure Databricks. Consultez Qu’est-ce que Photon ?.
Lorsque l’E/S prédictive s’applique
Les E/S prédictives s’exécutent automatiquement. On ne l’active pas pour les requêtes individuelles. Pour en bénéficier :
- Exécutez des requêtes sur des entrepôts serverless ou SQL professionnels, ou sur des clusters compatibles Photon. Voir Utiliser l’E/S prédictive pour accélérer les lectures.
- Activez les vecteurs de suppression sur les tables avec des opérations fréquentes de type
DELETE,MERGEouUPDATEpour obtenir des mises à jour accélérées. Consultez Utiliser des E/S prédictives pour accélérer les mises à jour.
L’E/S prédictive remplace également les index Bloom filter. Voir les index de filtre Bloom (déconseillés).
Utiliser des E/S prédictives pour accélérer les lectures
Les E/S prédictives sont utilisées pour accélérer les performances d’analyse et de filtrage des données pour toutes les opérations sur les types de calcul pris en charge.
Important
Les lectures d’E/S prédictives sont prises en charge par les types serverless et pro d’entrepôts SQL, ainsi que par les clusters à accélération Photon exécutant Databricks Runtime 11.3 LTS et versions ultérieures.
L’E/S prédictive améliore les performances d’analyse en appliquant des techniques d’apprentissage profond à :
- Déterminez le schéma d’accès le plus efficace pour lire les données et ne scannez que les données réellement nécessaires.
- Éliminer le décodage des colonnes et des lignes qui ne sont pas nécessaires pour générer les résultats d’une requête.
- Calculer les probabilités que les critères de recherche, dans des requêtes sélectives, correspondent à une ligne. Au fur et à mesure que les requêtes s’exécutent, l’E/S prédictive utilise ces probabilités pour anticiper où se trouve la ligne correspondante suivante et ne lire que ces données depuis le stockage cloud.
Utiliser des E/S prédictives pour accélérer les mises à jour
Les E/S prédictives pour les mises à jour sont utilisées automatiquement pour toutes les tables dont les vecteurs de suppression sont activés sur ces types de calcul compatibles Photon :
- Entrepôts SQL sans serveur.
- Entrepôts SQL Pro.
- Clusters exécutant Databricks Runtime 14.0 et versions ultérieures.
Remarque
La prise en charge des E/S prédictives pour les mises à jour est présente dans Databricks Runtime 12.2 LTS et versions ultérieures, mais Databricks recommande d’utiliser 14.0 et versions ultérieures pour de meilleures performances.
Consultez les vecteurs de suppression dans Databricks.
Important
Un paramètre d’administrateur d’espace de travail contrôle si les vecteurs de suppression sont automatiquement activés pour les nouvelles tables Delta Lake. Consultez Activer automatiquement des vecteurs de suppression.
Vous activez la prise en charge des vecteurs de suppression sur une table Delta Lake en définissant une propriété de la table Delta Lake. Vous activez les vecteurs de suppression lors de la création de la table ou modifiez une table existante, par exemple :
CREATE TABLE <table-name> [options] TBLPROPERTIES ('delta.enableDeletionVectors' = true);
ALTER TABLE <table-name> SET TBLPROPERTIES ('delta.enableDeletionVectors' = true);
Avertissement
Lorsque vous activez les vecteurs de suppression, la version du protocole de table est mise à niveau. Après mise à jour, la table n’est pas lisible par les clients Delta Lake qui ne supportent pas les vecteurs de suppression. Consultez les protocoles et la compatibilité des fonctionnalités Delta Lake.
Pour obtenir la liste des clients qui prennent en charge les vecteurs de suppression, consultez compatibilité du client.
Dans Databricks Runtime 14.1 et versions ultérieures, vous pouvez annuler la fonctionnalité de table des vecteurs de suppression pour activer la compatibilité avec d’autres clients Delta. Consultez Supprimer une fonctionnalité de table Delta Lake et passer à une version antérieure du protocole de table.
L’E/S prédictive exploite les vecteurs de suppression pour accélérer les mises à jour en réduisant la fréquence des réécritures complètes de fichiers lors de la modification des données sur les tables Delta Lake. Les E/S prédictives optimisent les opérations DELETE, MERGE et UPDATE.
Au lieu de réécrire tous les enregistrements d’un fichier de données lorsqu’un enregistrement est mis à jour ou supprimé, les E/S prédictives utilisent des vecteurs de suppression pour indiquer que les enregistrements ont été supprimés des fichiers de données cibles. Des fichiers de données supplémentaires sont utilisés pour indiquer les mises à jour.
Les lectures suivantes sur la table résolvent l’état actuel de la table en appliquant les modifications notées à la version la plus récente de la table.
Important
Les mises à jour d’E/S prédictives partagent toutes les limitations avec les vecteurs de suppression. Dans Databricks Runtime 12.2 LTS et ultérieurs, ces limitations s’appliquent :
- OpenSharing n’est pas pris en charge sur les tables avec des vecteurs de suppression activés.
- Vous ne pouvez pas générer un fichier manifeste pour une table avec des vecteurs de suppression présents. Exécutez et vérifiez
REORG TABLE ... APPLY (PURGE)qu’aucune opération d’écriture simultanée n’est en cours d’exécution pour générer un manifeste. - Vous ne pouvez pas générer de fichiers manifeste de manière incrémentielle pour une table avec des vecteurs de suppression activés.