实体属性值 (EAV) 框架?

2024-01-12

我见过实体属性值 http://en.wikipedia.org/wiki/Entity-attribute-value_model在我真正知道它的名字是什么之前,我已经在很多情况下了解过它。当您不是将数据存储在数据库列中,而是“翻转”它并拥有一个包含实体、属性、值列的表,并且每条数据都成为该表中的一行时,经常会出现这种技术。有时它也被称为“开放模式”。

它对某些事情有利,对另一些事情不利。这维基百科文章 http://en.wikipedia.org/wiki/Entity-attribute-value_model对其背后的理论进行了很好的讨论。

这似乎是一种经常使用的技术,应该有框架、引擎、NoSQL 数据库或通用软件工具来构建和支持它。

那么,你知道吗?我对 Microsoft 堆栈(.Net、SQL Server 等)特别感兴趣,但也对其他技术堆栈感兴趣。

例如,这是一个项目构建 ASP.NET EAV 引擎 http://code.google.com/p/entity-attribute-value-engine/这正是我正在寻找的,但显​​然从未开始。


如果您可以忍受 NoSQL 数据库的缺点,那么实现 EAV 模式的最佳方法是使用 CouchDB 或 MongoDB 等 NoSQL 替代方案。这些数据库提供“无模式”设计,允许每一行都有自己的模式。使用传统 RDBMS 执行 EAV 会带来麻烦,因为查询变得非常困难,并且数据集越大,性能就会受到影响。

我过去成功使用的另一种方法是将 RDBMS 与 NOSQL 变体(MySql 和 MongoDB)结合起来。我使用 MySQL 来存储 EAV 数据(获得事务完整性),并使用 MongoDB 作为报告存储来解决 EAV 模型的查询问题。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

