В 1999 году доходы музыкальной индустрии США достигли максимальной отметки $14,6 млрд (все цифры от RIAA). Но важно понимать, что именно продавалось:

  • $12,8 млрд получено от продажи CD
  • $1,1 млрд от продажи кассет
  • $378 млн составили продажи музыкальных видео на физических носителях
  • $222,4 млн — синглы на CD

В общем, музыкальная индустрия в основном продавала пластиковые диски в красивых коробках. Записанная музыка — просто способ отличить одни кусочки пластика от других. Сама музыка не продавалась.

Это может показаться глупым отличием, но так становится понятно, что произошло дальше:



Доходы музыкальной индустрии резко упали, хотя распространение и доступность музыки взлетели до небес. Люди больше не покупали пластиковые диски у музыкальной индустрии; они просто скачивали музыку напрямую.

Продажа удобства


Проблема в том, что записанная музыка с точки зрения бизнеса бесполезна: как только запись сделана, её можно копировать сколько угодно. Предложение фактически бесконечно. Из этого следует, что монетизация записи зависит от навязанного дефицита. Именно эту роль играли пластиковые диски: конечный запас физического товара, который являлся наиболее удобным способом получения музыки. Пиратские mp3-файлы с таких сайтов, как Napster и его последователи, оказался ещё удобнее — и дешевле.

Как видно на диаграмме, отрасль начала стабилизироваться в 2010 году, а в 2016 году вернулась к росту. Похоже, в 2018 году объём продаж увеличится примерно на 10% с $8,7 млрд в 2017 году и достигнет пика 1999 года в не слишком отдалённом будущем.

Что произошло? Музыкальная индустрия — в значительной степени усилиями Spotify, а затем Apple — нашла новый товар. Нет, они по-прежнему не продают музыку. На самом деле, они побеждают пиратство в своей собственной игре: музыкальная индустрия продаёт удобство. Вы можете получить почти любую существующую запись всего за $10 в месяц.

DocumentDB (совместимая с MongoDB)


Из блога AWS от 9 января:

Сегодня мы запускаем Amazon DocumentDB (совместимую с MongoDB) — быструю, масштабируемую и высокодоступную БД документов, совместимую с существующими приложениями и инструментами MongoDB. Для хранения документов используются SSD с шестикратной репликацией в трёх зонах доступности. Это распределённое, отказоустойчивое и самовосстанавливающееся хранилище, которое обеспечивает производительность, масштабируемость и доступность для рабочих нагрузок MongoDB в производственном масштабе.

Для этой статьи не особенно важна специфика MongoDB и DocumentDB. Достаточно знать основное, что MongoDB разработала более гибкую СУБД, которая лучше подходит для больших объёмов как структурированных, так и неструктурированных данных. Это полезно в масштабных приложениях, на которые никогда не были рассчитаны обычные реляционные БД.

И теперь вы можете запустить её на AWS. Как бы.

Лицензирование проектов с открытым исходным кодом


MongoDB выпускается с открытым исходным кодом. Компания MongoDB Inc. получила венчурное финансирование, а в октябре 2017 года вышла на IPO. Она распространяет свой основной продукт — сервер баз данных — под лицензией GNU Affero General Public License (AGPL).

AGPL — близкий родственник GPL, лицензии типа копилефт от Ричарда Столлмана. Копилефт допускает свободное распространение, использование и модификацию материалов, защищённых авторским правом (в данном случае программного обеспечения), с условием, что те же самые права распространяются на все производные работы. То есть любой проект на коде GPL должен сам иметь лицензию GPL. Это отличие от «разрешительных» лицензий, которые позволяют использовать защищённый авторским правом материал без условия, что производные работы также будут с открытым исходным кодом. AGPL расширила GPL на интернет-системы. Поскольку здесь ПО только используется, а не копируется, то GPL не сработает, но конечный результат будет ещё более обременительным, чем GPL.

И GPL, и AGPL особенно проблематичны для коммерческих компаний: например, Apple запрещает ПО с лицензией GPL в App Store, потому что магазин приложений требует от приложений иметь лицензию для одного пользователя. Разрешительные лицензии можно заменить, но GPL нельзя обойти. AGPL ещё хуже, потому что её правила срабатывают просто по факту использования ПО; вот почему Google запрещает AGPL в компании. Из документации Google по open source:

Лицензия налагает ограничения на программное обеспечение, используемое по сети: Google чрезвычайно трудно это соблюдать. Использование программы под лицензией AGPL требует, чтобы она ссылалась только на софт под такой же лицензией. Даже если вы думаете, что ни на что не ссылаетесь, это всё равно представляет огромный риск для Google из-за того, насколько интегрирован наш код. Риски сильно перевешивают выгоды.

