Царство (база данных)
Оригинальный автор(ы) | Александр Стигсен и Бьярне Кристиансен |
---|---|
Разработчик(и) | МонгоДБ Инк. |
Первоначальный выпуск | январь 2017 г |
Репозиторий | github |
Написано в | С++ |
Тип | База данных объектов |
Лицензия | Лицензия Апач 2.0 |
Веб-сайт | область |
Realm — с открытым исходным кодом объектными базами данных система управления , изначально для мобильных операционных систем ( Android / iOS ). [ 1 ] но также доступен для таких платформ, как Xamarin , [ 2 ] Реагировать Нативный , [ 3 ] и другие, [ 4 ] [ 5 ] включая настольные приложения ( Windows [ 6 ] ). Он распространяется по лицензии Apache .
В сентябре 2016 года было объявлено о мобильной платформе Realm , а в январе 2017 года вышла первая стабильная версия. Она обеспечивает двустороннюю синхронизацию между объектным сервером Realm. [ 7 ] [ 8 ] и клиентские базы данных, принадлежащие данному вошедшему в систему пользователю. И разработчик, и коммерческое издание [ 9 ] был выпущен вместе с бизнес-лицензией [ 10 ] для интеграции с другими системами управления базами данных, такими как PostgreSQL . [ 11 ] [ 12 ]
Весной 2019 года MongoDB приобрела Realm за 39 миллионов долларов США. [ 13 ]
История
[ редактировать ]Разработка Realm началась в конце 2010 года Александром Стигсеном вместе с Бьярном Кристиансеном. [ 14 ] под названием TightDB. Компания стартовала в 2011 году в Y Combinator . [ 15 ] Он рекламировался как NoSQL с настраиваемой надежностью и возможностью совместного использования одних и тех же групп данных между несколькими процессами, а также даже с несколькими устройствами и кластерами.
TightDB переименовала свой продукт в Realm в сентябре 2014 года и выпустила его для публичного тестирования. В марте 2015 года стало известно о финансировании в размере около 20 миллионов долларов. [ 15 ] [ 16 ]
Realm упоминался в какой-то отраслевой прессе . [ 17 ] [ 18 ] в том числе другими фирмами, такими как IBM . [ 19 ]
Realm анонсировала версию 1.0 в июне 2016 года и выпустила платформу для двусторонней синхронизации в реальном времени (бета-версия в сентябре 2016 года, выпуск в январе 2017 года). [ 20 ] и предоставил Node.js SDK для серверных приложений. [ 21 ]
В мае 2017 года UWP было объявлено о поддержке .
Функции
[ редактировать ]Наиболее примечательными особенностями Realm являются следующие:
- Поскольку Realm является хранилищем объектов, его типизированные API-интерфейсы для конкретного языка отображают типизированные объекты непосредственно в файл Realm, поэтому в качестве определения схемы используются классы.
- Отношения между объектами допускаются посредством «ссылок». Каждая «ссылка» создает «обратную ссылку» как обратную связь с объектами, ссылающимися на текущий объект.
- Результаты запроса, возвращаемые Realm, представляют собой локальные представления текущей «версии базы данных» (поскольку Realm обрабатывает параллелизм с архитектурой MVCC ), и эти представления «автоматически обновляются», когда транзакция фиксируется из любого потока , если Realm может это сделать. обновить версию своего экземпляра (что возможно в потоках, которые могут получать уведомления об изменениях). Когда это происходит, Realm вызывает прослушиватели изменений, которые добавляются к результатам его запроса (если они изменились).
- Каждое локальное представление потока возвращает прокси-объекты, которые читают или записывают в базу данных только при вызове метода доступа, что означает, что весь доступ к базе данных загружается с отложенной загрузкой. Запись разрешена только во время транзакции записи.
- Поскольку каждый результат запроса и каждый прокси-объект представляют собой представление базовых данных, любые изменения, внесенные в базу данных, отражаются во всех объектах, которые указывают на одни и те же данные. Realm обычно называет такое поведение «архитектурой с нулевым копированием» (наряду с ранее упомянутым доступом к данным с отложенной загрузкой).
Поддержка языков программирования
[ редактировать ]- Цель-C
- Быстрый
- Java ( только для Android )
- Котлин (Мультиплатформенный [ 22 ] )
- C# ( Xamarin , Win32, UWP )
- JavaScript ( Node.js , React Native )
- С++
Ссылки
[ редактировать ]- ^ «Realm: современная объектно-ориентированная база данных для мобильных приложений» . Проверено 22 апреля 2017 г.
- ^ «Платформа мобильных баз данных Realm теперь поддерживает Microsoft Xamarin» . Гуру . Проверено 22 апреля 2017 г.
- ^ «Realm: Представляем Realm React Native» . Проверено 22 апреля 2017 г.
- ^ «Область: Microsoft Xamarin 1.0, Azure, Windows Desktop» . Проверено 22 апреля 2017 г.
- ^ «Мобильная платформа Realm поддерживает Xamarin, Microsoft Azure – ADTmag» . АДТмаг . Проверено 22 апреля 2017 г.
- ^ «Использование мобильной базы данных Realm в преобразованном настольном приложении с Desktop Bridge» . Консультационная группа по приложениям . Проверено 22 апреля 2017 г.
- ^ Кепес, Бен. «Realm расширяет предложение мобильных баз данных с помощью Object Server» . Сетевой мир . Проверено 22 апреля 2017 г.
- ^ «Realm расширяет предложение мобильных баз данных с помощью Object Server | Блог о разнообразии — SaaS, облачная стратегия и бизнес-стратегия» . www.diversity.net.nz . Проверено 22 апреля 2017 г.
- ^ «Realm запускает коммерческую версию своей мобильной базы данных — SiliconANGLE» . КремниевыйУГОЛ . 19 января 2017 г. Проверено 22 апреля 2017 г.
- ^ «Realm использует мобильную базу данных с открытым исходным кодом и превращает ее в корпоративную платформу – ADTmag» . АДТмаг . Проверено 22 апреля 2017 г.
- ^ «Realm обеспечивает работу PostgreSQL в режиме реального времени с помощью нового коннектора» . Тенденции и приложения баз данных . 21 марта 2017 г. Проверено 22 апреля 2017 г.
- ^ «Платформа разработки мобильных приложений Realm связана с PostgreSQL для связи с корпоративными данными – новый стек» . Новый стек . 21 марта 2017 г. Проверено 22 апреля 2017 г.
- ^ Миллер, Рон. «MongoDB приобретет мобильную базу данных с открытым исходным кодом Realm за 39 миллионов долларов» . techcrunch.com . Проверено 25 апреля 2019 г.
- ^ «Стартап, запущенный 9 месяцев назад бывшими инженерами Nokia, сходит с ума» . Бизнес-инсайдер . Проверено 22 апреля 2017 г.
- ^ Перейти обратно: а б Рон Миллер (24 марта 2015 г.). «Realm может расширить свое присутствие с помощью инвестиций в 20 миллионов долларов» . Технический кризис . Проверено 21 мая 2017 г.
- ^ «Форма D: Уведомление об освобождении от уплаты налогов» . 30 марта 2015 г. Проверено 21 мая 2017 г.
- ^ Крилл, Пол. «Realm возрождает базу данных объектов для мобильной разработки» . Инфомир . Проверено 22 апреля 2017 г.
- ^ Томас Клэберн (29 сентября 2016 г.). «Realm — база данных, о которой вы, возможно, не слышали, но она есть у разработчиков приложений — рекламирует облачную платформу» . Регистр . Проверено 21 мая 2017 г.
- ^ «Мобильное приложение для визуального распознавания с Watson, Realm и Swift – IBM OpenTech» . IBM ОпенТех . 12 декабря 2016 г. Проверено 22 апреля 2017 г.
- ^ «Realm: Представляем мобильную платформу Realm» . Проверено 22 апреля 2017 г.
- ^ «Realm выпускает объектную базу данных для Node.js» . ИнфоQ . Проверено 22 апреля 2017 г.
- ^ Realm/realm-kotlin , Realm, 27 июля 2024 г. , получено 27 июля 2024 г.