前田経一ブログ

個人のブログ

Hadoopモデリング座談会メモ

2 Comments »

昨日、「Hadoop を中心とした分散環境での開発方法論・モデリング・設計手法等についての座談会」(@okachimachiorz @shot6 @asami224 @masayh @kazunori_279 氏など)を見てきました。たいへん刺激的だったので、内容を十分に理解できなく取りこぼした部分も多いですが、取り急ぎメモを残しておきます。


okachimachiorz氏

  • MapReduce(Hadoop)はWeb系ビジネスから出てきた技術だが、物流・会計などの基幹系ビジネスのおよそ9割に、素直に適用できる。適用範囲は意外に広い。産業構造に大きな変化を与える程の、巨大なインパクトを持っている可能性がある。
  • このように大きな可能性を持っているMapReduceだが、課題は多い。例えばクラス図やシーケンス図といった既存のモデリング手法が使えないなど。新たな設計手法が必要とされている。

shot6氏

  • Hadoop適用の前に、設計・開発・テスト・運用・障害対策・品質保証と考えなければならない様々な問題がある。扱うべきテラバイト級のデータはそもそも何処に在るのか?、HDFSにデータをどのように入れ・どのように取り出すか、「JobTrakerが死んだときは再起動する」という運用でホントに良いのか?、拡張運転の話はよくあるが縮退運転は可能か?、バグの見つけ方・テスト手法は?、生のMapReduce(Javaクラス)とPig・Hiveとの使い分け方、などなど。
  • 主催している「Hadoopソースコードリーディング」の人気が凄い。ただのインフレか?「Hadoop大国日本」か?

asami224氏

  • 既存のシステムは、S(アクター)・V(イベント)・O(エンティティ)の連鎖でモデリングすることが可能。これをクラウド上でのモデリングに応用しようと試行錯誤している。
  • プログラマーは図を描くよりも、テキストの方が書きやすい。DSLを使ってモデリングとプログラミングを同時に行なう「モデグラミング」を開発している。
  • 「静的構造モデル」と「状態遷移モデル」はDSLから自動生成。「振る舞いモデル」は工夫が必要。今までどおり「手続き」として書いてしまうとクラウド上ではロックだらけに。メッセージフローモデルを導入した「g3フレームワーク」を開発中。

masayh氏

  • Hadoopは物理モデル。論理モデルの導入が必要。論理モデルとしてDryadとPregelなどの「グラフデータモデル」が有効。
  • DryadはHadoopに比べて論理モデルを持っている。自動生成やデプロイ、さらにデプロイ後の自動最適化など。
  • データの入力と出力の依存関係のマトリクスからグラフを作り、MapとReduceをどの粒度でやるかを考える。
  • DryadLINQが操作モデル。操作モデルを使うには、データの構造定義を先にする必要がある。(データの構造定義=Directed acyclic graph? ※著者注)
  • クラウド上のデータは、(Cassandraで扱うようなデータ構造ではなく)最終的に人間の知識構造に近づくと思われる。(セマンティック・ウェブ?)

座談会

  • 業務フローをDAG(Directed acyclic graph)で書いてみるとかなりできる。DAGは計算/最適化可能。つまり、このDAG自体をMapReduceで計算できる。 (okachimachiorz氏)
  • Dryadではそのような計算をして、グラフを動的に変更している。ただし、ネットワークトポロジを考えないといけない。Dryadがプライベートクラウド向けということは、ネットワーク分断が問題になるから。(masayh氏)
  • ノードの重みとか、流量とか考えれば最適化できるけど、問題が複雑化しすぎる。抽象化レベルをどの程度にするかが問題。 (masayh氏)
  • アカデミックでは1980年代辺りから、データフローの検討は多いので、発掘される技術があるかも。データの依存関係の局所化できる粒度を見つけたり。 (?)
  • 大量のデータがどこにある?という問題提起は、そう思わない。諦めて捨てているデータは多い。期間限定で保存して捨てたり。現状、小売りの販売データは大抵13カ月で捨てられる。これではたいした分析が出来ない。米でウォールマートがあれだけ強いのは、商品ごとに利益率データを分析しているから。日本でこれが出来ている小売はない。 (okachimachiorz氏)
  • アメリカ政府では、気象データなどの公共性の高いデータのマーケットプレイスを構想している。これを基礎データとして、ビジネスを発展させるという展望を持っている(Data.gov?)。いずれ日本でもそうなる時期に備えて、大量データの扱い方のノウハウを準備しておく必要がある。 (masayh氏)

上記すべての記述は、そのままの発言ではなく、私の解釈が入ったものです。 勉強不足でグラフ関係の話が(重要にも関わらず!)スッキリ頭に入ってきませんでした。

主催者によると「今後もやっていきたい」とのことなので、期待できそうです。

参考:Togetter – まとめ「Hadoopを中心とした分散環境での開発方法論・モデリング・設計手法等についての座談会」

2 Responses

okachimachiorzです。まずは参加頂きありがとうございます。+サマリー頂きありがとうございます。補足させて頂ければ幸甚です。

①Walmartの管理ですが、彼らは仕入ベースでの単品・取引先ごとの粗利を把握しています。日本は自社の販売についてのみであり、販売と仕入のマッピングをTXベースでやっているWalmartとはデータ量的に、差がありすぎです。ということです。

②DAGについてですが、jobフローのMRの合計時間をシミュレートする際に、DAGの中で最適化計算ができれば、適切なjobフローを構成できるのではないか?ということです。

  • okachimachiorzさん、補足のコメントありがとうございます。今後も期待しています!

  • コメントを投稿