【发布时间】:2012-12-19 21:20:12
【问题描述】:
我正在构建一个 PHP/MySQL 应用程序,我允许用户创建他们自己的自定义(尽可能多)配置文件数据(即,他们可以使用额外的文本框将任意数量的信息添加到他们的配置文件中,但是有一个“CORE”组用户配置文件字段)
例如,他们可以在表单上创建一个新文本框并将其称为“我的宠物”和/或“我最喜欢的颜色”。我们需要将这些数据存储在数据库中,并且显然不能为他们的每个选择创建列,因为我们事先不知道他们的附加信息是什么。
我们认为我们可以存储他们提供的所有“附加信息”的一种方法是将他们的附加信息存储为 JSON 并将其存储在 MySQL 文本字段中(我喜欢 MySQL :))
我见过 Wordpress 表单构建器插件,您可以在其中创建自己的字段,因此我认为它们必须以某种方式将数据存储在 MySQL 中,因为 NoSQL 解决方案超出了这些插件的范围。
我很想继续使用 MySQL,但你们认为 MongoDB/Redis 这样的 NoSQL 解决方案会是一个更好的解决方案吗?
谢谢
【问题讨论】:
-
答案一如既往,视情况而定。如果您有数十万用户,您将需要尝试各种解决方案以查看可以扩展的内容。但是,对于相对较小的一组行的一小组选项,JSON 或序列化的 PHP 值,在您现有的关系数据库中,就可以了。我认为 Wordpress 在内部对其一些选项记录使用序列化。
-
+1 一个有趣的问题和一个不错的功能:-)