[db tech showcase tokyo 2015] e26 couchbaseの最新情報/jboss data...
TRANSCRIPT
SCSK 株式会社
Couchhbase の最新情報とJBoss Data Virtualization で仮想データベース統合を実現
2015 年 6 月 11 日
IT エンジニアリング事業本部ミドルウェア部富杉正広
Copyright(c) SCSK Corporation - 2 -
自己紹介SCSK 株式会社 富杉 正広(とみすぎ まさひろ)
2013 年 9 月より Couchbase 社の代理店として、 Couchbase 社製品の営業/マーケティング/チームマネージャを担当しています。
2015 年 4 月から弊社が代理店となっている、 Red Hat 社の JBoss Middleware のプリセールス/エンジニアとしての活動も開始しました。
Copyright(c) SCSK Corporation - 3 -
Agenda
Part 1. Couchbase
1. Couchbase Server とは?
2. Couchbase Server 4.0 の新機能
3. SCSK 最新事例
Part 2. Red Hat JBoss Data Virtualization (JDV)
1. Red Hat JDV とは?
2. SCSK 導入事例
3. SCSK 検証レポート
Copyright(c) SCSK Corporation - 4 -
Copyright(c) SCSK Corporation - 5 -
Part 1. Couchbase
1. Couchbase Server とは?
2. Couchbase Server 4.0 の新機能
3. SCSK 最新事例
Part 2. Red Hat JBoss Data Virtualization (JDV)
1. Red Hat JDV とは?
2. SCSK 導入事例
3. SCSK 検証レポート
Copyright(c) SCSK Corporation - 6 -
Couchbase Server の成り立ちとコンセプト
+Apache CouchDB
超高速メモリキャッシュ
柔軟なデータモデルを備えた DB
高いスケーラビリティと安全性
JSON 形式データ
スキーマレス
スケールアウト
オートシャーディング
データレプリケーション
自動フェールオーバー
ドキュメント型データベース
導入の容易さ/高性能・低レイテンシー/データ分散技術/多彩な運用管理機能
1. Couchbase Server とは?
memcached
Copyright(c) SCSK Corporation - 7 -
高可用性キャッシュ Key
Value
ドキュメント指向
組込み/モバイルデータベース 同期管理
Couchbase が提供する様々な機能は、アプリケーションや導入事例を幅広くサポートしま
す。
1. Couchbase Server とは?
Copyright(c) SCSK Corporation - 8 -
1. Couchbase Server とは?
ハイパフォーマンス
高可用性 柔軟なデータモデル
Couchbase Server は、「今」と「未来」の要求にこたえられるNoSQL データベースです。
スケーラビリティ
24x365
Copyright(c) SCSK Corporation - 9 -
ハイパフォーマンス
Fine Grained Locking
Hash Partitioning
内蔵キャッシュメモリ
キャッシュ層を個別に持つ必要がありません。
ドキュメントレベルのロック機構
並列処理によるハイスループットが可能となります。
ハッシュパーティショニング
データを均一に分散配置することによりホットスポットを回避します。
Built-inCache
1. Couchbase Server とは?
Copyright(c) SCSK Corporation - 10 -
スケーラビリティ
XDCRSingle Node Type
自動シャーディング
ユーザ自身ではなくデータベースが自動でデータの分散を行います。
地理的に異なるクラスタ間のレプリケーション
DR 対策/異なる場所にクラスタ構成を組むことができます。
クラスタ管理がシンプル
スケールが容易で、ノードを1から10、10から100と自由に追加/また削除をすることができます。
Auto Sharding
1. Couchbase Server とは?
Copyright(c) SCSK Corporation - 11 -
高可用性
HA via Replication
DR via XDCR
Online administrative
operations
オンラインで DB のアップグレード/ HW のメンテナンス
アプリケーションに影響を与えずに操作が可能です。
インメモリのレプリカで高可用性を実現
自動/手動でのフェイルオーバー
XDCR でディザスタリカバリ対策
全てのアドミン操作がオンライン
•コンパクション•インデクシング•リバランス•バックアップ & リストア
1. Couchbase Server とは?
Online DB upgrades
and maintenance
24x365
Copyright(c) SCSK Corporation - 12 -
柔軟なデータモデル
Handles constantly changing data
Maintains Native object
representation
スキーマレス
様々な構成のデータでもJSON ドキュメントであれば簡単に管理ができます。
データベースの変更に対応
データベースに変更やダウンタイムを生じさせずにデータの変更ができます。
ネイティブオブジェクト
データを行 x 列ではなくオブジェクトとして捉えます。
いかなるドキュメントの属性でもインデックスを作成します。
1. Couchbase Server とは?
Schema-less for structured /
un/semi- structured data
Copyright(c) SCSK Corporation - 13 -
Part 1. Couchbase
1. Couchbase Server とは?
2. Couchbase Server 4.0 の新機能
3. SCSK 最新事例
Part 2. Red Hat JBoss Data Virtualization (JDV)
1. Red Hat JDV とは?
2. SCSK 導入事例
3. SCSK 検証レポート
Copyright(c) SCSK Corporation - 14 -
• N1QL
• インデックスの改良
• 多次元スケーラビリティ
• Forest DB
• セキュリティ
2. Couchbase Server 4.0 の新機能
主な新機能
Copyright(c) SCSK Corporation - 15 -
Flexibility of JSONPower of SQL
2. Couchbase Server 4.0 の新機能
N1QL
SQL for JSON. SQL準拠のクエリ言語
これまでの View によるクエリよりも、さらにアドホックで柔軟なクエリによるデータ操作が行えます。
Copyright(c) SCSK Corporation - 16 -
2. Couchbase Server 4.0 の新機能
N1QL
SELECT, UPDATE, DELETE の操作が可能で、 WHERE句、 LIMIT句、 ORDER BY句、 GROUP BY句等による検索に加え、 JOIN も行えます。クエリの実行結果は、 JSON ドキュメントで返されます。
SELECT t.relation, COUNT(*) AS count, AVG(c.age) AS avg_age FROM tutorial t UNNEST t.children c WHERE c.age > 10 GROUP BY t.relation HAVING COUNT(*) > 1 ORDER BY avg_age DESC
{ "results": [ { "avg_age": 19, "count": 2, "relation": "cousin" }, { "avg_age": 17, "count": 2, "relation": "friend" } ]}
SELECT usr.personal_details, orders FROM users_with_orders usr USE KEYS "Tamekia_13483660" LEFT JOIN orders_with_users orders ON KEYS ARRAY s.order_id FOR s IN usr.shipped_order_history END
{ "results": [ { "personal_details": { "age": 39, "display_name": "Tam Aki", "email": "[email protected]", "first_name": "Tamekia", "last_name": "Akin", "state": "Massachusetts" } } ]}
Copyright(c) SCSK Corporation - 17 -
ODBC / JDBC
App
CB Node
ODBC / JDBC
ETL
ODBC / JDBC
BI
ODBC / JDBC
Visualization
CB Node CB Node
2. Couchbase Server 4.0 の新機能
N1QL
N1QL にあわせて、 ODBC / JDBC ドライバの開発も進んでいます。これまで接続が困難だった外部ツールやアプリケーションからの利用が容易になります。
Copyright(c) SCSK Corporation - 18 -
2. Couchbase Server 4.0 の新機能
インデックスの改良と機能追加インデックスに関して、改良と機能追加が行われました。
View インデックスの改良検索性能の大幅向上データサービスからの独立 ( インデックスサーバの分離 )
空間インデックス機能の追加空間インデックスの使用を正式サポートGeo クエリの実装 ( 立体的な範囲指定クエリの実行が可能に )GeoJSON の出力機能の追加
Copyright(c) SCSK Corporation - 19 -
2. Couchbase Server 4.0 の新機能
多次元スケーラビリティ
水平スケーラビリティCouchbase Server 3.x までは、クラスターに単純にノードを追加することでスケーラビリティを実現
Node 8
Index Service
Couchbase Cluster
Query Service
Data Service
Node 1
Copyright(c) SCSK Corporation - 20 -
2. Couchbase Server 4.0 の新機能
多次元スケーラビリティ
多次元スケーラビリティCouchbase Server 4.0 で、インデックスサービスとデータサービスの分離
Node 8
Index Service
Couchbase Cluster
Query Service Data Service
Node 1
Copyright(c) SCSK Corporation - 21 -
2. Couchbase Server 4.0 の新機能
多次元スケーラビリティ
多次元スケーラビリティCouchbase Server 4.0 で、インデックスサービスとデータサービスの分離
より柔軟なスケーラビリティを実現
Node 8
Index Service
Couchbase Cluster
Query Service Data Service
Node 1
Node 1
Node 9Query Service Index Service
Data Service
Copyright(c) SCSK Corporation - 22 -
2. Couchbase Server 4.0 の新機能
Forest DB
ストレージエンジンが B+木を発展させた「 Forest DB 」に刷新されます。Forest DB の特徴は以下のとおりです。
– データの外部記憶装置への保存効率が向上– さまざまな処理に高いパフォーマンスを発揮– モバイル端末から大規模サーバまで、ハードウェアに関係なく利用可能– SSD に最適化
Forest DB の仕様は IEEE に認められ、標準化が進められています。
スループット格納効率
LevelDB 、 RocksDB と比較し
コンパクトに5倍
高速に6倍
Copyright(c) SCSK Corporation - 23 -
2. Couchbase Server 4.0 の新機能
セキュリティセキュリティに関して、以下の改良が行われました。
マルチテナントとアカウント情報の一元管理複数の管理者/参照者ユーザの設定が可能になります。アカウント情報を Couchbase Server上で一元管理できます。
LDAP との連携
監査ログの出力
Copyright(c) SCSK Corporation - 24 -
Part 1. Couchbase
1. Couchbase Server とは?
2. Couchbase Server 4.0 の新機能
3. SCSK 最新事例
Part 2. Red Hat JBoss Data Virtualization (JDV)
1. Red Hat JDV とは?
2. SCSK 導入事例
3. SCSK 検証レポート
Copyright(c) SCSK Corporation - 25 -
3. SCSK 最新事例
エンタープライズサーチ適用事例
企業規模の急成長 ( 提供サービス種、取引先の急増 ) 、および、基幹システムの老朽化による課題
– 小規模・専用システムの乱立– 情報管理の属人化/属部署化– 従業員の経験、業務習熟度による作業効率格差の拡大– 従業員の教育コストの増加
企業内の情報を横断的に検索/取得できる仕組みを導入
Copyright(c) SCSK Corporation - 26 -
3. SCSK 最新事例
エンタープライズサーチ適用事例
販売管理システム
営業部 A
基幹システム
その他システム
営業部 B
伝票作成
販売管理システム
営業部 A
基幹システム
その他システム
営業部B
クローラ
Web アプリケーション
データ同期 (XDCR)
データ投入
全文検索データ取得
横断検索&伝票出力
個人の知識、経験を活かして社内に散在する情報を収集し、伝票を作成
Couchbase Server + Elasticsearch で社内の情報を一元的に検索し、伝票を出力
Copyright(c) SCSK Corporation - 27 -
Copyright(c) SCSK Corporation - 28 -
Part 1. Couchbase
1. Couchbase Server とは?
2. Couchbase Server 4.0 の新機能
3. SCSK 最新事例
Part 2. Red Hat JBoss Data Virtualization (JDV)
1. Red Hat JDV とは?
2. SCSK 導入事例
3. SCSK 検証レポート
Copyright(c) SCSK Corporation - 29 -
JBossコミュニティでリリース済みの実績あるものを再構成し、エンタープライズレベルの QA を実施後、RedHat より提供されるプロダクト
3つのカテゴリの実行環境、デザイン /開発ツールおよび管理ツールで構成
ユーザインタフェース
開 発 環 境
ビジネスプロセス管理
アプリケーション統合
基盤
データ仮想化
統 合 管 理
JBoss Portal
JBoss BRMS JBoss BPM Suite
JBoss A-MQ JBoss Fuse JBoss Fuse Service Works
JBoss Data Virtualization
JBoss EAP JBoss Web Server JBoss Data Grid
JBoss Developer Studio
JBoss Operations Network
MIDDLEWARE
1. Red Hat JDV とは?
Red Hat JBoss Middleware 製品ラインナップ
Copyright(c) SCSK Corporation - 30 -
1. Red Hat JDV とは?
Red Hat JBoss Data Virtualization
企業内・外のあらゆるデータを「モデリング」、「仮想統合」、「リアルタイム連携」する実行基盤
– 複数データソースを参照/更新する標準ベースのインターフェースを提供
– データ仮想化によりデータ構造や項目を自由に変換
– データをコピーせずにデータの統合を実現
– 監査証跡の取得や集中アクセスコントロールの基盤として利用可能
Copyright(c) SCSK Corporation - 31 -
1. Red Hat JDV とは?
システム構成イメージ
JBoss Data Virtualization
論理物理
RDBMSDWHLDAP
Cloud
File
Office 製品
BI連携
仮想統合
NoSQL
JDBCODBCSOAPRESTOData
さまざまなデータソースを物理モデルとして定義物理モデルから論理モデルを自由に作成利用者は、論理モデルより SQL を利用してアクセス
Copyright(c) SCSK Corporation - 32 -
1. Red Hat JDV とは?
サポートデータソース
データベース : • Oracle • IBM DB2 • Microsoft SQLServer: • Sybase ASE • MySQL • PostgreSQL • Ingresデータウェアハウス : • Teradata • Netezza • Greenplum
Hadoop: • Apache • HortonWorks • Cloudera • More coming…オフィス製品 : • Microsoft Excel • Microsoft Access • Google Spreadsheets特殊データ : • ModeShapeRepository • Mondrian • MetaMatrix • LDAP
NoSQL: • JBoss Data Grid • MongoDB • More coming…アプリケーション : • Salesforce.com • SAPコネクタ : • Flat Files, XML Files,XML over HTTP • SOAP Web Services • REST Web Services • OData Services
Copyright(c) SCSK Corporation - 33 -
・あらゆるデータソースを透過的、仮想的に統合・リアルタイム連携・データ蓄積が不要なため2重管理問題がない・データ構造や統合処理の変更に柔軟に対応可能
データ連携・統合 データキャッシュ
DWH ・データマート アクセス管理・監査証跡
・利用者やロール毎に見せる・見せないを制御・監査証跡の取得を自由に設定可能・ LDAP連携によるユーザ管理統合・監査証跡の取得や集中アクセスコントロールの基盤として利用可能
・ Memory キャッシュによる高速アクセス・ DB を跨るマテリアライズドビューの構築・その他、結果セット・コードキャッシュ
・標準的な SQL が利用可能・一般的な DWH 製品と比較して低コスト・利用者毎に必要なデータを事前に条件で絞り
込みマートを作成することが可能・短期間でデータ基盤の構築が可能
Red Hat JDV の 4 つの特徴
1. Red Hat JDV とは?
Copyright(c) SCSK Corporation - 34 -
これまでのシステム連携イメージ
複数のデータソースを EAI / ETL で連携し、他の DBへ統合BI等分析用の照会用テーブルやデータマートをデータウェアハウスに生成利用者からのアクセス高速化のため、データをメモリへキャッシング
File
照会
RDBMSRDBMS
EAI / ETL DWHDWH
RDBMSRDBMS InMemoryDataGridInMemoryDataGrid
マート生成
データ統合
BI連携
キャッシュ
1. Red Hat JDV とは?
Copyright(c) SCSK Corporation - 35 -
Red Hat JDV を使用したシステム連携イメージ複数のデータソースを JDV で連携・統合BI等分析用の照会用テーブルやデータマートを論理テーブルとして JDV上に定義利用者からのアクセス高速化のため、データを JDV にキャッシング ( マテリアライズドビュー )
JBoss Data Virtualization
File
照会
RDBMSRDBMS
BI連携
マテリアライズドビュー
1. Red Hat JDV とは?
Copyright(c) SCSK Corporation - 36 -
データ仮想化技術により、以下のような使い方が可能です。– 「データ連携・統合」– 「データキャッシュ」– 「データマート」
JDV EAI/ETL ESB/SOAInMemoryDataGrid
ビッグデータDWH
データ連携・統合(バッチ・大量データ) ◎ ◎ 〇 × △
システム連携(リアルタイム) 〇 △ ◎ △ ×
データキャッシュ ◎ × × ◎ ×
DWH ・データマート 〇 × × △ ◎
1. Red Hat JDV とは?
JDV の使い方
Copyright(c) SCSK Corporation - 37 -
データ連携・統合
RDBRDB
JDV
ETL/EAI の場合– データ連携・統合先にも DB が必要– データの二重管理が発生– 一括バッチ処理が基本
File
EAI / ETL 統合 DB統合 DB
JDV のメリット– あらゆるデータソースを透過的、仮想的に統合– データを持たないので 2重管理問題が発生しない– 用途に併せてリアルタイム連携も可能
RDBRDB
File
?
1. Red Hat JDV とは?
Copyright(c) SCSK Corporation - 38 -
データ連携・統合
DWH 製品の場合– 一般的に高価– 製品固有の設計・チューニングノウハウが必要
JDV のメリット– JDV 内でマートの構築が可能– 利用者毎に見せる・見せないの制御が可能– 標準的な SQL が利用可能– 監査証跡の取得を自由に設定可能– LDAP連携によるユーザ管理統合
JDVRDBRDB
File
データウェアハウス
RDBRDB
LDAPLDAP
認証
1. Red Hat JDV とは?
Copyright(c) SCSK Corporation - 39 -
Part 1. Couchbase
1. Couchbase Server とは?
2. Couchbase Server 4.0 の新機能
3. SCSK 最新事例
Part 2. Red Hat JBoss Data Virtualization (JDV)
1. Red Hat JDV とは?
2. SCSK 導入事例
3. SCSK 検証レポート
Copyright(c) SCSK Corporation - 40 -
2. SCSK 導入事例
データ統合基盤適用事例
複数の業種・業態のグループ企業展開する企業グループにおいて顧客情報・活動情報等グループ各社の情報を統合、横断的な活用を実現
– 各社保有データの取り込み– レイアウト/コード変換(データ統合)– クレンジング
業務アプリケーション (横断的にデータ活用する)業務アプリケーション (横断的にデータ活用する)
固定長ファイ
ル
固定長ファイ
ル
固定長ファイル I/F固定長
ファイル I/F JDBCJDBC JDBCJDBC
DBMSDBMS
JDBCJDBC
ビジネスロジックビジネスロジック
ファイル編集ロジック
ファイル編集ロジック
SQLFile I/O
ビジネスロジックビジネスロジック
仮想データ統合 適用なし(スクラッチ開発)
DBMSDBMSDBMSDBMS
DB抽出・マージロジック
DB抽出・マージロジック
SQLSQL
Copyright(c) SCSK Corporation - 41 -
2. SCSK 導入事例
データ統合基盤適用事例
複数の業種・業態のグループ企業展開する企業グループにおいて顧客情報・活動情報等グループ各社の情報を統合、横断的な活用を実現
– 各社保有データの取り込み– レイアウト/コード変換(データ統合)– クレンジング
業務アプリケーション(横断的にデータ活用する)業務アプリケーション(横断的にデータ活用する)
固定長ファイ
ル
固定長ファイ
ルDBMSDBMS
ビジネスロジックビジネスロジック
ビジネスロジックビジネスロジック
仮想データ統合JDV仮想データ統合JDV
仮想 TBL仮想 TBL仮想 TBL仮想 TBL
JDBCJDBC
新規追加Web サービス
新規追加Web サービス
JDV コネクタ群JDV コネクタ群
効果①生産性向上
効果②開発・レビュー品質向上
効果③影響範囲を極小化
SQL SQL
各業態からのレコードについてフォーマット変更などはJDV の定義修正のみで対応可
仮想データ統合 適用有( JDV )
業務アプリケーション (横断的にデータ活用する)業務アプリケーション (横断的にデータ活用する)
固定長ファイ
ル
固定長ファイ
ル
固定長ファイル I/F固定長
ファイル I/F JDBCJDBC JDBCJDBC
DBMSDBMS
JDBCJDBC
ビジネスロジックビジネスロジック
ファイル編集ロジック
ファイル編集ロジック
SQLFile I/O
ビジネスロジックビジネスロジック
仮想データ統合 適用なし(スクラッチ開発)
DBMSDBMSDBMSDBMS
DB抽出・マージロジック
DB抽出・マージロジック
SQLSQL
DBMSDBMSDBMSDBMS
Copyright(c) SCSK Corporation - 42 -
Part 1. Couchbase
1. Couchbase Server とは?
2. Couchbase Server 4.0 の新機能
3. SCSK 最新事例
Part 2. Red Hat JBoss Data Virtualization (JDV)
1. Red Hat JDV とは?
2. SCSK 導入事例
3. SCSK 検証レポート
Copyright(c) SCSK Corporation - 43 -
3. SCSK 検証レポート
JDV 、いろいろ便利そうだけど、気になるのは、やはり、
、、、ということで、 SCSK で性能検証を行いました。
パフォーマンス
Copyright(c) SCSK Corporation - 44 -
JDV売り上げ分析 AP顧客
購入 検索・更新
顧客 DB顧客 DB
3. SCSK 検証レポート
検証シナリオ
オンライン商品販売における売り上げ分析を想定事例商品取引に必要な DB /テーブルを構成複数 DBMS をまたがる検索のため、 Oracle, MySQL, SQL Server を用意複数 DBMS 間の JOIN 処理時を検証するため、各 DBBMS に同一テーブルを用意
商品マスタDB
商品マスタDB
取引 DB取引 DB
オンライン店舗
DB 仮想化は本当に有効??
Customer Goods
Trade
OracleCustomer Goods
Trade
MySQLCustomer Goods
Trade
SQL Server
単一 DB に対する検証 複数 DB (2~3)に対する検証
Copyright(c) SCSK Corporation - 45 -
3. SCSK 検証レポート
検証結果検索パターン スレッド/秒
1 DB : 3 Table Join 100 スレッド/秒
(MySQL) (SQL Server) (Oracle)
検索パターン スレッド/秒
3 DB : 3 Table Join 100 スレッド/秒
Copyright(c) SCSK Corporation - 46 -
3. SCSK 検証レポート
検証結果検索パターン スレッド/秒
1 DB : 3 Table Join 100 スレッド/秒
(MySQL) (SQL Server) (Oracle)
検索パターン スレッド/秒
3 DB : 3 Table Join 100 スレッド/秒
JDV のキャッシング機能の効果で、単一 DB&複数テーブル、複数 DB&複数テーブル
のJOIN 処理は、いずれも、
直接 DBMS を参照するより JDV の経由の方が低レイテンシーで動作します
Copyright(c) SCSK Corporation - 47 -
会社名: SCSK 株式会社 ( 日本国内での Couchbase 社の代理店 )
所在地: 東京都江東区豊洲 3-2-20 豊洲フロント
設立: 1969 (昭和 44 )年 10 月 25 日
資本金: 21,152百万円
従業員: 11,754 名 (連結)( 2015 年 3 月 31 日現在)
業容:
【お問合わせ】 SCSK 株式会社 IT エンジニアリング事業部ミドルウェア部
TEL: 03-5166-1320 E-mail: [email protected] , [email protected]
【お問合わせ】 SCSK 株式会社 IT エンジニアリング事業部ミドルウェア部
TEL: 03-5166-1320 E-mail: [email protected] , [email protected]
会社案内