63
1 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. ビッグデータのためのオラクル製品と技術 製品戦略統括本部 戦略製品ソリューション本部 下道 高志

ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

1 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

ビッグデータのためのオラクル製品と技術

製品戦略統括本部 戦略製品ソリューション本部

下道 高志

Page 2: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

2 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Page 3: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

3 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Russia 17–18 April 2012

India 3–4 May 2012

Page 4: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

4 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

San Francisco September 30–October 4, 2012

Page 5: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

5 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

以下の事項は、弊社の一般的な製品の方向性に関する概要を説明するものです。また、情報提供を唯一の目的とするものであり、いかなる契約にも組み込むことはできません。以下の事項は、マテリアルやコード、機能を提供することをコミットメント(確約)するものではないため、購買決定を行う際の判断材料になさらないで下さい。オラクル製品に関して記載されている機能の開発、リリースおよび時期については、弊社の裁量により決定されます。

OracleとJavaは、Oracle Corporation 及びその子会社、関連会社の米国及びその他の国における登録商標です。 文中の社名、商品名等は各社の商標または登録商標である場合があります。

Page 6: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

6 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

オラクルが御提案する

Big Dataソリューション

Page 7: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

7 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

オラクルが考える “Big Data の3大要件”

非構造化データ格納・管理:”分散ファイルシステム“ 非構造化データと構造化データを繋ぐ:”Connectors” ビッグデータに対する高度な分析機能、直観的なインターフェース

莫大な非構造化データの取り扱い、構造化データと非構造化データを体系化

エンタープライズ・クラスのセキュリティ 高可用性 ソフトウェアとハードウェアを融合して提供する超高性能

“エンタープライズ用途”に求められる要素

非構造化分散ファイルシステム Key Value型データベース 統計解析

新たに広まりつつある、”良いテクノロジー”の利活用

Page 8: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

8 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

非スキーマ データ

非構造化 データ

スキーマ データ

取得 分析 体系化

扱う情報の種類により求められる技術、スキルが異なる 個別ソリューションの課題

NoSQL

柔軟性

特化型

開発者中心

SQL

信頼性

セキュア

高い管理性

トランザクション (Key-Valueストア)

データベース (オンライン系)

データベース (分析系)

分析 ツール

分散ファイル システム

MapReduce ソリューション

Page 9: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

9 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

非スキーマ データ

非構造化 データ

スキーマ データ

取得 分析 体系化

Oracle NoSQL DB

RDBMS (OLTP)

RDBMS (DW)

Oracle BI EE

In-DB Analytics

“R”

Spatial Graph

Mapreduce 非構造化データからデータベースへの連携 高速データローディング データベースから非構造化データへのアクセ

Oracle Big Data Connectors

準構造化データの蓄積 高速処理、高拡張性

Oracle NoSQL DB

オープン言語“R”の採用 大量データを用いた統計解析、マイニング

In-DB Analytics

HDFS Hadoop

Oracle R Connector for Hadoop

Oracle Direct Connector for HDFS

Data Integrator Application Adapters for Hadoop

Oracle Loader for Hadoop

あらゆるデータを網羅的に活用するための統合情報基盤

非構造化データの蓄積、処理 開発・運用・管理に実績あるCloudera

Hadoop 、HDFS

Page 10: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

10 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

InfiniBand InfiniBand

あらゆるデータを網羅的に活用するための統合情報基盤

取得 体系化 分析 & 可視化 ストリーム

Page 11: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

11 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Oracle Big Data Appliance

(BDA)

Page 12: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

12 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

•18ノードのSun X4270 M2 Servers

– 864 GB メモリ

– 216 コア

– 648 TB ストレージ

•40 Gb/s InfiniBand Fabric

– ラック間/ノード間

•10 Gb/s Ethernet

–データセンターのネットワークへ接続

Oracle Big Data Appliance ハードウェア

Page 13: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

13 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

ノード – Sun Fire X4270 M2

