加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – 使用哪一个?数据库中的EAV或Blob?

发布时间:2020-12-16 09:35:03 所属栏目:asp.Net 来源:网络整理
导读:我目前正在努力改造我们应用程序的数据系统.基本上,它的设计使人们可以添加他们想要的所有自定义字段,只有几个常量/总是在那里的字段. 我们目前的设计给我们带来了大量的维护问题.我们所做的是动态地(在运行时)为每个字段向数据库添加一列.我们必须有一个元
我目前正在努力改造我们应用程序的数据系统.基本上,它的设计使人们可以添加他们想要的所有自定义字段,只有几个常量/总是在那里的字段.

我们目前的设计给我们带来了大量的维护问题.我们所做的是动态地(在运行时)为每个字段向数据库添加一列.我们必须有一个元表和其他残余来维护所有这些动态列.

现在我们正在研究EAV,但它似乎并没有好转.基本上,我们有许多不同类型的字段,因此会有一个StringValues,IntegerValues等表…这会让事情变得更糟.

我想知道在数据库中使用JSON或XML blob是否是更好的解决方案,特别是因为在大多数用例中,当我们从这些表中检索任何内容时,我们需要整行.问题是我们需要能够为这些数据创建报告.没有解决方案真正使自定义查询看起来很容易.在报告运行时,搜索这样的blob数据库肯定会成为一场性能噩梦.

每个“行”需要有大约15到100(可能更多)与之关联的属性/列.

我们正在使用SQL Server 2008,我们的应用程序与数据库连接是一个C#Web应用程序(因此,ASP.Net).

你怎么看?完全使用EAV或blob或其他东西? (另外,是的,我知道像MongoDB这样的无架构数据库在这里会很棒,但我不能说服我的老板使用它)

解决方法

xml数据类型怎么样?可以针对此类型进行高级查询.

我们使用xml类型取得了很好的成功.我们使用linq解析值,在代码级别完成大部分繁重工作.我们的架构有些固定,因此可能不适合您.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读