Как стать автором
Поиск
Написать публикацию
Обновить
-0.12

MongoDB *

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

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

9 декабря — QIWI Server Party 7.0, онлайн

Время на прочтение1 мин
Количество просмотров724

Привет! В следующий четверг, 9 декабря, мы проведём наш седьмой QIWI Server Party.

Обсудим оптимизацию приложений на MongoDB, поделимся опытом проведения интеграционного тестирования в условиях множества сторонних API. Кроме этого — рассмотрим проблему с распределенными транзакциями в микросервисной архитектуре и поговорим об автоматизации создания дашбордов. В этот раз — всё в формате онлайн-трансляции на нашем Youtube-канале.

Зарегистрироваться можно на этой странице.

Под катом — программа митапа.

Читать далее

Prisma: Полноценный ORM для Node.js и TypeScript

Время на прочтение10 мин
Количество просмотров24K
Prisma — это ORM нового поколения для Node.js и TypeScript. После более чем двух лет разработки мы рады сообщить, что все инструменты Prisma готовы к эксплуатации в production!



Содержание





Новая парадигма для объектно-реляционного отображения



Prisma — это ORM нового поколения с открытым исходным кодом для Node.js и TypeScript. Она состоит из следующих инструментов:

  • Prisma Client: Автогенерируемый и типобезопасный клиент базы данных
  • Prisma Migrate: Декларативное моделирование данных и миграции с возможностью пользовательского редактирования
  • Prisma Studio: Современный пользовательский интерфейс для просмотра и редактирования данных


Эти инструменты можно использовать вместе или по отдельности в любом проекте на Node.js или TypeScript. В настоящее время Prisma поддерживает PostgreSQL, MySQL, SQLite, SQL Server, MongoDB.
Перевод блога из prisma.io. Читать далее

Делаем доступ к базе данных MongoDB защищенным

Время на прочтение14 мин
Количество просмотров17K

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

Однако все может быть по-другому. Есть множество мер, которые вы можете предпринять для обеспечения безопасности ваших данных в MongoDB — от защиты периметра сети до включения Strict-Transport-Security, чтобы использовать такие фичи, как расширенное управление пользователями в MongoDB и систему контроля доступа на основе ролей (Role-Based Access Control — RBAC).

В этой статье мы рассмотрим некоторые из наиболее популярных способов защиты кластера MongoDB.

Читать далее

5 лучших инструментов для MongoDB Atlas в 2021 году

Время на прочтение6 мин
Количество просмотров5.5K

MongoDB Atlas — это самый простой способ развернуть базу данных MongoDB. Для начала работы вам предоставляется 512 МБ бесплатного хранилища и ряд встроенных инструментов для выполнения таких задач, как запрашивание данных.

Однако по мере использования MongoDB большинству пользователей ставится недостаточно базового набора инструментов. MongoDB Atlas просто не приспособлен для некоторых задач (таких как миграция с SQL и моделирование данных), поэтому им приходится обращаться к инструментам от сторонних разработчиков.

Хотите ли вы продвинуться выше уровня интеграций MongoDB Atlas или ищете что-то совершенно другое, наш список инструментов для MongoDB Atlas может помочь вам найти искомое решение.

Читать далее

Система заметок с нуля. Часть 4: разработка микросервисов NoteService, TagService и UserService

Время на прочтение8 мин
Количество просмотров9.1K

Продолжаем разрабатывать систему заметок с нуля.

В первой части мы спроектировали микросервисную архитектуру.

Во второй части разработали RESTful API Service на Golang cо Swagger и авторизацией.

Третья часть была посвящена знакомству с графовой БД Neo4j и работе над микросервисами CategoryService и APIService.

На этот раз мы займёмся разработкой NoteService и TagService. Также посмотрим на изменения в APIService. Подробности в видео и текстовой расшифровке под ним.

Читать далее

Лучшие GUI для MongoDB в 2021 году

Время на прочтение8 мин
Количество просмотров59K

MongoDB — это NoSQL-база данных, которую в том или ином виде используют более четверти разработчиков. MongoDB и другие NoSQL-базы данных привлекают своей гибкостью: вместо жесткой схемы и вертикального масштабирования, у вас есть возможность развивать схему постепенно и масштабироваться горизонтально. Компания MongoDB вышла на биржу в 2017 году и сегодня стоит более 17 миллиардов долларов.

Документные базы данных используют вместо реляционных таблиц и столбцов вложенные пары ключ-значение. Одно из преимущество такого подхода в том, что вам не нужно преобразовать данные для взаимодействия с фронтендом — данные уже хранятся в необходимом виде (плюс-минус .map или .reduce). 

Работа с MongoDB через командную строку не всегда удобна, и в этом посте мы рассмотрим доступные графические инструменты.

Читать далее

Mongoose + Redis. Автоматизация кэширования за 5 минут