プロセッサ 2 Six-Core Intel® Xeon® X5675 プロセッサ (3.06 GHz)

メモリ 48GB (6 * 8GB), 96 GB または 144GBに拡張可能

ディスク 12 x 3 TB 7.2K RPM 高容量 SAS (hot-swap)

ディスク・コントローラ 512MBバッテリー・バックド・キャッシュ, HBA

ネットワーク 2 InfiniBand 4XQDR (40Gb/s) ポート(1 Dual-port PCIe 2.0HCA)

4 Gigabit Ethernet Ports内臓

リモート管理 1 Gigabit Ethernet portを備えたILOM

電源 冗長構成のホット・スワップ可能な電源とファン

Page 14: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

14 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

メモリ拡張キット

• 特定のノードがより多くのメモリを必要とする場合

– 48GBから96Gb (12 x 8GB)または144GB (18 x 8GB) に変更可能

• 例

– クラスター内の全ノード

– 一部のノード(Name Node, HBase master etc.)

• 注意点

– 144GBへのアップグレードは、メモリ帯域削減のため、若干のパフォーマ

ンス減退につながる可能性あり(クロック:1333MHz->800MHz)

Page 15: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

15 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

NameNodeに必要なHeapの算出方法例

(参考)https://issues.apache.org/jira/browse/HADOOP-1687

Object size estimate (bytes) typical size (bytes)

File 112 + fileName.length 125

Directory 144 + fileName.length 155

Block 112 + 24 * replication 184

• Yahoo! の例

• 50G heap = 200M “fs objects” = 100M names + 100MBlocks

• 14PB of storage (50MB blocksize)

• 4K nodes

(参考)HDFS Federation,Yahoo! Inc. Apache India Summit 2011

Page 16: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

16 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

InfiniBand ネットワーク:スイッチ

• Sun 4x QDR (40Gb/s) InfiniBand スイッチを使用

– サブネット・マネージャを実行し、ネットワーク・トポロジーを自動検知

– 一度にアクティブとなるサブネット・マネージャはひとつのみ

– 個別のサーバーIBポートを、二つの「リーフ」スイッチ(32ポートQDRゲートウェイ・スイッチ)で接続

– ひとつの「内部スパイン」スイッチ(36ポートQDRスイッチ)を使用し、追加ラックへスケール・アウト

Page 17: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

17 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

InfiniBand ネットワーク

• X4270M2

– 各サーバーには、デュアル・ポート QDR (40Gb/s) IB HCAを搭載

– アクティブ-パッシブ・ボンディング – デュアル・ポートHCAごとに一つのIPアドレスをアサイン

• パフォーマンスは、PCIeバスに制限されるため、アクティブ-アクティブは不要

– HCAから一つのポートを一つのリーフ・スイッチに接続し、もう一つのポートを二つ目のリーフ・スイッチに接続することで冗長性を確保

– 出荷前に接続済み

Page 18: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

18 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

水平型拡張モデル(スケールアウト・モデル) InifiniBandを用いて、

ラックを接続し拡張

同じ方法でExadataに接続

Page 19: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

19 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

最高のパフォーマンスを出せるように

調整済みのソフトウェアがインストール済み

• Oracle Linux 5.6

• Java Hotspot VM

• Cloudera CDH

• Cloudera Manager

• Open Source R Distribution

• Oracle NoSQL Database

• Oracle Big Data Connectors

Oracle Big Data Appliance ソフトウェア

Page 20: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

20 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

(注意)MySQL Standard Edition

• 管理用途のみの利用 – Cloudera Manager

– Hive のメタストア

– ODI Agent

Page 21: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

21 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Hadoop@Big Data Appliance

Page 22: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

22 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

CDHに梱包されるコンポーネント ディストリービューションの詳細

• Apache Hadoop

• Apache Hive

• Apache Pig

• Apache HBase

• Apache Zookeeper

• Apache Flume

• Apache Sqoop

• Apache Mahout

• Apache Whirr

• Apache Oozie

