Amazonは、専用ベータ版のテストを完了し、SimpleDB(リンク)というクラウドデータベースサービスのパブリック無制限ベータ版へ参入した。SimpleDBは、クラウドで簡単にアクセスされるデータベースであることを意図されており、Amazonは制限付きのアクセスを無償で提供している。
Amazonは、Elastic Compute Cloud (EC2)をSimple Storage Service (S3)と結びつけ、新たに利用可能になった公用SimpleDBサービスをクラウドのデータベースに関心がある人びとに提供する。Amazon Web Servicesエバンジェリストである Jeff Barr氏によると、SimpleDBは、EC2で実行中のアプリケーションが、スキーマを作成する必要なしに、 API(リンク)経由でS3に格納されているデータを取り出すことを可能にする。
概念上のモデルは、API(リンク)のように非常に単純である。乗り出し、コーディングを開始すれば、進行していくうちに、データモデルは精錬される。脆弱な、固定スキーマはない。各アイテムで必要な属性のみを格納する。また、コーディングをさらに容易にする、新たなクライアントライブラリがいくつかある。
SimpleDBでは、容易に大きくなる。ベータでは、ドメインを100までまた、各ドメインに10 GBのデータを持つことができる。データベースが大きくなるにつれて、複数のディスクでデータを分割する心配は不要である。それについてはひそかにおこなわれている。
Jeff氏はまた、SimpleDBを制限付きで無償提供することを発表した。
以前にも増して単純なSimpleDBでやっていくという、ビジネスの決定をした。今なら無償で始めることができる。少なくとも今後半年間は、ストレージの500 MBまで取り込むことができ、各月25マシン時間まで使用することができる。 1 GBのデータを転送して取り込むことができ、またさらに1 GBのデータを転送して出すことができる。Amazon EC2(リンク)から好きな分だけ無償でデータを送受信することができる。
また、(劇的にと言うべきだが)ストレージおよび処理費用を効果的なほど迅速に削減した。SimpleDBストレージは、毎月$0.25/GBであり、以前の月$1.50/GBから下がった。当然ながら、SimpleDBに格納されている既存のデータは、新しいレートで請求される。
SimpleDBが専用ベータとして提供された当時、Charles Ying氏はそれについてErlang上で構築されており、以下の検討(リンク)をすることを話した。
- 最終的な一貫性 - データは迅速にすべてのノードに伝播しない。待ち時間は通常、約1秒であるが、ハイデータセットや負荷が高いと、待ち時間が長くなる場合がある。そのメリットとしては、データが失われないことである。
- クエリーはlexigraphicalである - lexicographical順にデータを格納する必要がある(整数をゼロパッドし、正のオフセットを負の整数に追加し、日付をISO 8601などのように変換する)。
- 検索索引 - 検索索引用に独自の索引を構成する - SimpleDBクエリー式はテキスト検索をサポートしないので、「テキスト検索」を適切におこなうために、反転索引を構成する必要がある。これは実のところ非常に軽量な素晴らしい方法で、多くの興味深い索引付けスキームが可能になることは間違いない。
同時に、GigaOMのエディターであるNitin Borwankar氏がSimpleDB とGoogleのBigTableを比較検討し、Amazonのほうがより優れている(リンク)と、結論を述べた。
- BigTableだけでなくGoogleBase、GdiskなどGoogleの提供物はすべて、その場限りのツールという心象があり、統合された戦略が伴わない。もしくは、1つあったとしても、上手に隠れている。
- Amazon WSには、サービスとして変わりつつあるソフトウェアの側面に焦点を当てた、よく設計された基本計画がある。チェスの駒に似た各提供物は、戦略上の長期的な価値を生み出すことにフォーカスしている。SimpleDBでは、クイーンが中央に移動している。
- Amazon WSはTOYODA principleに基づいているつねに自分自身のデータを保有する。Amazon S3に加えて、SimpleDBはオープンデータにおける鋭い矢である。
- Amazon WSは、内蔵型フレキシブルな支払いシステムを搭載しているので、ユーザはアプリケーションを無償で提供することを強制されないし、 「ad-supported」モデルを準備するよう強要されることもない。これで、SimpleDBにデータベースのWebアプリケーションを構築することができるし、それに対する料金をシームレスに請求することができる。
Tersely氏が言うには、SimpleDBは非常に混乱を起こさせるということである。
SimpleDB Explorer(リンク)は、SimpleDBを通じてMySQLデータをアップロードするのに便利なインターフェイスである。Rubyの他のツール、 PythonおよびJavaデベロッパ、およびさまざまなリソースは、SimpleDB Resource Center(リンク)で入手することができる。