Обновить
-2

MongoDB *

Документо-ориентированная система управления БД

Сначала показывать
Порог рейтинга
Уровень сложности

Создаем graphql бекенд на Golang

Время на прочтение5 мин
Охват и читатели11K
Сегодня мы будем разрабатывать приложение на Golang + GraphQL.

Мы часто используем GraphQL на своих проектах и знаем о нем немало, использовали его вместе с различными языками программирования: Javascript, Ruby и теперь руки дошли и до того чтобы попробовать связку Golang GraphQL.
Читать дальше →

Докеризация приложения, построенного на базе React, Express и MongoDB

Время на прочтение6 мин
Охват и читатели64K
Автор статьи, перевод которой мы публикуем сегодня, хочет рассказать о том, как упаковывать в контейнеры Docker веб-приложения, основанные на React, Express и MongoDB. Здесь будут рассмотрены особенности формирования структуры файлов и папок таких проектов, создание файлов Dockerfile и использование технологии Docker Compose.


Читать дальше →

Аутентификация REST API с помощью Spring Security и MongoDB

Время на прочтение11 мин
Охват и читатели52K
Всем привет! Уходя на выходные делимся с вами статьей, которая была переведена в преддверии старта курса «Разработчик на Spring Framework».





В прошлых статьях мы создавали RESTful веб-сервис, теперь же мы поговорим о безопасности

Вступление


В предыдущем посте мы рассмотрели, как создать REST API с использованием инфраструктуры Java Spring Boot и MongoDB. API, однако, не требовал никакой аутентификации, а это значит, что он, вероятно, все еще не готов к использованию. Поэтому в этом руководстве будет рассказано, как использовать встроенную среду безопасности Spring для добавления уровня аутентификации в этот API.
Читать дальше →

HighLoad++, Михаил Тюленев (MongoDB): Causal consistency: от теории к практике

Время на прочтение22 мин
Охват и читатели8.5K
Следующая конференция HighLoad++ пройдет 6 и 7 апреля 2020 года в Санкт-Петербурге.
Подробности и билеты по ссылке. HighLoad++ Siberia 2019. Зал «Красноярск». 25 июня, 12:00. Тезисы и презентация.



Бывает, что практические требования конфликтуют с теорией, где не учтены важные для коммерческого продукта аспекты. В этом докладе представлен процесс выбора и комбинирования различных подходов к созданию компонентов Causal consistency на основе академических исследований исходя из требований коммерческого продукта. Слушатели узнают о существующих теоретических подходах к logical clocks, dependency tracking, system security, clock synchronization, и почему MongoDB остановились на тех или иных решениях.

DataGrip 2019.3: MongoDB, дебаггер, модный прогресс-бар, много новых инспекций

Время на прочтение4 мин
Охват и читатели11K
Привет! Как водится, три раза в году мы рассказываем о том, над чем работали. Это статья о том, что нового в DataGrip 2019.3, а значит и во всех IDE от JetBrains с поддержкой баз данных.


Читать дальше →

Как устроены сервисы управляемых баз данных в Яндекс.Облаке

Время на прочтение12 мин
Охват и читатели20K
Когда ты доверяешь кому-то самое дорогое, что у тебя есть, – данные своего приложения или сервиса – хочется представлять, как этот кто-то будет обращаться с твоей самой большой ценностью.

Меня зовут Владимир Бородин, я руководитель платформы данных Яндекс.Облака. Сегодня я хочу рассказать вам, как всё устроено и работает внутри сервисов Yandex Managed Databases, почему всё сделано именно так и в чём преимущества – с точки зрения пользователей – тех или иных наших решений. И конечно, вы обязательно узнаете, что мы планируем доработать в ближайшее время, чтобы сервис стал лучше и удобнее для всех, кому он нужен.

Что ж, поехали!

image
Читать дальше →

Zoia: легкая реактивная CMS для быстрой разработки сайтов

Время на прочтение4 мин
Охват и читатели11K
В данной статье я бы хотел рассказать о разрабатываемой мной системе управления контентом Zoia, написанной на Javascript. Это мой side-project, не связанный с основной работой, который я разрабатываю и развиваю в свободное время. Есть мнение, что каждый веб-разработчик должен рано или поздно написать свою собственную CMS, а кто-то даже и не одну :-)

TL;DR: demo.zoiajs.org, панель администратора (логин: admin, пароль: password), Github, лицензия MIT
Читать дальше →

Открытый вебинар «Основы MongoDB»

