Amazon Web Services ブログ

Category: Amazon RDS

RDS SQL Serverには、ワクワクする新しい2つのバックアップ機能とリストア機能があります

Amazon Relational Database Service(Amazon RDS)は、AWSクラウドでリレーショナルデータベースを実行するための主要なメカニズムです。Amazon RDS for SQL Serverは、SQL Server 2008 R2からSQL Server 2017へのSQL Serverバージョンの実行をサポートします。 RDS for SQL Serverチームは、SQL Serverのネイティブバックアップとリストアに関する2つの重要な改善点を最近リリースしました。Amazon RDSユーザーガイドに記載されているこれらのバックアップは、S3バケット内の単一の.bakファイルとして、SQL Serverデータベースの完全データベースバックアップとなっています。S3バケットを表示するためにRDS SQL Serverのアクセス許可を受けた後、RDS SQL ServerデータベースをS3バケットにバックアップできます。また、S3バケットからRDS SQL Serverにバックアップをリストアすることもできます。 ただ1つのデータベースバックアップ 標準的なスキーマまたはテーブルデータを使用してユーザーデータベースを作成する一般的な方法は、必要なスキーマとデータを作り、SQL Serverバックアップを作成することです。次に、バックアップをリストアし、繰り返し名前を変更します。これは、単一のシステム上で複数の顧客をホスティングするなどの用途に最適です。RDS for SQL Serverは、これらを同じデータベースの複写として検出し、この方法で作成したデータベースをリストアできないようにしていました。最近のネイティブバックアップおよびリストアシステムの改良により、RDSは、これらのバックアップをRDS for SQL Serverシステムにリストアできなくなりました。 同期的なネイティブリストア 最近の別の改善点として、Amazon RDS for SQL Serverの高可用性マルチAZ(HA)配置が挙げられます。RDS for SQL Serverのインストール時に、高可用性オプションを選択すると、RDSは2番目のアベイラビリティーゾーンにデータベースミラーコピーを作成します。これは、RDS for SQL Serverでサポートされている最大30のデータベースに対して実行できます。以前は、HA構成でRDS for SQL Serverへのネイティブリストアを使用した場合、プライマリーSQL Serverインスタンスでデータベースをリストアしていました。その後、ミラーリングセッションを停止して再確立します。これにより、同じシステム上の他のすべてのデータベースのミラーリングセッションも停止され、そのサーバー上のすべてのユーザーデータベースの再ミラーリングが直ちに開始されます。 新たな改良により、フルバックアップをプライマリおよびミラーパートナーサーバーの双方に同時にリストアし、2つのデータベースを迅速に同期させます。さらに、SQL Serverの同じインスタンス上の他のデータベースを停止して再ミラーリングすることもなくなりました。結果として、セカンダリサーバーがプライマリミラーサーバーと完全に同期していない場合のウィンドウが大幅に縮小されます。システムの全体的な可用性が改善します。これは、FULLリカバリーモデルのデータベースでのみ有効で、これはSQL […]

Read More

Performance Insights を使用して Amazon Aurora の MySQL のワークロードを分析する

Amazon Relational Database Service (Amazon RDS) Performance Insights を使用すれば、パフォーマンスの問題の原因だけでなく、Amazon RDS データベース上のワークロードの性質を即座に把握できます。このブログ記事では、Amazon Aurora MySQL-Compatible Edition の Performance Insights ダッシュボードを手短に見て、パフォーマンスの問題を分析する方法を学びます。前回のブログ記事「Performance Insights で Amazon RDS データベースのワークロードを分析する」では、Performance Insights へのアクセスに関する基本的な事項と、Amazon Aurora PostgreSQL-Compatible Edition でそれを使用することについて取り上げました。 以下では、Performance Insights が、Aurora MySQL データベースで実行されている負荷が示されています。この例では、負荷グラフは待機でスライスされます。待機から、どのような作業が負荷の原因となっているか、そしてCPU、I/O 読み取り、ロック、安定したストレージへの書き込み、または他のデータベースリソースからの競合によってどれくらいの負荷がかかているかがわかります。Aurora MySQL は、MySQL の Performance Schema を使用してデータベースの待機を計測します。つまり、Performance Insights を最大限に活用したい Aurora MySQL ユーザーは、MySQL Performance Schema を有効にする必要があります。RDS パラメータグループで Performance Schema を有効または無効にしたことがない場合は、Performance Insights を有効にすると、自動的に […]

