Apache Drill

Apache Drill
Description de l'image Apache Drill logo.svg.

Informations
Développé par Apache Software FoundationVoir et modifier les données sur Wikidata
Première version [1]Voir et modifier les données sur Wikidata
Dernière version 1.21.2 ()[2]Voir et modifier les données sur Wikidata
Dépôt github.com/apache/drill et git://git.apache.org/drill.gitVoir et modifier les données sur Wikidata
État du projet Développement
Écrit en JavaVoir et modifier les données sur Wikidata
Système d'exploitation MultiplateformeVoir et modifier les données sur Wikidata
Type Big dataVoir et modifier les données sur Wikidata
Licence Licence ApacheVoir et modifier les données sur Wikidata
Site web drill.apache.orgVoir et modifier les données sur Wikidata

Apache Drill est un framework logiciel open-source qui supporte les applications temps réel distribuées pour l'analyse interactive de jeux de données à grande échelle. Drill est la version open source du système Dremel de Google qui est disponible comme un service d'infrastructure appelé Google BigQuery. Un objectif de conception indique explicitement que Drill est capable d'évoluer à 10.000 serveurs ou plus et d'être en mesure de traiter des pétaoctets de données et des milliards d'enregistrements en quelques secondes. Drill est un projet de premier niveau pour Apache[3].

Drill supporte de nombreuses bases NoSQL et de nombreux systèmes de fichiers comme HBase, MongoDB, MapR-DB, HDFS, MapR-FS, Amazon S3, Azure Blob Storage, Google Cloud Storage, Swift, NAS et des fichiers locaux. Une seule requête peut joindre des données d'entrepôts de données distincts. Par exemple, vous pouvez joindre le profil utilisateur présent dans une collection sur MongoDB avec les logs d'Hadoop.

L'optimisateur de Drill restructure automatiquement un plan d'exécution de la requête pour tirer parti des capacités de traitement des entrepôts de données internes. En outre, Drill supporte la localité des données, il est donc interessant de co-implanter Drill et un datastore sur plusieurs nœuds[4].

Fonctionnalités

[modifier | modifier le code]
  •  Modèle de document JSON similaire à MongoDB et Elasticsearch
  • Utilise les API standards de l'industrie : ANSI SQL, ODBC/JDBC, RESTful APIs
  • Extrêmement convivial pour l'utilisateur et le développeur (requêtes SQL like)
  •  Architecture distribuée

Drill est principalement axé sur les datastore non relationnels, comme Hadoop, NoSQL et le stockage en cloud. Les datastores suivants sont actuellement supportés:

  • Hadoop: toutes les distributions Hadoop (HDFS API 2.3+),  Apache Hadoop, MapR, CDH et Amazon EMR compris
  • NoSQL: MongoDB, HBase
  • Stockage Cloud: Amazon S3, Google Cloud Storage, Azure Blob Storage, Swift

De nouveaux datastores peuvent-être développés sous forme de plugin. Drill utilise un seul modèle de donnée JSON  qui lui permet d'interroger des datastores non relationnels in-situ (Beaucoup de ces systèmes de stockage sont complexes ou sans schema)[5].

Références

[modifier | modifier le code]

Publications

[modifier | modifier le code]

Certaines publication ont influencé la naissance et de la conception. Voici une liste partielle:

Liens externes

[modifier | modifier le code]