Вступний посібник до AWS DocumentDB

У відповідь на зростаючу кількість клієнтів, які не можуть запустити MongoDB у великих масштабах, Amazon запровадив рішення DocumentDB.

Ви можете легко масштабувати від 10 ГБ до 64 ТБ за допомогою автоматичного масштабування даних у DocumentDB. Давайте подивимося, як це можна зробити.

Що таке DocumentDB?

AWS DocumentDB — це збільшена версія попередньої MongoDB версії 3.6. Amazon відчув потребу розробити своє рішення для великих обсягів даних і критично важливих робочих навантажень. DocumentDB не використовує вихідний код MongoDB. Таким чином, це власна реалізація Amazon.

DocumentDB, як і MongoDB, є системою зберігання документів. AWS DocumentDB — це база даних NoSQL. Механізм зберігання документів зазвичай має формат JSON. Тобто він індексує структури даних JSON. Amazon DocumentDB — це рішення для відкидання MongoDB від AWS, але інше.

Перш ніж ми глибоко зануримося в Amazon DocumentDB, важливо зрозуміти NoSQL і чому це наразі наступна велика річ.

Що таке база даних NoSQL?

Бази даних NoSQL не мають таблиць, пов’язаних одна з одною (він же «не тільки SQL»). У більшості випадків люди використовують два основні типи речей: документи та графіки. Вони можуть обробляти багато даних і багато навантажень користувачів.

Розробники використовували бази даних NoSQL для продуктивності, а не для зберігання. Дані NoSQL є напівструктурованими та поліморфними та легко містять великі обсяги неструктурованих даних.

Окрім того, що бази даних NoSQL є більш узгодженими, ніж реляційні бази даних, їх також легше масштабувати та потребують менше ресурсів. На відміну від баз даних SQL, бази даних NoSQL можна стекувати. Безсхемні бази даних NoSQL дозволяють використовувати різні структури елементів бази даних.

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

Компанії всюди використовують NoSQL. Фінансові дані та дані охорони здоров’я, наприклад, є важливими варіантами використання (наприклад, зберігання даних IoT з розумного лотка для кошенят).

  Ось все, що ви повинні знати

Що призвело до DocumentDB?

Amazon придумав цю ідею, оскільки багато людей мали проблеми із запуском MongoDB у великих масштабах. Amazon вважав, що жодне з поточних рішень, включаючи MongoDB Atlas, не може вирішити проблеми їхніх клієнтів, тому вони придумали своє.

Наприклад, DocumentDB дозволяє автоматично збільшити вашу базу даних з 10 ГБ до 64 ТБ, тому вам не потрібно нічого робити. До DocumentDB було важко розробляти такі дані.

Рішення Amazon також має вбудовану відмовостійкість. Він автоматично ділить ваш простір для зберігання на частини по 10 ГБ, розподілені на багатьох дисках. Кожна частина вашого обсягу пам’яті розміром 10 ГБ копіюється шість разів у трьох зонах доступності для резервного копіювання.

Дві копії даних можна втратити, не впливаючи на доступність запису, і три документи можна втратити, не впливаючи на доступність читання. Він також має здатність до самовідновлення. Блоки даних і диски перевіряються на наявність помилок і виправляються автоматично.

Оскільки Amazon розміщує цю службу, більшість правил охоплено. Він відповідає багатьом стандартам, включаючи PCI DSS і ISO 9001. Він також відповідає SOC 1, SOC 2, SOC 3 і HIPAA.

Переваги DocumentDB

#1. Сумісність з MongoDB

Amazon DocumentDB працює з драйверами MongoDB 3.6 і 4.0. Клієнти можуть використовувати багато однакових програм, драйверів та інструментів із Amazon DocumentDB.

Amazon DocumentDB використовує API MongoDB 3.6 і 4.0 Apache 2.0 з відкритим кодом для імітації сервера MongoDB. Продуктивність, масштабованість і доступність, необхідні для критично важливих програм MongoDB, тепер доступні.

#2. Моніторинг

Amazon DocumentDB надає аналітику Amazon CloudWatch для серверів хмарних баз даних. Використовуючи консоль керування AWS, ви можете відстежувати продуктивність свого кластера в таких сферах, як обчислення та пам’ять. Пропускна здатність запитів, кількість операцій MongoDB і активні підключення включені.

#3. Затримка

Amazon DocumentDB підтримує документи JSON, кілька типів даних і швидке індексування. Архітектура в пам’яті дозволяє службі швидко оцінювати запити до великих документів.

  Як змінити значок папки на Mac

#4. Управління доступом

Amazon DocumentDB підтримує RBAC із вбудованими та визначеними ролями. RBAC дозволяє реалізувати найменші привілеї, обмежуючи можливості користувачів.

