От переводчика: мне кажется, заголовок слегка неточный и на самом деле средний палец показали ребятам из MongoDB, которая теперь не очень то и Open Source.
Сегодня, Amazon AWS запустил продукт DocumentDB — новую базу данных, совместимую с API MongoDB. Компания описывает DocumentDB так — "быстрая, масштабируемая и отказоустойчивая документная база данных, разработанная так, чтобы быть совместимой с вашими существующими приложениями и инструментами на MongoDB". Фактически, это полная замена MongoDB, развёрнутая в AWS, которая не использует код MongoDB.
В AWS утверждают, что, хотя MongoDB отлично справляется со своими задачами, их клиентам всё же трудно создавать быстрые и высокодоступные приложения на платформе с открытым исходным кодом, которые смогут масштабироваться до нескольких терабайт и сотен тысяч операций чтения и записи в секунду. Поэтому компания создала свою собственную базу данных документов, но сделала ее совместимой с API MongoDB 3.6, распространяющимся под лицензией Apache 2.0.
Если вы следили за политикой и новостями вокруг открытого исходного кода в течение последних нескольких месяцев, вы поймете, что не все от них в восторге. Также не секрет, что AWS уже давно обвиняют в том, что он брал лучшие проекты с открытым исходным кодом, а также повторно использовал их и делал ребрендинг, не отдавая должное этим сообществам.
Проблема заключается в том, что MongoDB была одной из первых компаний, которые стремились положить этому конец, перелицензировав свои инструменты с открытым исходным кодом под новой лицензией, в которой прямо указывалось, что компании, желающие поступать так, должны покупать коммерческую лицензию. Их примеру последовали и другие.
«Подражание — это самая искренняя форма лести, поэтому неудивительно, что Amazon попытается извлечь выгоду из популярности и импульса документной модели MongoDB», — сказал нам генеральный директор и президент MongoDB Дев Иттихерия. «Тем не менее, разработчики достаточно технически подкованы, чтобы различать реальную вещь и плохую имитацию. MongoDB будет продолжать превосходить любые подмены на рынке.»
Это довольно обидный комментарий. В ноябре прошлого года Иттихерия сказал моему коллеге Рону Миллеру, что он считает, что AWS любит MongoDB, потому что он потребляет много энергии. В этом интервью он также отметил, что «последние пять лет покупатели пытались выбраться от другого крупного поставщика. Последнее, что они хотят сделать, это повторить это вновь».
Соучредитель MongoDB и технический директор Элиот Горовиц ответил на это. «Чтобы дать разработчикам то, что они хотят, AWS был вынужден предложить имитацию MongoDB, основанную на коде MongoDB, два года назад», — сказал он. «Вся наша компания сосредоточена на одном — предоставить разработчикам наилучший способ работы с данными, позволяя работать в любом месте. Наша приверженность этой единственной миссии будет и дальше отличать настоящую MongoDB от любых имитационных продуктов».
Представитель компании MongoDB также подчеркнул, что API 3.6, с которым совместима DocumentDB, уже два года, и ему не хватает большинства новейших функций, включая транзакции ACID, глобальные кластеры и мобильную синхронизацию.
Честно говоря, в последнее время AWS стал более активным в области открытого исходного кода и, в некотором смысле, дает разработчикам то, что они хотят (и не все разработчики довольны собственным hosted-сервером MongoDB). Обход лицензирования MongoDB путем сопоставления API, учитывая, что AWS точно знает, почему MongoDB сделал это (сменил лицензию), всегда был спорным шагом, и это не ведёт компанию к сообществу Open Source.
Немножко последствий
Акции разработчика систем управления базами данных (СУБД) с открытым исходным кодом MongoDB упали на 10% после того, как Amazon представила его прямого конкурента — облачный сервис DocumentDB.
На открытии торгов на нью-йоркской бирже Nasdaq в 17:30 мск 10 января стоимость акций MongoDB снизилась на 10,5%, до $77,47. Позднее им удалось немного отыграть падение. На предварительной сессии падение достигало 14%. За 2018 год акции MongoDB выросли на 200%, напоминает CNBC.
Комментарии (35)
DSolodukhin
10.01.2019 21:21их клиентам трудно создавать быстрые и высокодоступные приложения на платформе с открытым исходным кодом
Я что-то не понял, а как закрытость кода облегчает создание таких приложений? Либо предложение как-то не так построено, либо это наглое передергивание.jreznot Автор
10.01.2019 21:24Думаю упор там сделан на вторую часть предложения про масштабирование, а про Open Source это и есть передёргивание.
DSolodukhin
10.01.2019 21:34По ссылке из статьи
However, it is hard to build performant, highly available applications <...> because of the complexity that comes with setting up and managing MongoDB clusters at scale.
Ни слова про open-source, тут конкретно про проблемы MongoDB.
helgihabr
10.01.2019 21:38+3Похоже, что суть недовольства заключается в «собственном hosted-сервере MongoDB».
Теперь же AWS предоставляет DocumentDB как свой облачный сервис и клиентам не нужно тратить ресурсы (спец-ов, время, деньги) на администрирование своего сервера MongoDB.
3al
11.01.2019 20:12По косвенным признакам, оно сделано поверх Amazon Aurora. Не будет же amazon открывать всё вместе?
ReklatsMasters
10.01.2019 21:30Azure Cosmos DB выглядит интереснее, там больше апи поддерживается как минимум.
mst_72
10.01.2019 22:44+1Судя по описанию, AWS DocumentDB будет куда как лояльнее к пользователями чем Mongo Endpoint от Cosmos DB. И я ОЧЕНЬ надеюсь, что RU-проклятья пользователям AWS удастся избежать. Иначе нафиг все это надо.
sborisov
10.01.2019 23:25Что за проклятье такое?
mst_72
10.01.2019 23:44+1Часто и внезапно на невинных запросах выскакивает Request Rate is Large. Обычное решение — попытаться несколько раз повторить запрос через задержку от 1 до 10 MS или, что рекомендует MS, увеличить выделяемые на коллекцию RU. Для непартиционных коллекций особой беды нет (разве что денег больше возьмут), для unlimited при интенсивных вставках легко нарваться в размножение партиций с последующей нехваткой RU и, соответсвенно, сообщениями Request Rate is Large.
Я с этим помнится уж наигрался, так наигрался. Даже статейку задумывал написать про то, как "правильно готовить космос"… Но что-то не срослось.
fOCUS_VRN
10.01.2019 21:39-5А зачем вообще MongoDB если есть Postgres с поддержкой json и других вкусных плюшек?
helgihabr
10.01.2019 21:44+2По-моему, это вообще не туда. Здесь упор идет как раз на API, которого у PostgreSQL для этих целей нет.
Соответственно, к масштабированию здесь еще больше вопросов.
sborisov
10.01.2019 22:52Кто интересно выйграет, особенно если другие провайдеры смогут использовать DocumentDB.
alan008
11.01.2019 08:48Что всем так полюбилось это "И краткое"? Не по-русски же это.
Надо писать выИграет, биткоИн, наИлучший, наИбольший, заИметь.Jouretz
11.01.2019 10:18-3Детройт, ковбой, дедлайн, бойфренд. Но, внезапно, биткоИн? Где логика?
Old_Chroft
11.01.2019 10:48+2Ковбой и бойфренд — это, внезапно, составные слова с общим «корнем» — boy :-)
Детройт — устоявшийся перевод, биткои(й)н — не совсем устоявшийся (хотя меня самого жутко раздражает «андройд»).
alan008 же указал немного на другое: «выйграет» от какого слова произошло? Йгра?Jouretz
11.01.2019 11:03Так меня только биткойн и смутил, он как-бы единственный англицизм из перечисленных примеров там, а подгоняется под те же правила.
По правилам транскрипции, вроде, oi = ой. Так что откуда 'биткоин' мне не особо понятно.
alan008
11.01.2019 12:54Сейчас призадумался, отчасти вы правы, в похожих английских словах boil, soil действительно слышится скорее И краткое, чем И, но в словах coin, loin всё равно хочется произнести длинное И. Это связано либо с особенностями произношения — звукосочетание "ОИН" проще произнести, чем "ОЙН" (именно когда буква Н на конце), при этом в сочетаниях с другой буквой (например Л — ОЙЛ) и-краткое произносится легче. Либо может быть другая причина, такая, что в русском языке совсем нет слов, заканчивающихся на -ОЙН (я не смог придумать), но при этом есть слова, заканчивающиеся на -ОИН (например, вОИН) и куча слов, заканчивающихся просто на ИН (одИН, блондИН, хозяИН и куча других). Так что с т.з. английского языка наверно ближе "койн", но когда мы транскибируем на русский, это всё-таки "коин".
poxvuibr
11.01.2019 14:20но в словах coin, loin всё равно хочется произнести длинное И
Мне не хочется.
Это связано либо с особенностями произношения
Если у кого-то такие особенности есть, может быть связано, да.
Либо может быть другая причина, такая, что в русском языке совсем нет слов, заканчивающихся на -ОЙН
Ну и сразу приходит на ум слово "войн" которое множественное число родительный падеж от слова война. И нормально произносят все и никому даже в голову не приходит, что это неудобно.
но при этом есть слова, заканчивающиеся на -ОИН (например, вОИН)
Есть, их, правда, относительно немного. Хотя, если брать все словоформы, может и прилично наберётся.
ак что с т.з. английского языка наверно ближе "койн", но когда мы транскибируем на русский, это всё-таки "коин".
Если бы вы привели пример другого слова, которое уже давно транскрибируется на русский с -оин, хотя в английском -ойн — наверное ещё можно быть решить, что какая-то традиция таки когда-то была. А так биткойн он и в Африке биткойн.
fedorez
11.01.2019 16:33хотя в английском -ойн
Тут не в английском дело. Слово «коин» в значении «монета, монетоподобный жетон» довольно давно было притащено в русский язык, в нумизматику и всё такое из латыни, возможно через немецкий, где оно именно что «коИн». А биткоин просто унаследовал. imho.poxvuibr
11.01.2019 17:53Слово «коин» в значении «монета, монетоподобный жетон» довольно давно было притащено в русский язык, в нумизматику
Да ну? Можно ссылку на словарь, где это слово упомянуто?
латыни, возможно через немецкий, где оно именно что «коИн»
Как переводится на немецкий английское слово coin? Или русское слово монета?
Jouretz
11.01.2019 17:06Ставь лайк, если считаешь, что иностранные слова заимствуются по правилам транскрипции.
Ставь дислике, если считаешь, что иностранные слова заимствуются по правилам транслитерации.
Обмен биткоинами через блокчеины проупградеился =_=
amarao
11.01.2019 13:20Меня вообще забавляет ситуация, когда проприетарная компания пытается натянуть на себя кусочек opensource-риторики.
Free Software позволяет использовать и модифицировать ПО не думая про проприетарные ограничения. Сценарий применения aws'ом был абсолютно нормальным для opensource.
Я вообще не понимаю, как mongodb может изображать из себя борца за справедливость, если на продаёт лицензии не отчисляя ни копейки авторам зависимостей:
Depends: libboost-filesystem1.65.1, libboost-program-options1.65.1, libboost-system1.65.1, libc6 (>= 2.15), libgcc1 (>= 1:3.4), libgoogle-perftools4, libpcrecpp0v5 (>= 7.7), libsnappy1v5, libssl1.1 (>= 1.1.0), libstdc++6 (>= 6), libstemmer0d (>= 0+svn527), libyaml-cpp0.5v5, zlib1g (>= 1:1.2.0)
Тут уж либо трусики одеть, либо крестик снять.
DerRotBaron
11.01.2019 15:13Проприетарщики из Mongo своей лицензией не оставили нормальных вариантов использования Mongo как OpenSource SaaS-провайдерам.
13. Offering the Program as a Service.
If you make the functionality of the Program or a modified version available to third parties as a service, you must make the Service Source Code available via network download to everyone at no charge, under the terms of this License. Making the functionality of the Program or modified version available to third parties as a service includes, without limitation, enabling third parties to interact with the functionality of the Program or modified version remotely through a computer network, offering a service the value of which entirely or primarily derives from the value of the Program or modified version, or offering a service that accomplishes for users the primary purpose of the Program or modified version.
“Service Source Code” means the Corresponding Source for the Program or the modified version, and the Corresponding Source for all programs that you use to make the Program or modified version available as a service, including, without limitation, management software, user interfaces, application program interfaces, automation software, monitoring software, backup software, storage software and hosting software, all such that a user could run an instance of the service using the Service Source Code you make available.
То есть чтобы предлагать Монгу как сервис, теперь нужно использовать только софт под пермиссивными лицензиями. Отваливаются не только Linux, но и GNU в составе *BSD, да и сами *BSD не могут эксплуатироваться с ZFS.
inkvizitor68sl
11.01.2019 16:01Там всё намного хуже, чем написано.
> management software
> all such that a user could run an instance of the service using the Service Source Code you make available.
Подразумевает, что вы должны открыть код всего сервиса, в том числе и биллинга, например.
mr_tron
Переходящий флажок корпорации зла.
vics001
А в чем тут зло? Мне кажется компании знали, когда создавали код под лицензией Apache, а не GPL по заветам Стольмана.
Apache даже не заставляет ставить ссылку в отличие от CC-BY-SA.
q_styler
Зло всегда действует «в рамках закона».
petropavel
При чем тут Apache? MongoDB была под AGPL, это Affero GPL. А недавно они лицензию еще усилили. Смотрите за руками:
MongoDB обиделась на Амазон, что он зарабатывает на MongoDB и не делится (многие обижаются, на самом деле). И закрутили гайки в лицензии, специально против Амазона, чтоб делился. Амазон вместо этого перешел на свою DocumentDB и послал Mongo-вцев нафиг.
Merkat0r
О Шиллен!.. ну хорош уже быть эльфами — в суровом мире тырпрайза всем плевать на эти все апачи гпли и прочие *опен*.
Оно может приносить бабки? Значит будет без зазрения совести спи#$%о, код закрыт и запротекчен + доработано до нужд компании + нашлепан новый свой логотип. И в продакшн.
Так и быть, на очередном корпоративе в честь
новой яхты каждомуприбыли топ-манагеры такиснюхают дорожкуподнимут с улыбкой один бокальчик за opensource сообщество :)