Ionic 2 存储与 Pouch DB
Ionic 2 Storage vs Pouch DB
鉴于我的关系数据库背景,我正在努力了解 IONIC 2 中的数据存储。阅读了大量关于这方面的教程和文章后,我对如何进行有一个大致的了解,但希望得到一些建议如果我在正确的轨道上。我热衷于使用 NoSQL,所以许多使用 Ionic 的 SQL 存储的教程都没有帮助。
到目前为止,我倾向于使用 Ionic 2 的 Storage 或 Pouch DB。我看不出区别。当 运行 作为本机应用程序时,两者都使用 SQLite,或者回退到 IndexDB 或 WebSQL。
此处推荐的做法是什么?
你说得对,PouchDB 和 Ionic Storage 都提供了非常相似的基本功能:
您可以存储和检索 JSON 个文件。检索数据可以通过一个键或一次完成。
两者都可以使用不同的数据库来存储您的数据。
但是 PouchDB 提供了更多功能:
- Replication:这是PouchDB的杀手级功能!您可以 replicate/synchronize 将 PouchDB 连接到任何其他实现 CouchDB 同步协议的数据库。根据您尝试构建的应用程序,这可以为您节省大量工作。
- Map/reduce queries:如果您有关系数据库背景,请花点时间考虑一下您将如何查询您的数据库。 Ionic Storage 仅提供
get
按键和 forEach
迭代器:如果您的数据库中有数千个条目,这 scale/perform 会怎样?另一方面,PouchDB 提供了一个 API 来执行 map/reduce 查询,持久化这些查询以获得更高的性能等等...
TLDR:如果您的用例是在本地存储和获取一些文档,那么 Ionic Storage 是最佳选择。无需添加新的依赖项和 dead-simple API。如果您的用例包括同步到远程数据库(最好是 CouchDB)或包括对大量文档进行复杂查询,我建议您使用 Pouch。
鉴于我的关系数据库背景,我正在努力了解 IONIC 2 中的数据存储。阅读了大量关于这方面的教程和文章后,我对如何进行有一个大致的了解,但希望得到一些建议如果我在正确的轨道上。我热衷于使用 NoSQL,所以许多使用 Ionic 的 SQL 存储的教程都没有帮助。
到目前为止,我倾向于使用 Ionic 2 的 Storage 或 Pouch DB。我看不出区别。当 运行 作为本机应用程序时,两者都使用 SQLite,或者回退到 IndexDB 或 WebSQL。
此处推荐的做法是什么?
你说得对,PouchDB 和 Ionic Storage 都提供了非常相似的基本功能:
您可以存储和检索 JSON 个文件。检索数据可以通过一个键或一次完成。
两者都可以使用不同的数据库来存储您的数据。
但是 PouchDB 提供了更多功能:
- Replication:这是PouchDB的杀手级功能!您可以 replicate/synchronize 将 PouchDB 连接到任何其他实现 CouchDB 同步协议的数据库。根据您尝试构建的应用程序,这可以为您节省大量工作。
- Map/reduce queries:如果您有关系数据库背景,请花点时间考虑一下您将如何查询您的数据库。 Ionic Storage 仅提供
get
按键和forEach
迭代器:如果您的数据库中有数千个条目,这 scale/perform 会怎样?另一方面,PouchDB 提供了一个 API 来执行 map/reduce 查询,持久化这些查询以获得更高的性能等等...
TLDR:如果您的用例是在本地存储和获取一些文档,那么 Ionic Storage 是最佳选择。无需添加新的依赖项和 dead-simple API。如果您的用例包括同步到远程数据库(最好是 CouchDB)或包括对大量文档进行复杂查询,我建议您使用 Pouch。