たなかこういちの開発ノート

システム開発に携わる筆者が、あれこれアウトプットするブログ

"CRUD is dead"(死んだのは"U"と"D")と「RethinkDB」、もしくはAuroraの周辺話し

ときどき参加させていただいている「Scala勉強会」にて、OE氏(@OE_uia)より、ScalaDays 2015 in San Franciscoレポートがありました。いろいろ話はあったわけですが、その中でひとつ気になったフレーズがありました。それは、
 
 
です。
 
調べましたらTwitter上でこのような会話がされているのが見つかりました。"CRUD is dead"を唱えているのはJonas Bonér氏、Typesafe社の設立者の一人で現CTOです。会話の最後の方で、
 
"FP is nice. But this slide is about killing 'update-in-place'. Event logging is my primary tool."
 
※「FP」は「Functional Programming」です。
 
と述べています。「「更新」はもう止めて、イベントログで処理しよう」と言っているのです。
 
これはAmazon Auroraの内部アーキテクチャーたるLog-Structured Storageそのものではないですか!
 
 
別の話ですが、下記記事を見つけました。

 

Publickey、「キャッシュの大きいRDB vs インメモリデータベース、性能がどれだけ違うのか調べてみると」:
http://www.publickey1.jp/blog/09/rdb_vs.html


Auroraも巨大キャッシュを持ったRDBで、もはやIn-Memory DBが併設されているに等しいのではないか、と考えましたが、このような議論もあるのですね。最もこの記事は2009年のもの。2014年のAuroraはどのようにキャッシュを実装しているでしょうか。


 
と、その「関連記事」として次の記事が提示されていました。
 
Publickey、「SSDに最適化したデータベース「RethinkDB」、ロックもログも使わずにトランザクション実現」:
 
上記記事の元記事が下記です。
 
TechCrunch、「RethinkDBはSSD向けに最適化されたMySQL用ストレージエンジン」:
 
RethinkDBも、Log-Structured Storageを基礎としたDB製品を開発しようとしていたという話です。
 
Publickey、「SSD専用に設計された「ReThinkDB」、ロックもログも使わない新しいリレーショナルデータベースのアーキテクチャ」:
http://www.publickey1.jp/blog/10/ssdrethinkdb.html
 
しかし、2011年、
 
TechCrunsh、「SSDにこだわることをやめたRethinkDBが高速データベースを一般公開へ」:
 

なかなかビジネス展開は難しく、NoSQL DBへと転向したようです。

 
次のようなよく解説されている記事もありました。
 
「SSD時代になってRDBMSの逆襲はあるか-ReThinkDBの試みを読み解く」:
 
 
Amazon Auroraが大々的にアナウンスされた、またSSDが十分に普及しSSD自体も進化しきった現在からこれらの記事を読むと、いろいろ思いが巡るとともに、Auroraを使いこなす観点においても背景理解が進みました。
 
◆以上