实体属性值 (EAV) 框架? 的相关文章

  • 如何保证对象只有一个线程

    我有以下代码 class Service public void start creates thread which creates window and goes to message loop void stop sends WM C
  • 我如何理解这个 C 类型声明?

    double bar int double double double double 在查看讲座幻灯片时 我发现了留给学生的练习 用简单的英语来说 什么是类型bar在这个 C 声明中 Please帮助我解决这个问题 我什至不知道从哪里开始
  • 何时使用 =default 使析构函数默认?

    尽管对构造函数使用 default 对我来说很清楚 即强制编译器在其他构造函数存在时创建默认构造函数 但我仍然无法理解这两种类型的析构函数之间的区别 那些使用 default 的 那些没有显式定义并由编译器自动生成的 我唯一想到的是 gro
  • 读取 C# 中的默认应用程序设置

    我的自定义网格控件有许多应用程序设置 在用户范围内 其中大部分是颜色设置 我有一个表单 用户可以在其中自定义这些颜色 并且我想添加一个用于恢复默认颜色设置的按钮 如何读取默认设置 例如 我有一个名为的用户设置CellBackgroundCo
  • 时间:2019-03-17 标签:c#ThreadSafeDeepCopy

    我一直在阅读很多其他问题以及大量谷歌搜索 但我一直无法找到明确的解决方案 根据我读过的一些最佳实践 类的静态方法应该创建线程安全的 并且实例成员应该将线程安全留给消费者 我想为该类实现深度复制方法 该类本身还有其他引用类型成员 有没有什么方
  • vs2008 c#:Facebook.rest.api如何使用它来获取好友列表?

    如何在此基础上取得进一步的进步 获取好友列表的下一步是什么 string APIKey ConfigurationManager AppSettings API Key string APISecret ConfigurationManag
  • 如何在 QTabWidget Qt 中展开选项卡

    我有一个QTabWidget像这个 但我想展开选项卡以 填充 整个小部件宽度 如下所示 我怎样才能做到这一点 我在用Qt 5 3 2 and Qt 创建者 3 2 1 Update 我尝试使用setExpanding功能 ui gt myT
  • 为什么 set_symmetry_difference 无法与比较器一起使用?

    Example program include
  • C# 构建一个 webservice 方法,它接受 POST 方法,如 HttpWebRequest 方法

    我需要一个接受 POST 方法的 Web 服务 访问我的服务器正在使用 POST 方法 它向我发送了一个 xml 我应该用一些 xml 进行响应 另一方面 当我访问他时 我已经使用 HttpWebRequest 类进行了管理 并且工作正常
  • 如何从文本文件读取整数到数组

    这就是我想做的 我对此有些不满 但我希望你能容忍我 这对我来说是一个非常新的概念 1 在我的程序中 我希望创建一个包含 50 个整数的数组来保存来自文件的数据 我的程序必须获取用户的文档文件夹的路径 2 文件的名称为 grades txt
  • C++ php 和静态库

    我创建了一个library a 其中包含 cpp 和 h 文件 其中包含很多类 嵌套类和方法 我想在 php 示例中包含这个静态库并尝试使用它 我想提一下 我是 php 新手 我已经在 test cpp 文件中测试了我的 libray a
  • 将二进制数据从 C# 上传到 PHP

    我想将文件从 Windows C 应用程序上传到运行 PHP 的 Web 服务器 我知道 WebClient UploadFile 方法 但我希望能够分块上传文件 以便我可以监控进度并能够暂停 恢复 因此 我正在读取文件的一部分并使用 We
  • 如何使用 django-pyodbc (ubuntu 16.04) 配置数据库设置 Django-MSSQL?

    我是 Django 新手 目前正在尝试使用另一个数据库来保存我的模型 即MS SQL 我的数据库部署在docker容器中 903876e64b67 microsoft mssql server linux bin sh c opt mssq
  • 如何分析组合的 python 和 c 代码

    我有一个由多个 python 脚本组成的应用程序 其中一些脚本正在调用 C 代码 该应用程序现在的运行速度比以前慢得多 因此我想对其进行分析以查看问题所在 是否有工具 软件包或只是一种分析此类应用程序的方法 有一个工具可以将 python
  • ASP.NET MailMessage.BodyEncoding 和 MailMessage.SubjectEncoding 默认值

    很简单的问题 但我在 MSDN 上找不到答案 查找 ASP NET 将用于的默认值 MailMessage BodyEncoding and MailMessage SubjectEncoding 如果你不在代码中设置它们 Thanks F
  • IEnumerable.Except 不起作用,那么我该怎么办?

    我有一个 linq to sql 数据库 非常简单 我们有 3 个表 项目和用户 有一个名为 User Projects 的连接表将它们连接在一起 我已经有了一个获得的工作方法IEnumberable
  • 在 Sql STUFF 命令中将最后一项的逗号分隔符替换为“and”

    如果我查询的输出是英国 美国 印度 是否可以像英国 美国那样显示查询结果and India 这是我的查询 Select stuff Select Distinct Country as text from tbl Country where
  • 使用taskkill停止Windows服务

    我需要帮助来使用 C 终止 Windows 服务 现在要终止该服务 请使用以下选项 从命令 sc queryex ServiceName 发现后PID服务的 taskkill pid 1234 exemple f 为了便于阅读 但如果您明白
  • 更改 Windows Phone 系统托盘颜色

    有没有办法将 Windows Phone 上的系统托盘颜色从黑色更改为白色 我的应用程序有白色背景 所以我希望系统托盘也是白色的 您可以在页面 XAML 中执行此操作
  • C++0x中disable_if在哪里?

    Boost 两者都有enable if and disable if 但 C 0x 似乎缺少后者 为什么它被排除在外 C 0x 中是否有元编程工具允许我构建disable if按照enable if 哦 我刚刚注意到std enable i

