• 検索結果がありません。

1. 目次 1. はじめに 2. OSS によるビッグデータシステムとそれらを構成する機能 3. 各 OSS の概要調査報告 4. 調査結果のまとめ 考察 Copyright 2014 Japan OSS Promotion Forum 1

N/A
N/A
Protected

Academic year: 2021

シェア "1. 目次 1. はじめに 2. OSS によるビッグデータシステムとそれらを構成する機能 3. 各 OSS の概要調査報告 4. 調査結果のまとめ 考察 Copyright 2014 Japan OSS Promotion Forum 1"

Copied!
47
0
0

読み込み中.... (全文を見る)

全文

(1)

OSSによるビッグデータシステム

~動向調査と選択方針について~

2014年9月16日

日本電気株式会社 中島 武史 株式会社日立製作所 中島 雅彦

(2)

1. 目次

1. はじめに

2. OSSによるビッグデータシステムとそれらを構成する機能

3. 各OSSの概要調査報告

(3)
(4)

1-1. 調査の背景

 ここ数年、ビックデータ・Hadoopといったキーワードで盛り上がり

をみせているが、Hadoopは分散処理基盤であるためシステム として単体で閉じるものではない

 「Hadoopはビッグデータ処理のOSカーネル」(Doug Cutting

氏講演 in Hadoop Conference Japan 2014)

 Hadoopの周辺にさまざまなOSS・商用製品が現れたり、連携

したりしている

ビッグデータシステムとしてHadoop以外に何が必要なのか 全体像を俯瞰し、整理する必要性がある

(5)

1-2. 調査の位置づけと目的  利用用途においてどのようなOSSが必要かを洗い出し、整理 するため  ビッグデータサービス提供者やSEがシステムを構築する際に必 要な機能やそれを実現するためのOSSを選択する判断材料 を提供するため  採用を検討している対象のOSSが「本当に使えるか?」の判 断材料を提供するため ビッグデータシステム企画時のOSS使用の判断材料

(6)

2. OSSによるビッグデータシステムと

(7)

2-1. OSSによるビッグデータシステム  データの発生からそのデータがビジネス価値を生み出すまでの 流れを表示  データがビジネス価値を生み出すまでの流れの中から必要な 機能を洗い出す  各機能を実現するOSSを洗い出し、そのOSSの中から主要な ものを抽出し、ビッグデータ俯瞰図の機能の中にマッピングを行 う  OSS抽出基準としては、ビッグデータ分野での知名度、実績、 注目度、システム構築上の要素となり得るもの、サポートベン ダーの有無などを総合的に判断のうえ抽出 ビッグデータシステムをビッグデータ俯瞰図として整理

(8)

2-2. ビッグデータ関連OSSシステム俯瞰図の全体像 ビッグデータ関連OSSシステム俯瞰図は複数の機能コンポーネントが組み合わさっている リレーショナル データベース NoSQLと呼ばれる領域 知識、ルールなどを導出 データソース 分析結果を可視化 非構造化 データ データ蓄積部分への データのロード ビッグデータ蓄積・貯蔵・その他 データ分析 発生したデータを リアルタイム処理 データ収集・検知 システムログ 音声 画像 センサデータ 売上情報など データ蓄積基盤 データ蓄積ファイルシステム CEP 定型業務RDB BIツール インメモリDG/分散KVS 機械学習 高速化キャッシュ/スケールアウト 分析用データ 解析ツール Webデータ Webデータ収集 クローラ データ蓄積基盤への セキュリティ・認証 セキュリティ/認証 ※ データロード 稼働監視・性能監視・ジョブ管理 などの管理系機能 運用管理・監視 アドホッククエリ 準リアルタイムクエリ データ蓄積基盤から RDBへのデータロード データロード メモリ上でのデータ管理 分析のためのデータ倉庫 並列分散処理基盤 並列分散処理 構造化データ (業務RDB) データ集合に対して統計 ※データ蓄積ファイルシステムに対するセキュリティ/認証であるため ビッグデータ蓄積・貯蔵・その他のカテゴリに分類 ビッグデータからビジネス価値を生み出す流れ 非構造化データの収集 収集 分析/可視化ツール インメモリDB DWH・マートレスDB 統計解析

(9)

