2016-03-25 1 views
4

Как мы все знаем, я один из тысяч разработчиков, которые полагались на Parse и теперь вынуждены искать альтернативу Parse. При передаче Parse-Server в AWS + MongoDB я обнаружил DynamoDB. Я думаю, что просто передаю всю логику на стороне сервера DynamoDB. Каковы некоторые из проблем, которые у Parse нет, которые могут существовать для DynamoDB?Перенос с Parse-Server на dynamoDB. Какие предвидимые препятствия существуют?

ответ

4

Поскольку Parse включает в себя веб-сервер, вы можете взаимодействовать с ним через простые HTTP-запросы. DynamoDB - это просто база данных, поэтому вам нужно будет напрямую подключаться через SDK AWS или создавать API перед ним, возможно используя API Gateway и Lambda.

Кроме того, поскольку Parse является полнофункциональным Backend как услугой, а DynamoDB - это только база данных, в Parse есть некоторые функции, которые не будут доступны, если вы просто используете DynamoDB непосредственно из приложения iOS. Например, для сброса пароля пользователя требуется отправить электронное письмо пользователю. DynamoDB не имеет функции «сброса пароля» и не может отправлять электронные письма напрямую. Вам нужно будет создать эту функцию самостоятельно, используя что-то вроде Lambda и SES.

Parse также обрабатывает загрузку файлов и хостинг файлов, которые больше не будут доступны, если вы просто использовали DynamoDB прямо из iOS. Вам придется самостоятельно создавать эти функции, возможно, используя S3.

Если вы используете только Parse в качестве хранилища данных, то использование DynamoDB напрямую может, безусловно, сработать для вас, но с другой стороны, это может быть MongoDB или любая другая база данных NoSQL. Вы должны обязательно изучить, как ваша схема базы данных будет выглядеть в DynamoDB до ее фиксации, поскольку существуют определенные ограничения на типы индексов и типы запросов, которые могут затруднить переход к текущей схеме.

+0

Сэр, мои шляпы от вас. Спасибо – shle2821

1

AWS + DynamoDB будет вашим путем.

Я много работал в системах DynamoDB и MongoDB и могу дать вам краткое резюме рекомендации.

MongoDB очень прост в работе и обладает непревзойденной гибкостью в структуре запросов, требует очень мало думать о настройке системы.

DynamoDB предоставит непревзойденную масштабируемость, гораздо более строгий (очень строгий) набор правил для создания схем и требует много планирования, прежде чем вы выполните настройку. Однако вам не нужно беспокоиться о настройке или управлении базой данных, не беспокоиться о архитектуре master/slave и не беспокоиться о масштабировании базы данных.

В эти дни я иду с DynamoDB, и это было здорово.

+0

Это просто сравнение MongoDB и DynamoDB, не затрагивая более крупные проблемы перехода от Parse BaaS. –

1

Просто завершила переход от Parse к AWS Динамо (несколько мыслей были размещены здесь:. https://www.linkedin.com/pulse/parse-aws-migration-server-less-mobile-backend-mike-kirkwood?trk=prof-post

Мой опыт показал, что DynamoDD является приемлемой заменой много разбора Однако это потребовало некоторых изменений модели данных как DynamoDB не поддерживает указатели или отношения, такие как Parse. Таким образом, в приложении пришлось корректировать некоторые записи, чтобы добавить больше данных в запись в DynamoDB. Это дало некоторые полезные преимущества в запросах.

DynamoDB также позволяет вы должны добавить индексы для соответствия определенным запросам.

И для моего использования DynamoDB оказался гораздо более быстрым, чем у Parse.

+0

Спасибо за ответ. Да, я также сделал передачу, и похоже, что Динамо действительно быстрее, а кривая обучения крутая. Я также ценю ссылку. – shle2821

+0

Сэр, я прочитал вашу очень информативную ссылку и задавался вопросом, что такое сравнение затрат между этими двумя, если вы меня не интересуете. Спасибо – shle2821

+0

Хороший вопрос! Проделайте немного анализа по этому поводу, отчитайтесь. –

Смежные вопросы