Polyglot持久性数据库处理

时间:2016-09-01 11:53:21

标签: android mysql node.js mongodb

首先,我是开发Android的新手。 为了创建我的下一个Android应用程序(用于学习不同脚本语言的本地eLearning客户端),我对数据库中的最佳实践有一些疑问。我的目标是创建一个依赖于这个堆栈的android客户端:nodejs + express +用于用户处理的MySQL(用户处理不应该是无模式的)和用于数据管理的MongoDB(应该是无模式的,因为它可能会在将来发生变化)例如Cassandra for User activity Logs。

  1. 一个用户可以在多个(私人)组中,一个组可以拥有多个用户(n:m),如果我通过My​​SQL意识到这一点,还是应该只将用户放入MySQL和群组进入NoSQL?用户将发布大量帖子,因此帖子应该保存在NoSQL中,因为性能(读,写)。我更喜欢第一,最佳实践???

  2. 我读过用户登录处理许多关于"共享prefences with encryption"和" redisDB用于用户会话"。它应该有永久登录的选项。哪一个是为Android客户端实现的常见或最佳实践方式(性能,处理...)?

  3. 我很高兴有任何建议。

1 个答案:

答案 0 :(得分:0)

最初,如果你没有沉重的用户群,那么请使用mysql。因为它非常简单,也有成熟的数据库风格。只有当你有性能瓶颈而不是初始数据库时,你才应该使用mongo nad redis。我建议这个使用NOSQL应该有更好的理解。因此,只有在需要时才使用MySQL并使用NOSQL。

相关问题