2-3.クローラ/データロード/収集 概要  クローラ・・・Web上のデータを取得し、そのデータを保存する ツール  データロード・・・RDBなどからデータロード、ETLを行うツール  収集・・・ログデータなどの非構造化データをデータ保存領域に 格納するツール 主なOSS一覧 ☑今回調査対象 OSS  クローラ  ManifoldCF Nutch • Anemone • wget  データロード  Sqoop Talend • Apache Cocoon • Enhydra Octopus  収集  Fluentd Flume • Scribe

(10)

2-4. CEP 概要  発生したデータをその場でリアルタイムに処理する技術 領域 主なOSS一覧 ☑今回調査対象 OSS Storm Apache S4 Jubatus ※ Esper Drools Fusion ※Jubatusは機械学習フレームワークであるがオンライン処理で実施するためCEPのカテゴリに分類

(11)

2-5.データ蓄積ファイルシステム/並列分散処理 概要  データ蓄積ファイルシステム・・・スケールアウト可能な分散 ファイルシステムにより、ビッグデータの保存領域として対応で きるデータ蓄積基盤  並列分散処理・・・データ蓄積ファイルシステムを利用するなど して並列分散処理を提供する基盤 主なOSS一覧 ☑今回調査対象 OSS  データ蓄積ファイルシステム  Hadoop HDFS Lustre GlusterFS Ceph • XtreemFS  並列分散処理  Hadoop MR Hadoop YARN Spark • Tez • Giraph • OpenMPI • Mesos

(12)

2-6.準リアルタイムクエリ 概要  Hadoopに対して準リアルタイムクエリを提供し、アド ホックなクエリを可能にするソフトウェア 主なOSS一覧 ☑今回調査対象 OSS Drill Hive(Stringer Initiative) Impala(Cloudera)

(13)

2-7.セキュリティ・認証 概要  セキュリティ・・・暗号化やアクセス制御関連のソフトウェア  認証・・・認証の基盤となるディレクトリサービスやそれら の管理ソフトウェア 主なOSS一覧 ☑今回調査対 象OSS  セキュリティ  MIT Kerberos • OpenSSL • OpenVPN • SELinux • Iptables  認証  OpenLDAP • Apache Directory DS • Fedora Directory Server • LISM

(14)

2-8.高速化キャッシュ/スケールアウト分野

概要  一般的に「NoSQL(Not only SQL)」あるいは「NewSQL」と呼 ばれる分野であり、RDBMS以外の幅広いデータストアを指す 特に2000年代以降、多数のOSSが開発/公開され続けている  「キーバリュー型(KVS)」、「カラム指向型」、「ドキュメント指向型」 など、さまざまなタイプが存在し、それぞれ特長や特性が異なる 主なOSS一覧 ☑今回調査対象 OSS Cassandra • CouchDB  HBase • Hibari • Hypertable  Infinispan • Memcached  MongoDB • Neo4j  Redis Riak • ROMA • Tokyo Cabinet/Tyrant • Voldemort

(15)

2-9.機械学習/統計解析 概要  機械学習・・・データ集合から、さまざまなアルゴリズム に基づいて、有用なルール、知識、判断基準などを導 き出すソフトウェア  統計解析・・・ここでは統計解析プログラミング言語を 調査対象とした 主なOSS一覧 ☑今回調査対象 OSS 機械学習  Apache Mahout • KNIME • Orange • Rapid Miner • scikit-learn • Shogun toolbox • Weka 統計解析  R

(16)

2-10.BIツール 概要  データを分析し、レポーティングやダッシュボード等の 形式で可視化するためのソフトウェア 主なOSS一覧 ☑今回調査対象 OSS • Eclipse BIRT  Pentaho Jasper Reports • SpagoBI

(17)

2-11.定型業務RDB/インメモリDB/DWH・マートレスDB 概要 定型業務RDB  従前から存在するリレーショナルデータベースソフトウェア インメモリDB  データ管理を主にメモリ上で行うソフトウェア NoSQLの中にもインメモリ型が存在するが、ここではインメモリ型の リレーショナルデータベースを対象とした DWH・マートレスDB  大量の業務データを統合して格納し、様々な角度から分析するため のデータ倉庫として利用するソフトウェア 主なOSS一覧 ☑今回調査対象OSS 定型業務RDB • Apache Derby • Firebird • MariaDB  MySQL PostgreSQL インメモリDB  VoltDB DWH・マートレスDB • RDBが活用されることが多く、当該分野に特化したOSSは見つから なかった

