Comments
Description
Transcript
ペタ・バイト、ペタ・フロップス の時代到来 Big data 総括 米持 幸寿
Big data 総括 ペタ・バイト、ペタ・フロップス の時代到来 日本アイ・ビー・エム株式会社 クラウド・エバンジェリスト 米持 幸寿 SWテクノロジー・エバンジェリスト:米持 幸寿 • メインフレーム系ソフトウェア障害対応技術員や ワークフローソリューション開発など経て、 2000年よりIBMソフトウェア・エバンジェリスト Java、XML、J2EE、Webサービス、Web2.0・・・ • 著書12冊:最新刊 「クラウドを実現する技術」(インプレス、2009年) • 東京工科大学クラウド設計/開発の中心的存在 現在も、クラウド構築プロジェクトに参加 • 「ソーシャル・メディア分析クラウド」 ソリューション設計と技術グループのリード © IBM Corporation 2011. All Rights Reserved. 2 本日の講演アジェンダ DWHアプライアンス Netezzaアプライアンス Bigdata InfoSphere Streams InfoSphere BigInsights 自然言語処理 IBM Content Analytics © IBM Corporation 2011. All Rights Reserved. 3 なぜ「ビッグデータ」が騒がれている? • ビッグデータはコンピューターの永遠の課題 – 別に、今に始まったことじゃない。 • センサーの増大 • インターネットの一般化 • ソーシャル・ネットワーク © IBM Corporation 2011. All Rights Reserved. 4 Big dataは、すでに身近な存在です スマート・メーター: 月次のメータ検針を15分毎に読み取ることで3,500億 トランザクション 細かな利用パターンを分析。 (年次) 増加するデータ量 3000倍 〜 トランザクション ボリュームの変化 36億5千万 1億2,000万 ⽉次のメーターの 読み込み数 © IBM Corporation 2011. All Rights Reserved. ⽇次のメーターの 読み込み数 15分毎のメーターの 読み込み数 5 702,468,660 ★US: 150,566,860 facebook: 30000サーバ 毎日、25ペタバイトのログ ユーザが共有するコンテンツ、毎週60億 写真のアップロード、毎月30億枚 写真の参照、毎秒100万枚 facebookサーバ、毎秒5000万件の処理 © IBM Corporation 2011. All Rights Reserved. ★Japan: 3,704,180 ★United Kingdom 29,780,480 ★Turkey ★India 29,174,800 28,305,060 ★Indonesia: 38,377,200 6 3つのV - Big dataのデータの特徴 データのタイプ Variety 構造化・⾮構造化、ソースの種別 を問わず、RAWデータとして処 理ができる。 データの速度 Velocity データ収集と解析が秒間数百万、 センシングのようなストリーミン グ処理を超低レイテンシーで処理 ができる。 データのサイズ/計算のサイズ Volume © IBM Corporation 2011. All Rights Reserved. ディスクに保存された超⼤量 データ、もしくは、ストリーミ ングデータを取り込み、⼤量な データ処理、計算ができる。 7 分析力が競争力を高めます より多くの企業が、分析がより 競争⼒を⾼めると考えています。 +57% 58% 37% 2010 2011 分析がより競争⼒を⾼めると答えた 企業様のパーセンテージ (2010年度の37%を1とした場合。ワールドワ イドでの調査結果) © IBM Corporation 2011. All Rights Reserved. そして、その結果として... 220 % 分析⼒を武器とする企業は、 そうでない企業よりも優位的な 実績を実現しています。 出典:IBM IBV/MIT Sloan Management Review Study 2011. Copyright Massachusetts Institute of Technology 2011 8 情報基盤は連携させてこそ、威力を発揮します BigInsights ⾮構造化 Unstructured (Data At Rest) それぞれが、独立(サイロ)して存 在するのではなく、 連携できることが重要です。 Streams Netezza/DWH/DB 【相互の連動性】 9相互アクセス・データの移動 9異なるデータの組み合わせからの 新たな知⾒ 9分析モデル開発の統⼀性 9分析モデルの相互活⽤ 9分析の組み合わせ易さ 構造化 Structured (Ready-To-Use) 永続化 (Ready-To-Use) © IBM Corporation 2011. All Rights Reserved. ストリーム (Any Data In Motion) 9 Netezzaアプライアンス © IBM Corporation 2011. All Rights Reserved. 10 IBM Netezzaアプライアンスとは? 様々なソフトウエアや プログラミング サーバー ストレージ ・10~100倍のパフォーマンス ・低コストとメインテナンス性 ・簡易性 © IBM Corporation 2011. All Rights IBM Reserved. Confidential すべて込み (一元管理) 11 Netezzaアプライアンスのアーキテクチャー 非対称型超並列処理(AMPP™ ) • • • • 全てのコンピュータが同時に超並列処理を実行し、桁違いのパフォーマンスをスケーラブルに実現 Shared Nothing(MPP)の超並列処理エンジンを単一のホストで制御することで 圧倒的な性能と簡易性を両立 CPU Core:Memory:FGPA engine:DISK = 1:1:1:1 Shared NothingをShared Everythingするという考え方 SMP層 CPU Shared Everything メモリ CPU CPU CPU CPU CPU CPU CPU CPU CPU CPU メモリ メモリ メモリ メモリ メモリ メモリ メモリ メモリ メモリ メモリ FPGA FPGA FPGA FPGA FPGA FPGA FPGA FPGA FPGA FPGA MPP層 Shared Nothing データ © IBM Corporation 2011. All Rights IBM Reserved. Confidential 12 Netezzaアプライアンスのアーキテクチャー • MPP層で超並列同時実行により複雑なDB分析処理を超高速処理 • Netezzaは各コンピュータにFPGAが採用されている為、CPUに負荷をかけず、デー タの流れを止めずに超並列のストリーミングDB処理を高速に実行 実行命令(SQL、プログラム等) SMP層 DB SMPホスト エンジン (コントローラ) Shared Everything DB エンジン DB エンジン DB エンジン DB エンジン DB エンジン DB エンジン DB エンジン DB エンジン DB エンジン DB エンジン FPGA FPGA FPGA FPGA FPGA FPGA FPGA FPGA FPGA FPGA MPP層 Shared Nothing データ © IBM Corporation 2011. All Rights IBM Reserved. Confidential 13 Netezzaの考え方 処理をデータソースの一番近いところで実行 S-Bladeを開発し、マルチコアFPGA、マルチコアCPU、キャッシュを利用しストリーミング 処理 バランスの取れた超並列アーキテクチャ AMPPを利用しSMPとMPPの融合の進化 シンプルなアプライアンス構成と簡易性 1つのアプライアンスとして、複雑の管理をなくすこと 高度な分析を可能とするプラットフォーム SQL、C++だけでなく、R、その他の言語を実行できるプラットフォーム 革新的な技術とパフォーマンスの向上 アンチインデックスやZoneMapといった革新的な技術を採用しパフォーマンス向上 柔軟な構成と拡張性 汎用ブレードサーバーと融合させた製品である為、柔軟性をもち、かつリニアなパフォー マンス向上を実現 © IBM Corporation 2011. All Rights IBM Reserved. Confidential 14 InfoSphere Streamsの概要 © IBM Corporation 2011. All Rights Reserved. 15 ストリーム・コンピューティングとは? ストリーム・コンピューティングとは、従来の構造化され蓄積された過去のデータに対する分析では なく、リアルタイムで流れてくる様々なデータを処理・分析する手法。 ただし、既存のデータベース技術などをリプレイスするという考え方ではありません。 今までの方式【過去の事実の発見】 ■目的 静的な過去のデータを分析し、過去の事実を発見する ■インプットデータ 静的で、構造化されたデータ ■コンピューティング処理 静的データに対しクエリーをかける (バッチ方式、プル 型モデル) ストリーム・コンピューティング【今の出来事】 ■目的 動的なデータをリアルタイムに分析し、直近の事実を発見す る ■インプット・データ 動的で、構造化データや非構造化データのストリーム ■コンピューティング処理 ストリーミング・データに対し、リアルタイムにデータ分析 データの保管はしない! 保管 リアルタイム・データ リアルタイム・データ 過去の事実の発見 ・・・・・・ © IBM Corporation 2011. All Rights Reserved. 直近の事実を掴む (特定の条件等) テーブル 静的データ処理 データ処理 ・・・・・・ クエリー ストリーミング・データ処理 16 ストリーム処理とは? ストリーム処理とは、データ処理のモデルのこと。 データの記録を目的とせず、流れてくるデータを加工・処理してデータ出力をする処理。 「データを受信してデータを出力する」一連の処理を最も簡単にモデル化したもの。 バッチ処理 データ 処理結果 OLTP処理 処理要求 処理結果 ストリーム処理 データ 処理 定期的 一括処理 記録データ 秒間 数10,000件 © IBM Corporation 2011. All Rights Reserved. 更新トランザクション 記録データ 秒間 100~10,000件 中間 データ データ 秒間 10,000~数1,000,000件 17 一般的な情報処理の時間軸 アクションまでに所要する時間 分析モデル & 情報 オペレーショナル レポート ビジネスプロセッシング & イベント管理 ダッシュボード 計画 スコアリング・カード レポート アドホック・クエリ WAREHOUSE 情報ソース(取込み) © IBM Corporation 2011. All Rights Reserved. データマート データ・インテグレーション オペレーショナル・データ・ストア(ODS) 18 ストリーミング・コンピューティングの時間軸 分析モデル & リアルタイムな情報 - アクションまでの実行時間短縮 - より速く予測する アクションまでの時間 分析モデル & 情報 オペレーショナル レポート ビジネスプロセッ シング & イベン ト管理 ダッシュボード 計画 スコアリング レポート 動的なクエリ 様々な コンテンツ WAREHOUSE 情報ソース(取込み) © IBM Corporation 2011. All Rights Reserved. データマート データ・インテグレーション オペレーショナル・データ・ストア(ODS) 19 IBM InfoSphere Streams v2.0 開発環境& 管理コンソール ランタイム 環境 ツールキット& 連携アダプター Front Front Office Office SQL Server • StreamsStudio (Eclipse統合開発環境) • StreamsLiveGraph (JOBフロー可視化) • StreamsDebugger © IBM Corporation 2011. All Rights Reserved. • OS: Linux (RHEL v5.3 -) • Intel x86マルチコア • TCP /UDP /LLM 通信 プロトコールのサポート • InfiniBandのサポート • 最大125サーバの クラスタ環境 ORACLE My SQL • 標準ツール・キット • 拡張ツールキット •インターネット •データベース •フィナンシャル •データ・マイニング •解析ツール・キット (PMML対応) • ユーザ定義ツールキット 20 Streams開発(Eclipse)画面/WEB管理コンソール © IBM Corporation 2011. All Rights Reserved. 21 What are key differentiating technical capabilities of Streams? Volume, Variety, Velocity, Analytics, and Agility ストリーミング・アプリケーションに 開発された言語: SPL 一連のオペレーター・グループを1 つのプロセスにコンパイル可能: 再利用可能な事前定義のオペレータ群 ラピッド・アプリケーション開発(作って試す) 継続的な「パイプライン」処理 CPUコアの最適使用 分散実行 高速データ通信 自動最適化(統計に基ずく) 様々なデータを処理。 より速く、他社より速く: 様々なデータ型の処理が可能 既存の手法では、処理コストが 大きすぎるデータの処理。 容易な拡張性: ビルドイン・アダプター群 C++やJavaで実装することが できるユーザ定義関数 容易な管理: 自動的なジョブ配置 アプリケーションの拡張 マルチ・ユーザー / マルチ・アプリケーション © IBM Corporation 2011. All Rights Reserved. 22 ダイナミックな解析: 柔軟かつ非常に 高いトランスポート性能 (TCP/LLM): ランタイム中でのトポロジー変更 新しいサブスクリプションの作成 新しいポートの作成 とても低い遅延時間 高いデータレート 22 Streamsは多くの分析能力を備えています ストリーム-リレーショナル・ビルドイン・オペレーター Splitオペレーターは、流入 するタプル(データ)を、多 重度を向上さえるために、 他のストリーム処理系統に 分割することができます。 Bundleオペレーターは Splitオペレーターで分割し た複数のストリーム処理系 統をマージすることができ ます。 Functorオペレーターは、タプル (データ)レベルでのデータ変換を 行うことができます。 Joinオペレーターは2つのスト リーム処理を集約させることが できます。 Sortオペレーターは、流入するタプ ル(データ)に対して、処理順番を付 与することができます。 Barrierオペレーターは 、同 期ポイントを設定できます。 © 2009 IBM Corporation © IBM Corporation 2011. All Rights Reserved. 23 Aggregateオペレーターは、 流入するタプル(データ)を グルーピング、またはサマ ライズすることができます。 Punctorオペレーターは、パ ンクチュエーション・マークを 追加することができます。 Delayオペレーターは わざと 遅くさせることができます。 23 Streamsのボトルネック解消 – 並列化の考え方 今までは: Streamsでは: © IBM Corporation 2011. All Rights Reserved. 24 StreamsのSPLプログラムの配置の考え方 オペレーターをノードに分散 © IBM Corporation 2011. All Rights Reserved. オペレーターをプロセスに融合 25 InfoSphere BigInsightsの概要 © IBM Corporation 2011. All Rights Reserved. 26 Hadoop 大量データを扱う、分散処理システム(Apacheオープンソース) コモディティーマシンを並べれば使える クラスターをストレージ化 Googleの論文 Yahooが中心と なって開発 MapReduceで、分散、集計処理 Java実装 クラスター JobTracker HDFS master TaskTracker MapReduce TaskTracker MapReduce TaskTracker MapReduce HDFS slave HDFS slave HDFS slave データ データ データ © IBM Corporation 2011. All Rights Reserved. TaskTracker TaskTracker TaskTracker TaskTracker TaskTracker HDFS slave HDFS slave MapReduce HDFS slave HDFS slave HDFS slave データ 27 Hadoopの2大基本機能 HDFS(Hadoop Distributed File System) 複数台のマシンをN/Wでつなげて、大きなストレージを形成 「PCサーバーは壊れるのがあたりまえ」をコンセプトに巧みなフォールトト レランス機能を提供 =安いPCサーバーでもそれなりの信頼性 MapReduce HDFSを形成しているサーバーのCPU(計算能力)で大量処理 ソートマージのためのフレームワーク シェアード・ナッシングにより、HDDアクセスのボトルネック解消 © IBM Corporation 2011. All Rights Reserved. 28 BigInsights – 2つのバージョン 製品リリース 5月27日: 販売開始 6月24日: メディア配布開始 InfoSphere BigInsights Basic Edition 無償版(1クラスタ10TBまで) Webコミュニティ・サポートのみ Enterprise Edition RVU(Resurce Value Unit) データサイズによる課金体 →URL: 独自拡張機能 IBMによるサポート © IBM Corporation 2011. All Rights Reserved. 29 LEGEND BigInsights Enterprise Stack Performance Manageability Consumability IBM unique value IBM differentiating value IBM complimentary value Open source Analytics Integration IBM 製品との 連携を強化 BigInsights Enterprise Console DataStage DBs Streams Crawlers Data Explorer DBA/Analyst/ Programmer Application Flows Dashboards/Reports Administration Analyst DBA DB2 Analyst Streams JMS HTTP Web & Application logs IBM リサーチ Almaden研究所 による開発 BigInsights Enterprise Engine Analytics (systemML, system T) Indexing (ILEL: parallel, partitioned, real-time) Language Workflow orchestration Workload Prioritization (Jaql, Pig, Hive, HBase) (Orchestrator - MetaTracker) (FLEX) Netezza SPSS Cognos Unica Map-reduce (Hadoop + Adaptive Map-Reduce) Coremetrics File system (HDFS) © IBM Corporation 2011. All Rights Reserved. 一部実装予定の機能も含めて記載されています。 30 Sheetsの概要 非技術者がHadoopを用いてBigDataの分析を容易に行うことを可 能とする製品である Big Dataを長年、広く親しまれているスプレッドシートにて扱う BigInsights Enterprise Edition 1.2以降に同梱される BigInsights1.3にて大幅な変更が行なわれた © IBM Corporation 2011. All Rights Reserved. 31 Jaql (読み方:ジャクル) A JSON Query Language JSON形式のデータを処理するためのクエリ言語 MapReduceを処理するための実装を組み込んいます (MapReduce専用言語ではありません) 準構造化データのクエリ処理 JSONで表現される 巨大並列処理を活用 IBM アルマデン研究所で 開発 Apache Hadoop’s Map-Reduce を利用 容易な拡張性 お好みのプログラミング言語によるプラグイン機能 Jaql IOパッケージを利用して、データモデルをカスタマイズした、 新規に定義したりすることが可能 オープンソースとして開発 http://jaql.org/ © IBM Corporationhttp://code.google.com/p/jaql/ 2011. All Rights Reserved. 32 Jaqlクエリはデータフローのパイプライン A Jaql query is a data flow pipeline read transform filter Find users in zip 94114 write Arrays of JSON records flow between operators Query Output Data read(hdfs(“users”)) Æ filter $.zip == 94114 Æ transform { $.id, $.name } Æ write(hdfs(“inzip”)); [ { id: 12, name: “Joe Smith” }, { id: 19, name: “Alicia Fox” } ] ポイント:JSON型式のオブジェクトを操作していく過程を 記述するクエリ言語で、「パイプライン・プログラミング」と 呼ばれる型式で記述していきます。 © IBM Corporation 2011. All Rights Reserved. 33 典型的な、ワードカウントのMapReduceサンプルソース package com.yone.mapreduce; import java.io.IOException; import java.util.StringTokenizer; import import import import org.apache.hadoop.io.IntWritable; org.apache.hadoop.io.LongWritable; org.apache.hadoop.io.Text; org.apache.hadoop.mapreduce.Mapper; public class MyMapper extends Mapper<LongWritable, Text, Text, IntWritable> { private final static IntWritable one = new IntWritable(1); private final static Text word = new Text(); public void map(LongWritable key, Text value, Context context) throws IOException, InterruptedException { String line = value.toString(); StringTokenizer tokenizer = new StringTokenizer(line); while (tokenizer.hasMoreTokens()) { word.set(tokenizer.nextToken()); context.write(word, one); } } } import import import import java.io.IOException; org.apache.hadoop.io.IntWritable; org.apache.hadoop.io.Text; org.apache.hadoop.mapreduce.Reducer; public class MyReducer extends Reducer<Text, IntWritable, Text, IntWritable> { private IntWritable result = new IntWritable(); public void reduce(Text key, Iterable<IntWritable> values, Context context) throws IOException, InterruptedException { int sum = 0; for (IntWritable val : values) { sum += val.get(); } result.set(sum); context.write(key, result); } } Jaqlの場合 package com.yone.driver; import import import import import import import import import import package com.yone.mapreduce; org.apache.hadoop.conf.Configuration; org.apache.hadoop.conf.Configured; org.apache.hadoop.fs.Path; org.apache.hadoop.io.IntWritable; org.apache.hadoop.io.Text; org.apache.hadoop.mapreduce.Job; org.apache.hadoop.mapreduce.lib.input.TextInputFormat; org.apache.hadoop.mapreduce.lib.output.FileOutputFormat; org.apache.hadoop.util.Tool; org.apache.hadoop.util.ToolRunner; import com.yone.mapreduce.MyMapper; import com.yone.mapreduce.MyReducer; public class MyDriver extends Configured implements Tool { @Override public int run(String[] args) throws Exception { Configuration conf = new Configuration(); conf.set("mapred.job.tracker", "name.yone.com:9001"); conf.set("fs.default.name", "hdfs://name.yone.com:9000/"); Job job = new Job(conf, "WordCount"); job.setJarByClass(MyMapper.class); job.setMapperClass(MyMapper.class); job.setCombinerClass(MyReducer.class); job.setReducerClass(MyReducer.class); // job.setInputFormatClass(TextInputFormat.class); // job.setOutputFormatClass(TextOutputFormat.class); TextInputFormat.setInputPaths(job, new Path(args[0])); FileOutputFormat.setOutputPath(job, new Path(args[1])); job.setOutputKeyClass(Text.class); job.setOutputValueClass(IntWritable.class); return job.waitForCompletion(true) ? 0 : -1; hdfsShell("-copyFromLocal <ローカルファイル名> <HDFSファイル名>"); $lineRdr = read({type: "hdfs", location: "<HDFSファイル名>", inoptions: {format: "org.apache.hadoop.mapred.TextInputFormat", converter: "com.acme.extensions.data.FromLineConverter"}}); registerFunction("splitArr", "com.acme.extensions.expr.SplitIterExpr"); $lineRdr -> expand splitArr($, " ") -> group by $w = ($) into [$w, count($)] -> count(); } public static void main(String[] args) throws Exception { // FileUtil.deleteDirectory(new File("data/output")); // args = new String[] { "data/input", "data/output" }; ToolRunner.run(new MyDriver(), new String[] { "/user/hdpadmin/input", "/user/yone/outputA" } // 入力ファイルと出力フォルダー ); } } © IBM Corporation 2011. All Rights Reserved. ポイント:Java言語で記述する場合と、Jaqlクエリ言語で 記述するコード行数の比較。簡単なワードカウントを行う ようなMapReduce処理の記述も、Jaqlクエリ言語を使う とシンプル、かつ、短いコード量で記述が可能です。 34 Webコンソール Welcome URL http://<hostname>:8080/data/html/index.html Cluster Status Files Applications Application Status Sheets 導入後のファーストステップの提示、HDFSファイルシステムのブラウズ・ファイル操作、 導入後のファーストステップの提示、HDFSファイルシステムのブラウズ・ファイル操作、 JavaやJaqlのアプリケーションのデプロイ、実行、実行ステータス監視、 JavaやJaqlのアプリケーションのデプロイ、実行、実行ステータス監視、 Sheetsを使用したインタラクティブなデータ分析作業の実施など、 Sheetsを使用したインタラクティブなデータ分析作業の実施など、 アプリケーションを含めたBigInsights環境の管理機能を一元的に提供する。 アプリケーションを含めたBigInsights環境の管理機能を一元的に提供する。 © IBM Corporation 2011. All Rights Reserved. 35 Orchestrator (Metatracker)によるフロー制御管理 JI Flow Description JI JI Java API JI Active Job Instances Scheduler State Manager State Store Database Temp Directories Permanent Directories Distributed Filesystem © IBM Corporation 2011. All Rights Reserved. ワークフロー・マネージャー - 時刻・データをトリガーにするジョブのフローを 定義 - 実行中にフロー・パラメーターを変更 Working - 永続データの管理 Directories - 障害からの回復 - 大きなエラーのハンドリング(定義した処理 Local Filesystem フロー) 36 System-T(簡易テキスト分析) 3. コンパイルしたAOGをJAQL 3. コンパイルしたAOGをJAQL で読み込み、Analyticsを実 で読み込み、Analyticsを実 行 行 全体像 AQL AQL Annotated Documents AOG AOG Optimizer Optimizer (source (sourcecode) code) 1. 1. AQL言語にてAnalyticsモ AQL言語にてAnalyticsモ デルを開発 デルを開発 Runtime Runtime 2. 2. 開発したAnalyticsモデル 開発したAnalyticsモデル をAOG形式でコンパイルし、 をAOG形式でコンパイルし、 BigInsights環境上に保管 BigInsights環境上に保管 Eclipse © IBM Corporation 2011. All Rights Reserved. (compiled) (compiled) Input Documents BigInsights (JAQL) AQL: Annotation Query Language / AOG: Annotation Operator Graph 37 Eclipseツール AQL言語にてAnalytics モデルを開発 AQL言語にてAnalyticsモ AQL言語にてAnalyticsモ デルを開発 デルを開発 入力ファイル 入力ファイル Analyticsモデルの実行結果 Analyticsモデルの実行結果 © IBM Corporation 2011. All Rights Reserved. 38 SQLとhttpによるDB2とBigInsightsの連携 Infosphere Warehouse Cubing services SQL DB2 Excel Jaql client JaqlSubmit UDF HDFSRead UDF Http Http Infosphere BigInsights Jaql server Web log data on Hadoop HDFS Persistent data © IBM Corporation 2011. All Rights Reserved. 39 39 InfoSphere BigInsightsは既存システムと連携可能 BigInsights(Hadoop)とDB2は連携可能。 Hadoopの活用のポイントは、「バッチ処理の並列化(高速化)」、「眠っている履歴データ (ログ)、非定型データの有効活用」 統計解析ソフト DB2 SQL オンライン アプリ SAS、SPSSなど Hadoopのデータとし てDB2を透過的に利 用できる DB2のテーブルの 一部としてHadoop を検索できる BigInsights WAS & DB2/JDBC Bridge InfoSphre SPSS Bridge 分析データのソー スとしてHadoopを 利用可能 バッチはツール等 でのExport & Import処理 hadoop Streams etc. JAQL IBM Distribution of Apache Hadoop files Jaql hadoop GPFS © IBM Corporation 2011. All Rights Reserved. DB2 40 BigInsightsサポート体制 IBMにおける「BigInsights」サポート体制は、以下の通りです。 BigInsights サポート スキーム AVP レベル1 レベル2 STSS 日本IBM サポートライン 日本IBM BigInsigts サポートライン 米国IBM BigInsigts サポートライン Q&Aサポート 障害サポート ソースコード FIX開発・提供 Q&A 障害受付 Q&Aサポート 障害サポート レベル3 米国IBM Almaden 研究所 お客様 ディストリ ビュータ (IBM) Ooen Source Community FIX提供 FIX確認 FIX hadoop FIX IBM IBM Distributed Distributed Hadoop Hadoop == BigInsightsは他のIBMソフトウェアと同様に BigInsightsは他のIBMソフトウェアと同様に IBMの総合的サポートスキームを提供可能です IBMの総合的サポートスキームを提供可能です SWG (Software Group) z z z ソフトウェアエバンジェリスト、および専門チームにて数年前よりHadoopを研究 日本の製造業のお客様に多数のセンサーデータをHadoopで解析するプロジェクトをデリバリ済 上記の他に専任チーム:数名、ソフトウェアサポート窓口数名を専任アサイン済 TRL (Tokyo Research Laboratory) z z IBM東京基礎研究所(TRL):インフラストラクチャ・ソフトウェア・チームが数年前よりHadoopを研究 上記SWG事例(製造業のお客様)についてもTRLチームがサポート済 © IBM Corporation 2011. All Rights Reserved. 41 テキスト処理 © IBM Corporation 2011. All Rights Reserved. 42 テキスト・データ 文章で表現されているコンピューター・データ コンピューターでこういったデータを処理するのは難しい 通常(構造化データ) 項目ごとにデータがばらばらになっている 今増えているデータ(非構造化データ) 説明や名前 と 値が、ひとつのデータにくっついている あるいは、データとして取り出せない © IBM Corporation 2011. All Rights Reserved. 43 構造化データと非構造化データ 名前 出身 年齢 佐藤 東京 35 斉藤 神奈川 28 高橋 埼玉 32 鈴木 埼玉 41 たとえばスプレッドシート 佐藤さんは東京出身で35 才。斉藤くんは一番若くて 28才で、神奈川県生まれ。 高橋さんと私鈴木は揃っ て埼玉から来ました。彼 は32才、私は41才です。 たとえばブログやツイッター ソーシャル・ネットワーク分析では 右のタイプのデータを分析しなくてはならない © IBM Corporation 2011. All Rights Reserved. 44 ソーシャル・ネットワークを例に 一般消費者にとって ネットへの「不満のはけぐち」 公共の場所での交信手段 企業ユーザーにとって(エンタープライズ・ソーシャル) 社内への問題提起・議論 社員同士の意見交換手段 © IBM Corporation 2011. All Rights Reserved. 45 震災のとき、こんな書き込みがあったよ サーバー倒れた 助けてーっ! ボトルウォーターで 赤ちゃんのミルク 作っちゃだめよ! 水、電池が 売ってないよー この人の住所、 実在しないよ! ウソじゃないの! 国産の水は、 軟水だから大丈夫 ここで買えたよー 何千万メッセージもあって、 傾向を掴むのは⼿作業じゃ無理 © IBM Corporation 2011. All Rights Reserved. 46 米国人気クイズ番組 『 Jeopardy! 』 に挑戦! Watson = IBMの自然言語処理の集大成 歴代出場者で 最も好成績をおさめた チャンピオン、 ジェニングス氏(左)と ラター氏(右)、中央は Watsonのアバター 幅広いカテゴリーより自然言語で出題される質問 © IBM Corporation 2011. All Rights Reserved. 質問を瞬時に理解し解答するスピード 47 IBM Content Analytics 概観 検索フィールド 操作ボタン ファセットツリー © IBM Corporation 2011. All Rights Reserved. 分析ビュー 48 IBM Content Analytics の5つの分析機能 Content Analytics は、以下の5つの分析機能を提供します。 1.ファセット分析 4.トレンド分析 3.偏差分析 2.時系列分析 5.ファセット・ペア分析 頻度 時間 © IBM Corporation 2011. All Rights Reserved. 49 カスタム辞書・同義語 CSVなどで用意してインポート マイニングに利用される単語の収集に使う単語を定義可能 同義語として複数語を定義可能 日本,にほん,ニッポン,Japan,ジャパン 新宿,しんじゅく,ジュク パーソナルコンピューター,パソコン,PC © IBM Corporation 2011. All Rights Reserved. 50 カスタム分析パターン XMLのパターンファイルと、正規表現で記述 変化するものを収集 行った、行っちゃった、行きました、行ってきた、 違う表現でも収集 XXXが売ってない、XXXが見つからない、XXXが買えない 対象物を収集 XXXXが欲しい、XXXはいらない、XXXXが出たら買う XXX色が好き、YYYY色は嫌い、ZZZZ色は悪くない © IBM Corporation 2011. All Rights Reserved. 51 LanguageWare 増大するデジタルデータの80%近くが非構造化 データと予測されている 自然言語テキストを処理するためのソフトウェア ノンプログラミングで索引付けを調整 人の名前 住所 製品名 電子メールアドレス IBM Content Analytics を購入すると、インター ネットからダウンロードして利用可能 © IBM Corporation 2011. All Rights Reserved. 52 分析例:買い占めが起きたもの © IBM Corporation 2011. All Rights Reserved. 53 分析例:生産がとまってしまったもの © IBM Corporation 2011. All Rights Reserved. 54 対応言語 マイニング 11言語 固有名抽出 5カ国語 評判分析 日本語/英語 Nグラム解析 日本語/中国語/韓国語 単語レベル抽出 19言語 http://www.ibm.com/software/jp/data/search/language.html © IBM Corporation 2011. All Rights Reserved. 55 IBMリサーチ部門とテキストマイニングの研究体制 世界7ヶ国・9つの研究所で、約3,000名が基礎研究にあたる。 テキストマイニングでは、東京基礎研究所が中心となって、グローバル製品のコア技術を研究。 Almaden 1986 Watson 1961 China 1995 Zurich 1955 Austin 1995 Haifa 1972 India 1998 Tokyo 1982 Brazil 2010 IBM Research 拠点 © IBM Corporation 2011. All Rights Reserved. 56 東京基礎研究所における自然言語処理研究の歩み 研究プロジェクト 1982 かな漢字変換 IBM製品・アセット 5550 日本語ワードプロセッサー 機械翻訳 英日機械翻訳システム SHALT (社内のマニュアル翻訳向け) 1990 研究成果 コーパスベースの自然言語処理 知識ベースの機械翻訳 (joint project with CMU) 日本語形態素解析 制約依存文法 電子図書館と情報検索 テキストマイニング 2000 インターネット翻訳の王様 “Internet King of Translation” (Web向け翻訳ソフト) 日本語構文解析 mySiteOutliner (インターネットの情報の収集/分析ツール) 情報アウトライニング 用例ベース機械翻訳手法 テキストマイニングへの 自然言語処理的アプローチ WebSphere Translation Server ビジネス的価値のある 情報の抽出にテキスト 分析技術を応用 2007 Enterprise Information Portal 評判分析 TAKMI and MedTAKMI (テキストマイニング ツール) 医療/生命科学分野での 情報マイニング 日本及び英語圏向けに製品化・販売 技術的特徴表現の抽出 11言語に対応し世界中で販売 製品名:IBM Content Analytics 言語横断テキストマイニング 2009 © IBM Corporation 2011. All Rights Reserved. 57 世界のSNSマップ 出典:VINCOSBLOG http://blogs.itmedia.co.jp/saito/2010/06/snsfacebook13-1.html © IBM Corporation 2011. All Rights Reserved. 58 クロス・チャンネル分析 コールセンターログ 修理履歴 ネットニュース ブログ ツイッター © IBM Corporation 2011. All Rights Reserved. 59 クラウドでの分析 これまでのテキスト分析環境 価値の検討 システム計画 半年 半年 システム構築 半年 分析開始 5年 クラウドでの分析環境 計 準 画 備 価値の検討 2週間 3日 © IBM Corporation 2011. All Rights Reserved. 分析 クラウドなら 短期間で準備可能 1ヶ月 60 クラウドでの運用 • インターネット上のクラウドで、簡単に起動可能 • 台数を加減できる VPN 社内LAN VPN Private VLAN Hadoopクラスター © IBM Corporation 2011. All Rights Reserved. 61 テキスト・マイニングの例 即判断 SNS 検索 クローリング キーワード Streams 形態素 Streams 形態素 解析器 形態素 Streams 解析器 形態素 Streams 解析器 解析器 判断データ 溜めておいて BigInsights 形態素 解析器 BigInsights 形態素 解析器 BigInsights 形態素 解析器 BigInsights 形態素 解析器 BigInsights 形態素 解析器 統計 © IBM Corporation 2011. All Rights Reserved. 62 まとめ ビッグデータは永遠の課題 今日の課題は、ネットワーク一般化、デバイス、SNS 速度、量、多様性に対応が必要 速度:InfoSphere Streams 量:InfoSphere BigInsights 多様性:テキストマイニングなど © IBM Corporation 2011. All Rights Reserved. 63 © IBM Corporation 2011. All Rights Reserved. ワークショップ、セッション、および資料は、IBMまたはセッション発表者によって準備され、それぞれ独自の見解を反映したものです。それらは情報提供の目 的のみで提供されており、いかなる参加者に対しても法律的またはその他の指導や助言を意図したものではなく、またそのような結果を生むものでもありませ ん。本プレゼンeーションに含まれている情報については、完全性と正確性を帰するよう努力しましたが、「現状のまま」提供され、明示または暗示にかかわら ずいかなる保証も伴わないものとします。本プレゼンテーションまたはその他の資料の使用によって、あるいはその他の関連によって、いかなる損害が生じた 場合も、IBMは責任を負わないものとします。 本プレゼンテーションに含まれている内容は、IBMまたはそのサプライヤーやライセンス交付者からいかなる保 証または表明を引きだすことを意図したものでも、IBMソフトウェアの使用を規定する適用ライセンス契約の条項を変更することを意図したものでもなく、またそ のような結果を生むものでもありません。 本プレゼンテーションでIBM製品、プログラム、またはサービスに言及していても、IBMが営業活動を行っているすべての国でそれらが使用可能であることを暗 示するものではありません。本プレゼンテーションで言及している製品リリース日付や製品機能は、市場機会またはその他の要因に基づいてIBM独自の決定 権をもっていつでも変更できるものとし、いかなる方法においても将来の製品または機能が使用可能になると確約することを意図したものではありません。本 資料に含まれている内容は、参加者が開始する活動によって特定の販売、売上高の向上、またはその他の結果が生じると述べる、または暗示することを意 図したものでも、またそのような結果を生むものでもありません。 パフォーマンスは、管理された環境において標準的なIBMベンチマークを使用した測定と予測に基づいています。ユーザーが経験する実際のスループットや パフォーマンスは、ユーザーのジョブ・ストリームにおけるマルチプログラミングの量、入出力構成、ストレージ構成、および処理されるワークロードなどの考慮 事項を含む、数多くの要因に応じて変化します。したがって、個々のユーザーがここで述べられているものと同様の結果を得られると確約するものではありま せん。 記述されているすべてのお客様事例は、それらのお客様がどのようにIBM製品を使用したか、またそれらのお客様が達成した結果の実例として示されたもの です。実際の環境コストおよびパフォーマンス特性は、お客様ごとに異なる場合があります。 IBM、IBM ロゴ、ibm.com、Cognos、DB2、ILOG、Informix、InfoSphere、Netcool、Omnibus、solidDB、SPSS、Tivoli、WebSphereは、世界の多くの国で登録された International Business Machines Corporationの商標です。 他の製品名およびサービス名等は、それぞれIBMまたは各社の商標である場合があります。 現時点での IBM の商標リストについては、www.ibm.com/legal/copytrade.shtmlをご覧ください。 Intelは Intel Corporationまたは子会社の米国およびその他の国における商標または登録商標です。 Linuxは、Linus Torvaldsの米国およびその他の国における登録商標です。 Microsoft, Windows および Windowsロゴは Microsoft Corporationの米国およびその他の国における商標です。 JavaおよびすべてのJava関連の商標およびロゴは Sun Microsystems, Inc.の米国およびその他の国における商標です。 他の会社名、製品名およびサービス名等はそれぞれ各社の商標。 © IBM Corporation 2011. All Rights Reserved. 64