JAWS-UG 横浜の宇宙一早い re:Invent 2022 の Recap に登壇してきました #jawsug #jawsugyokohama

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

ウィスキー、シガー、パイプをこよなく愛する大栗です。

昨日 AWS のユーザーグループである JAWS-UG 横浜が毎年恒例で開催している宇宙一早い re:Invent の Recapで登壇してきました。

JAWS-UG横浜 #48 AWS re:Invent 2022 宇宙一早いヒーローだらけRecap

ひさしぶりの英語セッションでも『読める、読めるぞ!』

いまいち英語ができない私(TOEIC:445)でも、注目しているサービスに関する論文を読むことでセッションの理解が進みます。

今回は Amazon Redshift re-invented という re:Invent で Redshift について必ず話すだろうと思われるタイトルの論文でした。

過去には Aurora の論文を読んでおくことで、難解な内容のセッションが分かりやすく感じました。みなさんもご興味のあるサービス特にどのように動いているのか?について興味があるサービスに付いて是非皆さんも論文を読んでみることをお勧めします。もし一人で読むのは大変だと思ったら周囲の人を巻き込んで皆で読みましょう。

紹介した論文の概要をご説明しておきます。

Amazon Redshift re-invented

2022年

『Amazon Redshift の再発明』

https://www.amazon.science/publications/amazon-redshift-re-invented

2013年に AWS は初のフルマネージド型のペタバイト級のエンタープライズグレードなクラウド データウェアハウスである Amazon Redshift をリリースしてデータウェアハウス業界に革新を起こしました。ここ数年で Amazon Redshift のユースケースは進化し、それに応じて一連のイノベーションを提供してきました。

システムアーキテクチャ/データ構成/クエリ処理の流れについての概説、Redshift の Managed Storage についての説明、Redshift のコンピュートレイヤー、チューニングと運用の自動化、AWS サービスとの連携などについて説明をしている論文です。

Amazon Aurora: Design considerations for high throughput cloud-native relational databases

2017年

https://www.amazon.science/publications/amazon-aurora-design-considerations-for-high-throughput-cloud-native-relational-databases

高スループットのデータ処理における中心的な制約であるネットワークに対処するために新しいアーキテクチャを導入しました。これによりネットワークトラフィック削減と高速なクラッシュリカバリ、ロスレスなレプリカへのフェイルオーバー、耐障害性、自己修復性のあるストレージを実現した方法を説明します。次に Aurora の効率的な非同期スキームによって、高価なチャティーなリカバリプロトコルを避けて多数のストレージノード間で耐久性のある状態を合意する方法を説明します。最後に Aurora を1年半以上運用した経験から最新のクラウドアプリケーションがデータベース層に期待することを紹介します。

Amazon Aurora: On avoiding distributed consensus for I/Os, commits, and membership changes

2018年

https://www.amazon.science/publications/amazon-aurora-on-avoiding-distributed-consensus-for-i-os-commits-and-membership-changes

Amazon Aurora と他のリレーショナルデータベースの違いの一つは専用のマルチテナント スケールアウト ストレージサービスに REDO 処理をプッシュすることです。それによりネットワーク トラフィックが減少し、チェックポイントとクラッシュ リカバリを回避できます。ロスレスなレプリカへのフェイルオーバーが可能になり、データベースの関与なしにリカバリするフォルトトレラントなストレージが可能になります。この論文では、不変条件を確立し、ローカルの一時的な状態を活用して Aurora はほとんどの状況で分散合意を回避する方法について説明します。

さいごに

初めて読んだ AWS に関する論文である Amazon Aurora: Design considerations for high throughput cloud-native relational databases は、Aurora のストレージの動作に関する紹介が非常に興味深く、リ読み書きやコミットの場合のLog-Structured ストレージの動作の詳細を解説しています。難解に感じましたが非常に面白く読めました。

Deep Dive セッションを興味深く見られると思いますので、皆さんも注目しているサービスに関する論文を是非読んで頂ければと思います。来年の re:Invent に向けて論文を読みましょう!