Существует одно дополнение:

В некоторых случаях у нас могут быть альтернативные лицензии для кода под AGPL.

Это и есть бизнес MongoDB: она как раз предлагает альтернативные лицензии.

Бизнес-модель MongoDB


MongoDB объясняет свою бизнес-модель в форме S-1:

Мы считаем, что наша высокодифференцированная бизнес-модель сочетает преимущества открытого исходного кода для разработчиков с экономическими преимуществами бизнеса на проприетарном ПО. Чтобы подтолкнуть разработчиков к изучению и использованию платформы, мы предлагаем Community Server с открытым исходным кодом. Community Server — это совершенно бесплатная версия СУБД, которая включает не все функции коммерческой платформы. Так разработчики могут свободно оценить продукт. На наш взгляд, это способствовало популярности платформы и стимулировало продажи корпоративной подписки…

В отличие от компаний, которые работают на сторонних проектах с открытым исходным кодом, мы владеем интеллектуальной собственностью, так как являемся создателями программного обеспечения, что позволяет внедрить бизнес-модель платной подписки… Основной пакет — комплексное предложение для корпоративных клиентов MongoDB Enterprise Advanced для работы в облаке, локально или в гибридной среде. MongoDB Enterprise Advanced включает наш собственный сервер БД, расширенные функции безопасности, возможности корпоративного управления, графический интерфейс, интеграцию аналитики, техническую поддержку и коммерческую лицензию на платформу. Мы также предлагаем MongoDB Atlas, облачную базу данных как услугу, или DBaaS, которая включает в себя комплексную инфраструктуру и управление Community Server.

По сути, кроме сервера БД с открытым исходным кодом MongoDB продаёт три вещи:

  • Дополнительные инструменты для внедрения MongoDB в больших компаниях
  • Hosted-сервис для использования MongoDB в компаниях меньшего размера
  • Правовая определённость

Важность последнего нельзя переоценить: корпоративная версия MongoDB и hosted-сервис не попадают ни под AGPL, ни под новую лицензией Server Side Public License (SSPL), которую MongoDB представила в конце прошлого года. SSPL — это AGPL на стероидах: она принуждает компании, которые оказывают услуги на базе MongoDB открывать код не только внесённых изменений, но всего стека.

Что продаёт AWS


Amazon — крупнейшая компания, которая работает по модели SaaS. Однако это не означает, что Amazon продаёт «программное обеспечение». Реальность такова, что программное обеспечение ничем не отличается от музыки: оно бесконечно воспроизводимо, и поэтому само по себе ничего не стоит.

Вместо этого ценность ПО обычно реализуется тремя способами:

  1. Оборудование. Самый известный пример — iPhone, единственный способ получить iOS, но есть бесчисленное множество других примеров.
  2. Лицензии. На протяжении десятилетий это было основным бизнесом Microsoft: лицензии продавались OEM-производителям для потребительского рынка или компаниям напрямую. Действительно, есть некоторая ирония в том, что исторические враги — Microsoft и open source — одинаково зависели от авторского права, сильного правового режима и добросовестности компаний.
  3. Софт как сервис, SaaS (в том числе инфраструктура как сервис IaaS и платформа как сервис PaaS). Новая модель Microsoft, Amazon и почти всех софтверных стартапов. В этом случае продаётся не программа сама по себе, а её утилитарная польза: разработчик занимается всем остальным, в том числе обеспечивает надёжную доступность сервиса.

С учётом этим факта прочитаем ещё раз, что объявила AWS:

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

AWS не продаёт MongoDB: она продают «производительность, масштабируемость и доступность». DocumentDB — лишь одна из многих областей, где проявляются эти преимущества AWS.

Это действительно важные вещи. Корпоративные клиенты переходят в облако не потому, что это обязательно дешевле (хотя здесь затраты лучше коррелируют с использованием), а потому что производительность, масштабируемость и доступность — трудные проблемы, которые имеют мало общего с основной компетенцией и бизнесом большинства компаний.

Зато это основная компетенция AWS с внушительной инфраструктурой, на которую можно опереться для решения этих проблем. Эффективно работающие серверы для миллионов клиентов позволяют бросить на решение этих задач больше ресурсов, чем способна выделить любая другая компания, плюс собственные наработки: от программного обеспечения дата-центров до собственных микросхем (и больших оптовых скидок от поставщиков, таких как Intel).

