MongoDB、モバイル機器向けの軽量埋め込み型データベースを手がけるRealmを買収へ

Tony Baer (Special to ZDNET.com) 翻訳校正: 編集部

2019-04-25 10:28

 MongoDBは米国時間4月24日、モバイル機器向けに最適化した軽量の埋め込み型データベースを手がけるRealmを買収することで合意したと発表した。2010~2014年にかけて開発され、2017年に商用版がリリースされた「Realm」は、オブジェクトベースの埋め込み型データベースであり、およそ20年という歴史を持つ「SQLite」の代替としてしばしば位置付けられている。

Realm

 今回の買収の背景として、「MongoDB」はモバイルアプリケーションのバックエンドとして用いられることが多い一方、モバイル機器への組み込みに適したコンパクトなバージョンがないという点がある。Realmは、10万人以上の開発者が活発に利用している人気のプラットフォームとなっている。

 Realmは、APIを提供することで開発者が好きな言語でロジックを開発できるようにしつつ、カーネル部分をC++で構築することで高性能を追求しているコンパクトなデータベースエンジンだ。また、このデータベースは「Realm」と呼ばれるコンパクトなコンテナ内にカプセル化されている。Realmは、「~ではない」という表現でその特長が語られるデータベースだ。Realmは、テーブル内のデータオブジェクトが均一な型ではないという点で、リレーショナル(関係型)なテーブルではない。そして同様に、各オブジェクト内に明確なスキーマを有しているという点で、ドキュメントストアやキーバリューストア(KVS)ではない。

 データは、チェンジフィードやメモリーマップを通じてアップデートできる「ライブオブジェクト」として維持されるため、コードから直接ストレージに書き込め、バックエンドサーバーとの同期の際にデータのレプリケーションは発生しない。その際にサーバーは、Change Data Capture(CDC)フィードのようなアップデートをプッシュする。バックエンドはイベントハンドラーや、ビジネスロジック、企業システムに対するコネクターとして実装される。また、「PostgreSQL」「Microsoft SQL Server」用のビルド済みコネクターのほか、Node.js用やC#用のサーバSDKや、(REST APIを置換するものとしての)「GraphQL API」が用意されている。

 上述したようにRealmはSQLiteとよく比較される。Realmのベンチマークを信じると、その速度は平均で10倍に達するという。RealmはSQLベースではなく、オブジェクトベースのデータベースであり、外部キーの取り扱いが不要であるため、テーブル設計が容易である。しかし、より簡潔なオブジェクトベースのデータベースであるがゆえに、データの自動インクリメントといったより複雑な関数の定義や、クラスやフィールドの命名(厳格な文字制限が存在する)、異なるスレッドをまたがったRealmデータオブジェクトの取り扱いに対するサポートの欠如といった制約が存在している。

 MongoDBはRealmに関する計画を、6月の年次ユーザーカンファレンスで披露する予定だ。

この記事は海外CBS Interactive発の記事を朝日インタラクティブが日本向けに編集したものです。

ZDNET Japan 記事を毎朝メールでまとめ読み(登録無料)

ZDNET Japan クイックポール

マイナンバーカードの利用状況を教えてください

NEWSLETTERS

エンタープライズコンピューティングの最前線を配信

ZDNET Japanは、CIOとITマネージャーを対象に、ビジネス課題の解決とITを活用した新たな価値創造を支援します。
ITビジネス全般については、CNET Japanをご覧ください。

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]