rdbをaws上に移行する...

116
RDBAWS上に移行する ITライブラリーより pdf 100冊) http://itlib1.sakura.ne.jp/ (全110ページ)

Upload: others

Post on 25-Jan-2021

0 views

Category:

Documents


0 download

TRANSCRIPT

  • RDBをAWS上に移行する

    ITライブラリーより (pdf 100冊)http://itlib1.sakura.ne.jp/

    (全110ページ)

    http://itlib1.sakura.ne.jp/

  • 本資料の関連資料は下記をクリックして

    PDF一覧からお入り下さい。

    ITライブラリー (pdf 100冊)http://itlib1.sakura.ne.jp/

    目次番号 453番 AWS詳細解説 全33冊 計6,100ページ

    2

    http://itlib1.sakura.ne.jp/

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

  • 11

  • 12

  • 13

  • 14

  • 15

  • 補足: マルチAZデプロイメント

    Amazon RDS Multi-AZ 配置は、データベース(DB)インスタンスの

    拡張された可用性と持続性を提供し、運用データベース作業負荷に

    自然に適合させます。

    16

  • Multi-AZ DB インスタンスをプロビジョニングすると、Amazon RDS は

    自動的にプライマリ DB インスタンスを作成すると同時に、異なる

    アベイラビリティーゾーン(AZ)のスタンバイインスタンスにデータを複製します。

    各アベイラビリティーゾーンは、その独自の、物理的にはっきりと

    独立したインフラストラクチャ上で稼動しています。

    また高い信頼性を保つように設計されています。

    17

  • インフラストラクチャ障害の場合(インスタンスハードウェア障害、ストレージ障害、

    ネットワーク破壊など)、Amazon RDS はスタンバイに自動的にフェイル

    オーバーするので、フェイルオーバーするとすぐにデータベースの動作を

    再開できます。

    フェイルオーバー後も DB インスタンスのエンドポイントは変わらないため、

    ユーザーのアプリケーションは、手動での管理を行うことなくデータベース

    オペレーションを再開することができます。

    18

  • 19

  • 20

  • 21

  • リードレプリカ

    一部のDBエンジン(MySQL、PostgreSQL、MariaDB)では、読み取り専用

    データベースのリードレプリカを構成できます。

    リードレプリカにより読み取り処理を スケールアウトできるようになります。

    補足:

    22

  • MySQL、MariaDBの場合が、リージョンを超えてレプリカを構成する

    こともできます。

    Oracleの場合は GoldenGateを使用するとレプリカを構成することができます。

    23

  • 24

  • 25

  • 26

  • 27

  • 28

  • 補足: シェルログイン

    シェルログイン とは、サーバにログインし、UNIXコマンド(SSH)でサーバを

    遠隔操作する機能です。

    ファイルの一括処理など、プログラミング等と同じ記述でサーバを

    操作することが可能です。

    29

  • 補足: シェル 【 shell 】

    シェルとは、コンピュータのOS(オペレーティングシステム)を構成するソフトウェアの

    一つで、利用者からの操作の受け付けや、利用者への情報の提示などを

    担当するもの。

    転じて、OS以外のソフトウェアについても、その操作や表示を担当する機能や

    ソフトウェア部品などのことを シェル と呼ぶことがある。

    30

  • シェルは入力装置などによる利用者の操作を受け付けて、対応する動作を

    OSカーネルや他のソフトウェアに指示したり、それらからの出力を画面に

    表示するなどして利用者に伝える。

    簡易なプログラムなどを記述して与えることで操作を自動化することができる

    ようになっていることが多い。

    31

  • 主にキーボードからの文字入力や画面への文字表示を用いる方式を

    CUI(Character User Interface)あるいはCLI(Command Line Interface)、

    主に画面上に表示された図形や画像などをマウス操作や画面へのタッチ

    などで指定して操作する方式をGUI(Graphical User Interface)という。

    32

  • OSの種類により、シェルがカーネルなどと一体のパッケージとして提供される

    ものと、UNIX系OSのように、機能や使い勝手の異なる複数のシェルがあり、

    利用者が選べるようになっているものがある。

    33

  • 補足: 初期化パラメータ

    初期化パラメータはOracleのインスタンスおよびデータベースの構成を

    記述したリストで、テキスト形式の「初期化パラメータ・ファイル」と

    バイナリ形式の「サーバー・パラメータ・ファイル」の2種類あります。

    インスタンスを起動するには、このどちらかを読み取る必要があります。

    初期化パラメータを調整することで、最適なパフォーマンスを得ることが

    可能になります。

    34

  • 35

  • 36

  • 37

  • 38

  • Amazon Elastic Block Store (EBS)

    Amazon Elastic Block Store(Amazon EBS)は、AWS クラウドの

    Amazon EC2 インスタンスで使用するための永続的なブロックレベルの

    ストレージボリュームを提供します。

    補足:

    39

  • コンポーネントに障害が発生した場合でも高い可用性と耐久性を提供

    できるように、各 Amazon EBS ボリュームは アベイラビリティーゾーン内で

    自動的に レプリケートされます。

    40

  • Amazon EBS ボリュームは、作業負荷の実行に必要な安定した

    低レイテンシーのパフォーマンスを提供します。

    Amazon EBS を使用すると、使用量の拡張または縮小を分単位で行う

    ことができます。

    プロビジョニングしているサイズに合わせて、低料金で利用できます。

    41

  • 補足: Amazon EBS 最適化インスタンス

    Amazon EBS 最適化インスタンスは、最適化された設定スタックを使用し、

    追加の専用の容量を Amazon EBS I/O に提供します。

    この最適化により、Amazon EBS I/O と、インスタンスからのその他の

    トラフィックとの間における競合を最小化して、EBS ボリュームに最適な

    パフォーマンスが実現されます。

    42

  • EBS 最適化インスタンスは、Amazon EBS に対して所定のスループットを

    実現するものであり、インスタンスタイプに応じて 500 ~ 4,000 Mbps の

    範囲内で選択できます。

    EBS 最適化インスタンスにアタッチする場合、汎用 SSD ボリュームについては、

    指定した年うちの 99% で、そのベースラインパフォーマンス と

    バーストパフォーマンスの 10% 以内で実現されるように設計します。

    43

  • また、Provisioned IOPS SSD ボリュームについては、指定した年の

    うちの 99% で、プロビジョニングされたパフォーマンスの 10% 以内で

    実現されるように設計します。

    44

  • 45

  • 46

  • 47

  • 48

  • 49

  • 50

  • 51

  • 補足: Oracle SQL Developer

    Oracle SQL Developerは、SQL PlusのGUIバージョンです。

    データベース開発者は、Oracle SQL Developerを使用して基本的なタスクを

    簡単に実行できます。

    52

  • Oracle SQL Developerでは、データベース・オブジェクトの参照、作成、

    編集と削除、SQL文およびスクリプトの実行、PL/SQLコードの編集と

    デバッグ、データの操作とエクスポート、レポートの表示と作成を

    行うことができます。

    53

  • 標準のOracle Database 認証を使用して、任意のターゲット Oracle Database

    スキーマに接続できます。

    接続後、データベース内のオブジェクトに対して操作を実行できます。

    54

  • MySQL、Microsoft SQL Server、Microsoft Accessなど、

    特定の(Oracle以外の)サード・パーティ・データベースのスキーマに接続して、

    これらのデータベースのメタデータおよびデータを表示できます。

    また、サード・パーティ・データベースをOracleに移行できます。

    55

  • 56

  • 57

  • 58

  • 補足: マテリアライズドビュー 【 materialized view 】

    マテリアライズドビューとは、リレーショナルデータベースで、テーブルからの検索

    結果であるビューにある程度の永続性を持たせ、参照するごとに再検索しなくても

    いいようにしたもの。

    あるビューを頻繁に参照する場合に、毎回検索処理を実行しなくてよくなるため

    性能が向上する。

    59

  • テーブルから特定の条件に基づいて一部のデータを抜き出し、あたかも一つの

    新しいテーブルのように表したものをビューというが、一般的なビューは

    一度参照すると消滅し、同じ条件のビューをもう一度参照する場合は

    再度同じ検索・抽出をやり直さなければならない。

    マテリアライズドビューは作成されたビューをメモリのキャッシュ領域などに保存し、

    再検索せずに何度も参照できるようにしたもので、元になるテーブルが

    更新されると更新内容が反映される。

    60

  • また、一種のテーブルとして振る舞うため、テーブルで利用できる機能

    ( のうち、ビューでは利用できないもの ) のほとんどを利用できるのも

    通常のビューより便利な点となっている。

    61

  • 62

  • 63

  • 64

  • 65

  • 66

  • 67

  • 補足: SQL Loader

    SQL LoaderはOracleが標準で提供するユーティリティ。

    外部ファイルのデータを表にロードすることができる。

    様々なデータ形式のデータ・ファイルに対応しており、複数のデータ・ファイルからの

    ロードや複数の表へのロードなどもサポートしている。

    68

  • また、大量のレコードを取り込む場合、IMPORTユーティリティで

    インポートするとかなりの時間がかかるが、SQL Loaderで取り込むと

    びっくりするぐらい短い時間で取り込めたりする。

    69

  • 70

  • 補足: メタデータ 【 metadata 】

    メタデータとは、データについてのデータ。あるデータそのものではなく、その

    データに関連する情報のこと。

    データの作成日時や作成者、データ形式、タイトル、注釈などが考えられる。

    データを効率的に管理したり検索したりするために重要な情報である。文書や画像

    などを保存するファイル形式の多くは、ファイルの先頭にメタデータを格納し、

    続いてデータ本体を格納するようにできている。

    71

  • 補足: DDL 【 Data Definition Language 】 データ定義言語

    DDLとは、コンピュータで用いられる人工言語の分類の一つで、

    データを格納するための構造を定義するための言語。

    データベースの構造や構成を定義するために用いられるものが多く、

    単にDDLといった場合には、リレーショナルデータベース(RDB)の制御に

    用いられるSQL言語の一部の命令群を指すことが多い。

    72

  • SQLにおけるDDLには、データベースやテーブル、ビューなどの作成を行う

    CREATE文や、削除するDROP文、変更を加えるALTER文、データを

    全削除するTRUNCATE文などが含まれる。

    これに対し、定義されたデータ構造中の個々のデータを操作する言語を

    DML(Data Manipulation Language:データ操作言語)、データへのアクセス

    権限などを制御する言語をDCL(Data Control Language:データ制御言語)

    という。

    73

  • 74

  • 75

  • 76

  • 補足: Data Pump Export

    Data Pump Export(以降、Exportユーティリティと呼びます)は、ダンプ・ファイル・

    セットと呼ばれる一連のオペレーティング・システム・ファイルにデータおよび

    メタデータをアンロードするためのユーティリティです。

    ダンプ・ファイル・セットは、Data Pump Importユーティリティによってのみ

    インポートできます。

    77

  • ダンプ・ファイル・セットは、同一システムでインポートするか、または別の

    システムへ移動してそのシステムにロードできます。

    ダンプ・ファイル・セットは、表データ、データベース・オブジェクトのメタデータ、

    制御情報を含む1つ以上のディスク・ファイルで構成されています。

    78

  • これらのファイルは独自のバイナリ形式で書き込まれています。

    Data Pump Importユーティリティは、インポート操作中、これらのファイルを

    使用してダンプ・ファイル・セット内の各データベース・オブジェクトの位置を

    特定します。

    79

  • 80

  • 81

  • 82

  • 補足: datapump expdp コマンド (エクスポート)

    ■データベース全体

    ・system ユーザで DB 全体をエクスポート

    expdp system/manager directory=DPディレクトリ full=y

    ■表領域単位

    ・system ユーザで system 表領域をエクスポート

    expdp system/manager directory=DPディレクトリ tablespaces=system

    83

  • ■スキーマ単位

    ・system ユーザで scott スキーマの所有オブジェクトをエクスポート

    expdp system/manager directory=DPディレクトリ schemas=scott

    ■テーブル単位

    ・system ユーザで scott スキーマの EMP テーブルをエクスポート

    expdp system/manager directory=DPディレクトリ tables=scott.emp

    84

  • 85

  • 補足: Tsunami UDP

    Tsunami UDP ProtocolとはTCPで接続制御を行い、UDPでデータ転送を

    行う高速ファイル転送プロトコルです。

    大規模データ転送などで利用されております。

    86

  • 87

  • 88

  • 89

  • 90

  • 補足: datapump impdp コマンド(インポート)

    インポート( impdp )

    ■データベース全体

    impdp system/manager directory=DPディレクトリ dumpfile=expdat.dmpfull=y

    ■表領域単位

    impdp system/manager directory=DPディレクトリ dumpfile=expdat.dmptablespaces=system

    91

  • ■スキーマ単位

    impdp system/manager directory=DPディレクトリ dumpfile=expdat.dmpschemas=scott

    ■テーブル単位

    impdp system/manager directory=DPディレクトリ dumpfile=expdat.dmptables=scott.emp

    ■異なるスキーマへ変更

    impdp system/manager directory=DPディレクトリ dumpfile=exp.dmpremap_schema=system:scott

    92

  • 93

  • 94

  • 補足: 外部表 (External Table) Oracle

    外部ファイルに対して、あたかもテーブルが存在するかのようにアクセスする

    ことができる。

    マニュアル上では、SQL*Loader 機能を補足する機能と位置付けになっている。

    例えば CSV ファイルの定義を CREATE TABLE で宣言するだけでローディング

    時間ゼロで即座に読み込む(アクセスする)ことができる。

    95

  • SQL Loader と大きく異なる点はテーブルとしての実体を持たない点である

    (長所であり、短所でもある)。

    SQLLoaderはデータを、メディアファイルから永続テーブルに取り込む、

    マテリアライズド・ビュー、外部表(External Table) はファイルのデータを

    テーブルが存在するように見せる ビュー と考えると、その違いをイメージ

    しやすい。

    96

  • 外部表はデータファイルを変更するとテーブルの検索結果にすぐに

    反映される。

    ファイルを表として扱うことで外部表⇒複雑な変換⇒永続表 という

    利用方法が効果的。

    97

  • 例: EDI (全銀ファイルの取り込み処理など) やデータウェアハウスシステムなどで

    定期的に外部サーバーから提供される外部ファイルのインポートとフォーマッ

    ト変換などは、独自のファイル読み込みプログラムより低コストで汎用性も

    高く、さらに高速に処理することができる。

    98

  • 99

  • 100

  • 101

  • 補足: RMAN

    Oracle Databaseでバックアップおよびリカバリ・タスクを実行し、バックア専用の

    RMANコマンドを使用して操作します。

    OSプロンプトからRMANを起動してコマンドラインで実行、または

    Oracle Enterprise Manager(EM)のGUIを使用して実行します。

    102

  • 103

  • 104

  • 105

  • 補足: Oracle GoldenGate

    Oracle GoldenGateOracle GoldenGateは、異機種データベース間で、

    データをほぼリアルタイムでデータ連携/レプリケーションするための製品です。

    ソースシステムにほとんど負荷をかけずに高速に転送することが可能です。

    106

  • ■Oracle GoldenGateの主な機能

    ①ソースデータベースからターゲットデータベースへデータ変更を伝播する機能

    ②ソースデータベースへの定義変更をター ゲットデータベースに伝播するDDLレプリケーション機能

    ③GoldenGateの稼働状況をモニタリングする機能

    ④ソースデータベースからターゲットデータベースへの初期データ移行機能

    ⑤データ変換・マッピング・フィルタリング機能

    ⑥双方向伝播時に競合検知および競合解消する機能

    107

  • 108

  • 109

  • 110

  • 111

  • 112

  • 113

  • 参考文献:

    Amazon.com, Inc.社 公開資料

    114

  • 本資料の関連資料は下記をクリックして

    PDF一覧からお入り下さい。

    ITライブラリー (pdf 100冊)http://itlib1.sakura.ne.jp/

    目次番号 453番 AWS詳細解説 全33冊 計6,100ページ

    11

    5

    http://itlib1.sakura.ne.jp/