(18)

2-12.運用管理・監視 概要  システムの稼働監視、性能監視、ジョブ管理などを行 い、業務システムを円滑に運用するためのソフトウェア 主なOSS一覧 ☑今回調査対象 OSS • Ganglia • Groundwork Monitor  Hinemos • MRTG • Munin • Nagios • OpenNMS  Zabbix • Zenoss

(19)

2-13. ビッグデータ関連OSSのシステム俯瞰図 MySQL PostgreSQL Cassandra MongoDB Infinispan Mahout Fluentd Flume データソース Pentaho JasperReports 非構造化 データ Sqoop Talend データ分析 Storm Apache S4 Jubatus Esper Drools Fusion データ収集・検知 システムログ 音声 画像 売上情報など Hadoop HDFS Lustre CEP 収集 定型業務RDB BIツール インメモリDG/分散KVS 機械学習 高速化キャッシュ/スケールアウト 分析用データ 解析ツール 分析/可視化ツール Webデータ ManifoldCF Nutch クローラ MIT Kerberos OpenLDAP セキュリティ/認証 データロード Hinemos Zabbix 運用管理・監視 Drill Hive Impala 準リアルタイムクエリ Sqoop データロード VoltDB インメモリDB Redis Riak HBase OSSで著名なものはない DWH・マートレスDB 対応するOSSをマッピングしたシステム俯瞰図 ※上記システム俯瞰図は商用OSSディストリビューションを除いて記載 構造化データ (業務RDB) Hadoop MR Hadoop YARN Spark 並列分散処理 ビッグデータ蓄積・ 貯蔵・その他 センサデータ GlusterFS Ceph データ蓄積ファイルシステム 統計解析 R言語

(20)
(21)

3-1. 各OSSの調査項目  機能概要  開発主体  マイナーリリース回数  パッチリリース数  ドキュメントの充実度(英語)  ドキュメントの充実度(日本語)  書籍の充実度(英語)  書籍の充実度(日本語)  実績  ユーザコミュニティ  開発者コミュニティ  歴史  商用ディストリビューションの有無  OSSライセンス 各OSSの状況を把握するため以下の項目について調査

(22)

3-2. 各項目の調査内容の説明とその目的  機能概要  開発主体 開発主体となっている企業または団体 →今後の開発の方向性の判断材料 →実績のある企業や団体が開発主体になっているか否かで開発継続性の判断材料  マイナーリリース回数 2013年4月~2014年3月の間のマイナーリリース件数 →開発の活発度や品質の判断材料  パッチリリース数 2013年4月~2014年3月の間のパッチリリース件数 →開発の活発度や品質の判断材料

(23)

3-3. 各項目の調査内容の説明とその目的  ドキュメントの充実度(英語) 存在する英語ドキュメントの種類 →情報量の判断材料  ドキュメントの充実度(日本語) 存在する日本語ドキュメントの種類 →日本語情報量の判断材料  書籍の充実度(英語) Amazonに登録されている英語の関連書籍数(2014/5月時点) →整理された情報量の判断材料  書籍の充実度(日本語) Amazonに登録されている英語の関連書籍数(2014/5月時点) →整理された日本語情報量の判断材料

(24)

3-4. 各項目の調査内容の説明とその目的

 実績

Linux Foundation SI Forum「2013年度オープン ソース ソフトウェア 活用動 向調査」レポートにおける導入実績 →品質や信頼性の判断材料  ユーザコミュニティ 2013年4月~3月にユーザコミュニティに投稿されたメール件数 →ユーザコミュニティの活発度の判断材料  開発者コミュニティ 2013年4月~3月に開発者コミュニティに投稿されたメール件数 →開発者コミュニティの活発度の判断材料  歴史 開発歴史や背景

(25)

3-5. 各項目の調査内容の説明とその目的

 商用ディストリビューションの有無

→品質や信頼性の判断材料

 OSSライセンス

(26)

