В конце апреля MongoDB объявили о покупке Realm — кроссплатформенной мобильной базы данных. В сегодняшнем материале — о том, как компании подошли к сделке и что планируют.


/ PxHere / PD

Что за сделка


Realm (ранее tight.db) — это датский стартап, основанный в 2011 году. Он занимается разработкой базы данных с открытым исходным кодом, которая обеспечивает объектное хранение информации мобильных приложений. Решение является мультиплатформенным и предназначено для Android и iOS. У Realm хорошая документация и есть примеры на GitHub.

За время работы стартап привлек более 40 млн долларов инвестиций от венчурных фирм Y Combinator, Khosla Ventures и Greylock Partners. Сегодня решение Realm используется в мобильных приложениях таких компаний, как Google, Starbucks, Netflix, McDonald's и eBay.

Предпосылкой сделки Realm и MongoDB стало желание последней расширить влияние в сфере мобильных разработок. Осенью прошлого года компания представила свою базу данных MongoDB Mobile. Однако продукт не обрел большой популярности. В интервью крупному новостному агрегатору CTO компании Элиот Горовиц (Eliot Horowitz) рассказал, что многие клиенты все равно выбирали продукт Realm в процессе мобильной разработки.

Тогда в MongoDB решили объединить усилия с датским стартапом, начав прорабатывать условия сделки. В итоге компании сошлись на цене в 39 млн долларов.

На что она повлияет


Производительность решений. Одной из ключевых особенностей Realm является zero copy — база поддерживает операции, во время выполнения которых процессор не копирует данные из одной области памяти в другую. Другой важный компонент — MVCC. Это — механизм, обеспечивающий параллельный доступ к данным. Все пользователи оперируют своими персональными образами БД (которые потом синхронизируются), не блокируя работу с транзакциями записи/чтения.

По некоторым оценкам, скорость обработки запросов в Realm отличается от аналогов (SQLite, greenDAO, OrmLite) в восемь раз. При этом база Realm работает с так называемыми живыми объектами — если данные в базе обновляются, то обновляются и все объекты в коде, которые на них ссылаются.

Эти особенности позволят MongoDB предлагать своим клиентам более производительные решения для разработки высоконагруженных приложений. Например, новые возможности откроются для IaaS-провайдеров, использующих продукты компании.

Интеграция. Realm обладает набором API, который дает разработчикам возможность выстраивать бизнес-логику приложения на любом языке программирования. Плюс мобильная база данных Realm поддерживает iOS, Android, JavaScript веб-приложения и Xamarin.

MongoDB тоже представляет собой кроссплатформенную документно-ориентированную базу данных типа NoSQL. Поэтому неудивительно, что компания планирует интегрировать функциональность Realm с некоторыми из своих коммерческих продуктов. Новые возможности в скором времени появятся в облачной базе данных MongoDB Atlas и бессерверной вычислительной платформе Stitch, автоматизирующей генерацию мобильных push-уведомлений.

Развитие сообщества. Объединив усилия в разработке мобильной базы данных, компании надеются представить решения, которые со временем станут своеобразным стандартом для подключенных сервисов нового поколения.

«Слияние позволит MongoDB расширить свое влияние в сообществе разработчиков. Realm имеет базу из 100 тыс. активных пользователей, — комментирует Сергей Белкин, начальник отдела развития провайдера виртуальной инфраструктуры 1cloud.ru. — Realm, в свою очередь, получит новые технические возможности для развития и сможет оперативнее обновлять свой продукт».

К слову, на последнее очень рассчитывают разработчики, которые планируют использовать Realm в продакшн-среде. На сегодняшний день мобильная база данных испытывает определенные проблемы с производительностью. Например, в случае сбоя восстановление системы порой занимает несколько часов. Ряд багов, вызывающих такое поведение, не могут исправить уже долгое время. Сообщество рассчитывает, что MongoDB помогут Realm исправить ситуацию и решить вопросы со стабильностью и технической поддержкой.


/ PxHere / PD

Что еще происходит на рынке


С начала года в индустрии произошло ее несколько крупных сделок. В конце января Microsoft объявили о приобретении компании Citus Data, которая занимается разработкой реляционной базы данных на основе PostgreSQL. Citus Data была основана в 2010 и прошла через инкубатор Y Combinator. ИТ-гигант планирует использовать наработки стартапа, чтобы получить конкурентное преимущество на рынке облачных технологий.

Активно осваивать направление, связанное с хранением данных, начали и в Alibaba. Еще два года назад корпорация купила MariaDB — альтернативу MySQL, а в начале 2019-го она приобрела немецкий стартап Data Artisans, специализирующийся на работе с большими данными. У стартапа есть собственная платформа dA для потоковой обработки данных на базе опенсорсного Apache Flink, которой пользуются Netflix, ING Group и Uber. Китайская корпорация также планирует задействовать возможности продуктов Data Artisans в своих решениях.

Можно предположить, что до конца этого года мы услышим о других крупных сделках. В результате на рынке появится больше продуктов для облака и облачных систем, которые позволят эффективнее решать бизнес-задачи в виртуализированной среде.

Больше интересного в наших блогах и профилях в соц. сетях:

Как работает сжатие в объектно-ориентированной архитектуре памяти

Снимок черной дыры в контексте виртуализации
Как создать провайдера виртуальной инфраструктуры
Мифы об облачных технологиях. Часть 1

Короткий ликбез: что такое Continuous Delivery
Как защитить сервер в интернете: опыт 1cloud.ru
Как у нас все устроено: дайджест от 1cloud

Комментарии (0)