JAWS-UG Summit2012にいってきた (2012-03-02)第一日目 その3
ビックデータとクラウドが変えるシステムアーキテクチャ
大谷氏(アマゾン)
神林氏(ノーチラステクノロージー)
佐藤一郎氏(国立情報学研究所)@Ichiro_satoh
ビックデータとクラウドが変えるシステムアーキテクチャ(佐藤氏)
- 分散システムOSやミドルウェアが専門
- ビックデータが流行っていますが
- データ量や多様性は本質的でない
- ビックデータを持っている企業は少ない
- コース料理:与えられた少量の料理(データ)を最大限に楽しむ
- ビュッフェ形式:多様な料理(データ)から選ぶ
- 仮説検証
- 分析してみないと、予想した特性があるかはわからない
- 海外では、ビッグデータ=MoreData, BetterData
- アプリケーション主導からデータ主導へ
- 設計だけでなく、運用も含めてデータ主導(Data-driven)
- データ主導型システムアーキテクチャとは
- 既存ITシステムは特定アプリケーションを前提に設計・運用
- システム構成や規模は予測可能
- ビッグデータではデータと関心事に応じて分析主導やビジネスを用意
- 既存ITシステムは特定アプリケーションを前提に設計・運用
- 中規模以上のITシステムは分散システムとして構築するしかない
- コアの性能向上は頭打ち
- コア数やサーバ数を増やす
- 分散システムは複雑&低信頼性
- 物理的制約(通信遅延)により、システムの全体情報がえられない
- 故障を想定したシステム構成・運用
- 壊れたコンピュータといずれ壊れるコンピュータしかない
- 物理的制約(通信遅延)により、システムの全体情報がえられない
- 1980年代から分散システムの研究が行われてきたが
- スケラビリティよりも伸縮性
- 必要になったら拡張、不要になったら縮小
- 人に縛られない
- 開発者や管理者に仕事をつくるためのITシステムはいらない
- ノードの数を増やすのは難しくない、どう減らすのが重要
ビッグデータの功罪(神林氏)
AsakusaFrameworkの中のひと
- 技術的な側面
- 問題点
- 品質の問題
- 割りとナイーブな実装が許容されている
- 未だにまともなテスト環境がない
- ビッグトップとか、かなり最低の出来(Apache Bigtop http://incubator.apache.org/bigtop/)
- 過剰適用
- 運用の問題が軽視
- 運用軽視がひどい
- 軽視というのは「簡単にできる」と思っている人が多い
- 障害対策のノウハウが普及していない
- いい加減自分でもつデメリットとか考えた方がいい
- スモールデータの軽視
- データサイズが小さいと無視
- データが小さいのでHadoopは使わないという話もある
- 全体の8割は小さい処理
- 全体の2割で8割の時間のロングバッチ
- 技術的な不勉強を助長
- ParellelとConcurrentの区別がついていない
- インフラにより過ぎている
- サーバ・ネットワーク・ストレージだけ?
- 設計技法とか絶望的
- キーの設計(手法)とか知られていない
ディスカッション
そもそもビッグデータとは何だったのか?
大谷「アプリの設計ができるひといない。米国はデータアナリストが存在する」
佐藤「データサイエンティストはやめよう。データエンジニアにしよう。サイエンスは成功のみを扱う、エンジニアは成功も失敗も扱う。失敗が重要。ビッグデータの取り上げ方は、日本と米国とは違う。日本では現場でうすうすきづいていることを取り上げること。現場がデータを読んで商品をかえることができないと意味ない」
神林「データマイニングはいまくいかない。組合せが爆発して計算量が多すぎて追いつかない。組合せを実装するだけで意味ある。失敗事例を掘り起こしていくことが重要。失敗したことの再チャレンジのチャンス」
大谷「トライアンドエラーを許容して最適解を求めるお客さんが多い」
人に縛られないとは?
佐藤「クラウドを使うかどうかは担当者。自分のスキルが活かせないと拒否するというひとがいる。メインフレームは勘定系や特殊なトランザクションではいまでも有効。業務系でもスキルによってシステムが縛られるべきでない」
神林「SIerとSIは区別する必要。SIerは仕事をつくることで人月稼働率、価値をどう届けるかは考えてない。これは破綻する。人が減ってる。35歳限界説は使い倒せる年齢。業界の人が半分になって、これからさらに半分になる。」
大谷「サービスをやっているひとは、クラウドを使ってトライアンドエラーでやっている。受託ではスキルが追いついていない。分散処理では研究が進んでいるが、業務まで落ちていない。」
佐藤「分散システムが使われていないのは反省しなければいけない。業務システムで使われているアルゴリズムは1990年以前のもの。分散システムのアルゴリズムを検証するための研究になってしまっている。分散システムの物理的な制約を知らないとよいシステムを作れない。AWSやAzureを使っているだけでは分散システムを使っていることにならない。分散システムの勉強をしてほしい。コンピュータを複数台用意して分散システムを自前で作るのはおしゃれじゃない。システム的な制約を学んで、それをカバーするものは何か知ってほしい」
神林「データ分割は知られている。タスクの分割は研究されているが普及していない。タスクをどう分割してパラレルで走らせるかは、研究されているが知られていないし実装されていない」
大谷「ビッグデータの未来。分散システムで分析することはどうなる?
大谷「ビッグデータの量は日本では多くない。データの桁が違うが、データの粒度は細かい。ニーズは多い
佐藤「ひとつの企業のデータは大したこと無い。データの共有がはじまれば本来のビッグデータの始まり。ビックデータの先、本来はわれわれの世界はコンピュータの世界に置き換えて何が起きるかを知ること、物理やセンサーもそう。現実世界のモデリングを行うこと。そいった世界が10年後かどうかわからないがやってくる。シミュレーションの精度はあがっている。データのないところはシミュレーションで補う。シミュレーションと現実世界がマージされることが起きてくる、20,30年先
神林「人が知りたいことをモデル化してやることにいく。特にセンサーデータをつかうもの
大谷「分散処理やビッグデータはインフラだけでなくて、どう作るかは開発者に頑張るところ。CanDOの姿勢でやってみる、とりこんでもらいたい」