26
Oracle/SQL ServerAWS への移行 ~その選択肢と注意事項~ (株)インサイトテクノロジー 宮地 敬史

20161005_Oracle/SQL Serverの AWS への移行 ~その選択肢と注意事項~ by 株式会社インサイトテクノロジー 宮地敬史

Embed Size (px)

Citation preview

Page 1: 20161005_Oracle/SQL Serverの AWS への移行 ~その選択肢と注意事項~ by 株式会社インサイトテクノロジー 宮地敬史

Oracle/SQL Serverの AWS への移行~その選択肢と注意事項~

(株)インサイトテクノロジー宮地 敬史

Page 2: 20161005_Oracle/SQL Serverの AWS への移行 ~その選択肢と注意事項~ by 株式会社インサイトテクノロジー 宮地敬史

Agenda

1. AWSのデータベース移行先~EC2 or RDS?~2. データベースの乗換え3. 弊社サービスの紹介

Page 3: 20161005_Oracle/SQL Serverの AWS への移行 ~その選択肢と注意事項~ by 株式会社インサイトテクノロジー 宮地敬史

AWSのデータベース移行先~EC2 or RDS?~

Page 4: 20161005_Oracle/SQL Serverの AWS への移行 ~その選択肢と注意事項~ by 株式会社インサイトテクノロジー 宮地敬史

Database on EC2

物理サーバがAWS EC2インスタンスになるだけ。

⇒ EC2上にRDBインストール、データベース作成を行う

- 監視・通知・監査の仕組み- 運用(バックアップ/リストア、メンテナンス等)- 環境構築用/運用スクリプト

今使っている運用回りの仕組みを(ほぼ)そのまま使用できる

セルフマネージが可能

- データベースのバージョン・エディション- 適用するパッチ、適用タイミング- サーバリソースのDBへの割り当て

DB on instance

Amazon EC2

Page 5: 20161005_Oracle/SQL Serverの AWS への移行 ~その選択肢と注意事項~ by 株式会社インサイトテクノロジー 宮地敬史

Amazon RDS

マネージド型リレーショナルデータベースOSやRDBをインストールすることなくすぐに利用できる

管理が簡単AWSマネジメントコンソール、AWS RDS CLI、AWS RDS APIを使用

拡張性ダウンタイムなしでリソース追加可能*ストレージサイズ/IOPSの場合のみ(CPU/Memoryは再起動が必要)

可用性Multi-AZでの可用性担保

特徴

AmazonRDS

初期化パラメータがある程度最適化されている

パッチ適用も簡単に実施可能

Oracle DB instance

バックアップ自動バックアップ/DBスナップショット

Page 6: 20161005_Oracle/SQL Serverの AWS への移行 ~その選択肢と注意事項~ by 株式会社インサイトテクノロジー 宮地敬史

Amazon RDS

固定パブリックIPアドレスを使用できない

再起動/Failover時に何らかの対処が必要になる場合あり

SSH(SCP)接続ができない既存の仕組みでSSHやSCPで直接接続している場合は要注意

注意点

パッチ適用必須パッチはAmazonの指定期間内に適用する必要がある

データベースへの接続にはエンドポイント名を使用する

Page 7: 20161005_Oracle/SQL Serverの AWS への移行 ~その選択肢と注意事項~ by 株式会社インサイトテクノロジー 宮地敬史

Oracle Database

Oracle on EC2 AWS RDS for Oracle

バージョン/エディション

11.2.0.1 – 12.1.0.2Personal Edition使用可

11.2.0.4 – 12.1.0.2Personal Edition使用不可

DBパラメータ設定 全て設定可能 一部設定不可

管理系コマンド - 一部コマンドが異なる(次頁参照)

Oracle*NET 詳細設定可能(listener.ora,sqlnet.ora)

詳細設定不可

Oracle RAC 構成可能 構成不可

DataGuard 最大保護モード最大可用性モード最大パフォーマンスモード

構成不可 ただし、Multi-AZで最大保護モード同等+自動Failoverの動作

その他機能 全て使用可能 一部使用不可(次頁参照)

EC2 vs RDS

Page 8: 20161005_Oracle/SQL Serverの AWS への移行 ~その選択肢と注意事項~ by 株式会社インサイトテクノロジー 宮地敬史

Oracle Database

RDSだと変わる管理系コマンド

システム管理 制限セッションの有効化と無効化

共有プールのフラッシュ

バッファキャッシュのフラッシュ

セッションの切断

セッションの強制終了

グローバル名の変更

非マスターユーザーへの権限の付与

DBMS_SCHEDULER ジョブの変更

ログ管理 オンラインログファイルを切り替える

オンライン再実行ログの追加、削除、サイズ変更

強制ログ作成の設定

アーカイブされた再実行ログの保持

サプリメンタルロギング作成の設定

Page 9: 20161005_Oracle/SQL Serverの AWS への移行 ~その選択肢と注意事項~ by 株式会社インサイトテクノロジー 宮地敬史