• Fuse-DFS

• Hue

最新の詳細はこちらをご参照ください: http://www.cloudera.com/hadoop-details/

Page 23: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

23 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

CDH のバージョン

• CDH3

– 最新のものがインストールされる

– BDA出荷開始時点(2012/1/10)ではupdate 2

– 現時点(2012/4/6)では、CDH3 update 3 • HDFSパフォーマンスの大幅改善

• MapReduce TaskTrackerのDisk障害に対する耐性の向上

• CDH4 – 現在ベータ版

– BDAへの適用は現時点では時期未定

Page 24: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

24 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Hadoop ソフトウェア・レイアウト (標準)

• ノード1:

– Name Node, Balancer , HBase Master*

• ノード2:

– Secondary Name Node, Cloudera Manager, Zookeeper*,

NoSQL Database Administration

• ノード3:

– JobTracker, HUE, MySQL Master, ODI Agent, Hive

• その他のノードもしくは追加BDA

– HDFS Data Node, NoSQL DB Storage Node*

– (ノード4)

• Name Node data backup

3

2

1 *構成上のオプション

Page 25: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

25 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

各ノード毎に持つ12本のディスク割当(デフォルト)

• ディスク1-2 – Linux の機能による物理/論理パーティション、150GBミラー。全てのソフト

ウェア、NameNode、MySQL

– 残りの2.8TBは HDFS データ用のパーティション

• ディスク3 – ソフトウェアのインストール時にOracle NoSQL Database を利用すると指定

すれば、専用パーティションに割り当てられる。

– NoSQL Databaseを使用しないのであれば、HDFS データ用のパーティション

• ディスク4-12 – HDFS データ用のパーティション

Page 26: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

26 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

次世代HDFS:HDFS Federation とデータブロックのプール化

広帯域のネットワークが益々必要

http://hadoop.apache.org/common/docs/r0.23.0/hadoop-yarn/hadoop-yarn-site/Federation.html

Page 27: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

27 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Oracle NoSQL Database

Page 28: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

28 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Oracle NoSQL Databaseとは

Storage Nodes

Replication Group

Replication Group

Replication Group

• 大容量のデータを保持し、高速なデータアクセスを提供するストレージ型KVS (Key Value Store)

• 15年以上の実績を持つBerkeley DBをもとに拡張性、可用性を強化

Application Application NoSQLDB Driver NoSQLDB Driver

Page 29: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

29 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Oracle NoSQL Database の機能コンセプト

• シンプルなデータモデル – 「Key(キー)」と「Value(値)」のペア

• シンプルなデータアクセス – 単純な read/insert/update/delete が対象

– 物理位置を意識しない透過的なアクセスを提供

• スケーラビリティ – Storage Node/Replication Group の追加によりスケールアウト可能

– 負荷量に応じてアクセスをロードバランス

• 可用性とデータ保護 – マスタ/レプリカ構成で冗長化、レプリカは複数指定可能

Page 30: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

30 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

データ分散方式

• Key-Value Data ⇒ Partitions: – Key space を複数のハッシュ・バケットに分

割 (MD5), major keyで各パーティションへ均等配分

• Partitions ⇒ Replication Groups: – パーティションの集合をレプリケーション・グ

ループにマッピング(データ・サブセットのロジカル・コンテナ)

• Replication Groups ⇒ Storage Nodes: – レプリケーション・グループはHAとリードの

スケーラビリティーを実現 – ストレージ・ノードはそれぞれのレプリケー

ション・ノードに対応 – H/Wへの配置は自由に設計

“full” key space

..

..

R2 R1

M

R2 R1

M

R2 R1

M

..

..

Partitions

Replication Groups

Storage Nodes

Replication Nodes

Page 31: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

31 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

システム構成例

Storage Nodes (Data Center A)

Storage Nodes (Data Center B)

AP Server層 DB Server層

Load Balancer Web Service Client Server

HTTP Server

Application

HTTP Server

Application Application Application

