pandazx's blog

データ分析など雑多な技術ブログ

Hadoopソースコードリーディング第12回に行ってきた

最近、ipadを買ったので、

ソフトウェアキーボードでがんばってメモしてみました。

とても慣れる気がしません。

 

8/28 19:00-21:00

新宿マインズタワー20階

EMCジャパン セミナールーム

 

■Using Standard File-Based Applications and SQL-Based Tools with Hadoop

MapR technology Tomer Shiran

 

MapRはEMRで使える

 

Google compute engine でhadoopを提供するのにmaprが選ばれた

 

maprはdremelにインスパイアされて、drillの開発をスタートした

 

hadoopはrandom writeができないのでNFSをサポートすることができない

 

ーーーーNFSの話ーーーーーー

NFSプロトコルの説明

 

one NFS gateway構成

file server1 fs2 fs3

|                      |    |

Gateway

|

Client

 

Multiple NFS gateway構成

  • fsごとにgatewayを置くこともできる

 

dnsを使ったロードバランシングができる

 

VIPを使ってHA構成も組める

 

カスタマー事例の紹介

 

デモ

  • NFSを使ってマウントしたファイルサーバに対して、tarを置き、解凍、コマンドラインからmapreduceを実行結果はNFSから簡単に参照できる

 

ーーーーーODBCの話ーーーーー

hive ODBC 3.52 driverを提供している

これはsimba technologyと組んで開発している

 

ODBCだから以下のツールと連携できる

open source query builder - kaimon

Excel(ExcelからSQLを実行して結果を表示するとか)

 

ーーーQ&Aーーー

質問1:dremelの論文に詳細が書かれていないからdrillの開発が大変と聞いたがどうなの?

回答:googleに詳しい人もいる。

詳しく知りたい人はメーリングリストに参加して。

そこでディスカッションしてる

 

質問2:データローカリティが重要というが

Microsoftがterasort benchmarkをネットワーク越しの構成で記録更新したがmaprは抜き返せるか?

回答:その仕組みを知らないのでよくわからないというようなことを言っていた

 

質問3:maprはクローズだけどdrillは何でオープンソースにするの?

回答:maprを開発する時、hadoop APIは確立されていたが、

drill APIは新しいものなので、みんなのコンセンサスが取れていない

だからオープンなコミュニティでディスカッションして

作っていく必要があるというようなことを言っていた

 

質問4:maprのODBCはどのぐらい最適化してくれるのか

また、それはhadoopで実装可能か?

回答:回答よく理解できず。シンタックスがどうのこうの

 

■Sqoopコネクタを書いてみた

NTTデータ 岩崎正剛

スライド


 

RDBとhadoopのimport, export tool

データの移動は基本、mapreduceでやっている

  

JDBCを使っているので、JDBCで出来ないことは出来ない

スキーマ毎にソース生成、コンパイル、jar生成をやっている

RDBMS毎の方言を吸収している

 

ーーーpg bulkloadコネクタの話ーーー

mapが一時テーブルを作ってpg bulkloadを実行

reduceで一時テーブルから目的のテーブルにデータを移動

 

map, reduceが途中で失敗して例外処理できない場合は

一時テーブルが残ったり、中途半端にデータが入ることがある

 

メリット

  • pg bulkloadを使うので、エラーレコードをスキップできる
  • ただ、速度だけなら、今はCOPYでも十分速いという話もあるらしい

 

デメリット

  • テーブル作成するのでスーパーユーザ権限が必要
  • 全nodeにpg bulkloadのインストールが必要

 

パッチの投稿の仕方

(この資料はstep by stepで説明があるのでわかりやすい)

 

sqoop2 について

  • JDBCにひきづられている部分の改良
  • sqoop自体をサーバ化する
  • web UIの実装
  • 現在、開発中

 

togetterも参考になります。

nagixさんが詳細につぶやいてます。

http://togetter.com/li/363403