Время на прочтение4 мин
Количество просмотров4.5K

Mongoose представляет специальную ODM-библиотеку (Object Data Modelling) для работы с MongoDB, которая позволяет сопоставлять объекты классов и документы коллекций из базы данных. 

Redis (Remote Dictionary Server)- это быстрое хранилище данных типа «ключ‑значение» в памяти, активно используемое в разработке с целью повышения производительности сервисов

В рамках данного гайда мы рассмотрим связку Mongoose + Redis и посмотрим, как обеспечить максимально удобное взаимодействие между ними

Читать далее

Как и для чего мы сделали «Перчатку» — приложение для сотрудников «Перекрёстка» с элементами соцсети

Время на прочтение5 мин
Количество просмотров6.6K

В рознице «Перекрёстка» работает порядка 30 тыс. сотрудников без закрепленного рабочего места и персонального компьютера. Чтобы они могли активнее участвовать в жизни компании и коммуницировать с коллегами, мы разработали «Перчатку». Это приложение с чатом и корпоративными сервисами: графиком смен и отпусков, информацией о выплатах и другими возможностями вроде ведения блогов и комментирования публикаций коллег.

 Инструментарий «Перчатки» также включает чат-бота «Василису», которая помогает новичкам влиться в коллектив: сопровождает в первые дни, находит корпоративные онлайн-курсы. Отличительной особенностью проекта являются элементы геймификации — за активность в «Перчатке» пользователи получают специальные баллы («клеверы»), на которые можно приобретать «сувенирку».

Помимо младших сотрудников торговой сети, «Перчаткой» пользуются технические специалисты и сами разработчики. Им приложение помогает собирать фидбек о функциях, а также краудсорсить новые идеи.

Читать далее

Самые популярные базы данных NoSQL, поддерживаемые ClusterControl

Время на прочтение6 мин
Количество просмотров11K

NoSQL ("не только SQL") — это подход к проектированию баз данных, который позволяет хранить и запрашивать данные вне традиционных структур, используемых в реляционных базах данных. Он был создан в первую очередь для работы с неструктурированными данными, которые генерируются из многочисленных источников, таких как документы, аудио, видео, социальные сети и т.д. Базы данных NoSQL лучше всего подходят для современных приложений, где модели данных эволюционируют, а масштабируемость имеет большое значение. Эта база данных приобрела популярность в последние годы, поскольку сейчас компаниям приходится иметь дело с неструктурированными данными больше, чем когда-либо прежде. Эта модель хранит данные иначе, чем традиционные реляционные таблицы, позволяя хранить связанные данные в единой структуре данных. Базы данных NoSQL можно разделить на четыре категории:

Читать далее

Телеграм бот прогноза погоды на Java Spring

Время на прочтение17 мин
Количество просмотров15K

Создание простого бота для Телеграм на Java Spring, который демонстрирует базовые возможности работы с Telegram API.

Читать далее

Формируем реляционную модель из schemaless базы данных MongoDB

Время на прочтение6 мин
Количество просмотров4.5K

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

Казалось бы, зачем может потребоваться извлекать схему данных в schemaless database? Однако это может быть крайне полезно и в некоторых ситуациях абсолютно необходимо:

•  Репликация данных в аналитическое хранилище

•  Интерактивная аналитика из BI-инструментов (SQL)

•  Аудит имеющейся структуры БД

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

Читать далее

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

Время на прочтение6 мин
Количество просмотров21K

Привет Хабр, и привет читателям. Не очень долго пришлось ждать выхода моей новой статьи. Спасибо всем, кто дал feedback по моей прошлой статье.

Было очень приятно пообщаться с единомышленниками. Отдельный респект, тем кто дал совет как можно улучшить статью.

Сегодня я хотел бы поделиться со всеми читателями об одной системе управления базами данных, не требующая описания схемы таблиц, правильно - это MongoDB СУБД считается одной из классических примеров NoSQL-систем. Документы состоят из пар ключ-значение, которые являются основной единицей данных в MongoDB. Коллекции содержат наборы документов и функции, которые эквивалентны таблицам реляционной базы данных. MongoDB — это база данных, появившаяся в середине 2000-х годов. Про установку не буду ничего описывать все и так понятно из официального гайда Всем добро пожаловать. https://docs.mongodb.com/v5.0/administration/install-community/

В этой статье буду показывать о том, как настроить резервное копирование данных, и потом восстановить. На самом деле это не так все сложно, и даже скажу больше интуитивно понятно:) Не буду задерживать всех своей писаниной и сразу приступим к делу. Мануал заточен на то, что у вас уже установлена СУБД из официального гайда. Единственное скажу, что я буду показывать все на машинке с Линуксом, ОС Ubuntu 20.04.2 LTS

Посмотреть

Начало работы с MongoDB и Redis на Rust