NoSQLDB Driver NoSQLDB Driver NoSQLDB Driver NoSQLDB Driver

Page 32: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

32 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

障害パターンとサービス継続性

Replication Group

Master

Replic

a

Replica Replication Group

Master

Replica

Replica Replication Group

Master

Replica

Replica => Master

マスタ・ノード障害

レプリカ・ノードのログ・シーケンスNoを比較し、最新のノードがマスタ・ノードへ昇格。

レプリカ・ノード障害

読み取り性能が低下。(この場合3ノードから2ノードへ変化)

ドライバーはアプリケーションに包含され、アプリケーションがクラスタリングされている。

0 - 99 100 - 199 200 - 299

レプリケーション・グループ障害

障害の発生したグループに閉じた障害として扱われ、他のグループではサービス継続。

Application Application NoSQLDB Driver NoSQLDB Driver

Page 33: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

33 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

データの永続化と読み込み一貫性(1)

• アプリケーションのコード内に定義 – オペレーションごと、アプリケーションごとに設定可能

• 書き込みポリシー – 永続化ポリシー (on Master and Replica)

• Sync =>ディスク・レベル

• Write No Sync =>OS Bufferレベル

• No Sync =>NoSQL DBのログ・バッファーに書き込み、最適なタイミングで同期

– レプリカ確認(Ack)ポリシー • ALL

• Simple Majority

• None Master

Replica

Replica

Sync

Write no sync

Write no sync

Simple Majority

Log Buffer

OS Buffer

Disk Sync

Write no sync

No sync

Page 34: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

34 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

データの永続化と読み込み一貫性(2)

• 読み込みポリシー – 一貫性ポリシーの設定

• Absolute =>マスターからのリード

• Time-based =>レプリカからのリード (マスターのtime-interval範囲内で最新のもの)

• Version =>レプリカからのリード (最新のトランザクション・トークンを持つもの)

• None =>レプリカからリード

Page 35: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

35 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

管理ツール及びログファイル

35

• GUI/CUIでの管理ツール

• 各種APIでの管理/統計情報の取得

• 各種ログファイル:ログレベル指定可

• 様々なチューニング・パラメータ

Page 36: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

36 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

データ操作

• データを伴う操作 – get() : 単一データ取得

– multiGet() : 複数データの取得、全データを一回で取得

– multiGetIterator() :複数のデータの取得、ユーザ制御分のみ取得

– storeIterator() : multiGetIterator()をストア全体に対して実行可

• Keyのみを取得 – multiGetKeys()

– multiGetKeysIterator()

– storeKeysIterator()

• Version情報を利用した楽観的ロックや、同一major keyに対する複数の操作をAtomicに実行することが可能

Page 37: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

37 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

アプリケーション・コード例 package hello; import oracle.kv.KVStore; import oracle.kv.KVStoreConfig; import oracle.kv.KVStoreFactory; import oracle.kv.Key; import oracle.kv.Value; import oracle.kv.ValueVersion; public class HelloBigDataWorld { private final KVStore store; public static void main(String args[]) { String storeName = "kvstore"; String hostName = "localhost"; String hostPort = "5000"; store = KVStoreFactory.getStore (new KVStoreConfig(storeName, hostName + ":" + hostPort)); final String keyString = "Hello"; final String valueString = "Big Data World!"; store.put(Key.createKey(keyString), Value.createValue(valueString.getBytes())); final ValueVersion valueVersion = store.get(Key.createKey(keyString)); System.out.println(keyString + " " + new String(valueVersion.getValue().getValue())); store.close(); } }

Page 38: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

38 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

アプリケーション・コード例の中核部分

38

store = KVStoreFactory.getStore (new KVStoreConfig(storeName, hostName + ":" + hostPort)); final String keyString = "Hello"; final String valueString = "Big Data World!"; store.put(Key.createKey(keyString), Value.createValue(valueString.getBytes())); final ValueVersion valueVersion = store.get(Key.createKey(keyString)); System.out.println(keyString + " " + new String(valueVersion.getValue().getValue()));

