- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
对于我所关心的问题,我希望得到一些意见。
我的数据库中有一个 [User] 表,其中包含您期望的基本内容,例如用户名、密码等...
此应用程序要求我跟踪每个用户的大量属性。如此之多,我可能会用完列(行存储空间)。
我很想添加一个包含 UserID、PropertyKey 和 PropertyValue 列的 UserProperties 表。这种方法非常符合要求。
我担心的是,如果每个用户有 100 个属性,那么当数据库中有 100 万个用户时,我们将拥有 100,000,000 个属性行。
我认为,使用 UserID 上的聚集索引,访问速度仍然会很快,而且您实际上存储的数据量与使用大型列方法存储的数据量大致相同。
关于性能问题有什么想法或想法吗?有更好的数据库设计的想法吗?
更新:
我一直在考虑各种可能性,但有一件事一直困扰着我。我需要经常查询其中一些属性,更糟糕的是,这些查询可能涉及同时查找符合多达 10 个属性条件的所有用户。
因此,我现在倾向于采用巨型列方法,但可能会将数据拆分到一个(或多个)单独的表中,形成以 UserID 为键的一对一关系。
我正在使用 LinqToSql,虽然我认为具有这么多列的表格不太优雅,但我认为考虑到所有挑战和权衡,它可能是正确的,但我仍然渴望听到其他意见。
最佳答案
您所描述的是一个实体属性值数据库,它通常用于您所描述的情况,稀疏数据绑定(bind)到单个实体。
E-A-V 表易于搜索。问题不在于查找行,而在于查找相关行。
为不同的实体提供不同的表可以提供域建模,但它们也提供了弱形式的元数据。在 E-A-V 中没有这样的抽象。 (Java 与 E-A-V 的类比是声明所有函数的形式参数都是 Object 类型——因此您不会进行类型检查。)
我们可以轻松查找属性键,但没有任何东西可以对这些属性键进行分组。
维基百科有一篇关于 E-A-V 的非常好的文章,但现在就阅读它 - 它主要是一位作者的作品,并且预计会进行“改进”。
关于database-design - 数据库设计 : track a vast number of attributes for each user. 如此之多,我可能会用完列(行存储空间),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/718231/
出于某种原因,我需要知道 VAST、VPAID 和 VMAP 之间的区别。 我知道两者都是视频广告转换标签,这些都遵循 IAB 标准,但我需要知道这三者之间的明显区别。 任何帮助表示赞赏。 最佳答案
Closed. This question does not meet Stack Overflow guidelines。它当前不接受答案。 想改善这个问题吗?更新问题,以使为on-topic。 6
我有一个第三方脚本(它在客户端浏览器中进行一些数据分析),通常会附加到展示广告的广告素材中。 我想使用 VAST 标记将此脚本附加到视频广告中。我已阅读 VAST 规范,但没有找到在浏览器中运行脚本的
我尝试对两个大小非常不同的表运行此查询 - #temp 大约有 15,000 行,Member 大约有 70,000,000 行,其中大约 68,000,000 行没有 ID 307。 SELECT
我的 Activity 有 ListView ,并且(除了所有其他东西)从网络加载图像并将它们显示在 ListView 中。我可以使用 5 台安卓设备:2 台 HTC desire、LG P-350、
假设我有一个用于前贴片大型视频的 VAST 广告代码。当我在浏览器中输入 VAST 网址时,VAST 文档的内容包含: ... ... 如您所见,媒体文件的类型为 .js,并不是真正的媒体
我正在尝试制作一个在添加完成后打开和关闭的视频广告,而不是在视频之前或之后(常见行为)。 问题是,由于没有真正的视频来播放广告,我想用 JS 动态创建它。 您是否知道这是否可行,或者如果从一开始就没有
我看到以下 VAST 版本可用 VAST 1.0 (deprecated) VAST 1.1 (deprecated) VAST 2.0 - http://www.iab.com/guidelines
我想弄清楚如何将前贴片广告或 VAST 广告插件添加到我的 VideoJS 播放器中,但不知道如何操作。我知道必须有文件上传到我的服务器才能被调用,但我找不到它们,并且下面插件中的文档非常模糊。另外,
我需要在 VAST 标签中播放媒体文件之前从设备调用 API 到我的服务器。 我可以用 加载 javascript 但是我如何在加
我已经使用 admob sdk 实现了横幅广告和插页式广告,现在想展示视频广告,我在 google 上搜索了 admob vast 的示例源代码,但找不到任何内容。我曾尝试在 dfp 广告系列管理系统
我有一个类层次结构,在一个基类中有很多共享成员函数,在两个派生类中也有大量独特的成员函数: class Scene { public: void Display();
非常感谢回答此问题! 反正我是第一次看到VAST标签。现在,想法是在没有或使用普通播放器的情况下运行/实现它。这可能只使用 JavaScript 事件吗?究竟如何? 标签看起来像这样: http://
我正在使用 Video.js 并试图找到一种方法来创建一个播放列表,该播放列表在播放列表中的每个视频之间播放带有 VAST 广告的视频。 我已经确定这些插件可以提供帮助: https://github
使用随机数生成器对 Pi 进行 C++ 近似,输出在我运行 Ubuntu 的 AMD 64 机器上完全按照预期工作,但是在我学校的机器上,我实现的第二个算法被破坏了,并且希望获得一些见解为什么。代码如
有很多Vast 2.0的玩家和少数3.0的投诉玩家,但是在vast 3.0的iab文档中,并没有很多直接定义或示例将广告数据作为广告服务器发送。是否有任何网站提供线性、非线性和随播广告的可靠示例? 最
我正在检查 VAST v3 specifications他们说: linear adverts may play before the content video starts (pre-‐roll
我的服务器返回 VAST 3.0包含引用第 3 方广告素材的包装器的 XML: MyAdSystem http://myserver/imp
我的服务器返回 VAST 3.0包含引用第 3 方广告素材的包装器的 XML: MyAdSystem http://myserver/imp
我正在为 Android 开发一款游戏,并且在垃圾收集器方面遇到了巨大的(且不可预测的)问题。 在加载的一个阶段,我们分配了大约 18,000 个 1616 字节数组(一些分块级别的数据)。有时(但并
我是一名优秀的程序员,十分优秀!