9. Решения NoSQL на платформе AWS
S3 + Athena NoSQL on EC2
Полностью управляемый
сервис баз данных NoSQL,
обеспечивающий
прогнозируемую высокую
производительность с
эффективной
масштабируемостью.
Amazon DynamoDB дает
клиентам возможность
переложить на AWS
административную нагрузку,
по управлению
распределенными базами
данных и их
масштабированием.
Amazon Athena – это
интерактивный сервис
запросов, позволяющий
легко анализировать
данные в хранилище
Amazon S3 с помощью
стандартных средств SQL.
У Athena –нет
инфраструктуры,
требующей настройки или
управления, поэтому
можно сразу же
приступить к анализу
данных.
Вычислительное облако
Amazon Elastic Compute
Cloud (Amazon EC2) – это
веб-сервис,
предоставляющий
безопасные
масштабируемые
вычислительные ресурсы
в облаке. Он помогает
разработчикам, облегчая
проведение
крупномасштабных
вычислений в облаке.
Amazon EMR – это веб-
сервис, который
позволяет компаниям,
ученым, аналитикам и
разработчикам легко и
недорого обрабатывать
огромные объемы
данных. В нем
используется удаленная
инфраструктура Hadoop,
работающая в
масштабной
вычислительной
инфраструктуре Amazon
Elastic Compute Cloud.
EMR
11. Нужны ли в вашем проекте распределенные NoSQL
решения
• Высокая нагрузка существенно
изменяющаяся во времени
• Отсутствие критических требований к
консистентности данных
• Парадоксально высокий uptime
• Относительно простая схема без наличия
значительного количества связей
• Отсутствие необходимости моментально
строить отчетность по всему объему данных
• Высокие требования к latency со стороны
клиентских приложений
• Высокие требования к консистентности данных
• Стабильная нагрузка без существенных
изменений в течение времени
• Относительно редко меняющаяся схема в
хорошо определенной предметной области
• Отсутствие сверх высоких требований по
доступности и latency по запросам со стороны
приложений
• Необходимость строить отчетность / анализ с
использованием полного функционала SQL
34. Планирование мониторинга
• Мониторинг вычислительных
ресурсов
• CPU
• RAM
• Disk IO, saturation
• Network throughput, saturation
• Мониторинг системных
процессов
• Write Logs
• Garbage Collection
• Locks
• Queueing
• Мониторинг узлов кластера БД
• Read / Write IO
• Read / Write Latency
• Internal tasks
• Мониторинг запросов
приложений
• Unavailable Errors
• Timeout Errors
• Other types of exceptions
• Мониторинг состояния кластера
• Nodes status
• Replication status / lag
Сильно зависит от специфики реализации конкретной базы данных на
уровне узла (чтение / запись данных) и на уровне кластера (репликация).
37. Планирование обслуживания
• Уведомления и реагирование на
инциденты
• Alarms & notifications (правильные
метрики
• RCA
• Playbook
• Настройка и контроль выполнения
рутинных операций на уровне
кластера
• Anti-entropy operations
• Cluster-wide clean-ups
• Cluster-wide / Shard-wide backups
• Other
• Настройка и контроль выполнения
рутинных операций на уровне
узлов кластера
• Defragmentation
• Compression / Compaction
• Encryption
• Incremental and Full Backup
• Index re-build
39. Вместо заключения
• Не существует одного решения
на все случаи жизни
• Контекст имеет значение и
решение должно изменяться
вслед за изменением контекста
• Приложение и код должны быть
адаптированы к БД
• Наилучший способ проверить
ваш выбор БД для применения в
вашем решении – провести
Proof-of-Concept