Read More

EMR – Sqoop を使用して RDBMS またはオンプレミスデータを EMR Hive、S3、および Amazon Redshift に移行する

 このブログ記事では、AWS のお客様が Apache Sqoop ツールの使用によって利益を得る方法について説明します。このツールは、データをリレーショナルデータベース管理システム (RDBMS) から AWS の EMR Hadoop Distributed File System (HDFS) にインポートし、データを Hadoop で変換して、それをデータウェアハウス (例: Hive または Amazon Redshift) にエクスポートするために設計されています。 Sqoop ツールのデモを行うために、この記事では以下の 3 つのシナリオにおいて、Amazon RDS for MySQL をソースとして使用し、データをインポートします。 シナリオ 1 — AWS EMR (HDFS -> Hive および HDFS) シナリオ 2 — Amazon S3 (EMFRS)、次に EMR-Hive シナリオ 3 — S3 (EMFRS)、次に […]

Read More

ProxySQL と Percona Monitoring and Management で、Amazon RDS for MySQL のデプロイを強化する

本日は、Percona 社の Michael Benshoof 氏によるゲストブログ投稿です。Benshoof 氏によると、「Percona 社は、3 千人以上の顧客をグローバルに持ち、バイアスのない最善の企業規模サポート、コンサルティング、管理サービスおよびトレーニングを提供し、リスクと運用コストを減らす対策を提供しています。さらにオンプレミスとオープンソース環境でのオープンソースデータベースのためのソフトウェアを使って、ロックインを排除し、機敏性を高め、ビジネスの成長を可能にしています。」 」 クラウドにアプリケーションをデプロイする予定で、データ層には Amazon RDS for MySQL を利用しようと考えている? それはいい選択ですね! それでは、アーキテクチャを最大限に活用するためのベストプラクティスをいくつか見てみましょう。 Amazon RDS for MySQL とは RDS for MySQL は、アマゾン ウェブ サービス (AWS) スタック内でサービスを行う管理データベース (DBaaS) です。RDS for MySQL では、次のような細かな操作作業の多くを処理します。 バックアップ ポイントインタイムリカバリ マイナーバージョンの自動アップグレード 新しいレプリカの追加 自動フェイルオーバー (Multi-AZ を実行している場合) このように、RDS for MySQL は、クラウド上で動作するデータ層にとって最適なオプションです。よく見られるフェールオーバーは標準の Multi-AZ デプロイで対応可能はもちろんのこと、RDSの回復力と使いやすさの向上も目指すことが可能です。これらの方法により、ワークロードの増加に合わせて、よりシームレスにデプロイおよびインフラストラクチャを拡張できます。 標準的なベストプラクティス 任意のアーキテクチャ (クラウドまたは物理データセンター内にある) を一から設計する場合、不具合への対応を準備しておくことは大変重要です。障害に対する準備が整ったインフラストラクチャの設定は、耐障害性のある環境を設計する上でかなめとなります。そのため、本番でのデプロイ (または高可用性が必要なデプロイ) の場合は、少なくとも以下を実行する必要があります。 プライマリインスタンスに、Multi-AZ を指定する […]

Read More

Amazon CloudWatch を使用して Performance Insights メトリックにアラームを設定する

