Apache Drill的调查

随着边缘计算性能的提高,人们希望数据存储在性能较高的边缘设备中,而不是将数据收集到云服务中,因此需要直接检索边缘设备数据的需求。在物联网系统中,为了快速检索分布在广域的边缘设备数据集,需要使用分布式SQL引擎来访问多个数据库。因此,我们整理了关于分布式SQL引擎Apache Drill的相关信息。从操作环境、许可证等基本信息开始,深入探讨了支持的编程语言、可靠性、可扩展性以及功能信息和安全性。

Apache Drill
阿帕奇钻取

Drill是一个面向包含结构化/半结构化/嵌套数据的大规模数据集的低延迟分布式查询引擎。Drill受到Google Dremel的启发,被设计为能够在数千个节点上扩展,并以BI/分析要求的交互速度查询拥有Petabytes级数据的能力。此外,Drill也对大规模数据集上的交互式自由查询非常有用。同时,Drill不需要集中式元数据存储库。参考:架构介绍

基本信息

項目           内容URLhttps://drill.apache.org/データモデルJSONデータモデル
参照 : Drillix: Combined Operational & Analytical SQL at Scale動作環境CPU
メモリ: 4GB 以上
ストレージ :
OS:Linux, Mac OS X, Windows (Oracle JDK version 8以上)
参照 : Drill in 10 Minutes実装言語JavaライセンスApache License, Version 2.0
https://github.com/apache/drill/blob/master/LICENSE主なバージョン1.16.0 (2019-05-02) : ANALYZE TABLEステートメントでParquetデータの統計計算、CREATE OR REPLACE SCHEMAコマンドでテキストファイルのスキーマを定義、REFRESH TABLE METADATAコマンドでカラム指定でのメタデータのキャッシュファイルを生成機能、SYSLOG 用プラグイン
1.15.0 (2018-12-31) : SQLLine のアップグレード、インデックスのサポート、カスタム・アクセス制御リスト(ACL)付き znodeによるセキュア機能、INFORMATION_SCHEMAファイルテーブル、システムテーブル・ファンクション
1.14.0 (2018-08-05) : Docker containerでDrillを動かすための機能、ストレージ・プラグインのコンフィグレーションのエクスポートとセーブ機能、イメージ・メタデータ・フォーマット・プラグインの追加、セッション単位の Hiveプロパティの設定オプション開発元Apache Software Foundation開発体制PMC(Project Management Committee) Chair 1名(Arina Ielchiieva氏)、PMC 24名、Committers 53名、Contoributors 125名
参照 : Apache Drill Committee活動状況開発者用メーリングリストの投稿月間 平均約 600件、GitHubでソースコード・コミット月間約 20件
参照 : dev@drill.apache.org国内サポート体制現時点で国内での保守サポートサービスを行っている企業、団体はありません。その他

功能信息

項目           内容対応プログラム言語RESTful HTTP API、JDBC、ODBCを利用可能なプログラム言語であればアクセス可能ですアクセス可能なDBHBase、MongoDB、MapR-DB、Hive、HDFS、MapR-FS、Amazon S3、Azure Blob Storage、Google Cloud Storage、OpenStack Swift、NAS、JSONデータモデル、ローカルファイル(JSON形式/CSV形式)、ODBC/JDBC、PostgreSQL、 MySQL、Oracle、MS SQL Server、Apache Derby、Restful APIなどがアクセス可能です。
参照 : Query any non-relational datastoreクエリ言語SQLマルチテナントマルチテナント機能は存在しませんインデックスDrillはMapR-DBストレージプラグインだけインデックスを(Drill 1.5から)サポートします。インデックスベースのクエリプランを生成するためにデータソースのインデックスを利用することができます(primary か secondary)。
Drillはインデックスをカバーリング、ノンカバーリング、ファンクショナルのインデックスプランで利用することができる。
参照 : Querying Indexes Introductionトランザクショントランザクション機能は存在しませんストアドプロシジャユーザ定義関数を作成することが可能です。
参照 : Develop Custom Functions IntroductiondockerコンテナdockerhubでDrillのDocker Containerイメージが公開されています。
https://hub.docker.com/r/harisekhon/apache-drill/性能拡張Drillbitと呼ばれる Drilを構成する各サーバノードによって性能拡張を行います。各DrillBitは処理のコーディネーション、クエリプランニング、処理の実行などのすべての役割を全ノードが共通で持っています。
参照 : Architecture高可用性Drillbitに有効なフォールト・トレランスを持っていません運用バックアップや監視ツールは存在しません出来ないこと

安全

項目           内容通信暗号化クライアントからのすべての通信は、SSL/TLS 1.2に対応しています。DB格納領域の暗号化なし認証機能Kerberos認証、PAM認証、ダイジェスト認証が使用可能です権限管理権限管理は可能ですDB監査Auditロギングがあります

参考:保护钻机介绍。

总结

由于Apache Drill专注于分布式SQL查询引擎,所以不支持常规的数据库功能。特别是在高可用性和运维方面需要采取措施。没有多租户功能被认为是一个弱点。
此外,正如《SQL on Hadoop的真相:Impala vs. Hive on Tez vs. Drill》报告的结果所示,我们也确认了查询成功率极低的困难验证问题,即使查询成功也没有最快的情况出现。
基于这些情况,我们认为Apache Drill不适用于处理物联网大数据搜索。

请提供广泛意见,掲载内容为东芝数字创新技术中心及软件技术中心的观点。如有错误或疑问,请通过编辑请求或评论提供反馈,谢谢。

bannerAds