我有以下问题:MariaDB活动流的动态列?
我们有很多不同,但类似类型的数据项,我们希望在(MariaDB的)数据库来记录的。所有数据项都有一些常用参数,如id,用户名,状态,文件全局,类型,注释,开始&结束时间戳。另外,还有很多(比如40到100之间)参数,这些参数是特定于每种类型的数据项的。
我们希望在同一个表中有不同的数据项类型,因为它们将与其他几个数据一起显示在Web应用程序的单个列表中。这将显示为活动流或“Facebook墙”。
看起来,具有顶级泛型表的规范化方法与下面的特定表连接会导致性能不佳。为了显示活动流,我们必须同时执行大量连接和联合,并且应用程序将频繁地轮询该查询,因此查询运行速度很重要。
那么,在性能和存储优化方面哪个更好?
- 利用MariaDB的的动态列
- 只需添加在所有不同种类,我们需要在一个表中的列,并只接受每个数据项类型将只能使用一小列,即休息将为空。
- 别的东西?
如果我们使用常规列时,它们中的大量数据将为空,那么它有关系吗?
什么时候应该使用动态列以及何时使用常规列更好?
这与使用MariaDB的动态列类似,可以使用json格式进行提取。 1.我仍然对为什么一个解决方案感到困惑虽然比另一个更好。 – dbdemon 2015-03-25 17:57:26
它总是取决于具体情况。如果您需要按列过滤,则需要简化过滤。如果它是一个要解析的数据,那么你可以使它紧凑。 – 2015-03-26 11:28:54