Amazon RDS Performance Insightsは、重要ななパフォーマンスメトリックを Performance Insights から Amazon CloudWatchに送信できる機能を、先ごろリリースしました。この機能を使うと、これらのメトリックに関するアラートを設定できます。 Performance Insights が有効になっている場合、CloudWatch に次の 3 つのメトリックが自動的に送信されます。 DBLoad DBLoadCPU DBLoadNonCPU これら 3 つのメトリックを、次に解説します。 DBLoad 最初のメトリック、DBLoadは、Performance Insights の中核となるものです。DBLoad は、同時にアクティブとなるデータベース接続数の尺度となります。この記事の中でセッションと呼んでいるアクティブな接続とは、データベースが結果を返さなかったデータベースにクエリを送信する接続のことです。クエリが送信される間、およびクエリ結果が戻される前、クエリはいくつかある状態のいずれかの状態となります。つまり、CPU 上で実行されているか、CPU を待っているか、ロックや I/O などのリソースが終了するのを待っているか、他のデータベースリソースへのアクセスを待っているかのいずれかの状態です。 クエリの処理中、通常、クエリはこれらの状態の間で切り替わります。ただし、クエリは待機するのではなく、クエリを実際に処理している CPU 上で動く時間がすべてクエリに費やされるのが理想です。同時にアクティブとなっている接続数とその接続状態を確認することで、データベースの負荷をすばやく強力に把握できます。DBLoadは、アクティブな同時データベース接続の平均数である、平均アクティブセッション (AAS) で測定します。デフォルトでは、Performance Insights ダッシュボードにある DBLoad グラフの各ポイントが、1 分以上経過した平均時間です。 DBLoadは 2 つの種類に分かれます。 DBLoadCPU は、接続が CPU 上で実行されていた時間、または CPU 上で実行準備が整っている時間を表します。 DBLoadNonCPU は、接続が I/O、ロック、データベースバッファーなどのデータベースリソースを待機していた時間を表します。 以下では、DBLoadCPU を中心にお話しします。 DBLoadCPU アラートを設定する […]

Read More

Amazon RDS for SQL Server でデータベースメールをパワーアップ – アンダーアーマーが Amazon RDS for SQL Server でデータベースメールを運用する方法

データベースメールは Microsoft SQL Server で多用される機能の 1 つです。データベースメールは、SMTP サーバーを使用することにより、SQL Server からユーザーにメッセージを送信できるようにします。ここでご紹介するソリューションは、ご使用の SQL Server ワークロードが Amazon RDS 上にある場合に、データベースメールを使用するのに役立ちます。 データベースメールの使用例: テキストメッセージを送信する テキストまたはファイル添付でクエリの結果またはレポートを送信する エラーや通知のアラートを送信する ジョブが成功または失敗したときに、SQL エージェントジョブのステータスメッセージを送信する AWS のカスタマーであるアンダーアーマー社では、SQL Server のワークロードを Amazon RDS for SQL Server に移行する手立てを模索していましたが、RDS でデータベースメールがサポートされていないことがネックとなっていました。SQL のワークロードを Amazon RDS へ移行しようとしているカスタマーにとって、この問題は致命的です。 私はアンダーアーマー社のデータアーキテクト、Leonard Humphries とともにこの問題に対処することになり、2 人で次のようなソリューションを思いつきました。私たちは集中データベースメールハブに SQL Amazon EC2 インスタンスをプロモートしたのです。こうすることで、アンダーアーマー社のデータベースメール問題を解決できました。この記事では私たちのソリューションについて解説します。 使用した AWS のサービス Amazon RDS for SQL Server 既存の SMTP […]

Read More

AWS DevDay Tokyo 2018 Database トラック資料公開

Database フリークな皆様、こんにちは!AWS DevDay Tokyo 2018 Database トラックオーナーの江川です。 2018 年 10 月 29 日(月)〜 11 月 2 日(金)にかけて、AWS DevDay Tokyo 2018 が開催されました。本記事では、11/1(木)に実施された Database トラックのセッション資料をご紹介します。 セッション資料紹介に先立ち、お客様セッションとしてご登壇いただいた、Sansan株式会社間瀬様、株式会社ソラコム安川様、Amazon Pay 吉村様にお礼申し上げます。併せて、ご参加いただいた皆様、ストリーミング配信をご覧いただいた皆様ありがとうございました。   ●お客様セッション資料 AWSサービスで実現するEightの行動ログ活用基盤(Sansan株式会社 間瀬哲也様) AWSサービスで実現するEightの行動ログ活用基盤 from Tetsuya Mase DynamoDB Backed なテレコムコアシステムを構築・運用してる話(株式会社ソラコム 安川 健太様) AWS Dev Day Tokyo 2018 | Amazon DynamoDB Backed な テレコムコアシステムを構築・運用してる話 from SORACOM,INC DynamoDBとAmazon Pay で実現するキャッシュレス社会 […]

Read More

Amazon RDS for MySQLの delayed replicationで障害から復旧を行う

