AWS、Amazon PrimeやKindle、Alexaなどで使用していた約75ペタバイト7500のOracleデータベースをダウンタイムなしで自社データベースサービスへ移行したと報告
AWSはAmazon PrimeやAmazon Music、Alexa、Kindleなどを含む同社のコンシューマ向けビジネスで使われていた75ペタバイト、7500個以上のOracleデータベースを、ダウンタイムなしでAWSのデータベースサービスであるDynamoDBやAman RDS、Aurora、Redshiftなどへ移行したことを明らかにしました。
下記は今回移行を完了したシステムです(「Migration Complete – Amazon’s Consumer Business Just Turned off its Final Oracle Database」から引用)
This includes well-known customer-facing brands and sites such as Alexa, Amazon Prime, Amazon Prime Video, Amazon Fresh, Kindle, Amazon Music, Audible, Shopbop, Twitch, and Zappos, as well as internal teams such as AdTech, Amazon Fulfillment Technology, Consumer Payments, Customer Returns, Catalog Systems, Deliver Experience, Digital Devices, External Payments, Finance, InfoSec, Marketplace, Ordering, and Retail Systems.
これによって同社はコンシューマビジネス向けに社内システムで使われていたOracleデータベースを一掃したことも、あわせて報告しました。
RDBからシステムごとに異なる多様なDBへ移行
この移行作業で興味深い点は2つあります。1つは、もともとOracleデータベースという1種類のデータベースから、複雑な購入処理、カタログ管理、注文処理、経理、ビデオストリーミングなどのシステムの目的別にさまざまな種類のデータベースへ移行した点です。
1990年代にリレーショナルデータベースが普及した後、2010年代になっていわゆるNoSQLが注目されるまでは、業務システムのデータベースとしてリレーショナルデータベース以外の選択肢はほとんどありませんでした。今回の移行作業前のシステムは、まさにそうなっています。
しかし現在では上の図にあるように、本番システムへ投入できる品質に到達したさまざまな種類のデータベースが存在します。これをシステムごとに適切に使い分けることが現在のベストプラクティスとなっており、今回のAmazon社内システムの移行作業においてもそれが明確な形で示されたことになります。
もう1つの注目点は、この移行が利用者へのサービスに影響することなく、ダウンタイムなしで完了したと説明されている点です。これがどのような方法で実現されたのかの説明は残念ながら明かされていませんが、お金が絡むような厳密なトランザクション処理を含むこれだけの規模、種類、多様なサービスのすべてをダウンタイムなしで移行したことは、AWSの持つ技術力と実行力を示すのに十分なものだといえるでしょう。
AWSはこの移行によってデータベースにかかるコストを60%以上削減し、顧客に対するサービスのレイテンシが40%減少、データベース管理のオーバーヘッドも70%減少したと説明しています。
あわせて読みたい
マイクロソフト、マイクロサービス開発を容易にする「Dapr」をオープンソースで公開。サービス間呼び出し、ステート管理、サービス間メッセージングなど提供
≪前の記事
Google開発主導のビルドツール「Bazel」がバージョン1.0に到達、次期Angluarでも正式採用へ