Weitere ähnliche Inhalte
Ähnlich wie Apache Drill: Rethinking SQL for Big data – Don’t Compromise on Flexibility or Performance - 2014/07/08 Hadoop Conference Japan 2014 (20)
Mehr von MapR Technologies Japan (12)
Apache Drill: Rethinking SQL for Big data – Don’t Compromise on Flexibility or Performance - 2014/07/08 Hadoop Conference Japan 2014
- 1. ®
© 2014 MapR Technologies
®
© 2014 MapR Technologies
2014
年
7
月
8
日
- 2. ®
© 2014 MapR Technologies
MapR エンタープライズ Hadoop
トップランク
500 以上の顧客
クラウドリーダー
- 3. ®
© 2014 MapR Technologies
Hadoop ディストリビューション
Open Source Open Source
ディストリビューション A
ディストリビューション C
運用管理
Open Source
運用管理
アーキテクチャのイノベーション
- 4. ®
© 2014 MapR Technologies
MapR Distribution for Apache Hadoop
MapR Data Platform
(ランダム Read/Write)
データハブ
エンタープライズ
グレード
業務オペレーション
MapR-FS
(POSIX)
MapR-DB
(ハイパフォーマンス NoSQL)
セキュリティ
YARN
Pig
Cascading
Spark
バッチ
Spark
Streaming
Storm*
ストリーミン
グ
HBase
Solr
NoSQL
・検索
Juju
プロビジョニ
ング・コーディ
ネーション
Savannah*
Mahout
MLLib
機械学習
・グラフ
GraphX
MapReduce
v1 & v2
APACHE HADOOP および OSS エコシステム
実行エンジン
データガバナンス・オペレーション
ワークフロー
・データ
ガバナンスTez*
Accumulo*
Hive
Impala
Shark
Drill*
SQL
Sentry* Oozie ZooKeeperSqoop
Knox* WhirrFalcon*Flume
データ
統合・
アクセス
HttpFS
Hue
NFS
HDFS
API
HBase
API
JSON
API
MapRControlSystem
(運用管理・監視)
* ディストリビューションに統合/認証予定
CLI
GUI
REST
API
- 5. ®
© 2014 MapR Technologies
MapR Distribution for Apache Hadoop
MapR Data Platform
(ランダム Read/Write)
データハブ
エンタープライズ
グレード
業務オペレーション
MapR-FS
(POSIX)
MapR-DB
(ハイパフォーマンス NoSQL)
セキュリティ
YARN
Pig
Cascading
Spark
バッチ
Spark
Streaming
Storm*
ストリーミン
グ
HBase
Solr
NoSQL
・検索
Juju
プロビジョニ
ング・コーディ
ネーション
Savannah*
Mahout
MLLib
機械学習
・グラフ
GraphX
MapReduce
v1 & v2
APACHE HADOOP および OSS エコシステム
実行エンジン
データガバナンス・オペレーション
ワークフロー
・データ
ガバナンスTez*
Accumulo*
Hive
Impala
Shark
Drill*
SQL
Sentry* Oozie ZooKeeperSqoop
Knox* WhirrFalcon*Flume
データ
統合・
アクセス
HttpFS
Hue
NFS
HDFS
API
HBase
API
JSON
API
MapRControlSystem
(運用管理・監視)
CLI
GUI
REST
API
Apache
Drill
* ディストリビューションに統合/認証予定
- 10. ®
© 2014 MapR Technologies
複数のスキーマの統合は非常に困難
なぜか?
使い方があらかじめ決められている
- 11. ®
© 2014 MapR Technologies
縦割りが原因で分析は非常に困難
• 一意の{顧客,
取引}
の組み合わせをデー
タセットの中からどの
ように特定するか?
• 一部のデータが見え
ない場合、異常挙動
がないことをどのよ
うに保証できるのか?
- 14. ®
© 2014 MapR Technologies
ビッグデータのための SQL を再考してみる
これまで通り
• 標準
ANSI
SQL
• 普遍的な仕様
• よく知られている
• BIや分析については切り替え不要
• 単一テクノロジー
• 複数のテクノロジーを管理するのは大変
• エンタープライズ向け
• システム・オブ・レコード、高可用性、災害
対策、セキュリティ、マルチテナント、…
新しく創出
• データモデルの柔軟性
• スキーマの急速な進化を許容
• 半構造化データ型をサポート
• アジリティ
• 開発者とDB管理者が同一の場合、セルフサービ
スを可能に
• スケーラビリティ
• スキーマ、プロセス、運用管理などあらゆる観点で
- 17. ®
© 2014 MapR Technologies
YOU
CAN’T
HANDLE
REAL
SQL
『ア・フュー・グッドメン(米/1992)』より
- 18. ®
© 2014 MapR Technologies
SQL
select
*
from
A
where
exists
(
select
1
from
B
where
B.b
<
100
);
• Apache
HIVE
は上記を処理できないことをご存知ですか?
– 例えば
Hive,
Impala,
Spark/Shark
- 19. ®
© 2014 MapR Technologies
自己表現型のデータ
select
cf.month,
cf.year
from
hbase.table1;
• 通常の
SQL
は上記を処理できないことをご存知ですか?
• HIVE
や Impala,
Shark
のようなものでもできないですよね?
• 理由はメタストア定義がないから
- 20. ®
© 2014 MapR Technologies
自己表現型のデータが一般的になってきている
中央管理されたスキーマ
-‐
静的
-‐
DB
管理者による管理
-‐
中央管理のレポジトリ
入念なデータの準備のために長い時間が必要
(ETL,
スキーマの作成/変更,
等)
–
6〜18
ヶ月
自己表現型もしくはスキーマレスデータ
-‐ 動的/更新されていく
-‐ アプリケーションによる管理
-‐ データに埋め込まれる
スキーマをなくすことで,
大容量・多用途・更新の
速いデータにより適している
Apache
Drill
- 22. ®
© 2014 MapR Technologies
データソースはクエリの中で指定
!select timestamp, message!
!from dfs1.logs.`AppServerLogs/2014/
Jan/p001.parquet` !
!where errorLevel > 2
Apache
Drillにおけるクラスタ
-‐ DFS
-‐ HBase
-‐ Hive
メタストア
ワークスペース
-‐ 主にサブディ
レクトリ
-‐ HIVE
データ
ベース
テーブル
-‐ パス名
-‐ Hbase
テーブル
-‐ Hive
テーブル
- 23. ®
© 2014 MapR Technologies
データソースを直接組み合わせる
• JSON
• CSV
• ORC
(つまりすべてのHive型)
• Parquet
• HBase
テーブル
• …
を組み合わせ可能
Select
USERS.name,
USERS.emails.work
from
dfs.logs.`/data/logs`
LOGS,
dfs.users.`/profiles.json`
USERS,
where
LOGS.uid
=
USERS.uid
and
errorLevel
>
5
order
by
count(*);
- 24. ®
© 2014 MapR Technologies
ディレクトリツリー全体も処理可能
// ファイルが対象!
select errorLevel, count(*)
from dfs.logs.`/AppServerLogs/2014/Jan/
part0001.parquet` group by errorLevel;!
!
// データコレクション全体が対象: すべての年、すべての月!
select errorLevel, count(*)
from dfs.logs.`/AppServerLogs`
!
group by errorLevel!
where $dir0 > 2012!
, $dir1!
dir
0!
dir
1!
- 25. ®
© 2014 MapR Technologies
JSON に対するクエリ
{
name:
classic
fillings:
[
{
name:
sugar
cal:
400
}]}
{
name:
choco
fillings:
[
{
name:
sugar
cal:
400
}
{
name:
chocolate
cal:
300
}]}
{
name:
bostoncreme
fillings:
[
{
name:
sugar
cal:
400
}
{
name:
cream
cal:
1000
}
{
name:
jelly
cal:
600
}]}
donuts.json
- 26. ®
© 2014 MapR Technologies
Drill 内部のカーソル
DrillClient drill = new DrillClient().connect( …);
ResultReader r = drill.runSqlQuery( "select * from
`donuts.json`");
while( r.next()) {
String donutName = r.reader( “name").readString();
ListReader fillings = r.reader( "fillings");
while( fillings.next()) {
int calories = fillings.reader( "cal").readInteger();
if (calories > 400)
print( donutName, calories,
fillings.reader( "name").readString());
}
}
{
name:
classic
fillings:
[
{
name:
sugar
cal:
400
}]}
{
name:
choco
fillings:
[
{
name:
sugar
cal:
400
}
{
name:
chocolate
cal:
300
}]}
{
name:
bostoncreme
fillings:
[
{
name:
sugar
cal:
400
}
{
name:
cream
cal:
1000
}
{
name:
jelly
cal:
600
}]}
- 27. ®
© 2014 MapR Technologies
ネストデータに対する直接クエリ
// JSON, parquet, その他のネストレコードの
マップのフラット化!
!
select name, flatten(fillings) as f!
from dfs.users.`/donuts.json`!
where f.cal < 300;!
!
// 300カロリー未満の中身をリスト!
{
name:
classic
fillings:
[
{
name:
sugar
cal:
400
}]}
{
name:
choco
fillings:
[
{
name:
sugar
cal:
400
}
{
name:
chocolate
cal:
300
}]}
{
name:
bostoncreme
fillings:
[
{
name:
sugar
cal:
400
}
{
name:
cream
cal:
1000
}
{
name:
jelly
cal:
600
}]}
- 28. ®
© 2014 MapR Technologies
SQL または Fluent API を使った複雑なデータ処理
//
SQL
Result
r
=
drill.sql(
"select
name,
flatten(fillings)
from
`donuts.json`
where
fillings.cal
<
300`);
//
or
Fluent
API
Result
r
=
drill.table(“donuts.json”)
.lt(“fillings.cal”,
300).all();
while(
r.next())
{
String
name
=
r.get(
“name").string();
List
fillings
=
r.get(
“fillings”).list();
while(fillings.next())
{
print(name,
calories,
fillings.get(“name”).string());
}
}
{
name:
classic
fillings:
[
{
name:
sugar
cal:
400
}]}
{
name:
choco
fillings:
[
{
name:
sugar
cal:
400
}
{
name:
plain:
280
}]}
{
name:
bostoncreme
fillings:
[
{
name:
sugar
cal:
400
}
{
name:
cream
cal:
1000
}
{
name:
jelly
cal:
600
}]}
- 29. ®
© 2014 MapR Technologies
埋め込みデータに対するクエリ
// hbaseテーブルdonutsの、カラムファミリcf1内の、カラムdonut-json
内部に埋め込まれたJSON値!
!
select d.name, count( d.fillings),!
! from (!
select
convert_from( cf1.donut-json, json) as d ! !
from hbase.user.`donuts` );!
!
- 30. ®
© 2014 MapR Technologies
JSON レコード内部へのクエリ
// 各JSONレコード自体をひとつのデータベースとして扱える!
// 例: 少なくとも1つの中身が300カロリーを超えるすべてのドーナツを得る
!
!select d.name, count( d.fillings),!
max(d.fillings.cal) within
record as mincal!
!from ( select convert_from( cf1.donut-json,
json) as d ! !
from hbase.user.`donuts` )!
where mincal > 300; !
!
- 31. ®
© 2014 MapR Technologies
a
• クエリ処理の途中でスキーマが変わる可能性がある
• スキーマ変更イベントによりオペレータの再構成ができるよ
うになっている
– 柔軟性のためのオーバーヘッドを最小化
– 実際のデータ特性に基づいてより高度な実行時最適化を行える
- 32. ®
© 2014 MapR Technologies
中央管理ではないメタデータ
// 顧客毎のツイート数をカウント。顧客マスタはHive、ツイートデータはHBaseに存在。
hbaseデータはメタデータ情報を持たないことに注目。!
!
Select!c.customerName, hb.tweets.count!
from !hive.CustomersDB.`Customers` c!
join hbase.user.`SocialData` hb!
on !c.customerId = convert_from( hb.rowkey, UTF-8);!
- 34. ®
© 2014 MapR Technologies
基本的な処理の流れ
Zookeeper
DFS/HBase
DFS/HBase
DFS/HBase
Drillbit
分散キャッシュ
Drillbit
分散キャッシュ
Drillbit
分散キャッシュ
クエリ
1.
クエリがいずれかの
Drillbit
に到着
(JDBC,
ODBC,
CLI,
protobuf)
2.
Drillbit
はクエリ最適化&ローカリティに基づき実行プランを生成
3.
処理の Fragment
が各ノードで実行される
4.
データが最初のノードに返される
c
c
c
- 35. ®
© 2014 MapR Technologies
クエリプランニングのステージ
パーサ
Logical
プランナ
Physical
プランナ
クエリ
Foreman
プランの
Fragment が
Drill Bit に送
られる
SQL
クエリ
ヒューリスティック
およびコストベース
コストベース
- 36. ®
© 2014 MapR Technologies
クエリの実行
SQL
パーサ
オプティマイザ
スケジューラ
Pig
パーサ
Physical
プラン
Mongo
Cassandra
HiveQL
パーサ
RPC
エンドポイント
分散キャッシュ
ストレージエンジンインターフェース
Operators
オペレータ
Foreman
Logical
プラン
HDFS
HBase
JDBC
エンドポイント
ODBC
エンドポイント
- 37. ®
© 2014 MapR Technologies
クエリエンジンの特徴は…
• カラム型/ベクトル化
• 楽観的/パイプライン化
• ランタイムコンパイル
• 遅延バインディング
• 拡張が容易
- 39. ®
© 2014 MapR Technologies
カラムナエンコーディング
• カラム内の値を隣り合わせで格納
– 高い圧縮効率
– レンジマップ:
最小値と最大値を保管し、存
在しなければスキップ
• クエリで対象になっているカラムのみを取
得
• デコードすることなく集約可能
A
B
C
D
ディスク上
E
- 40. ®
© 2014 MapR Technologies
ランレングスエンコーディング & 合計の計算
• データセットは次のようにエンコード
<値>
<繰り返しの数>:
– 2,
4
(2
が
4回)
– 8,
10
(8
が
10回)
• ゴール:
レコードの合計を求める
• 単純な処理:
– 展開:
2,
2,
2,
2,
8,
8,
8,
8,
8,
8,
8,
8,
8,
8
– 加算:
2
+
2
+
2
+
2
+
8
+
8
+
8
+
8
+
8
+
8
+
8
+
8
+
8
+
8
• 最適化された処理:
2
*
4
+
8
*
10
– より少ないメモリ、より少ない計算
- 41. ®
© 2014 MapR Technologies
ビットパックディクショナリソート
• データセットはディクショナリとビット位置を使ってエンコードされる:
– ディクショナリ:
[Rupert,
Bill,
Larry]
{0,
1,
2}
– 値:
[1,0,1,2,1,2,1,0]
• 単純な処理
– 展開して格納:
Bill,
Rupert,
Bill,
Larry,
Bill,
Larry,
Bill,
Rupert
– ソート:
〜24回の可変長文字列の比較
• 最適化された処理
– ディクショナリのソート:
{Bill:
1,
Larry:
2,
Rupert:
0}
– ビットパック値のソート
– 処理:
最大3回の文字列比較,
〜24回の固定長ディクショナリビットの比較
- 42. ®
© 2014 MapR Technologies
Drill の 4値セマンティクス
• SQL
の
3値セマンティクス
– True
– False
– Unknown
• Drill
は第4の値を追加
– Repeated
- 43. ®
© 2014 MapR Technologies
値のバッチ
• Value
Vector
– 同じスキーマを持つ値のリスト
– それぞれの値に4値セマンティクスがつく
• バッチ (Batch)
単位で送信される
–
Batch
あたり最大
256KB
–
Batch
あたり最大
64K
行
• 1つのリクエストに複数の応答があることを想定して
RPC
が設計されている
- 49. ®
© 2014 MapR Technologies
ベクトル化
• Drill
は複数のレコードを同時に処理する
– ワードサイズの操作
– SIMD
インストラクション
• GCC,
LLVM,
JVM
はみな、さまざまな最適化を自動的に行っている
– アルゴリズムのコーディングによりさらなる最適化も
• Logical
ベクトル化
– ビットマップの利用による非常に高速な
null
チェック
– CPU
パイプラインを高速化するため分岐を回避
- 50. ®
© 2014 MapR Technologies
ランタイムコンパイラはより高速
• JIT
はスマートだ
がランタイムコン
パイルはより高速
• Janino:
Java
ベース
の Java
コンパイラ
From
hsp://bit.ly/16Xk32x
- 51. ®
© 2014 MapR Technologies
Drill コンパイラ
ロードされた
クラス
2つのクラスの
バイトコードを
マージ
Janino
が
ランタイムバイト
コードをコンパイル
CodeModel
がコードを生成
事前コンパイル
されたバイトコード
テンプレート
- 52. ®
© 2014 MapR Technologies
楽観的
0
20
40
60
80
100
120
140
160
スピード
vs.
チェックポイント処理
チェックポイント不要
頻繁なチェックポイント
Apache
Drill
- 53. ®
© 2014 MapR Technologies
楽観的実行
• 復旧のコーディングは容易
– 実行中のインスタンスは失敗したクエリの中間ステートを破棄する
• パイプライン化が可能
– Batch
がある程度大きくなればすぐに結果を送信
– バリアのないクエリの分解が必要
- 54. ®
© 2014 MapR Technologies
パイプライン化
• Record
Batch
はノード間でパイプ
ライン化される
– 通常は
〜256kB
• Drill
の処理単位
– オペレータは
Batch
に対して処理する
• Batch
境界でオペレータの再構
成が発生
DrillBit
DrillBit
DrillBit
- 55. ®
© 2014 MapR Technologies
Record Batch のパイプライン化
SQL
パーサ
オプティマイザ
スケジューラ
Pig
パーサ
Physical
プラン
Mongo
Cassandra
HiveQL
パーサ
RPC
エンドポイント
分散キャッシュ
ストレージエンジンインターフェース
Operators
オペレータ
Foreman
Logical
プラン
HDFS
HBase
JDBC
エンドポイント
ODBC
エンドポイント
- 56. ®
© 2014 MapR Technologies
ディスク
パイプライン化
• ランダムアクセス:
コピーや再構成なしでソート
• シリアライズ/デシリアライズを避ける
• オフヒープ
(メモリが大きい場合のGC問題を回避)
• Full
specificauon
+
オフヒープ
+
Batch
– C/C++
オペレータが有効に (早い!)
• ディスクへの Read/Write
– データがメモリより大きい場合
Drill
Bit
メモリに
収まらない場合
ディスクを利用
- 57. ®
© 2014 MapR Technologies
コストベース最適化
• 拡張が容易なフレームワーク
Opuq
を利用
• プラガブルなルールとコストモデル
• 分散実行プラン生成のルール
• Exchange
オペレータを Physical
プランに挿入
• Opuq
が並列クエリプランの探索を強化
• プラガブルコストモデル
– CPU,
IO,
メモリ,
ネットワークコスト
(データ局所性)
– ストレージエンジンの機能
(HDFS
vs
HIVE
vs
HBase)
クエリ
オプティマイザ
プラガブル
ルール
プラガブル
コストモデル
- 58. ®
© 2014 MapR Technologies
分散実行プランのコスト
• オペレータは distribu5on
プロパティを持つ
• Hash,
Broadcast,
Singleton,
…
• Exchange
オペレータが分散を実施
• Hash:
HashToRandomExchange
• Broadcast:
BroadcastExchange
• Singleton:
UnionExchange,
SingleMergeExchange
• すべてを数値化しコストを計算して最適な
プランを決定
• マージジョイン vs
ハッシュジョイン
• パーティションベースジョイン vs
ブロードキャストベースジョイン
• ストリーミング集約 vs
ハッシュ集約
• 集約を
1
段階で行うか 2
段階で行うか
• 部分的にローカル集約 +
最終的な集約
HashToRandomExchange
ソート
ストリーミングの集約
データ データ データ
- 59. ®
© 2014 MapR Technologies
Apache Drill
自己記述型データもし
くは中央管理型メタデ
ータを利用した分析
SQL/BI
ツールおよび
Apache
Hive
への投資を
再利用
半構造化データ・
ネストデータの分析
…
1
から作り上げたアーキテクチャにより、
低レイテンシクエリのスケーラブルな処理を実現
フレキシブルな
スキーマ管理
ネストデータに対する
効率の良い分析
既存資産との
プラグアンドプレイ
- 60. ®
© 2014 MapR Technologies
Apache Drill ロードマップ
• 低レイテンシ SQL
• スキーマレスデータの処理
• ファイル & HBase/M7サポート
• Hive 連携
• ODBC/JDBC を経由した BI
および SQL ツールサポート
データ検索/アドホッククエリ
1.0
• HBase クエリ性能向上
• ネストデータ機能
• 高度な SQL 機能
高度な分析および
オペレーショナルデータ
1.1
• さらなる低レイテンシクエリ
• 単一行 insert/update/
delete
• ワークロード管理
オペレーショナル SQL
2.0
- 61. ®
© 2014 MapR Technologies
Drill
1.0
Hive
0.13
+
Tez
Impala
1.x
Shark
1.0
レイテンシ
Low
Medium
Low
Medium
ファイル
Yes
(すべての
Hive
ファ
イル形式に加え
JSON,
Text,
…)
Yes
(すべての Hive
ファ
イル形式)
Yes
(Parquet,
Sequence,
…)
Yes
(すべての
Hive
ファイル形式)
HBase/M7
Yes
Yes,
性能の問題
Yes,
一部に問題
Yes,
性能の問題
スキーマ
Hive
or
スキーマレス
Hive
Hive
Hive
SQL
サポート
ANSI
SQL
2003
HiveQL
HiveQL
(サブセット)
HiveQL
クライアントサポー
ト
ODBC/JDBC
ODBC/JDBC
ODBC/JDBC
ODBC/JDBC
Hive
互換性
High
High
Low
High
大きなデータセット
Yes
Yes
Limited
Limited
ネストデータ
Yes
Limited
No
Limited
同時実行
High
Limited
Medium
Limited
インタラクティブ SQL-on-Hadoop の選択肢
- 62. ®
© 2014 MapR Technologies
バイアスのないオープンソース (Linux を例に)
• オープンソースディストリビューションは選択肢の提供が鍵
– Linux
は MySQL,
PostgreSQL,
SQLite
のすべてを含む
– Linux
は Apache
hspd,
nginx,
Lighspd
のすべてを含む
• MapR
はバイアスのない選択肢を提供する唯一の Hadoop
MapR
DistribuYon
for
Hadoop
ディストリビューションA
ディストリビューションB
Spark
Spark
および
Shark
Spark
のみ
なし
インタラク
ティブ SQL
Shark,
Impala,
Drill,
Hive/Tez
単一の選択肢
(Impala)
単一の選択肢
(Hive/Tez)
バージョン
Hive
0.10,
0.11,
0.12
Pig
0.11,
012
HBase
0.94,
0.98
単一のバージョン
単一のバージョン
- 63. ®
© 2014 MapR Technologies
MapR Distribution for Apache Hadoop
MapR Data Platform
(ランダム Read/Write)
データハブ
エンタープライズ
グレード
業務オペレーション
MapR-FS
(POSIX)
MapR-DB
(ハイパフォーマンス NoSQL)
セキュリティ
YARN
Pig
Cascading
Spark
バッチ
Spark
Streaming
Storm*
ストリーミン
グ
HBase
Solr
NoSQL
・検索
Juju
プロビジョニ
ング・コーディ
ネーション
Savannah*
Mahout
MLLib
機械学習
・グラフ
GraphX
MapReduce
v1 & v2
APACHE HADOOP および OSS エコシステム
実行エンジン
データガバナンス・オペレーション
ワークフロー
・データ
ガバナンスTez*
Accumulo*
Hive
Impala
Shark
Drill*
SQL
Sentry* Oozie ZooKeeperSqoop
Knox* WhirrFalcon*Flume
データ
統合・
アクセス
HttpFS
Hue
NFS
HDFS
API
HBase
API
JSON
API
MapRControlSystem
(運用管理・監視)
CLI
GUI
REST
API
* ディストリビューションに統合/認証予定
- 64. ®
© 2014 MapR Technologies
MapR の Drill 開発チーム
• ワールドクラスの SQL
チーム、〜20
名
• 商用データベース開発の経験、のべ
150
年以上
• Oracle,
DB2,
ParAccel,
Teradata,
SQLServer,
Veruca
• Apache
Hive
におけるいくつかの困難な問題を解決
- 65. ®
© 2014 MapR Technologies
アクティブな Drill コミュニティ
• 大きなコミュニティ、急速に拡大中
– コントリビュータ
35〜40名、コミッタ
16名
– Microsoz,
Linked-‐in,
Oracle,
Facebook,
Visa,
Lucidworks,
Concurrent,
多数の大学
• 2014
年の活動
– 20
回を超える Meet-‐Up、さらに多数を予定
– Hackathon
2回、40
を超える参加者
• 皆さんの参加、学習、貢献をお待ちしています
(Have
fun!)
- 66. ®
© 2014 MapR Technologies
Apache Drill リソース
• Drill
を始めるのはかんたん
–
tarball
をダウンロードして、ローカルファイルに対し SQL
クエリを
投げるだけ
• メーリングリスト
– drill-‐user@incubator.apache.org
– drill-‐dev@incubator.apache.org
• ドキュメント:
hsps://cwiki.apache.org/confluence/display/DRILL/Apache+Drill+Wiki
• GitHub
でフォーク:
hsp://github.com/apache/incubator-‐drill/
• JIRA
の作成:
hsps://issues.apache.org/jira/browse/DRILL
- 67. ®
© 2014 MapR Technologies
ありがとうございました!
M.
C.
Srivas
srivas@mapr.com
ちなみに人材募集中です…