Время на прочтение6 мин
Охват и читатели12K
Друзья, очередной запуск курса «Базы данных» состоится уже завтра, поэтому мы провели традиционный открытый урок, запись которого вы можете посмотреть здесь. В этот раз поговорили о популярной БД MongoDB: изучили некоторые тонкости, рассмотрели основы работы, возможности и архитектуру. А также коснулись некоторых User Cases.



Вебинар провёл Иван Ремень, руководитель направления серверной разработки в «Ситимобил».


Читать дальше →

Лайфхак – пишем и бесплатно хостим в облаке вебсайт с гостевой книгой

Время на прочтение6 мин
Охват и читатели12K

Хостим в облаке вебсайт с гостевой книгой бесплатно


В наше время развернуть в облаке свой вебсайт с доменным именем второго уровня можно бесплатно. Вам интересно как? Читайте дальше.


Предлагаю вам разобрать то, как можно создать гостевую книгу на ASP.NET Core (с reCAPTCHA) и захостить ее бесплатно на довольно известном облачном хостинге (да, с ограничениями, но для персонального вебсайта с не особо большим трафиком годится вполне)

Читать дальше →

Опыт персонализации интернет-магазина на примере динамической рекомендации

Время на прочтение8 мин
Охват и читатели3.4K
Привет, Хабр!

Поделюсь опытом о том, как собрали собственную систему персонализации на базе «знаний» о потенциальном покупателе.

image

Единственное чем отличалось наше решение от классических — это использование комбинированной связки ряда решений и удовлетворял списку требований:

  • сервис должен был работать сразу на N сайтах
  • динамическая сегментация аудитории
  • Коллаборативная фильтрация для целей прогнозирования в разных состояниях сегментов аудитории
  • предварительно сгенеренная статика в виде рекомендованного контента + динамический подмес товаров на основе анализа кликстрима
  • изменение контента, практически в реал-тайме, из оперативной памяти, с учетом динамических коэффициентов

Об этом подробнее :) И о тех граблях, которые помогали нам меняться стек в лучшую сторону.
Читать дальше →

Беспростойная миграция MongoDB в Kubernetes

Время на прочтение5 мин
Охват и читатели10K


Эта статья продолжает наш недавний материал про миграцию RabbitMQ и посвящена MongoDB. Поскольку мы обслуживаем множество кластеров Kubernetes и MongoDB, пришли к естественной необходимости мигрировать данные из одной инсталляции в другую и делать это без простоя. Основные сценарии прежние: перенос MongoDB из виртуального/железного сервера в Kubernetes или же перенос MongoDB в рамках одного кластера Kubernetes (из одного пространства имён в другое).
Читать дальше →

Как я отказывался от db4o в промышленной системе

Время на прочтение12 мин
Охват и читатели3.6K

image


Мы — отдел большой компании, развивающий важную систему на Java SE / MS SQL / db4o. За несколько лет проект перешел от опытного образца к промышленной эксплуатации и db4o превратилась в тормоз расчета, захотелось перейти с db4o на современную noSQL-технологию. Пробы и ошибки завели далеко от первоначального замысла — от db4o отказаться удалось, но ценой компромисса. Под катом размышления и подробности реализации.

Читать дальше →

Руководство по выживанию с MongoDB

Время на прочтение12 мин
Охват и читатели40K
Все хорошие стартапы либо быстро умирают, либо дорастают до необходимости масштабироваться. Мы смоделируем такой стартап, который сначала про фичи, а потом про перфоманс. Перфоманс будем улучшать с MongoDB — это популярное NoSQL-решение для хранения данных. С MongoDB легко стартовать, и многие проблемы имеют решения «из коробки». Однако, когда нагрузка растет, вылезают грабли, о которых вас заранее никто не предупреждал… до сегодняшнего дня!

image

Моделирование проводит Сергей Загурский, который отвечает за инфраструктуру бэкенда вообще, и MongoDB в частности, в Joom. Также был замечен в серверной части разработки MMORPG Skyforge. Как сам себя описывает Сергей — «профессиональный набиватель шишек собственным лбом и граблями». Под микроскопом — проект, который использует стратегию накопления для управления техническими долгом. В этой текстовой версии доклада на HighLoad++ будем двигаться в хронологическом порядке от возникновения проблемы до решения с помощью MongoDB.
Читать дальше →

Ближайшие события

Миграция данных с mongoDB и Spring Boot

Время на прочтение3 мин
Охват и читатели12K