KVSへのアクセス・ハンドル取得。

この後全てのKVSへの作業はこのハンドルを介して行われる。その他、DurabilityやConsistency のデフォルト設定を行う事ができる。

データ挿入。

データ挿入時のDurability設定の変更も可。

データ取得。

データ取得時のConsistency 設定の変更も可。

Page 39: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

39 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Oracle Big Data Connectors

Page 40: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

40 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Oracle Big Data Connectors

Page 41: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

41 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Oracle Data Integrator

Oracle Loader for Hadoopと一体になりMapReduceコードを簡素化

MapReduceコードを自動生成 プロセスを管理 データウェアハウスへロード

Oracle

Loader for

Hadoop

Oracle

Data

Integrator

Page 42: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

42 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Page 43: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

43 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

ORACLE LOADER FOR HADOOP

Oracle Loader for Hadoop

シャッフル /ソート

シャッフル /ソート

MAP

MAP

MAP

MAP

シャッフル /ソート

REDUCE

REDUCE

シャッフル /ソート

シャッフル /ソート

REDUCE

REDUCE

REDUCE

INPUT2

INPUT1

MAP

MAP

MAP

MAP

MAP

REDUCE

REDUCE

REDUCE

MAP

MAP

MAP

MAP

MAP

MAP

REDUCE

REDUCE

MAP

MAP

MAP

MAP

MAP

REDUCE

REDUCE

REDUCE

Page 44: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

44 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Oracle Loader for Hadoop Hadoopクラスターを使用しOracle DBへの高速ロードを実現

MapReduce ワークフローの最終段階として利用

パーティション・テーブルもサポート オンラインとオフラインのロード

シャッフル /ソート

シャッフル /ソート

REDUCE

REDUCE

REDUCE

MAP

MAP

MAP

MAP

MAP

MAP

REDUCE

REDUCE

ORACLE LOADER FOR HADOOP

Page 45: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

45 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Oracle Loader for Hadoopの優位点

• 入出力および中間処理が高速化 – 最新のオープンソースとOracleのknow-howの結晶

• Oracle Database に最適化 – Oracle Database の機能を最高に生かす仕組み

• MapReduce ジョブとして独自に実装可能 – APIを提供

Page 46: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

46 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

優位点の詳細:ロード・バランシング

• 全てのReducer に対する負荷をほぼ均等 – MapReduce パーティショニング・スキームを作成

– Oracle Databaseに最適なサンプリングのノウハウを反映

• 同時にロードも調整 – パーティション間で分布が均一でない場合

• ロードの速度低下を防ぐ – Reducer へのバランスが悪いロードの場合

• Apache Commons Math ライブラリを使用

Page 47: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

47 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

優位点の詳細:入力処理

• 様々な入力フォーマット – CSV等のDelimited text

– Hive tables

– APIを利用した独自実装

• 高速な入力処理が可能 – バイナリ・フォーマットはAvro record files

Page 48: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

48 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

優位点の詳細:出力処理(オンライン)

• 2つの方式をサポート

– JDBC

– OCI Direct Path

• 複数のOracle Database パーティション表への高速な転送

• Oracle Wallet サポート

– 実行時にoraclepki.jarが必要

48

JDBC or OCI LOAD

MAPPER

PARTITIONER

REDUCERS

HADOOP CLUSTER

Page 49: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

49 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

優位点の詳細:出力処理(オフライン)

• Data Pump フォーマット

– 外部表のためのバイナリファイル

– 外部表のためのSQL

– Direct Path の並行処理をサポート

– 外部表に対する最速のオプション

• CSV, delimited text

– SQL*Loader 等でロード

49

EXTERNAL TABLES LOAD

(DATA PUMP AND CSV FORMATS)

MAPPER

PARTITIONER

REDUCERS

HADOOP CLUSTER

Page 50: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

50 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Oracle DBとHadoopの接続方法

