👾
Node.js
  • 🧑‍💻Full-Stack Web Developer
  • 📚Теорія
    • 1️⃣Основи Node.js
      • Вступ
      • Модулі Node.js
      • Запуск скриптів модулів в Node.js
      • Структура проєкту, експорт-імпорт, index.js як хаб
      • Модулі CommonJS
      • Модулі MJS
      • Модулі ECMAScript
      • Модулі NPM + базові модулі
      • Глобальні змінні
      • Робота з файлами
    • 2️⃣Консольні додатки
      • Створення консольних додатків
    • 3️⃣Фреймворк Express
      • Про Express
      • Nodemon і запуски скриптів
      • Postman
      • Проміжне ПЗ middleware
      • Передача даних на сервер
      • Роутінг
      • CRUD
      • Налаштування лінтера
    • 4️⃣REST API
      • Змінні оточення
      • Логування
      • REST
      • Методи HTTP
      • CORS
      • Формування URL для REST API
      • Контроллери відсутнього роуту і непередбачуваної помилки
      • Валідація даних Joi
      • Рефакторинг додатку за MVC архітектурою
      • Express автогенератор додатку
    • 5️⃣База даних Mongo.DB
      • Основи MongoDB
      • Налаштування Mongo Atlas
      • Встановлення локальної MongoDB і основні команди
    • 6️⃣ODM Mongoose
      • Mongoose
      • Порядок планування бекенд додатку
      • чорнетка
    • 7️⃣Автентифякація WJT
      • чорнетка
      • чорнетка 2
    • 8️⃣Файли
      • чернетка
    • 9️⃣тестування
      • чернетка
    • 🔟Page 14
      • імейли
    • чорнетка докер
    • чорнетка сокети
    • додаткові матеріали
    • 👷Практика
      • 1️⃣Page 4
      • 2️⃣Page 5
      • 3️⃣Page 6
      • 4️⃣Page 7
      • 5️⃣Page 8
      • 6️⃣Page 9
  • Про мене
    • Про мене
Powered by GitBook
On this page
  1. Теорія
  2. База даних Mongo.DB

Основи MongoDB

PreviousБаза даних Mongo.DBNextНалаштування Mongo Atlas

Last updated 1 year ago

MongoDB - нереляційна база даних типу NoSQL. Вона заснована на моделі документів. Тобто об'єкти даних зберігають у форматі окремих документів у колекції. В той час як SQL бази являти собою табличний формат даних.

Структура бази даних

Для початку визначимо термінологію SQL баз даних і NoSQL.

SQL
MongoDB

база даних

база даних

таблиця

колекція

рядок

документ

стовпець

поле

індекс

індекс

joins

$lookup

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

У базі даних MongoDB містяться колекції. Один запис в колекції називають документом, а відповідно якесь значення всередині - полем. На відміну від SQL баз даних, тут немає суворої схеми збереження даних і може бути різна структура.

Документ – це одиниця збереження даних. Його максимальний розмір складає 16 Mб. Дані в документі зберігаються у форматі JSON. Для кожного окремого документа його структура може відрізнятися. Всередині можна зберігати вбудовані масиви чи обʼєкти.

Кожен документ має особливе поле _id. Це унікальний ідентифікатор кожного документа. При створенні запису йому базою даних надається свій унікальний id. Це первинний ключ і це не просто рядок чи число - це по суті обʼєкт типу ObjectId.

_id: ObjectId('64beb1bf56ef3c789231a1b0')

Цей ідентифікатор має довжину 12 байтів і формується за такою структурою:

64beb1bf - 4 байтове значення, позначення секунди починаючи з останнього запису

56ef3c - 3 байтове значення ідентифікатора машини

7892 - 2 байтове значення ідентифікатора процесу

31a1b0 - 3 байтовий лічильник випадкового значення

📚
5️⃣