随机推荐

  • 如何在 Visual Studio 2012 中分析单元测试?

    是否有可能profileMSTest 单元测试Visual Studio 2012 旗舰版不使用任何外部分析工具 此功能已在即将发布的 Visual Studio 2012 季度更新 1 中重新添加 在测试资源管理器中右键单击要分析的测试
  • 自定义 ASP.NET SqlMembershipProvider - 处理连接字符串

    我正在创建一个自定义 SqlMembershipProvider 类 以向基类添加一些增强功能 不过 我正在忙于处理连接字符串 如何从配置中读取连接字符串名称并使其可供其余方法使用 现在我有 public override void Ini
  • 使用 JavaScript 基于字符串创建十六进制颜色

    我想创建一个函数来接受任何旧字符串 通常是一个单词 并从中somehow生成一个介于之间的十六进制值 000000 and FFFFFF 所以我可以将它用作 HTML 元素的颜色 甚至可能是一个速记的十六进制值 例如 FFF 如果不那么复杂
  • 使用 Mapbox 过滤掉国家/地区

    是否有可能使用 Mapbox 仅显示德国国家边界和内部数据 我不想展示世界其他地方 Thankx Markus 是的 使用德国 GeoJSONhttp code highcharts com mapdata http code highch
  • android usb UsbDeviceConnection.bulkTransfer 返回 -1

    我正在尝试从 Android 平板电脑向 POS 打印机发送命令 我已经能够使基本连接正常工作 但现在当我尝试将数据发送到打印机时 bulkTransfer 返回 1 请帮助我了解发生了什么事 以下是从 android 站点获取的修改后的广
  • 处理不断变化的模式

    我们是一家游戏公司 将事件 每天最多 1 个千兆事件 存储到 bigquery 事件按月份和应用程序进行分片 以降低查询成本 现在来谈谈我们的问题 我们当前的解决方案支持添加新类型的事件 从而产生新版本的表模式 该版本也已添加到表中 I e
  • 哪个最有效:直接通过 nginx 提供静态文件还是通过 nginx 反向代理通过节点提供静态文件?

    我已经使用了nginx as reverse proxy服务我的node js网络应用程序3000 lt gt 80例如 实际上 我在节点应用程序中提供我的资产 使用express static中间件 我读了一遍又一遍 发现 nginx 提
  • Entity Framework 5 中的 Visual Studio 2010 支持 LocalDB 吗?

    NET 4 0 上的实体框架 5 中的 Visual Studio 2010 是否支持 LocalDB 还是我做错了 使用 LocalDB 的连接字符串实例化模型容器时 出现 找不到网络路径 问题 这是连接字符串 var connectio
  • MacOS 上的 Clang 包含问题

    我在 MacOS 上从头开始构建了 Clang 但遇到了问题 使用以下命令来配置 Clang 进行构建 cmake G Unix Makefiles DCMAKE INSTALL PREFIX opt clang 12 DCMAKE BUI
  • MATLAB 滑块步进行为

    我使用 MATLAB 2012a 中的 GUIDE 创建了一个滑块小部件 我希望它控制一个显示图像的轴 其中滑块逐步浏览一系列图像 我已在 m 文件的一部分中设置了滑块的 Min Max 和 SliderStep 属性 sliderMin
  • 如何使用 spacy 查找最常用的单词?

    我正在使用 spacy 和 python 它可以很好地标记每个单词 但我想知道是否有可能找到字符串中最常见的单词 还有可能得到最常见的名词 动词 副词等吗 包含一个 count by 函数 但我似乎无法让它以任何有意义的方式运行 我最近不得
  • Jquery:选择调用该函数的元素

    我通过调用元素本身的函数onclick属性 因为我需要 php 动态地在函数的参数之一中给出一个值 当我尝试通过以下方式引用函数中的调用元素时 this 它最终引用整个窗口而不是元素 我该如何解决 尝试将您的元素作为参数发送到您的函数 如下
  • Laravel 错误:方法 Illuminate\View\View::__toString() 不得引发异常

    你在 Laravel 工作时见过这个可爱的错误吗 Method Illuminate View View toString must not throw an exception 我见过它 这非常烦人 我发现了引发此错误的两个原因 我只是想
  • 如何在 JAX-RS REST 方法中检索 JSON 消息正文?

    我有以下内容JSON它将作为 HTTP 请求的一部分在消息正文中传递 names id
  • 自动在绘图中定位文本框

    有没有办法告诉pyplot text 一个像你一样的位置pyplot legend 像 legend 论证这样的东西会很棒 plt legend loc upper left 我正在尝试使用字母 例如 A B 来标记具有不同轴的子图 我认为
  • 如何检测Safari、Chrome、IE、Firefox和Opera浏览器?

    我有 5 个适用于 Firefox Chrome Internet Explorer IE Opera 和 Safari 的插件 扩展 如何正确识别用户浏览器并重定向 单击安装按钮后 以下载相应的插件 谷歌搜索浏览器可靠检测通常会导致检查用
  • DNS问题,nslookup可以,ping不行

    我正在我的公寓里设置一个开发服务器 我已经在其上设置了一个 Ubuntu DNS 服务器 并添加了区域 weddinglist 只是 weddinglist 没有TLD http en wikipedia org wiki Top leve
  • JSON stringify 返回空字符串[重复]

    这个问题在这里已经有答案了 在 Javascript 中 我尝试使用 stringify 但它不断返回空字符串 这里有什么问题吗 请随意编辑小提琴 JS values values belopp 2322 values test jkee
  • 如何根据其中一个 Vec 的值对两个 Vec 进行共同排序?

    我有两个Vec对应于特征向量列表及其相应的类标签 我想按类标签对它们进行共同排序 然而 Rust 的sort by对切 片进行操作 而不是作为特征 或类似 上的通用函数 并且闭包仅获取要比较的元素而不是索引 因此我可以偷偷地破解排序以使其并
  • 实体属性值 (EAV) 框架?

    我见过实体属性值 http en wikipedia org wiki Entity attribute value model在我真正知道它的名字是什么之前 我已经在很多情况下了解过它 当您不是将数据存储在数据库列中 而是 翻转 它并拥有