2017-01-15 6 views
2

Учитывая мой реляционный фон db, я изо всех сил пытаюсь раздобыть хранилище данных в IONIC 2. Прочитав множество руководств и статей по этому вопросу, у меня есть общее представление о том, как действовать, но надеялся чтобы получить некоторые советы, если я на правильном пути. Я увлекаюсь использованием NoSQL, поэтому многие из учебных пособий, использующих SQL-хранилище Ionic, не помогли.Ionic 2 Storage vs Pouch DB

До сих пор я склонен использовать либо Хранение или Чехол Ionic 2. Я не вижу разницы. Оба используют SQLite при запуске как собственные приложения или резервные копии на IndexDB или WebSQL.

Какая рекомендуемая практика здесь?

ответ

4

Вы правы, PouchDB и Ионные хранения оба предлагают довольно похожий базовую функциональность:

  • Вы можете сохранять и загружать файлы в формате JSON. Получение данных работает либо с помощью ключа, либо сразу.

  • Оба могут использовать различные базы данных для хранения данных в

Но PouchDB предлагает некоторые дополнительные функции:.

  • Replication: Это убийца особенность PouchDB в! Вы можете реплицировать/синхронизировать PouchDB в любую другую базу данных, которая реализует протокол синхронизации CouchDB. В зависимости от приложения, которое вы пытаетесь построить, это может сэкономить вам много работы.
  • Map/reduce queries: Если у вас есть реляционный фон db, подумайте о том, как вы собираетесь запрашивать свою базу данных. Ionic Storage предлагает только get по ключу и итератор forEach: как этот масштаб/выполнить, если в вашей базе данных тысячи записей? PouchDB с другой стороны, предлагает API для выполнения карты/уменьшить запросы, упорствовать эти запросы, чтобы получить более высокую производительность и так далее ...

TLDR: Если UseCase для хранения и получить несколько документов на местах, Ionic Storage - это путь. Не нужно добавлять новую зависимость и простой API. Если ваш usecase включает синхронизацию с удаленной базой данных (предпочтительно CouchDB) или включает выполнение сложных запросов на большом количестве документов, я бы рекомендовал использовать Pouch.

+1

Теперь я начал работу с ионным хранилищем. В данный момент мне не нужно синхронизировать мою базу данных или выполнять сложные запросы. Я просто отправляю JSON в фоновый код, который затем создает отчет в формате PDF. Возможно, если это вырастет, я переключусь на PouchDB. Спасибо! – Muhammad