3-7. 分野別考察 データ収集・検知 [クローラ]  大規模システムにおいて分散処理でクロールを行うのであれば Nutchの利用を検討  GUIツールでクローラの作成を行いたいのであれば、 ManifoldCFの利用を検討  クロール規模があまり大きくなく、プログラミングスキルがあれば 自作クローラも有効な手段

(27)

3-7. 分野別考察 データ収集・検知 [データロード]

 Talend、Sqoopともにデータロードにおいて有効なツールであ

り、用途に応じて使用を判断すべき

 Talend、Sqoopともに商用サポートを行う企業が存在する

(28)

3-8. 分野別考察 データ収集・検知 [CEP]  Drools Fusion、Esperに関しては開発歴史があり、商用ディス トリビューションもある →品質が安定していることが考えられる →問題発生時の問い合わせ先がある  その他に関しては商用ディストリビューションがなく、0系のバージョ ンである →商用導入を行う際には事前検証や使用範囲の限定が必要と考えられる

(29)

3-9. 分野別考察 データ収集・検知 [収集]  Fluentdはプラグインが活発に公開・開発されている →データ蓄積先とのコネクタが豊富  Fluentdは開発元から日本語ドキュメントが公開されている →日本語ドキュメントが用意されているため取り掛かりやすいメリットがある  FlumeはHadoopの商用ディストリビューションに含まれている ためデータ蓄積部分にHadoopを使用する場合は使用検討

(30)

3-10. 分野別考察 ビッグデータ蓄積・貯蔵・その他 [並列分散処理、データ蓄積ファイルシステム]  並列分散処理  分散処理基盤はYARNがメインになりつつある  SparkなどYARN上で新たなフレームワークが台頭しつつある  Sparkについては1.0がリリースされたが「商用で利用できる品質を目 指す」という位置づけ →商用導入できるレベルに安定化するまで動向観察する必要あり  データ蓄積ファイルシステム  どの分散ファイルシステムも開発歴史があり、商用サポートも存在する →適応領域や各OSSの特性を比較し判断する  Cephに関しては最近急速に注目されてきている

(31)

3-11. 分野別考察 ビッグデータ蓄積・貯蔵・その他 [準リアルタイムクエリ]  Hive(Stinger Initiative)、Impala、Drillで開発競争を 行っている分野 →発展中の技術領域であり動向観察が必要  商用導入においては適応領域の検討、十分な事前検証が 必要

(32)

3-12. 分野別考察 ビッグデータ蓄積・貯蔵・その他 [セキュリティ/認証]  開発歴史が古く、枯れた領域であると考えられる →導入によるリスクは少ないと考えられる  マイナーリリース数やパッチリリース数から判断すると開発は安 定して継続中  Kerberosは数多くの製品からライブラリとして利用実績がある

(33)

3-13. 分野別考察 高速化キャッシュ/スケールアウト [インメモリDG/分散KVS]  いわゆる”NoSQL”,”NewSQL”分野は「群雄割拠」  特性の異なるさまざまなOSSが活発に開発されている  CAP定理 -Consistency -Availability -Partition Tolerance  RDBMSの代替にはならない  目的に応じた選択が重要

(34)

3-14. 分野別考察 [機械学習/統計解析] データ分析

 Mahout, Rがほぼデファクトスタンダード化

 関連書籍は多数存在し、「使い方」の情報源は豊富

(35)

3-15. 分野別考察 [BIツール] データ分析  この分野内でのOSSとしては、JasperReports, Pentahoと もに知名度が高い  実質的に商用ディストリビューションベンダーが開発しているため、 自社システムに必要なサービスレベルによっては、商用版利用 も選択肢となるだろう

(36)

3-15. 分野別考察 [定型業務RDB/インメモリDB/DWH] 分析用データストア  RDBMSについては、歴史があり、開発コミュニティ状況も活発 導入実績も豊富で、サービスベンダーも多数存在するため、利 用に特に問題はない  ただし、ビッグデータを取り扱う場合には、運用管理や性能の 事前検証を行うことを推奨  インメモリ型のOSS DBは、比較的種類が少ない  一方、商用製品には著名インメモリDBが存在  用途、コスト、信頼性、サポート力などを総合的に勘案して、 OSSの採否を検討すべき  本格的なDWHについては、商用製品が先行している

(37)

