Некоторые из этих вопросов основаны на вашей конкретной реализации, но вот обобщение (не в каком-либо конкретном порядке):
Если у них Cloudant не зеркалирован на многочисленных серверах по всему миру (фактически CDN сам по себе, просто без статических файлов), истинный CDN, вероятно, будет иметь лучшее время отклика, в основном в зависимости от того, как вы используете Cloudant (например, вы можете получить хорошее время отклика, но если вы загрузите весь файл в памятьперед его выводом вы проигрываете битву CDN).
CouchDB должен обработать больше данных на стороне сервера, прежде чем сможет выводить вложение.
CloudFront (и CDN в целом) оптимизированы для максимально быстрого времени отклика с ближайшим сервером.
S3 - это только хранилище;CloudFront использует это хранилище и распределяет его по многим серверам, которые обслуживают контент, в зависимости от того, какой из них ближе к пользователю, запрашивающему этот контент.
Да, вам нужно выбрать между Cloudant или CDN;один сохраняет их в файловой системе дословно, другой сохраняет их в файловой системе в базе данных.
Я не знаю ответа на некоторые из них, например, как CouchDB фактически обрабатывает вложенияхранение на низком уровне, ни его лучшие практики, однако, это должно дать вам достаточно идеи, чтобы хотя бы задуматься о том, что лучше всего соответствует вашим потребностям.