Oracle Database

データベース管理 表領域とデータファイルの作成およびサイズ変更

デフォルト表領域/一時票領域の設定

データベースのチェックポイント機能

その他 分散復旧の設定(バージョン 11.2.0.3.v1 以降の場合)

SYS オブジェクトへの SELECT または EXECUTE 権限の付与

データベースタイムゾーンの設定

自動ワークロードリポジトリ(AWR)の使用

VPC の DB インスタンスで使用するデータベースリンクの調整

主要なデータストレージ領域での新しいディレクトリの作成

オンライン再実行ログの追加、削除、サイズ変更

DB インスタンスディレクトリのファイルの一覧表示と読取り

RDSだと変わる管理系コマンド

Page 10: 20161005_Oracle/SQL Serverの AWS への移行 ~その選択肢と注意事項~ by 株式会社インサイトテクノロジー 宮地敬史

Oracle Database

RDSでは使用できない機能使用できない機能

Oracle 11g Real Application Clusters (RAC)

Real Application Testing

Data Guard/Active Data Guard

Oracle Enterprise Manager Grid Control

Automatic Storage Management

Database Vault

Streams

Java のサポート

Locator

Oracle Label Security

Spatial

Oracle XML DB Protocol Server

Page 11: 20161005_Oracle/SQL Serverの AWS への移行 ~その選択肢と注意事項~ by 株式会社インサイトテクノロジー 宮地敬史

Oracle Database

RDSでは使用できない機能使用できない機能

Oracle 12c Real Application Clusters(RAC)

Automatic Storage Management

DataGuard/Active DataGuard

Database Vault

Javaサポート

Locator

マルチテナントデータベース

DBMS_SCHEDULER ジョブの変更

今後の機能拡張で対応されることがある為、対応機能については、都度確認してください。

Page 12: 20161005_Oracle/SQL Serverの AWS への移行 ~その選択肢と注意事項~ by 株式会社インサイトテクノロジー 宮地敬史

まとめ

以下が譲れない場合は、Oracle on EC2を選択、許容できる場合は、AWS RDS for Oracleも検討しましょう。

必要になるCPU/メモリ/Diskが足りない Oracle RACの使用 Oracle Active DataGuardの使用 RDSでは使えない機能(OracleJVM等)の使用 データベースバージョン、パッチレベルを細かく管理したい パッチ適用時のサービス断(多くて数カ月に1回) どうしてもサーバから管理したい 既存の監視・運用の仕組みを変えたくない

Page 13: 20161005_Oracle/SQL Serverの AWS への移行 ~その選択肢と注意事項~ by 株式会社インサイトテクノロジー 宮地敬史

SQLServer

SQLServer on EC2 AWS RDS for SQLServer

バージョン/エディション

SQLServer2008以降は全て(SQLServer2005も可能)

SQLServer2008R2 SP1/SP3SQLServer2012 RTM/SP2/SP3SQLServer2014 SP1 ※SEのみ

Always on 構成可能 構成不可

Log Shipping 構成可能 構成不可

ストレージ容量拡張 サポート サポートされない

EC2 vs RDS

Page 14: 20161005_Oracle/SQL Serverの AWS への移行 ~その選択肢と注意事項~ by 株式会社インサイトテクノロジー 宮地敬史

まとめ

以下が譲れない場合は、SQLServer on EC2を選択、許容できる場合は、AWS RDS for SQLServerも検討しましょう。

Always onの使用 Log Shippingの使用 RDSでは使えない機能の使用 SQLServer2014以降で、EEの機能を使用したい データベースバージョン、パッチレベルを細かく管理したい パッチ適用時のサービス断(多くて数カ月に1回) どうしてもサーバから管理したい 既存の監視・運用の仕組みを変えたくない

Page 15: 20161005_Oracle/SQL Serverの AWS への移行 ~その選択肢と注意事項~ by 株式会社インサイトテクノロジー 宮地敬史

まとめ

AWS RDSのいいところ

自動パッチ適用(OS/RDB) ⇒ 必須パッチ以外はスルーも可 バックアップ・リストアが簡単に行える

⇒ 自動バックアップ+DBsnapshot DR(DisasterRecovery)構成が簡単に行える リソース追加が簡単にオンラインで行える

Page 16: 20161005_Oracle/SQL Serverの AWS への移行 ~その選択肢と注意事項~ by 株式会社インサイトテクノロジー 宮地敬史

データベースの種類の変更?

Page 17: 20161005_Oracle/SQL Serverの AWS への移行 ~その選択肢と注意事項~ by 株式会社インサイトテクノロジー 宮地敬史

なぜ変更する?

要件に見合った機能・性能

新しいDBにチャレンジしてみたい

コスト・・・(運用コスト/ライセンスコスト)

OLTP? BI/DWH?

スケールアウトする?

Page 18: 20161005_Oracle/SQL Serverの AWS への移行 ~その選択肢と注意事項~ by 株式会社インサイトテクノロジー 宮地敬史