3-16. 分野別考察 [運用管理・監視] システム全体  検証フェーズを終え、ビッグデータを業務システムで本格利用す る段階では、運用管理が必要になる  運用監視ソフトウェアについては、監視方式やエージェントの有 無など、様々なタイプのOSSが存在  既存システムとの「統合システム運用管理」の検討

(38)

3-17. ビッグデータ関連OSSシステム俯瞰図 MySQL PostgreSQL (PowerGres, EnterpriseDB) Cassandra (DataStax Enterprise) MongoDB (MongoDB Enterprise) Infinispan

(JBoss Data Grid)

Mahout(CDH, HDP) Fluentd Flume(CDH,HDP) データソース Pentaho JasperReports 非構造化 データ Sqoop(CDH,HDP) Talend(Talend Open Studio for Big Data)

ビッグデータ蓄積・貯蔵・その他 データ分析 Storm Apache S4 Jubatus Esper Drools Fusion(JBoss BRMS) データ収集・検知 構造化データ (業務RDB) システムログ 音声 画像 センサデータ 売上情報など データ蓄積ファイルシステム CEP 収集 並列分散処理 定型業務RDB BIツール インメモリDG/分散KVS 機械学習 R言語 統計解析 高速化キャッシュ/スケールアウト 分析用データ 解析ツール 分析/可視化ツール Webデータ ManifoldCF Nutch クローラ MIT Kerberos OpenLDAP セキュリティ/認証 データロード Hinemos Zabbix(MIRACLE ZBX) 運用管理・監視 Drill Hive(CDH、HDP) Impala(CDH) 準リアルタイムクエリ Sqoop(CDH、HDP) データロード VoltDB インメモリDB Redis Riak(Riak Enterprise) HBase(CDH, HDP) OSSで著名なものはない DWH・マートレスDB 商用ディストリビューションを追記したシステム俯瞰図 Hadoop HDFS(CDH,HDP) Lustre(Intel Enterprise Edition for Lustre Software)

GlusterFS(Red Hat Storage Server) Ceph(INKTANK CEPH ENTERPRISE)

Hadoop MR(CDH,HDP) Hadoop YARN(CDH,HDP) Spark(CDH)  企業にて利用を検討する場合に重要な、商用ディストリビューション/サポートサービスの有無もマッピングした。  また、ここには挙げないが各領域に商用製品も存在する。全てOSSでシステム構築するのが目的ではなく、また現 実的ではないだろう。OSS/商用製品含め、全体を視野に入れながら自社業務に最適な選択肢を検討することを推

(39)
(40)

4-1.コミュニティ活発度と導入実績マップ 実績 多 少 ユーザコミュニティ活発度 (投稿件数/年) 活発 不活発 500件 1000件 100件 ManifoldCF Nutch Sqoop Talend Fluentd Flume Storm S4 Jubatus Esper Drools 導入実績多数 ランク外 掲載なし 導入実績あり 検証多数 検証実績あり Hadoop Spark Lustre GlusterFS Ceph Drill Hive Impala MIT Kerberos OpenLDAP Cassandra MongoDB Infinispan Redis HBase Mahout R Pentaho Jasper Reports MySQL PostgreSQL VoltDB Hinemos Zabbix ビックデータ蓄積・貯蔵・その他 データ収集・検知 高速化キャッシュ/分散KVS データ分析

(41)

進化 4-1.コミュニティ活発度と導入実績マップ 実績 多 少 ユーザコミュニティ活発度 (投稿件数/年) 活発 不活発 500件 1000件 100件 ManifoldCF Nutch Sqoop Talend Fluentd Flume Storm S4 Jubatus Esper Drools 導入実績多数 ランク外 掲載なし 導入実績あり 検証多数 検証実績あり Hadoop Spark Lustre GlusterFS Ceph Drill Hive Impala MIT Kerberos OpenLDAP Cassandra MongoDB Infinispan Redis HBase Mahout R Pentaho Jasper Reports MySQL PostgreSQL VoltDB Hinemos Zabbix ビックデータ蓄積・貯蔵・その他 データ収集・検知 高速化キャッシュ/分散KVS データ分析 普及

(42)

