Apache Drill
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].
Développé par | Apache Software Foundation |
---|---|
Première version | [1] |
Dernière version | 1.20.3 ()[2] |
DĂ©pĂ´t | github.com/apache/drill et git://git.apache.org/drill.git |
État du projet | Développement |
Écrit en | Java |
Système d'exploitation | Multiplateforme |
Type | Big data |
Licence | Licence Apache |
Site web | drill.apache.org |
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
- 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
Support
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].
Voir aussi
- Cloud computing
- Big data
- Data Intensive Computing
Références
- « https://projects.apache.org/json/projects/drill.json » (consulté le )
- « Release 1.20.3 », (consulté le )
- "The Apache Software Foundation Announces Apache™ Drill™ as a Top-Level Project.
- "Apache Drill - Schema-free SQL for Hadoop, NoSQL and Cloud Storage. drill.apache.org.
- "Frequently Asked Questions - Apache Drill". drill.apache.org.
- (en) Cet article est partiellement ou en totalité issu de l’article de Wikipédia en anglais intitulé « Apache Drill » (voir la liste des auteurs).
Publications
Certaines publication ont influencé la naissance et de la conception. Voici une liste partielle:
- 2005 From Databases to Dataspaces: A New Abstraction for Information Management, les auteurs soulignent la nécessité pour les systèmes de stockage d'accepter tous les formats de données et de fournir des API d'accès aux données qui évoluent en fonction de la compréhension du système de stockage des données.
- 2010 Dremel: Interactive Analysis of Web-Scale Datasets