Upload
insight-technology-inc
View
259
Download
5
Embed Size (px)
Citation preview
Live Demo! データ分析基盤を支える
データレプリケーション技術とデータワークロード分析
コンサルティング事業部森田 俊哉
自己紹介
■名前 森田 俊哉 / Toshiya Morita
■所属 株式会社インサイトテクノロジーコンサルティング事業部部長兼取締役
■主な仕事 データベースコンサルティングマネージメントプロダクトプリセールス
■過去の職歴 C言語プログラマー/C言語デバッガー開発UNIX管理者/Oracle DBAデータベースチューニング等々
Hadoop
RelationalDatabase
No SQL
急速に増え続けているデータベースソフトウェアの選択肢
2012年 db tech showcase
Oracle
MySQL
PostgreSQL
SQLServer
2016年 db tech showcase
Oracle IBM DB2
mongoDBClouderaIMPALA
Hortonworks
presto
InfoFrameHP
NonStopSQL
MySQL
EDB
MarkLogic riak
PostgreSQL
actian
TERADATA
NETEZZAHiRDB
Amazon
Redshift cassandra
MariaDB
Cloudant
SAP/HANA
Picotal
HAWQ
CouchbaseSymfoware
hadoop VERTICAVOLTDB
cloudera
TREASURE
SQLServer
MAPRSybase
IQPivotal
Greenplum
0 10 20 30 40 50 60
Oracle
SQL Server
MySQL
PostgreSQL
DB2
Vector
Matrix
Vortex
Vertica
Netezza
Sybase IQ
Sybase ASE
SAP HANA
Greenplum
Teradata
mongoDB
Couchbase
Riak
Cassandra
MarkLogic
VoltDB
Symfoware
HiRDB
Nonstop SQL
Amazon Redshift
Amazon DynamoDB
Amazon Aurora
Apache Hadoop
MapR
Cloudera
MariaDB
Impala
Presto
Hive
TreasureData
Cloudant
InfoFrame Relational Store
InfoFrame DataBooster
Others
%
db tech showcase Tokyo 2015 事前アンケート結果:あなたの扱えるデータベースはなんですか?
0 10 20 30 40 50 60
Oracle
SQL Server
MySQL
PostgreSQL
DB2
Vector
Matrix
Vortex
Vertica
Netezza
Sybase IQ
Sybase ASE
SAP HANA
Greenplum
Teradata
mongoDB
Couchbase
Riak
Cassandra
MarkLogic
VoltDB
Symfoware
HiRDB
Nonstop SQL
Amazon Redshift
Amazon DynamoDB
Amazon Aurora
Apache Hadoop
MapR
Cloudera
MariaDB
Impala
Presto
Hive
TreasureData
Cloudant
InfoFrame Relational Store
InfoFrame DataBooster
Others
%
db tech showcase Tokyo 2016 事前アンケート結果:あなたの聞いてみたいデータベースは、なんですか?
データも適材適所?! [データベースマッピング]
HiRDB
IBM/DB2
Symfoware
HP NonStop
Oracle
SQL Server
Cloudant
Amazon Redshift
TRESURE DATA
MySQL
PostgreSQL
MariaDB
EDB
Cloudera IMPALA
Presto
HAWQ
MarkLogic
Cassandra Riak
mongoDB Couchbase
MAPR
Cloudera
Hortonworks
Mission Criticalhadoop Leader Challenger
SQL on Hadoop
Cloud NoSQL
Hadoop
TERADATA
SybaseIQ
Pivotal
VERTICA
NETEZZA
Actian
SAP/HANA
BigData
Private Cloud Public Cloud
Hybrid Cloud
データベースもクラウドへ…?
クラウドサービスの10年
2006年 : Amazon Web Services開始 (S3/EC2など3サービス)
2009年 : Amazon Web Services RDS開始
2010年 : Micosoft Azure開始
2011年 : Amazon Web Services 東京リージョン開設
2012年 : Oracle Cloud開始
クラウドファースト
Copyright @2015 Insight Technology, Inc. All Right Reserved
8割の企業が新規システムの構築時にクラウドを検討、クラウドファーストの浸透が顕著に セキュリティに対する不安やクラウドの移行・運用コストが利用障壁に
出典:MM総研「国内クラウドサービス需要動向(2014年版) http://www.m2ri.jp/newsreleases/main.php?id=010120141104500
0
5,000
10,000
15,000
20,000
2013年度 2014年度 2015年度 2016年度 2017年度 2018年度
国内クラウドサービス市場規模 実績・予測
プライベートクラウド(ホステッド/オンプレミス/コミュニティ)
パブリッククラウド(SaaS/IaaS/PaaS)16.0%
13.6%
10.9%
37.6%
21.9%
新規システム構築方法
原則的にクラウド事業者のプライベートクラウド
原則的に自社資産のプライベートクラウド
原則的にパブリッククラウド
クラウドとオンプレミスのメリットを勘案し、最適な方法で
原則的にオンプレミス(非クラウド環境)
データベースもクラウドへ!
8割の企業が新規システムの構築時にクラウドを検討、クラウドファーストの浸透が顕著に セキュリティに対する不安やクラウドの移行・運用コストが利用障壁に
データベースクラウド化のメリット
項目 オンプレ クラウド
1 初期導入コスト × ○ スモールスタートが可能
2 運用コスト ○ ○~× 使った分がコスト
3 DBキャパシティ設計 × ○設計時のサイジングがほぼ不要でリソースの増強も容易
4 導入・構築期間 × ○特にRDSのようなデータベースサービスを利用した場合短期間での構築・変更に優位
5 リソース柔軟性 × ○ウェブ画面ですぐに変更可能。設計時のサイジングがほぼ不要でパフォーマンス対策も容易。
6 DBパラメータ ○ △~○一部のパラメータは変更出来ないがインスタンスクラスに対して最適化されている場合も多い
7 DB運用 △ ○クラウドのバックアップ機能、監視機能を容易に利用可能
8 DB災対環境 △ ○元々堅牢なデータセンターで運用されている上にワンクリックでDRサイトを構築可能
9 セキュリティ対応 ○ △ 制限されることがある
10 外部システムとの連携 ○ △ サードパーティ製品を含めたデータ連携に一部制限
なかなか進まないデータ活用。課題は、
データ分析の基盤であったりデータを収集する仕組みであったり・・・
データソースの連携が重要な要素に!
センサーログ
QlikView
tableau
PowerBI
Yellowfin
OracleSQLServerIBM/DB2
TERADATAREDSHIFTcassandra
データ分析基盤活用の課題
異種データベース間のデータ連携 データベース種別に関わる差を意識せずに連携出来ればなお良し
データ同期タイミング リアルタイムで同期出来ればなお良し
蓄積されるデータの管理 アクセス頻度の低いデータや不要なデータは、削除するか安価なデバイスへ移動
データ分析基盤のパフォーマンス管理 分析利用者負担によるデータ分析基盤への適正投資
Attunity ReplicateSolution for high speed data replication
17
ロジカルレプリケーション(データ同期)~1
Source DB Target DB
EMP
DEPT
SALGRADE
EMP
DEPT
SALGRADE
初期同期(COPY)
18
Source DB Target DB
Change Data
Capture
トランザクションログ
EMP
DEPT
SALGRADE
EMP
DEPT
SALGRADE
INSERTUPDATEDELETE
INSERTUPDATEDELETE
ロジカルレプリケーション(データ同期)~2
19
トランザクションログファイル(Oracleの場合) REDOログファイル分析のためのLogMinerを使用して情報を取得
–V$LOGMNR_CONTENTS(Oracleマニュアルから一部抜粋)列 データ型 説明
SCN NUMBER データベースに変更が加えられた時点のシステム変更番号(SCN)
START_SCN NUMBER この変更を含むトランザクションが開始されたときのシステム変更番号(SCN)。COMMITTED_DATA_ONLYオプションがDBMS_LOGMNR.START_LOGMNR()の起動時に選択された場合のみ有効、それ以外の場合はNULL。この列は、トランザクションの開始を含まない時間/SCN範囲に問合せが実行されると、NULLになることもある。
COMMIT_SCN NUMBER トランザクションのコミット時のシステム変更番号(SCN)。COMMITTED_DATA_ONLYオプションがDBMS_LOGMNR.START_LOGMNR()の起動時に選択された場合のみ有効。
TIMESTAMP DATE データベースに変更が加えられた時点のタイムスタンプSTART_TIMESTAMP DATE この変更を含むトランザクションが開始されたときのタイムスタンプ。
COMMITTED_DATA_ONLYオプションがDBMS_LOGMNR.START_LOGMNR()の起動時に選択された場合のみ有効、それ以外の場合はNULL。この列は、トランザクションの開始を含まない時間/SCN範囲に問合せが実行されると、NULLになることもある。
COMMIT_TIMESTAMP DATE トランザクションのコミット時のタイムスタンプ。COMMITTED_DATA_ONLYオプションがDBMS_LOGMNR.START_LOGMNR()の起動時に選択された場合のみ有効。
USERNAME VARCHAR2(30) トランザクションを実行したユーザーの名前OS_USERNAME VARCHAR2(4000) オペレーティング・システムのユーザー名SQL_REDO VARCHAR2(4000) 再構成されたSQL文で、変更を実行した元のSQL文と同じ。
SQL_UNDO VARCHAR2(4000) 再構成されたSQL文で、変更を実行した元の文の結果を取り消すために使用できる。
20
ロジカルレプリケーション:SQL Apply
プライマリーキーの条件を付加して生成
再構築されたSQL文を別のデータベースに適用するアプリケーションでは、
行を一意に識別する列(主キーなど)で更新文(更新レコード)を識別する
必要がある。
Oracleの場合、ROWID は物理的なアドレスでありデータベースごとに異なり、他のデータベースでは意味を
持たないためV$LOGMNR_CONTENTSによって返されるSQL に示されるROWID では識別できない
ソースデータベース ターゲットデータベース
PK PK
21
Database ログモードの変更 Command
サプリメンタルロギングを有効化
■データベースレベルの最小サプリメンタルロギングの有効化ALTER DATABASE ADD SUPPLEMENTAL LOG DATA;■テーブル毎のサプリメンタルロギングの有効化◇プライマリキー有りALTER TABLE DEPT ADD SUPPLEMENTAL LOG DATA(PRIMARY KEY) COLUMNS;◇プライマリキー無しALTER TABLE SALGRADE ADD SUPPLEMENTAL LOG DATA(ALL) COLUMNS;
PKなしテーブルに対して、チェンジデータキャプチャを構成
■データベースレベルのCDC有効化EXEC sys.sp_cdc_enable_db■テーブル毎のCDC有効化(プライマリキー無しの場合)EXEC sys.sp_cdc_enable_table@source_schema = N’[SCHEMAname]’,@source_name = N’[TABLEname]’,@role_name = NULL
データ複製に関する追加情報をログに記録することを有効化
■テーブル毎の変更データキャプチャの有効化ALTER TABLE < name> DATA CAPTURE CHANGES
トランザクションログにプライマリキー情報を付加
Oracle
SQL Server
IBM/DB2
22
ロジカルレプリケーションでオンプレミス・マルチクラウドをシームレスに連携
オンプレミス
データベースデータ連携(Logical Replication)
MySQL
MicrosoftAzure
SQL Server
amazonweb serviceOracle
Oracle
23
Source DB
Transaction LOG
INSERTUPDATEDELETE
Attunity Replicateデータベース連携アーキテクチャ
EMP
DEPT
SALGRADE
EMP
DEPT
SALGRADE
FULL LOAD
Target DB
24
マルチデータベース・データソース連携
データ分散
災対サイト
参照サーバ
データ集約
DWH,BI
SQL ServerOracle
OracleMySQLIBM/DB2TERADATASYBASE
25
レプリケーションサポートデータベース
• LUW(Linux/Unix/Windows)
-As same as Replication sources
• Large DW Platforms
-Teradata
-Oracle Exadata
-Microsoft PDW
-HP Vertica
-Pivottal Greenplum Database
-IBM Puredata(Netezza)
-Amazon Redshift
• LUW(Linux/Unix/Windows)
-
• Mainframe
-DB2
-IMS/DB
-VSAM
• IBM iSeries
-DB2/400
• HP NonStop-Enscribe-SQL/MP
Replication Sources Replication Targets
Oracle
SQLSever
MySQL
PostgreSQL
SYBASE
IBM/DB2
hadoop
26
DBサーバ側エージェントレス データベースへのソフトウェアインストール不要
初期同期(FULL LOAD)から差分同期(CDC)までシームレスにデータ連携 初期同期から差分同期へ自動切り替え
異種データベース間のテーブル高速データ転送・同期(マルチDB対応) オンプレ・クラウドを問わない主要データベース間のデータ同期をサポート
ブラウザベースのGUIによる簡易設定・監視 短期のスキルトレーニングで同期設定と稼働監視が可能
ATTUNITY Replicateの特徴
27
Oracle10g(10.2) Virtual ServerLocation : VMProcessor : 1 COREMemory : 2048MB
DEMO
No TABLE NAME COUNT
1 CUSTOMER 30,000
2 DISTRICT 10
3 HISTORY 31,652
4 ITEM 100,000
5 STOCK 100,000
6 ORDERS 31,642
7 ORDER_LINE 317,137
8 NEW_ORDER 9,072
9 WAREHOUSE 1
100MB 619,514
データベース負荷テストベンチ マーキング ・ ツール
TPC-C
Virtual ServerLocation : VMProcessor : 1 COREMemory : 2048MB
SQL Server
Virtual ServerLocation : VMProcessor : 1 COREMemory : 2048MB
MySQL 5.6
MicrosoftAzure
VMWARE
VMWARE
28
データ分析基盤活用の課題
異種データベース間のデータ連携 データベース種別に関わる差を意識せずに連携出来ればなお良し
データ同期タイミング リアルタイムで同期出来ればなお良し
蓄積されるデータの管理 アクセス頻度の低いデータや不要なデータは、削除するか安価なデバイスへ移動
データ分析基盤のパフォーマンス管理 分析利用者負担によるデータ分析基盤への適正投資
V I S I B I L I T Y
Attunity VisibilityEnterprise data warehouse management analysis and optimization
30
データ分析基盤管理の必要性
指数関数的なデータ成長 データ分析基盤に保存される容量を予測することが困難
分析基盤のパフォーマンス分析 ボトルネック解析のための情報不足
蓄積データの利用率の把握 アクセスされていないアーカイブ可能なデータを把握することが困難
利用者によるデータ分析基盤への投資負担 データ基盤の利用者及び利用率把握することが困難
31
Attunity Visibility 3
1
ユーザ毎・アプリケーション毎の実行ステートメント(SQL)を取得
ユーザ・アプリケーション毎のリソース(CPU/Memory/Disk)使用状況を取得
テーブル・領域毎のアクセス頻度を取得
低使用領域の移動・アーカイブ候補選定
Teradata 13/14/15
Netezza 6/7
・Cloudera 5.3.0 and 5.4.2
・Hortonworks 2.2.4, 2.3.0, 2.3.2
・MapR 4.1.0 and 5.0.0
主要対応環境
エンタープライズデータウェアハウスの管理と最適化
Oracle10g/11g/12c
IBM DB2 9.1/9.5/9.7/10/10.5
3232
Visibility アーキテクチャ
企業向けDWH プラットフォーム
Purger
Populator
Cataloger
Analyzer
Collector Central Repository
Visibilityのプロセス
Hadoop Logs
HIVE Server2
JobConfiguration
Logs
Job HistoryLogs
HiveCatalog
VisibilityHive Execution
Hooks
ユーザーアクティビティ データ使用量 負荷パフォーマンス
TERADATA
Oracle
IBM/DB2
NETEZZA
33
単一のコンソールからマルチプラットフォームのデータ環境の監視
• Teradata, Oracle, Exadata, IBM DB2, IBM PureData (Netezza) ,Hadoopをサポート
• 分析ウェアハウス管理の集中化が可能
• EDW上のプラットフォームHadoopのデータ管理と統合された分析
• 迅速な導入、シンプルな管理
特徴
長所
34
単一のコンソールからマルチプラットフォームのデータ環境の監視
• Teradata, Oracle, Exadata, IBM DB2, IBM PureData (Netezza) ,Hadoopをサポート
• 分析ウェアハウス管理の集中化が可能
• EDW上のプラットフォームHadoopのデータ管理と統合された分析
• 迅速な導入、シンプルな管理
特徴
長所
35
事業部門別によるコスト負担 / 利用報告
• ビジネス部門のユーザーのアクセスとデータの使用状況を分析し、分析データ基盤の使用率を特定
• 特定のトピックを評価- 使用リソースに基づく課金データ- LOBの使用
特徴
• コストを正当化し、プロジェクトベースのビジネスの利用を最適化
• 充分に活用されていない情報資産を識別し、コスト効率を向上
長所
JOB VOLUME CPU TIMEPHYSUCAL MEMORY
DISTRICT USERS APLICATION ACTIVITY
36
事業部門別によるコスト負担 / 利用報告
• ビジネス部門のユーザーのアクセスとデータの使用状況を分析し、分析データ基盤の使用率を特定
• 特定のトピックを評価- 使用リソースに基づく課金データ- LOBの使用
特徴
• コストを正当化し、プロジェクトベースのビジネスの利用を最適化
• 充分に活用されていない情報資産を識別し、コスト効率を向上
長所
JOB VOLUME CPU TIMEPHYSUCAL MEMORY
DISTRICT USERS APLICATION ACTIVITY
37
Hadoopを含むデータウェアハウスプラットフォームのワークロード把握
• データのロードは、リソースの消費を評価• 最も集中的かつ反復的な作業を特定• フィルターベース(など、サブクエリを結合する)
分離繰り返し、リソースを大量に消費するSQL文を特定
• データ分析基盤の性能を向上させ、適切なプラットフォームを提供することによりコスト削減に
• Hadoopを含むデータウェアハウス・プラットフォームにおけるリソースの負荷と処理の状況を把握
特徴
長所
38
Hadoopを含むデータウェアハウスプラットフォームのワークロード把握
• データのロードは、リソースの消費を評価• 最も集中的かつ反復的な作業を特定• フィルターベース(など、サブクエリを結合する)
分離繰り返し、リソースを大量に消費するSQL文を特定
• データ分析基盤の性能を向上させ、適切なプラットフォームを提供することによりコスト削減に
• Hadoopを含むデータウェアハウス・プラットフォームにおけるリソースの負荷と処理の状況を把握
特徴
長所
39
使用されない/頻繁に使用されないデータを検索
• 全体的な使用率は、複数のサーバ、データベースとテーブルを評価
• 頻繁に使用されているデータ、全く使用されないデータを特定
特徴
• 頻繁にアクセスされるデータを保持し、最適化• 不要データは、アンインストールまたはアーカイブ
長所
40
使用されない/頻繁に使用されないデータを検索
• 全体的な使用率は、複数のサーバ、データベースとテーブルを評価
• 頻繁に使用されているデータ、全く使用されないデータを特定
特徴
• 頻繁にアクセスされるデータを保持し、最適化• 不要データは、アンインストールまたはアーカイブ
長所
41
DEMO
42
データ分析基盤活用の課題
異種データベース間のデータ連携 データベース種別に関わる差を意識せずに連携出来ればなお良し
データ同期タイミング リアルタイムで同期出来ればなお良し
蓄積されるデータの管理 アクセス頻度の低いデータや不要なデータは、削除するか安価なデバイスへ移動
データ分析基盤のパフォーマンス管理 分析利用者負担によるデータ分析基盤への適正投資
V I S I B I L I T Y
記載されている会社名、サービス名、製品名は、株式会社インサイトテクノロジーおよび各社の商標または登録商標です。
Copyright 2016 Insight Technology, Inc. All Rights Reserved.