В результате «производительность, масштабируемость и доступность» становятся чрезвычайно привлекательным бизнесом: чем больше клиентов получает AWS, тем выше маржа, а компания может использовать гораздо больше ресурсов для новых вариантов использования, что делает AWS ещё привлекательнее для новых клиентов. Microsoft конкурирует, но пока отстаёт, Google ещё дальше. На самом деле даже управляемая служба MongoDB работает в облаке: просто нет смысла поднимать свою инфраструктуру.

Задачка open source


Таким образом, мы подошли к основной задачке для компаний open source:

  • MongoDB использует open source, чтобы привлечь разработчиков.
  • MongoDB Inc. построила успешную бизнес по продаже дополнительных инструментов по управлению MongoDB для компаний.
  • Всё больше компаний хотят перейти в облако AWS (или Google, или Microsoft с похожим предложением MongoDB), потому что ценят производительность, масштабируемость и доступность.

Тут положение MongoDB Inc. не слишком отличается от положения звукозаписывающих компаний после появления mp3 в интернете: они продают не программное обеспечение, а скорее инструменты, которые делают это программное обеспечение пригодным для использования. Но эти инструменты всё больше устаревают по мере того, как вычисления перемещаются в облако. И теперь уже AWS продаёт то, что действительно хотят покупатели.

Хуже того, поскольку AWS не имеет доступа к MongoDB (лишь совместимые API), она поддерживает только MongoDB 3.6, а текущая версия — 4.0.5. Вполне возможно, что если сервис AWS станет популярным, MongoDB начнёт фактически стагнировать: конечно, вы можете получить лучшую версию от MongoDB Inc., но тогда вам придётся управлять ею самостоятельно или приложить усилия, чтобы связать все ваши сервисы AWS с предложением MongoDB (опять же, в потенциале дифференциации этого предложения может быть спасение MongoDB и важный урок для других компаний).

Разрешительная лицензия не обязательно станет спасением. Например, Redis Labs предлагает свою базу Redis под разрешительной лицензией: это означает, что у AWS обычно последняя версия, что хорошо для развития Redis, но не приносит ей никаких денег. Это вынудило Redis Labs изменить лицензию на дополнительные модули, добавив оговорку Commons Clause, которая заставляет поставщиков услуг платить за использование модулей, эффективно превращая их в несвободные программы.

Трудно не сочувствовать MongoDB Inc. и Redis Labs: обе компании потратили массу денег и усилий на создание своих продуктов, а теперь Amazon зарабатывает на них деньги. Но вот в чём дело: Amazon зарабатывает не на продаже программного обеспечения, а на услуге, которую ценят предприятия, а MongoDB и Redis популярны в значительной степени потому, что начинали с открытых исходников.

Экономические реалии и будущее


Основная часть написанного хорошо известна людям из сообщества open source: какое-то время шли бурные споры о влиянии облачных сервисов на open source. Но я думаю, что эти споры слишком отвлекаются на тему «справедливости» и на то, чем AWS якобы «обязана» open source. Это вполне можно понять, Да, такие компании, как MongoDB Inc. и Redis Labs упорно трудились, и да, AWS в значительной степени построена на открытом исходном коде, но мир управляется экономическими реалиями, а не субъективными суждениями о справедливости.

Именно поэтому я начал с музыки: резкое падение продаж звукозаписывающих компаний не обязательно было «справедливым», и да, компании вроде Apple с плеером iPod заработали миллиарды на пиратстве. Но имеет значение только тот факт, что сама музыка стала бесконечно воспроизводимой.

То же самое и с программным обеспечением: биты на диске фундаментально свободны — спросите Ричарда Столлмана. В своем эссе «Почему программы должны быть свободными» он написал:

Предельная стоимость копии программы близка к нулю (и вы можете оплатить эту стоимость, проделав работу самостоятельно), так что в условиях свободного рынка её цена была бы почти нулевой. Лицензионная плата значительно сдерживает применение программы. Если полезная многим программа несвободна, гораздо меньшее число людей воспользуется ею.

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

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

Это неизбежный компромисс, и справедливо задать вопрос: закончится ли золотой век для компаний, которые строят бизнес на открытом софте (хотя и не для самого open source в целом). Модель монетизации зависит от локального использования ПО; как только начинают доминировать облачные вычисления, экономическая модель становится гораздо более сложной.

