Cette page a été traduite par l'API Cloud Translation.
Switch to English

Présentation de l'interface SQL de BigQuery BI Engine

À propos de l'interface SQL de BI Engine

BigQuery BI Engine est un service d'analyse en mémoire rapide qui permet aux utilisateurs d'analyser des données stockées dans BigQuery en bénéficiant d'un temps de réponse de requête inférieur à une seconde et d'une simultanéité élevée.

L'interface SQL de BI Engine intègre l'interface de BI Engine à d'autres outils de veille stratégique tels que Looker, Tableau, Power BI et des applications personnalisées pour accélérer l'exploration et l'analyse des données. Cette page présente l'interface SQL de BI Engine et les fonctionnalités développées disponibles pour cette version d'aperçu de BI Engine.

Demande d'accès à l'aperçu

L'accès à l'interface SQL de BI Engine pendant cette phase de prévisualisation est fourni par le biais d'un processus d'inscription. Pour y accéder, envoyez le formulaire d'inscription de l'aperçu BI Engine avec les détails de votre projet. Vous serez informé par e-mail une fois que votre projet aura été enregistré.

Augmenter la taille de réservation pendant l'aperçu

Si vous avez besoin d'une réservation de mémoire supplémentaire supérieure à la taille par défaut de 100 Go, vous pouvez demander une augmentation. Les augmentations de réservation sont évaluées au cas par cas et ne sont disponibles que dans certaines régions.

Architecture BI Engine

L'interface SQL de BI Engine s'appuie sur l'architecture BI Engine pour Google Data Studio existante. Le diagramme suivant montre l'architecture mise à jour pour BI Engine:

Architecture BI Engine

Cette version d'aperçu de BI Engine comprend les éléments suivants:

  1. API BigQuery:BI Engine s'intègre directement à l'API BigQuery. Toute solution de veille stratégique ou une application personnalisée fonctionnant avec l'API BigQuery via des mécanismes standards tels que les pilotes JDBC et ODBC de REST peut utiliser BI Engine sans aucune modification.
  2. Environnement d'exécution vectorisé:l'interface SQL de BI Engine permet d'introduire une technique plus moderne appelée traitement vectoriel. Le traitement vectorisé dans un moteur d'exécution rend plus efficacement l'architecture moderne du processeur, en effectuant des opérations sur des lots de données à la fois. BI Engine utilise également des encodages de données avancés, en particulier l'encodage de longueur de dictionnaire pour compresser davantage les données stockées dans la couche en mémoire.
  3. Métadonnées:les métadonnées stockent la définition des tables et des vues, la définition du schéma et les autorisations détaillées.
  4. Réservations:les réservations BI Engine gèrent l'allocation de mémoire au niveau de la facturation du projet. BI Engine ne met en cache que les colonnes et les partitions interrogées ou analysées. Il ne met pas en cache l'intégralité de la table.
  5. Moteur en mémoire distribué:BI Engine est un moteur d'exécution en mémoire distribué qui permet aux clients d'allouer des réservations de mémoire beaucoup plus importantes.

Optimisation et accélération des requêtes

BigQuery, et par extension BI Engine, divise le plan de requête généré pour une requête SQL en sous-requêtes. Une sous-requête contient un certain nombre d'opérations, telles que l'analyse, le filtrage ou l'agrégation de données. Il s'agit souvent de l'unité d'exécution d'une partition.

Bien que toutes les requêtes SQL compatibles de BigQuery soient correctement exécutées par l'interface SQL de BI Engine, la version de l'interface SQL de BI Engine n'optimise que certaines sous-requêtes. Plus particulièrement, il est optimisé pour les sous-requêtes au niveau feuille qui analysent les données du stockage et effectue des opérations telles que le filtrage, le calcul, l'agrégation, l'ordre de tri et certains types de jointures. D'autres sous-requêtes qui ne sont pas encore pleinement opérationnelles par BI Engine reviennent à BigQuery pour exécution.

En raison de cette optimisation sélective, les requêtes d'informatique décisionnelle ou de type tableau de bord plus simples (ce qui entraîne moins de sous-requêtes) sont particulièrement bénéfiques de BI Engine, car la majeure partie du temps d'exécution est consacrée aux sous-requêtes au niveau de la feuille qui sont traitées. des données brutes.

Limites