データベース変更時の注意事項

データ型

テーブルの命名規則

・テーブル名の長さの上限はデータベースごとに異なる・指定できる文字種が異なる・デフォルトで大文字/小文字が異なる

取り扱える値の範囲が異なる為、正しくマッピングしてあげる必要がある。

Oracle : NUMBER、MySQL/PostgreSQL : INTEGER/NUMERIC

取り扱える値の精度が異なる ⇒ 処理の結果が変わってしまうことも・・・

Oracle : date、MySQL : date/datetime、PostgreSQL : date

Oracle : timestamp、MySQL : timestamp、PostgreSQL : timestamp

Page 19: 20161005_Oracle/SQL Serverの AWS への移行 ~その選択肢と注意事項~ by 株式会社インサイトテクノロジー 宮地敬史

データベース変更時の注意事項

対応オブジェクト

一部のデータベースでは存在しないオブジェクトタイプがある

Oracle / PostgreSQLにはシーケンスはあるが、MySQLにはない

Oracleにはシノニムはあるが、MySQL/PostgreSQLにはない

SQL文の書き方

外部ジョイン ⇒ Oracleのみ、(+)でも書ける

特定範囲の行の抽出 ⇒ Oracleにはlimit句はない

できるだけ、ANSI標準SQLを使いましょう

組み込み関数

そもそも存在しない関数、同じ名前だが引数が異なる関数もある

Page 20: 20161005_Oracle/SQL Serverの AWS への移行 ~その選択肢と注意事項~ by 株式会社インサイトテクノロジー 宮地敬史

データベース変更時の注意事項

プロシージャ

基本構文自体が異なる為、改修が必要となる。

運用・保守

データベースバックアップ

定期的に行うメンテナンス処理(統計情報取得、vacuum等)

Page 21: 20161005_Oracle/SQL Serverの AWS への移行 ~その選択肢と注意事項~ by 株式会社インサイトテクノロジー 宮地敬史

データベース変更時の注意事項

オブジェクト関連の移行

データの移行

AWS DMS

これらを使うことで、データベース移行のコストを”比較的”削減できます。

AWS Schema Conversion Tool

Page 22: 20161005_Oracle/SQL Serverの AWS への移行 ~その選択肢と注意事項~ by 株式会社インサイトテクノロジー 宮地敬史

まとめ

どのデータベースに乗り換えるとしても、「期間と予算があれば」乗換自体は可能。

向いている処理

Amazon Aurora データサイズが大きいシステム大量の並列処理(OLTP/バッチ)

Amazon RedShift 巨大なデータセットOLAP, BI(集計・分析)複雑なSQLだが同時実行数が少ない

PostgreSQL OLTP処理

MySQL OLTP処理※スケールアウトに限界を感じたら、Auroraへ

やろうとしている処理に向いていないデータベースは選択しない。

Page 23: 20161005_Oracle/SQL Serverの AWS への移行 ~その選択肢と注意事項~ by 株式会社インサイトテクノロジー 宮地敬史

AWS 移行コンサルティングサービス

Page 24: 20161005_Oracle/SQL Serverの AWS への移行 ~その選択肢と注意事項~ by 株式会社インサイトテクノロジー 宮地敬史

AWSへのデータベース移行コンサルティングサービスを開始

インサイトテクノロジーでは、停止することが困難なデータベースの移行に対してレプリケーションテクノロジーを適用したミニマムダウンタイム移行を実現させてきました。実績のあるデータベース移行の知見と経験を基に急成長を続けるAWSへのデータベース移行のコンサルティングサービスを開始致します。

■ コンサルティングサービス内容

AWS RDS及び AWS EC2上に構築したデータベースへの移行アセスメント

ミニマムダウンタイムデータ移行コンサルティング

Page 25: 20161005_Oracle/SQL Serverの AWS への移行 ~その選択肢と注意事項~ by 株式会社インサイトテクノロジー 宮地敬史

AWS移行トライアルプログラム

サービス適用対応者AWSへのデータベース移行を検討されている企業様

対象社数先着5社

移行対象データベースOracle / SQLServer

コンサルティングサービス内容 AWSへのデータベース移行アセスメント データベース移行時の問題点や問題の難易度、移行にかかる時間、コストを見

積もり、レポートとして提示致します。 AWSの利用費用を一部負担します。

2ヶ月間、最大$1,000をインサイトテクノロジーが提供致します。(利用期限:2016年12月末)

お申し込みはこちら: http://www.insight-tec.com/service/db-consulting.html

Page 26: 20161005_Oracle/SQL Serverの AWS への移行 ~その選択肢と注意事項~ by 株式会社インサイトテクノロジー 宮地敬史

記載されている会社名、サービス名、製品名は、株式会社インサイトテクノロジーおよび各社の商標または登録商標です。

Copyright 2016 Insight Technology, Inc. All Rights Reserved.