Самая большая разница в масштабируемости.
Решения для хранения данных со схемой распространять гораздо сложнее, чем решения для хранения данных без схемы.Его действительно легко скопировать (без схемы) пары ключ-значение для отказоустойчивости.Его действительно легко распределять копии по узлам для быстрого считывания и проще обеспечить быструю запись с возможной согласованностью.Если вы управляете своей собственной базой данных, это означает, что вам будет намного проще управлять решениями без схемы, когда вам нужно масштабировать до нескольких серверов.Если вы используете службу, это означает, что решения без схемы обычно дешевле и быстрее.
Проблема со схемой возникает, когда вам нужны транзакции и согласованность различных наборов данных или таблиц.Все это должно быть сделано в коде.
Итак, суть в следующем: если вам нужны огромные объемные данные с дешевым быстрым доступом, то это должно быть без схемы.Если, с другой стороны, ваш размер данных и нагрузка скромнее, чем системы, основанные на схемах, лучше.
Если вам нужна помощь в выборе того, какой сервис использовать, лучшим решением будет сделать чтение / сек записи / сек и анализ ожидаемого размера данных для вашего приложения, а затем выбрать, какое решение дешевле.Все эти услуги, вероятно, будут соответствовать вашим нагрузкам, но решающим фактором будет стоимость.