Время на прочтение13 мин
Количество просмотров13K

В этой статье будет показано как создать Rust бэкэнд, который использует MongoDB, документо-ориентированную БД, для хранения данных и Redis для кэширования, ограничения количества HTTP запросов и нотификаций пользователя. Для большей наглядности созданное приложение также будет предоставлять REST API. В итоге будет получена следующая архитектура:


architecture


MongoDB является хранилищем, в то время как Redis используется для следующего:


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

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

Hadoop или MongoDB: что использовать для Big Data?

Время на прочтение7 мин
Количество просмотров8K

Ни одно обсуждение Big Data не будет полным без упоминания Hadoop и MongoDB: двух наиболее популярных инструментов, доступных сегодня. Из-за обилия информации по ним, в том числе об их преимуществах и недостатках, не всегда легко сделать правильный выбор. Каждый из них силен в своей области, но что подойдет вам и вашей организации? Эта статья поможет сделать правильный выбор.

Читать далее

Подумываете об использовании MongoDB?

Время на прочтение9 мин
Количество просмотров36K

Будет ли MongoDB правильным выбором для вашего приложения?

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

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

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

В этой статье мы обсудим несколько возможностей MongoDB, которые стоит знать прежде чем вы решитесь выбрать и развернуть ее.

Читать далее

Голосовой дневник на python с распознаванием голоса и сохранением в Mongo DB

Время на прочтение4 мин
Количество просмотров15K

Как (и зачем?) написать голосовой дневник, используя open source инструменты.

Читать далее

Продолжаем знакомство с APIM Gravitee

Время на прочтение20 мин
Количество просмотров19K

Всем привет! Меня всё ещё зовут Антон. В предыдущей  статье я провел небольшой обзор APIM Gravitee и в целом систем типа API Management. В этой статье я расскажу, как поднять ознакомительный стенд APIM Gravitee (https://www.gravitee.io), рассмотрим архитектуру системы, содержимое docker compose file, добавим некоторые параметры, запустим APIM Gravitee и сделаем первую API. Статья немного погружает в технические аспекты и может быть полезна администраторам и инженерам, чтобы начать разбираться в системе.

Читать далее

Иерархия потребностей по Маслоу при разработке документации

Время на прочтение8 мин
Количество просмотров8.6K

В 1943 году психолог Абрахам Маслоу опубликовал свою знаменитую работу, в которой выделил пять категорий потребностей, мотивирующих человека: физиологические потребности, потребность в безопасности, потребность в принадлежности и любви, потребность в уважении и потребность в самоактуализации.

Сегодня эта теория известна под названием «Иерархия потребностей» и, как правило, изображается в виде пирамиды. Основная идея заключается в том, что человек начинает испытывать потребности более высокого уровня только после удовлетворения потребностей нижних уровней.

Читать далее

Ровняем шарды

Время на прочтение12 мин
Количество просмотров3.4K
image

"Размышления без практики приводят к заблуждению, практика без размышления приводит к затруднению."


Мы ведём войну с индивидуальностью у шардов в кластере MongoDB. Это продолжение статьи Шардинг от которого невозможно отказаться, а это значит, что наступила пора конкретики.


Как я и обещал, здесь мы рассмотрим подробнее:


  • настройку процесса выравнивания размера шардов
  • расчет поправок для коррекции границ
  • мониторинг распределения данных в коллекциях
Читать дальше →

Atlas как сервис

Время на прочтение5 мин
Количество просмотров3.4K

Многие наши клиенты предоставляют своим командам разработчиков доступ к MongoDB как к сервису. Разработчики могут запросить экземпляр базы данных MongoDB и получить строку для подключения и учетные данные за считаные минуты. Переходя на использование MongoDB Atlas, наши клиенты заинтересованы и в том, чтобы дать своим разработчикам соответствующий уровень обслуживания.

В Atlas есть очень мощный уровень управления для предоставления кластеров. Однако в крупных организациях, где работают тысячи разработчиков, не всегда целесообразно предоставлять такому количеству людей прямой доступ к этому интерфейсу. Цель этой статьи — показать, как можно использовать API-интерфейсы Atlas для предоставления доступа к MongoDB как к сервису, когда MongoDB работает под управлением Atlas.

В частности, мы продемонстрируем способ создания интерфейса, предлагающего разработчикам набор вариантов для создания экземпляра базы данных MongoDB. Чтобы упростить себе задачу, рассмотрим, как предоставить разработчикам набор вариантов памяти и хранилища для настройки кластера. Прочие параметры, например выбор провайдера облачных услуг и региона, мы рассматривать не будем. Мы также расскажем о том, как добавлять метки к кластерам Atlas, так как эта функция не поддерживается в пользовательском интерфейсе Atlas. Для примера мы добавили метку для описания кластера.

Читать далее