Каждый разработчик рано или поздно встречается с необходимостью миграции данных в базе данных. На нашем проекте мы используем mongoDB в качестве базы данных. Мы подходили к миграции данных разными способами:


  • писали js скрипты и запускали непосредственно в базе данных
  • использовали Mongobee  -  инструмент для автоматических миграций

Читать дальше →

Опыт вывода программной реализации социального проекта «Вспомнить каждого» в опенсорс

Время на прочтение3 мин
Охват и читатели2.3K
В прошлом году, нашей команде повезло принять участие в разработке программного обеспечения для социально значимого проекта – системы ввода архивных данных военных комиссариатов Хабаровского края времен Великой Отечественной войны. Кратко говоря, когда был призван, куда убыл и другую связанную с этим информацию – оцифровать и дать возможность искать эти данные кому угодно. Дальневосточный центр социальных технологий в 2018 году, при поддержке Фонда президентских грантов, реализовывал проект — «Вспомнить каждого». А мы, разработали приложение на нашем опенсорсном продукте IONDV. Framework. Итоговое приложение сейчас доступно под лицензией GPLv3.

Делимся нашим решением и опытом работы над проектом.

image
Читать дальше →

Разрабатываем Telegram-бота для отслеживания фильмов на NodeJS и TypeScript

Время на прочтение9 мин
Охват и читатели81K


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

Я достаточно часто сталкивался с такой проблемой и решил ее созданием Eve — Telegram-бота, который помогает мне не забывать про релизы моих любимых фильмов. Что это, как оно работает и как разрабатывалось вы можете почитать под катом!
Читать дальше →

AWS, MongoDB и экономические реалии open source

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

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

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

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

Миграция с Mongo на Postgres: опыт газеты The Guardian

Время на прочтение13 мин
Охват и читатели20K
image

The Guardian — одна из крупнейших британских газет, она основана в 1821 году. За без малого 200 лет существования архив накопился изрядный. По счастью, далеко не весь он хранится на сайте — всего за какие-то последние пару десятков лет. В базе данных, которую сами англичане назвали «источником истины» для всего онлайн-контента, около 2,3 млн элементов. И в один прекрасный момент они осознали необходимость миграции с Mongo на Postgres SQL — после того, как одним жарким июльским днём в 2015 году процедуры аварийного переключения были подвергнуты суровому испытанию. Миграция заняла без малого 3 года!..

Мы перевели статью, в которой рассказывается, как проходил процесс миграции и с какими сложностями столкнулись администраторы. Процесс долгий, но резюме простое: приступая к большой задаче, смиритесь, что ошибки будут обязательно. Но в конечном итоге, 3 года спустя, британским коллегам удалось отпраздновать окончание миграции. И поспать.
Читать дальше →

AWS показал Open Source средний палец

Время на прочтение3 мин
Охват и читатели25K

От переводчика: мне кажется, заголовок слегка неточный и на самом деле средний палец показали ребятам из MongoDB, которая теперь не очень то и Open Source.



Сегодня, Amazon AWS запустил продукт DocumentDB — новую базу данных, совместимую с API MongoDB. Компания описывает DocumentDB так — "быстрая, масштабируемая и отказоустойчивая документная база данных, разработанная так, чтобы быть совместимой с вашими существующими приложениями и инструментами на MongoDB". Фактически, это полная замена MongoDB, развёрнутая в AWS, которая не использует код MongoDB.


В AWS утверждают, что, хотя MongoDB отлично справляется со своими задачами, их клиентам всё же трудно создавать быстрые и высокодоступные приложения на платформе с открытым исходным кодом, которые смогут масштабироваться до нескольких терабайт и сотен тысяч операций чтения и записи в секунду. Поэтому компания создала свою собственную базу данных документов, но сделала ее совместимой с API MongoDB 3.6, распространяющимся под лицензией Apache 2.0.

Читать дальше →

MongoDB Go Driver туториал

Время на прочтение5 мин
Охват и читатели56K

UPD: туториал обновлен в связи с выходом релизной версии.


Хорошие новости! Официальный драйвер go для mongoDB вышел в релиз.
Немного поразмыслив я решил перевести статью с официального сайта mongoDB вместо того, чтобы писать материал самостоятельно(данный перевод отличается от статьи).
Вот что будет в данном туториале:


  • Установка mongo-go-driver
  • Соединение с mongoDB с помощью mongo-go-driver
  • Использование BSON объектов
  • Использование CRUD методов

image

Читать дальше →