Однако AWS, Microsoft и Google тоже лучше взять паузу. Трудно представить, что они когда-нибудь заплатят за программное обеспечение с открытым исходным кодом, но в то же время написание (общедоступного) программного обеспечения не обязательно является основной компетенцией их облачного бизнеса. Они также получили выгоду от деятельности компаний open source: те предоставили средства, с помощью которых они продают свой товар — производительность, масштабируемость и доступность. Прямо сейчас все в выигрыше, но если просто следовать экономическим реалиям, то в долгосрочной перспективе всем станет хуже.

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


  1. sav6622
    22.01.2019 18:22

    Ощущение, что переводчик вначале одну статью начал переводить, а потом его кто-то отвлёк и он закончил перевод другой статьёй.


  1. SirEdvin
    22.01.2019 18:29

    закончится ли золотой век для компаний, которые строят бизнес на открытом софте (хотя и не для самого open source в целом).

    Я нахожу это довольно ироничным, потому что если amazon потопит mongodb, то в скором времени потонет и documentdb.


    Не то, что бы я не любил aws, но мне кажется, что 99% нормальных компаний старается избегать вендорлока, а вендорлок для базы данных, с учетом такого большого количества альтернатив довольно странное решение.


    1. gecube
      22.01.2019 19:19

      Всегда остаётся вариант. Использовать голые ВМ (compute instance) и устанавливать весь софт самостоятельно. Сложнее? Сложнее. Зато вендор-лока нет


      1. SirEdvin
        22.01.2019 19:21

        Ну, конкретно documentdb вы не сможете никуда установить, потому что она будет всегда намертво привязана к aws. Я в целом о том, что если mongodb умрет, то у амазона останется только еще одна документно-ориентированная база, которая не особо кому-то будет нужна.


        1. gecube
          23.01.2019 14:05
          +1

          Вы меня не поняли. Зачем вообще использовать вендор-лок решения вроде DocumentsDB? Или местную очередь сообщений Амазона? Или любое другое? Если можно использовать стандартные compute instance (они между провайдерами ± одинаковые). И поверх них накатывать стандартный софт (redis, mongo, clickhouse etc.) — в рамках ограничений лицензии этих продуктов.


          1. rkuvaldin
            23.01.2019 17:28

            Масштабируемость и отказоустойчивость облачного сервиса как правило выше чем у сервиса, размещенного на конкретной железке.


            1. gecube
              23.01.2019 17:37

              При наличии auto scaling groups и прочих классных технологий в облаке — это, не без боли, рук и изоленты, но натягивается и на классические сервисы типа Mongo/Clickhouse etc. Поэтому руками — да, масштабируемость и отказоустойчивость можно тоже построить. Речи про конкретную железяку вообще не шло.

              В остальном — соглашусь.


              1. rkuvaldin
                23.01.2019 19:07

                Ну вот лично я знаю случаи, когда на конкретной железяке хлопцы при попытке расширить разделы — убивали содержимое файловой системы и восстанавливались из бэкапа. А облачное хранилище растет себе и растет, только отстегивай счета за объемы…


    1. saboteur_kiev
      22.01.2019 19:41

      если amazon потопит mongodb, то в скором времени потонет и documentdb.

      Или амазон просто купит подешевевшую mongoDB.


      1. amarao
        22.01.2019 20:35

        А какое дело сообществу до компании, разрабатывающей проприетарное ПО?


  1. amarao
    22.01.2019 20:35
    +1

    Я не могу понять, почему в статье слова opensource и mongo встречаются рядом.

    MongoDB — несвободное ПО. Раньше была — теперь нет.

    AGPL — злая, но свободная лицензия. Ихняя поделка — нет. Есть единодушное решение всех крупных участников свободного ПО, что их лицензия даже близко не стояла рядом с опенсорсом.

    Можно их критиковать за лицензию, но она мало отличается от EULA у microsoft или у красной неназываемой компании. Все они — проприетарные.


  1. StanislavL
    23.01.2019 14:01

    Логично было бы для защиты лицензировать API. Спор Oracle c Google по поводу Java тому пример. Oracle не осилил защитить API. Но Mongo/Redis/и т.д. могли бы.

    Не знаю как это заявить юридически в лицензии, но побороться можно было бы. Бы… сейчас то уж поздно для реализованного API, но более новые версии могут менять лицензию.


  1. kevteev
    24.01.2019 22:05

    Microsoft приобрел Citus Data

    Microsoft acquires Citus Data, re-affirming its commitment to Open Source and accelerating Azure PostgreSQL performance and scale

    blogs.microsoft.com/blog/2019/01/24/microsoft-acquires-citus-data-re-affirming-its-commitment-to-open-source-and-accelerating-azure-postgresql-performance-and-scale/?fbclid=IwAR0kMXMioMqZiSecsW1_dbPNWlAw0BRZXVdMv_iT7QBdhavltVEWGTpNH8k