Перед тим, як почати роботу з AWS DynamoDB

Автор: | 11 апреля, 2017

AWS DynamoDB — це сервіс баз даних NoSQL, що забезпечує узгоджену продуктивність і безшовну масштабованість. Послуга повністю управляється Amazon, і ми можемо зберігати будь-яку кількість даних в таблицях DynamoDb. Дані зберігаються на дисках SSD і реплікуються в декількох зонах доступності в регіоні, забезпечуючи тим самим високу довговічність.

Основи:

  1. DynamoDb — це керований AWS-сервіс, вам не потрібно турбуватися про обладнання, налаштування та налаштування, реплікації, виправлення і масштабування. Дані реплицируются в трьох зонах доступності в регіоні і зберігаються на SSD-накопичувачах.
  2. Витрати AWS на використання таблиці DynamoDb залежать від встановленої ємності (на додаток до зберігання). Щоб скоротити рахунок AWS, ви можете зменшити надану пропускну здатність при малий трафік і повернути його до відповідних значень при нормальних умовах трафіку. Ця дія не перериває службу.
  3. Щоб отримати максимальну віддачу від забезпеченої пропускної здатності, спроектуйте ключ розділу таблиці, щоб мати різні значення (чим більше число різних значень, тим краще).
  4. Якщо у вас немає належного оформлення розділу, ваші запити на читання / запис можуть бути заблоковані, якщо ключі належать одному розділу, званого «гарячим розділом».

Що слід пам'ятати:

  1. Обмеження на 1MB для викликів API запитів і запитів. Якщо в результаті запиту встановлено більше 1 МБ результатів, запит зупиняється і повертає результати. Якщо ви також включили «FilterExpression» в параметрах запиту, фільтр буде застосований до набору результатів, але до того, як дані результату будуть відправлені назад викликає. Через це, в залежності від того, де ваші позиції розташовані в таблиці, можливо, що ваш запит може взагалі не повертати ніяких даних, використовуючи операції запиту / сканування, навіть якщо в таблиці більше даних. В цьому випадку ви повинні використовувати «LastEvaluatedKey».
  2. Відсутність можливості мати кілька ключів для індексу. Ви можете створити таблицю DynamoDb з одним основним ключем розділу і одним ключем сортування (необов'язково). Неможливо мати кілька ключів для кожного індексу, але ви можете створити додаткові вторинні індекси в таблиці. Навіть тоді вторинний індекс може містити тільки один ключ сортування.
  3. Неможливо додати додатковий індекс після створення таблиці. Якщо ваші вимоги змінилися і вам потрібно додати / змінити додатковий індекс в таблиці, вам не пощастило. Необхідно експортувати існуючі дані таблиці, видалити і відтворити таблицю з правильним індексом і імпортувати дані.
  4. Немає резервних копій і відновлення таблиць DynamoDb. Не існує резервної копії, аналогічної щоденним резервних копій AWS RDS. Рекомендується використовувати службу «AWS Дата Pipeline». Але конвеєр даних доступний не в усіх регіонах. В кінцевому підсумку ви будете робити резервне копіювання і відновлення за допомогою NodeJ або подібних програм.
  5. Управління таблицями, коли у вас кілька середовищ (наприклад, Dev, QA, Live) — це клопоту. Необхідно прийняти одне з таких рішень:
    • Використовуйте різні імена таблиць для кожного середовища (наприклад, Dev_Products, Live_Products).
    • Використовувати різні області AWS для кожного середовища.
    • Використовувати різні облікові записи AWS для кожного середовища і консолідації рахунків.
  6. «Межа» — це кількість елементів, які повинні бути оцінені DynamoDb, а не кількість рядків, що повертаються викликає стороні.


amazon web services wordpress hosting