こんにちは。よっしーです(^^)
今日は、Auroraについて解説しています。
背景
Auroraについて調査する機会がありましたので、その時の内容を備忘として記事に残しました。
Auroraとは
AWSの Aurora は、クラウドネイティブの関係データベースエンジンです。以下が Aurora の主な特徴です。
高パフォーマンス
Aurora は MySQL および PostgreSQL 互換のデータベースエンジンで、従来の MySQL などに比べて大幅に高速です。ストレージの読み書きが高速化されており、特に読み取り処理のパフォーマンスが大幅に向上しています。
可用性と耐障害性
Aurora はストレージを自動的に複製するため、データの損失からデータベースを保護します。オンプレミスのデータベースと比較して、計画的なあるいは予期しないダウンタイムが大幅に短縮されます。
スケーラビリティ
Aurora クラスターでは、リードレプリカを最大 15 個作成することができ、読み取り能力を水平方向に簡単にスケールできます。ストレージは最大 128TBまで自動的に拡張可能です。
コスト最適化
ストレージの圧縮と効率的なキャッシングにより、データベースのストレージ容量を最大 60% 削減できます。SQL 文レベルでの自動チューニングなどにより、運用管理の手間も削減できます。
セキュリティ
AuroraはAWSのセキュリティ機能をフルサポートしており、データの暗号化、ネットワークの分離、監査ログなどを提供します。
主なユースケース
オンライントランザクション処理、電子商取引、高トラフィックウェブサイト、ビッグデータなどのエンタープライズワークロードに適しています。
従来のデータベースと比べて、AuroraはマネージドサービスとしてAWSが提供する高パフォーマンス、高可用性、スケーラビリティ、セキュリティなどの利点があり、クラウドネイティブのアプリケーションで広く活用されています。
ユースケース
Auroraのユースケースには以下のようなものがあります。
オンライントランザクション処理 (OLTP) システム
- e-コマースウェブサイト
- 金融取引システム
- リザベーションシステム
- ゲームのユーザーデータストア
OLTP系のワークロードでは、大量の同時実行トランザクション、高い可用性、短いレスポンスタイムが求められ、Auroraの高パフォーマンス、耐障害性が活かせます。
企業アプリケーション
- ERPシステム
- CRMシステム
- HRシステム
- コンテンツ管理システム
企業の基幹システムには、大量のデータ処理、高い信頼性、スケーラビリティが要求され、Auroraの特性が有効です。
ビッグデータ/データウェアハウス
- データ分析
- ビジネスインテリジェンス
- データウェアハウジング
Auroraは大規模データストアとしても活用でき、ビッグデータ分析などのデータ集約ワークロードに適しています。
バックアップ/レプリケーション
- データバックアップ
- データレプリケーション
- ディザスタリカバリ
Auroraの耐障害性の高さから、バックアップやディザスタリカバリソリューションの一部として使われることも多くあります。
高パフォーマンス、高可用性、スケーラビリティが必要で、マネージド型のクラウドDBサービスを求めるワークロードであれば、Auroraは非常に適した選択肢となります。
mysqlやpostgresqlとの違い
AuroraとMySQLやPostgreSQLとの主な違いは次のとおりです。
パフォーマンス
- AuroraはMySQLやPostgreSQLに比べて大幅に高速です。ストレージの読み書きが高速化されており、特に読み取りのパフォーマンスが大幅に向上しています。
可用性と耐障害性
- AuroraはAWSによって自動的にレプリケーションやフェイルオーバーが行われ、高い可用性と耐障害性を実現しています。
- MySQLやPostgreSQLは自身で可用性対策を行う必要があります。
スケーラビリティ
- Auroraクラスターでは読み取り専用のリードレプリカを最大15個追加でき、読み取り性能を水平方向に簡単にスケールできます。
- MySQLやPostgreSQLはスケーリングが難しく、シャーディングなどの対応が必要です。
ストレージ
- Auroraのストレージ容量は最大128TBまで自動で拡張されます。
- MySQLやPostgreSQLはストレージ容量をあらかじめ設定する必要があります。
運用
- AuroraはAWSがバックアップ、パッチ適用、ハードウェアプロビジョニングなどを自動で行うマネージドサービスです。
- MySQLやPostgreSQLはユーザー側で運用管理する必要があります。
つまり、AuroraはAWS上で高パフォーマンス、高可用性、スケーラビリティ、手軽な運用を実現するマネージドデータベースサービスであり、MySQLやPostgreSQLはオンプレミス/クラウド上で自身で可用性や運用を担保する必要があるデータベースエンジンです。
おわりに
今日は、 Auroraについて解説しました。
何か質問や相談があれば、コメントをお願いします。また、エンジニア案件の相談にも随時対応していますので、お気軽にお問い合わせください。
それでは、また明日お会いしましょう(^^)
コメント