4-2.考察 • かつてGoogle発のMapReduce論文が、Hadoopとして実装され広まったように、 Web企業発の新技術がOSSとして出現する領域。(Drill, Giraphなど) • Apache Incubatorプロジェクトの動きをウォッチしておくのも一つの手段。 新技術ウォッチ領域 • 新技術として生まれたOSSが進化し、現在はビッグデータ関連OSSの多くがこの 領域に位置する。 • 実績は少ないが、その分、他社に先んじて活用すれば、自社ビジネスの差別化/ 競争力強化に繋がる可能性がある。 • 開発は非常に活発で、新機能追加やアップデートも早い。しかし一方で、その進 化のメリットを享受するには、動きにキャッチアップしていく体制や技術力も必要と なる。 • 商用ディストリビューションベンダーが存在するならば利用も選択肢のひとつ。 先行検討/アーリーアダプト領域 • ほぼ安定して利用することが可能。 • ほとんどのOSSについて、商用ディストリビューション/商用サポートベンダーが存 在するため、コストや信頼性を勘案の上活用する。 エンタープライズ適用領域

(43)

4-3.マイナーリリース回数マップと見解 0~3回 4~6回 7~12回 13回以上 ManifoldCF Nutch Sqoop Talend Fluentd Flume Storm Drools Fusion Spark Lustre Ceph Drill Hive Impala Kerberos Cassandra Infinispan Riak Redis

Mahout Pentaho VoltDB Hinemos Hadoop OpenLDAP MongoDB HBase R Jasper Reports MySQL PostgreSQL Zabbix Jubatus Esper GlusterFS  エンハンスが少ないため安定して利 用しやすい  開発が活発でないケース(生まれたば かりのOSS/枯れたOSS)  修正版発行までの期間が空く場合が ある  ベンダー開発主導のため意図的に安 定版のみリリースしているケース  エンハンスが活発であり、進化ス ピードが速い  開発速度にキャッチアップしていく には、活用の仕方や体制の準備が 必要  不具合対策が速い  品質の善し悪しについて見極めが 重要 少 マイナーリリース回数 多

(44)

4-4. まとめ 

OSS自体の進化と、それらが連携した「ビッグデー

タシステム」の進化

導入実績はまだ少ない状況

コミュニティは非常に活発、進化も早い

日本発OSSは、世界的に見ると認知度, コミュニ

ティ活性度ともに少ないことが課題

「ビッグデータ領域」はOSSが切り拓く

(45)

4-5. ユーザへの提言  ビッグデータ関連OSSの進化の速さは、ユーザ企業にとって メリットとデメリットをもたらす  世界中の開発者の叡智を注ぎ込んだOSSの進化を、自社ITシ ステムの適材適所に活用することで、ビッグデータから新た なビジネス価値を生み出し、多くのメリットを得られるだろ う。  最先端に追従していくための「技術力」「スピード」が必要 -コミュニティ情報、Q&A対応の活用、 -コミュニティへの参画 -事例収集 -ソース解析力

(46)

4-6. ベンダーへの提言  OSS単体では、ビックデータシステムは構築できない。  OSS全体像とそれぞれの特長をつかむ「目利き力」  お客様に対する適材適所の「提案力」  お客様企業に対して適材適所の提案や構築・サポートサー ビスや付加価値を提供できる「技術力」

(47)

参照

関連したドキュメント

「地方債に関する調査研究委員会」報告書の概要(昭和54年度~平成20年度) NO.1 調査研究項目委員長名要

自由報告(4) 発達障害児の母親の生活困難に関する考察 ―1 年間の調査に基づいて―

調査対象について図−5に示す考え方に基づき選定した結果、 実用炉則に定める記 録 に係る記録項目の数は延べ約 620 項目、 実用炉則に定める定期報告書

(ア) 上記(50)(ア)の意見に対し、 UNID からの意見の表明において、 Super Fine Powder は、. 一般の

あり、各産地ごとの比重、屈折率等の物理的性質をは じめ、色々の特徴を調査して、それにあてはまらない ものを、Chatham

★分割によりその調査手法や評価が全体を対象とした 場合と変わることがないように調査計画を立案する必要 がある。..

H23.12.2 プレス「福島原子力事故調査報告書(中間報告書)」にて衝 撃音は 4 号機の爆発によるものと判断している。2 号機の S/C

参考第 1 表 中空断面構造物の整理結果(7 号炉 ※1 ) 構造物名称 構造概要 基礎形式 断面寸法