La liste suivante explique comment et quand une requête est accélérée lorsque vous utilisez cette version d'aperçu de BI Engine:

  • Dans les sous-requêtes au niveau feuille, l'accélération est limitée aux fonctions et opérateurs SQL standards.
  • Pendant cet aperçu, les utilisateurs sont limités à une capacité maximale de 100 Go pour chaque projet Google Cloud. Vous pouvez demander une augmentation de la capacité de réservation.
  • L'ingestion de flux BigQuery n'est pas compatible avec l'aperçu.
  • Les limites suivantes s'appliquent à la taille et au nombre de lignes :
    • Les requêtes simples qui font référence à une seule table (telles que les requêtes GROUP-BY ou FILTER) sont principalement limitées par la taille de la réservation.
    • Pour les jointures, l'accélération est limitée aux sous-requêtes au niveau feuille avec des jointures INNER et LEFT OUTER, où une grande table (fact) est jointe à quatre petites tables non partitionnées (dimension) , chacun contenant jusqu'à 5 millions de lignes ou 5 Go pour les colonnes référencées.
  • Les requêtes faisant référence à des tables de caractères génériques ne sont pas acceptées.
  • Cette version d'aperçu de BI Engine n'est pas disponible dans toutes les régions. Pour plus d'informations, consultez la liste des régions disponibles.

Surveillance et diagnostics

Cette section explique comment trouver des statistiques sur BI Engine et comment BI Engine établit l'enregistrement avec Cloud Monitoring.

Statistiques d'accélération

Des statistiques détaillées sur BI Engine sont disponibles via l'API Stats Insights. Vous pouvez utiliser l'outil de ligne de commande bq pour récupérer les statistiques associées aux requêtes accélérée de BI Engine.

Lorsque l'accélération BI Engine est activée, vous pouvez exécuter une requête dans l'un des trois modes suivants:


DISABLED
BI Engine a désactivé l'accélération. biEngineReasons indique un motif plus détaillé. La requête a été exécutée à l'aide du moteur d'exécution BigQuery.

PARTIAL
Une partie de la requête a été accélérée à l'aide de BI Engine. Comme décrit dans la section Optimisation et accélération des requêtes, un plan de requête est généralement divisé en plusieurs sous-requêtes. Cet [aperçu](/products/#product-launch-stages) de BI Engine est compatible avec les types courants de modèles de sous-requêtes généralement utilisés dans la création de tableaux de bord. Si la requête est composée de plusieurs sous-requêtes, dont quelques-unes font partie des cas d'utilisation acceptés, BI Engine exécute les sous-requêtes restantes à l'aide du moteur BigQuery normal. Les sous-requêtes restantes ne reçoivent pas l'accélération BI Engine. Dans ce cas, BI Engine renvoie un code d'accélération PARTIAL et utilise biEngineReasons pour renseigner le motif d'accélération du chargement des autres sous-requêtes.

 FULL
 
Toutes les requêtes ont été accélérées à l'aide de BI Engine.

Pour récupérer les statistiques associées aux requêtes accélérées BI Engine, exécutez la commande de l'outil de ligne de commande bq suivante:

bq show --format=prettyjson -j job_id

Si le projet est activé pour l'accélération BI Engine, la sortie génère un nouveau champ, biEngineStatistics. Voici un exemple de rapport de tâche:

 "statistics": {
    "creationTime": "1602175128902",
    "endTime": "1602175130700",
    "query": {
      "biEngineStatistics": {
        "biEngineMode": "DISABLED",
        "biEngineReasons": [
          {
            "code": "UNSUPPORTED_SQL_TEXT",
            "message": "Detected unsupported join type"
          }
        ]
      },

Pour plus d'informations sur le champ BiEngineStatistics, consultez la documentation de référence sur les tâches.

Cloud Monitoring

BI Engine s'intègre à Cloud Monitoring pour mettre en avant des métriques clés à des fins de surveillance et d'alerte. Voici les métriques surveillées:

Type de ressource Nom de la métrique Description
Projet Nombre total d'octets de réservation Capacité totale allouée dans un projet Cloud.
Projet Nombre d'octets utilisés pour la réservation Capacité totale utilisée dans un projet Cloud.

Commentaires et mises à jour

Une fois inscrit à l'aperçu, vous pouvez publier des questions et des commentaires dans le groupe de discussion. Nous utilisons également ce groupe pour faire des mises à jour sur les améliorations et les fonctionnalités en cours pendant la phase de prévisualisation.

Tarifs

L'utilisation de l'interface SQL de BI Engine pendant les 20 premières semaines de la phase de prévisualisation est gratuite.

Une fois l'aperçu terminé, BI Engine suit le modèle de tarification décrit sur la page des tarifs de BI Engine.

Régions où le service est disponible

Comme BigQuery, BI Engine est une ressource régionale et multirégionale. BI Engine traite vos données dans la même région que celle où elles sont stockées dans BigQuery.

La phase d'aperçu de l'interface SQL de BI Engine accepte les emplacements suivants.

Zones régionales

Description de la région Nom de la région
Amériques
Virginie du Nord us-east4
Oregon us-west1
Caroline du Sud us-east1
Asie-Pacifique
Singapour asia-southeast1
Tokyo asia-northeast1

Zones multirégionales

Description de la zone multirégionale Nom de l'emplacement multirégional
Centres de données dans les États membres de l'Union européenne1 EU
Centres de données aux États-Unis US

1 Les données qui résident dans la zone multirégionale EU ne sont pas stockées dans les centres de données europe-west2 (Londres) ou europe-west6 (Zurich).