Amazon RDS for MySQLでdelayed replicationをサポートしました。これにより、レプリカデータベースがソースデータベースより遅延する期間を設定できます。標準のMySQLレプリケーション設定では、ソースとレプリカの間の遅延が最小限に抑えられています。今回のアップデートで意図的な遅延を導入するオプションを選べるようになりました。 遅延は、人為的なエラーから復旧させる必要がある場合に非常に役立ちます。たとえば、誤ってプライマリデータベースからテーブルを削除した場合、レプリカで同じクエリを実行する必要はありません。テーブルが削除される直前でレプリケーションを停止し、レプリカをスタンドアロンインスタンスに昇格させることができます。このブログ記事では、delayed replicationを使用して、このようなシナリオから復旧させる方法をご紹介します。 次の図は、遅延が3600秒(1時間)に設定されたレプリカを人為的エラーから回復する方法を示しています。まず、レプリケーションを停止します。次に、ログの問題の箇所を見つけ、問題のクエリが実行される直前までトランザクションを実行し。最後に、レプリカをマスターに昇格させます。   前提条件 delayed replicationをチェックする前に、Amazon RDS for MySQLソースデータベースインスタンスでMySQL 5.6.40または5.7.22以降が必要です。また、インスタンスに接続するためのMySQLクライアントと、データベースにアクセスできる適切なセキュリティグループが必要です。 バイナリログを十分な時間保持していることを確認してください。バイナリログの詳細については、 MySQL Binary Logsを参照してください。次のコマンド例は、保持期限を24時間に設定する方法を示しています。 call mysql.rds_set_configuration(‘binlog retention hours’, 24);   シナリオの設定 既存のAmazon RDS for MySQLデータベースを既存のリードレプリカで使用するか、新しいデータベースを作成します。このブログ記事では、既存のRDS MySQLデータベースを利用し、新しい読み取りレプリカを作成します。 データベースの作成 MySQLインスタンス用のAmazon RDSをまだお持ちでない場合は、作成をしてください。クライアントマシンからのアクセスを許可するセキュリティグループを使用してデータベースを構成してください。作業したいMySQLデータベースがすでにある場合は、この手順をスキップしてください。 AWSマネージメントコンソール、AWS CLI、AWS SDK、またはAWS CloudFormationテンプレートを使用して、MySQLデータベース用のRDSを作成します。MySQLインスタンスの作成を支援する必要がある場合は、Create and Connect to a MySQL Database with Amazon RDSの手順に従ってください。次のスクリーンショットは、すでに設定されて使用可能な1つのデータベースインスタンスを示しています。 データベースに接続する マスターデータベース・インスタンスが作成されて使用可能になったら、そのデータベースインスタンスに接続します。Amazon EC2 Linuxマシンを使用している場合は、次のコマンドに示すように、いくつかの環境変数を設定して余分なタイピングを省くことができます。 export REGION=”us-west-2″ export […]

Read More

Amazon RDS Performance Insights が一般利用可能に

本日、Performance Insights が一般利用可能になったことを発表します。Performance Insights を使用すると、パフォーマンス問題が発生したときのボトルネックを簡単に特定し、対処方法を見つけることができます。

一般利用可能に合わせて、Performance Insights は次の機能を導入します。

* 7日間のパフォーマンスデータ履歴
* パフォーマンスデータの長期保持オプション
* SDKとAPIの一般公開

Read More

新機能: Amazon RDS for Oracle Database がvCPUの削減や最適化に対応

すべてのAWSサービスと同様に、Amazon RDS のロードマップは、主にお客様からのフィードバックや製品改善リクエストに基づいています。Oracle RDS for Oracle Database でデータベースワークロードを実行しているエンタープライズの複数のお客様から、私たちはフィードバックを受けました。そのフィードバックとは、物理コアに対するRAMの比率を Amazon RDS for Oracle より大幅に高くすることで、Oracleのワークロードを実行しているエンタープライズのお客様は、ソフトウェアライセンスの価値を最大化しているというものでした。

この記事の目的は、Amazon RDS 上の Oracle Database のための2つの新機能を使用することで、仮想CPU (vCPU) の数を減らし、ライセンスコストを最適化する方法を説明することです。

Read More