Realm(レルム)とは、モバイル向けオブジェクトデータベース管理システムです。
Realmは「スマートフォン」「タブレット」「ウェアラブルデバイス」などでの動作に向いているデータベース管理システムです。
モバイルデータベース「SQLite」を代替できる高速クエリが可能で、さまざまな用途として利用されています。
Realmデータベースはオープンで開発されています。
GitHub上で何千人もの開発者との協力で開発されています。
・2016年:初版リリース
・2017年:最初の安定版がリリース
・2019年:MongoDBによる買収の最終合意を締結
Realmは、さまざまなプロダクトで利用されており、10万人以上の開発者が使用し、20億回以上ダウンロードされています。
→Realm(Realm: Create reactive mobile apps in a fraction of the time)
Realmのライセンスは「Apache License 2.0」です。
詳細について、こちらを参照ください。
→GitHub →realm/realm-core →LICENSE
同様な機能を提供する製品として、次のようなものがあります。
オープンソース製品:「SQLite」など。
Realmはオブジェクトストアベースで動作します。
「型付き言語固有のAPI」は「型付きオブジェクト」を直接Realmファイルにマップします。したがって、クラスはスキーマ定義として使用されます。
オブジェクト間の関係は「リンク」を介して許可されます。
各リンクは、どのオブジェクトが現在のオブジェクトにリンクしているかの逆の関係として「バックリンク」を作成します。
「各クエリ結果」および「各プロキシオブジェクト」は基になるデータへのビューであるため、データベースに加えられた変更はすべて、同じデータを指すすべてのオブジェクトに反映されます。
Realmでは、この動作を「ゼロコピーアーキテクチャ」と呼んでいます。
このライブオブジェクトの仕組みを利用することで、常に最新のデータにアクセスできるため、リアクティブアプリケーションをシンプルに構築できます。
Realmは、各種主要プラットフォームに対応でき、さまざまなアプリに同一のデータベース機能を提供できます。
「Xamarin」「React Native」などのクロスプラットフォーム開発に対応し、Windowsデスクトップアプリケーションでも利用できます。
Realmは、以下の言語をサポートしています。
・Objective-C
・Swift
・Java
・Kotlin
・C#---Xamarin、Win32、UWP
・JavaScript---Node.js、React Native
参考元サイト
※定期的にメンテナンスを実施しておりますが、一部情報が古い場合がございます。ご了承ください。
OSS×Cloud ACCESS RANKING