我正在制作一个SaaS应用程序,用户将在其中创建广告列表。
我从未做过用户和数据管理工作。一个数据库,所以我需要关于如何实现它的建议(我承认这是一个悬而未决的问题,但我仍然觉得它与我能问的其他方面有关!)
我的数据库是cassandra。
问题1-我的方法是否是创建这样一个应用程序的常用方法?如果不是的话,我会很欣赏关于替代设计的建议。
问题2-由于我将创建特定于用户的密钥空间,作为我的web注册过程的一部分,我是否能够编程地创建一个密钥空间(包含用户提供的用户名和密码)?
发布于 2019-08-05 06:25:08
在Cassandra中使用每个用户键空间不是个好主意,只有在有几个用户的情况下,这才能起作用。单独的键空间将意味着您要为每个用户创建一个单独的表,因此这将与第一点相矛盾-显示您需要从所有表中读取的所有广告。而且Cassandra还限制了它能够支持的表的数量--推荐的值不是集群中的500个表(更多细节请参见这个答案 )。
我建议只将用户ID作为分区键的一部分,或者分区键本身--但这将取决于其他因素,例如用户可以创建多少广告等等--这需要一个单独的问题。
我建议在DS220学习DataStax学院的卡桑德拉数据建模课程,以便更好地理解如何为卡桑德拉建模。
https://stackoverflow.com/questions/57285428
复制相似问题