Requêtes interactives de HDInsight

Effectué

Les requêtes interactives sont généralement implémentées dans un scénario de chemin à froid, où vous disposez de données au format tabulaire et souhaitez rapidement poser des questions et obtenir une réponse interactive à l’aide de la syntaxe SQL. Le schéma suivant illustre l’architecture de la solution pour toutes les solutions de chemin à froid et de chemin à chaud HDInsight. Il décrit également la manière dont les requêtes interactives sont traitées via LLAP Hive dans la couche de service. Les données peuvent être ingérées par le biais de Hive, les requêtes interactives sont traitées via Hive LLAP, et la sortie peut être fournie aux applications en aval, telles que Power BI.

Interactive Query Solution Architecture

Architecture Interactive Query

Examinons à présent l’architecture interactive Query.

Les utilisateurs d’Interactive Query peuvent choisir parmi un large éventail de clients ODBC ou JDBC pour exécuter des requêtes sur leurs données d’entreprise, notamment Data Analytics Studio, Zeppelin Notebooks et Visual Studio Code. Une fois qu’un client a envoyé une requête HiveQL, la requête arrive au HiveServer, lequel est chargé de la planification des requêtes, de l’optimisation et du découpage de sécurité. Hive fonctionne en divisant les tâches d’analyse entre les nœuds distribués du cluster. Les requêtes sont divisées en sous-tâches et envoyées aux nœuds qui traitent chacune des sous-tâches ; ces sous-tâches sont encore fractionnées et chacune d’elles lit les données de la couche de stockage de données d’entreprise sous-jacente. L’architecture est optimisée grâce à l’utilisation de démons LLAP « Always-on », qui évite les temps de démarrage, ainsi que grâce au cache en mémoire partagé, qui stocke les données récupérées à partir du stockage et partage les données sur l’ensemble des nœuds.

Hive Architecture

Les disques SSD utilisés par les clusters Interactive Query combinent la RAM et le disque SSD dans un immense pool de mémoire utilisé par le cache. Avec cette combinaison de ressources, un profil de serveur classique peut mettre en cache 4 fois plus de données, ce qui vous permet de traiter des jeux de données plus volumineux et de prendre en charge un plus grand nombre d’utilisateurs. Le cache Interactive Query détecte les modifications de données sous-jacentes dans le magasin distant (stockage Azure). Par conséquent, si les données sous-jacentes changent et que l’utilisateur émet une requête, les données mises à jour sont chargées dans la mémoire sans autre intervention de la part de l’utilisateur.