7
|
David Archer Chris Spicer · 技术社区 · 14 年前 |
![]() |
1
2
简短回答-是的,报告数据库是解决从eav数据模型报告问题的合理方法。 我花了很多年时间研究一个信息管理解决方案,它允许最终用户完全自由地定义自己的数据模型,模式和数据都是使用eav模型存储的。有趣的是,该产品提供了用于满足报告要求的元模式对象(例如,提供对象导航的图形、执行投影的视图等)。这意味着最终用户可以使用与第一次构建数据模型时相同的术语和概念自由定义查询。报告的行为本质上是通过导航这些定义来计算数据集,并将结果交给传统的报告编写工具,就好像它是关系数据一样。 这种方法的一个优点是,将eav模型转换为用户可以使用的模型的相同机制可以重用并应用于报告功能。 |
![]() |
2
6
既然你清楚地把问题的本质归结为“在这个方案中”,在我看来,eav的问题似乎真的 是 由于EAV本身。 事实上,想想看:“一个允许用户存储任何类型数据的系统”相当于一个允许用户只定义其relvars的系统。但是系统的哪个部分允许用户定义每个属性的约束?哎呀,eav用户似乎错过了数据管理中一个并不重要的方面,似乎…… |
![]() |
3
3
eav的问题并不是由于eav本身。这是由于在设计和构建数据库时没有理解数据需求的真正含义,以及数据必须具有什么样的逻辑结构才能满足这些需求。eav和任何其他允许用户设计自己的数据的系统,都会将此置于脑后。 在这个方案中,首先我们提出了一个系统,允许用户存储任何类型的数据,不管其结构如何,也不管将来的预期用途如何。然后,到了发布报告的时候,我们必须弄清楚我们得到了什么,以及这与我们需要的有什么关系。 祝你好运。 |
![]() |
4
1
eav没有问题,我花了大量时间从大量的eav数据库查询。任何一个说从eav报告是困难的或不可能的人都有两个问题中的一个,要么他们的eav系统设计得很差,要么他们不知道如何从一个中查询。从eav数据库获得好的可报告数据非常容易,只要您做了几次。不需要报表数据库或任何特殊的东西,只需要几个好的查询。 如果您正在构建一个eav-db,需要花费大量时间来设计它,那么这个设计要么会使您的应用程序成功,要么会破坏您的应用程序,而试图修复或处理一个设计糟糕的应用程序将是一场噩梦。 |
![]() |
Kazi · 如何让两个用户同时登录Laravel应用程序 6 年前 |
![]() |
Mahdi GB · 如何在MVC中通过控制器将模型数据发送到视图# 6 年前 |
![]() |
Denis Liger · 一个API两个通道 6 年前 |
![]() |
codematix · 利用gRPC构建解决方案 6 年前 |
|
Filip T · 流量与全局变量(服务中) 6 年前 |
![]() |
user3429660 · 如何使用RabbitMQ实现可靠性? 6 年前 |