方法 特徴

Oracle Loader for Hadoop

JDBCでのオンライン・ロード

シンプルな方法。パーティション表はサポートしない

Oracle Loader for Hadoop

Direct Pathでのオンライン・ロード

パーティション表への最速なロード

Oracle Loader for Hadoop

Data Pumpファイルでのオフライン・ロード

外部表への最速なロード。オンライン・ロードと比較するとデータベース・サーバへの負荷が少ない

Oracle Direct Connector for HDFS HDFS上のファイルは保持。データベースか

ら同時複数によるアクセス可能。必要毎にデータベースへのインポートが可能

Page 51: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

51 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Configuration Propertiesの例

CONFIGURATION PROPERTY DESCRIPTION

mapreduce.inputformat.class Specify input format class (Delimited text, Hive, or write your own)

mapreduce.outputformat.class Specify output format class, ex: JDBCOutputFormat, OCIOutputFormat, DPOutputFormat

oracle.hadoop.loader.oracle_home Path to ORACLE_HOME

oracle.hadoop.loader.targetTable Table in the database to be loaded

oracle.hadoop.loader.connection.url Database connection string

oracle.hadoop.loader.sampler.enableSampling Balance load across reducer nodes

oracle.hadoop.loader.sampler.enableSorting Perform secondary sort by primary key of the table

… …

Page 52: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

52 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

コマンドラインの例

$HADOOP_HOME/bin/hadoop jar oraloader.jar oracle.hadoop.loader.OraLoader

-libjars avro-1.4.1.jar, commons-math-2.2.jar

-conf connection.xml

-D mapreduce.inputformat.class=oracle.hadoop.loader.lib.input.DelimitedTextInputFormat

-D mapreduce.outputformat.class=oracle.hadoop.loader.lib.output.JDBCOutputFormat

Page 53: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

53 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Oracle Direct Connector for HDFS Oracle Databaseから直接アクセス

HDFSへのSQLアクセス 外部テーブルビュー データ・クエリまたはインポート

DCH

外部表

DCH

DCH

SQL クエリ

Infini Band

HDFS

クライアント

HDFS

Oracle Database

Page 54: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

54 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Oracle R Hadoop Connector HadoopへのネイティブRアクセス

ORE

Client Host

R エンジン

Hadoop

クライアント

ソフトウェア

R エンジン

MapReduce

ノード

HDFS

Oracle Big Data

Appliance

Oracle Exadata

R エンジン

ORE

ORHC ネイティブ R MapReduce ネイティブ R HDFS アクセス

ORHC

Page 55: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

55 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Big Dataの特徴

バッチ指向 リアルタイム

“使う”ためにデータを加工 サービスを提供

大容量のストレージ 特定のデータへ高速アクセス

Write once, read all Read, write, delete update

Page 56: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

56 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

HDFSとOracle NoSQL Databaseの比較

Hadoop Distributed File System (HDFS)

Oracle NoSQL Database

ファイルシステム データベース

並列検索 インデックス

特定の構造なし シンプルなデータ構造

大量の書き込み 大量のランダムな読み取りと書き込み

バッチ指向 リアルタイム

Page 57: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

57 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Oracle のBig Data戦略

開発者の皆様と共に

Page 58: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

58 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Oracle and Big Data : Big Data for Enterprise

Page 59: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

59 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

OTN(Oracle Technology Network)での情報交換

Page 60: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

60 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Q&A

Page 61: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

61 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

ご質問・ご相談はOpenWorld終了後もお受けしております

0120-155-096 (平日9:00-12:00 / 13:00-18:00)

http://www.oracle.com/jp/direct/index.html

各種無償支援サービスもございます。

Oracle Direct 検索

Oracle Direct あなたにいちばん近いオラクル

Page 62: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

62 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Page 63: ビッグデータのためのオラクル製品と技術 · •Replication Groups ⇒ Storage Nodes: –レプリケーション・グループはHAとリードの スケーラビリティーを実現

63 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.