Все потоки
Поиск
Написать публикацию
Обновить
9.32

MongoDB *

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

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

Как рутинное обновление гемов привело к созданию подписок на $73К

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

Как и почему рутинное обновление Руби гемов менее чем за 1 час создало 475 новых подписок на общую сумму $73.271 долларов.

Читать далее

Представляем MongoDB 5.2 Rapid Release

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

Привет, Хабр. В феврале стартует очередной набор группы курса "MongoDB", в связи с чем подготовили для будущих студентов перевод статьи из официального блога MongoDB про релиз 5.2. Решили, что для читателей Хабра эта информация тоже может оказаться полезной, поэтому делимся с вами.

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

Сжатие столбцов для коллекций временных рядов

Появившиеся в MongoDB 5.0 коллекции для данных в форме временных рядов позволяют легко получать и работать с информацией из этих коллекций вместе с вашими операционными или транзакционными данными без необходимости интеграции отдельной одноцелевой базы в вашу среду. В версии 5.2 Rapid Release представлено сжатие столбцов для коллекций временных рядов в MongoDB. 

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

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

Читать далее

Без него не было бы YouTube, Instagram и Uber: пошаговая инструкция о том, как выжать максимум из Python

Время на прочтение4 мин
Количество просмотров14K
Языков в мире программирования масса, но корону по праву носит Python. Многие полюбили его за гибкость, лаконичность, бесчисленное количество модулей и поддержку сообщества. Именно этот язык стал основой для самых популярных мировых площадок: YouTube, Instagram, Uber и многих других. Однако, некоторые программисты считают Python языком с ограниченными возможностями и уверены, что он «задохнется» под тяжелой архитектурой highload системы.
Я, технический директор компании STM Labs, Андрей Комягин, за несколько минут смогу переубедить всех скептиков и доказать обратное.


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

HTB Horizontall или как достучаться до небес? #для самых маленьких

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

Начинаю публикацию решений машин с площадки HackTheBox. Надеюсь этот туториал станет небольшой подсказкой тем, кто только начинает свой путь в этичном взломе. Начнем....

Читать далее

Игры с Mongo, или как мы избежали проблем благодаря смекалке и реверс-инжинирингу

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

Одним из трендов при проектировании сервисов в последнее время выступает использование в качестве баз данных NoSQL-систем. Мы также стараемся идти в ногу со временем и, конечно же, имеем в своем IT-ландшафте несколько таких решений. Одно из них — шардированный кластер MongoDB. Эксплуатация этой СУБД сопряжена с проблемами производительности, архитектуры, взаимодействия и т.д. Удивительно, но факт - зачастую, все мы сталкиваемся с тем, что ошибаются разработчики самой СУБД. Кто бы мог подумать.., что после штатной перезагрузки узла конфигурационного сервера MongoDB в процессе обновления может произойти аварийное завершение работы сервиса базы данных и наш стенд превратится в «тыкву»!

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

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

Читать далее

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

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

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

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

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

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

Читать далее

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

Время на прочтение10 мин
Количество просмотров25K
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.6K

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

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

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

Читать далее

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

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

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

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

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

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

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

Читать далее

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

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

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.7K

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

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

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

Читать далее

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

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

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

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 мин
Количество просмотров8.1K

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

Читать далее

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

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

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

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

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

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

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

Читать далее