Google App Engine がデータストアの実装を BigTable から MegaStore に移行していることが注目されています。2つの違いは何ですか?
3 に答える
この記事で説明しているように、「Megastore は、Google が BigTable の上に構築したトランザクション インデックス付きレコード マネージャーです」。
Megastore が BigTable の上に追加するものは、私が提供した URL によると (もちろん、Google がまだ公開していないことについて議論することはできません!)、App Engine アプリの観点からは簡単に確認できないものです。 App Engine が BigTable の上に独自に追加した可能性があるもの。たとえば、Megastore はトランザクション動作のためにエンティティ グループを追加しますが、App Engine にはしばらくの間、エンティティ グループがありました。App Engine が同一の API を内部でどのように実装するか、または将来的に実装するか、本当に気にしますか?
Megastore はスキーマをサポートしています... しかし、それらが App Engine アプリで利用可能になるかどうかは誰にもわかりません (そのため、間違ったタイプの組み合わせの put は、暗黙のうちに成功するのではなく、例外を発生させます)。アプリケーション レベルで実装された、あなた、あなた自身、または Google のオープンソース アプリ レベル コード。
CIDR 2011 の論文にリンクしているJames Hamilton の要約など、Megastore の詳細が明らかになりました。
既存の回答は、bigtable と megastore の違いをかなりよく説明しています。1 つだけ付け加えておきます。アプリ エンジンはビッグテーブルからメガストアに移行していません。最初からメガストアにあります。(わかりました、少なくとも、開発の非常に初期の段階から、公開される何年も前からです。)
たとえば、この 2009 年 9 月のアプリ エンジン ブログ投稿 メガストア レプリケーションを参照してください。