我目前正在从事一个动态项目,其中用户向数据库提供新对象/数据。其他用户稍后可以访问其他用户提供的数据。
因为数据直接来自用户,所以我会过滤输入。尽管如此,我不希望他们将数据直接输入到我的主数据库,所以我想到在主数据库前面放一个新的临时数据库。这个想法是,每个新创建的用户数据对象都会使用报告计数器添加到临时数据库中。如果行在没有收到一定数量的报告的情况下存活了足够长的时间,我希望将其推送到主数据库。
您是否宁愿使用单个数据库并为每个临时数据和永久数据创建单独的表,还是创建两个单独的数据库,或者您对如何设计这样的项目还有其他想法?
提前谢谢大家,我很高兴听到大家的意见!
答案1
“我不希望他们将数据直接输入到我的主数据库中”,但是...为什么?只需添加一个字段,例如“已验证”默认值为 0,或添加一个报告计数器(?),甚至添加一个插入到表中的时间戳即可。
我不会做任何单独的数据库,临时的等等。
未指定数据库类型:例如,使用 mariadb (/mysql) 可以进行水平分片(如果您有性能问题),其中记录会根据字段自动划分(如您的请求)。但我怀疑这是否必要