У рамках AWS Identity and Access Management (IAM) ви можете керувати тим, що користувачі та групи AWS IAM можуть робити з ресурсами Amazon DocumentDB, включаючи кластери, екземпляри, знімки та групи параметрів. Ви також можете позначати тегами свої ресурси Amazon DocumentDB і регулювати своїх користувачів і групи IAM.

#5. Шифрування

Використовуючи службу керування ключами AWS, ви можете зашифрувати свої бази даних Amazon DocumentDB (KMS).

Дані в базовому сховищі захищені, як і автоматичне резервне копіювання, знімки та репліки в кластері за допомогою шифрування Amazon DocumentDB. З’єднання клієнт-Amazon DocumentDB автоматично шифруються за допомогою TLS.

#6. Сертифікати відповідності

Amazon DocumentDB створено відповідно до найвищих стандартів безпеки, щоб допомогти вам задовольнити ваші власні нормативні потреби та вимоги відповідності. Amazon DocumentDB відповідає стандартам PCI DSS, ISO 9001, 27001, 27017 і 27018, SOC 1, 2 і 3 і HIPAA.

#7. Глобальні кластери з високою доступністю

Глобальні кластери Amazon DocumentDB забезпечують глобальне читання та аварійне відновлення. Він дублює ваші дані на п’яти сайтах AWS з мінімальним впливом на продуктивність.

#8. Розгортання в кількох зонах доступності з репліками

Маючи до 15 реплік у трьох зонах доступності, Amazon DocumentDB автоматично змінює екземпляри, коли один з них виходить з ладу. У разі невдачі Amazon DocumentDB спробує створити новий приклад для одного.

#9. Відмовостійке та самовідновлюване сховище

Том сховища копіюється шість разів у три AZ (AZ). Amazon DocumentDB пропонує відмовостійке сховище для керування втратою даних до двох копій, не впливаючи на доступність запису. Сховище Amazon DocumentDB також самовідновлюється, замінюючи несправні блоки даних і диски.

Поширені запитання щодо AWS DocumentDB

AWS DocumentDB те саме, що MongoDB?

Крім того, що Amazon DocumentDB (з сумісністю з MongoDB) є швидкою, масштабованою та повністю керованою, це повністю керована служба бази даних документів, яку можна використовувати з робочими навантаженнями MongoDB.

  Найкращі способи читати новини на вашому iPhone або iPad

Дані JSON можна зберігати в Amazon DocumentDB як базу даних документів. Ви можете легко зберігати, шукати та індексувати дані.

Клієнти можуть користуватися службою міграції баз даних AWS (DMS) безкоштовно протягом шести місяців, щоб швидко та легко перемістити свої локальні бази даних або нереляційні бази даних MongoDB з Amazon Elastic Cloud (EC2) до служби міграції баз даних AWS (DMS) майже без простоїв. .

Як працює Amazon DocumentDB?

Amazon DocumentDB взаємодіє з API MongoDB 3.6 і 4.0 з відкритим кодом Apache 2.0 як база даних документів. У результаті можна використовувати ті самі драйвери, програми та інструменти MongoDB з Amazon DDocumentDB з невеликими змінами або без них.

Як масштабується Amazon DocumentDB?

Amazon DocumentDB — це база даних веб-масштабу, яка може масштабуватися від 10 ГБ до 64 ТБ із кроком 10 ГБ. Об’єм зберігання та обчислювальну потужність Amazon DocumentDB можна масштабувати вертикально та горизонтально (для більшої пропускної здатності читання), додаючи додаткові екземпляри реплік (до 15) до кластера.

З точки зору дизайну, що є головним у Amazon DocumentDB?

Для створення Amazon DocumentDB з нуля було використано перш за все хмарну архітектуру. Це означає, що робочі навантаження JSON можна легко масштабувати.

Важливою частиною дизайну DocumentDB є розділення сховища та обробки, щоб кожен міг розвиватися у власному темпі. DocumentDB має систему зберігання, яка є розподіленою, стійкою до збоїв і самовідновлюваною. Кожен кластер бази даних може зберігати до 64 ТБ даних без їх поділу.

Висновок

DocumentDB — це єдина керована служба Amazon, сумісна з MongoDB. Amazon каже, що DocumentDB має вдвічі більшу пропускну здатність, ніж доступні на даний момент рішення MongoDB. Альтернативою було б керування базами даних на EC2/EBS, що є складним завданням.

Якщо вам потрібні ці гарантії, виберіть DocumentDB або дотримуйтесь MongoDB. Ще одна причина вибору DocumentDB — це збереження всього в AWS.