denormalization相关内容

如何不规范连续数据(INTS,FLOATS,DATETIME等)?

根据我的理解-如果我错了,请纠正我-“规范化”是从数据库中删除冗余数据的过程 但是,当我尝试学习数据库优化/性能调整时,遇到了先生。里克·詹姆斯(Rick James)建议反对标准化连续值,例如(INTS,FLOATS,DATETIME等) “规范化,但不要过度规范化。”特别是,请勿对 日期时间或浮点数或其他“连续”值进行规范化。 源 当然,纯粹主义者说可以正常化时间。那 ..

单表继承会导致非规范化

我们正在尝试提出付款方式的数据模型。可以使用多种付款方式,例如“卡”,“银行转帐”,“电子钱包”,这些付款方式可以进一步分类为:将卡转换为信用卡/借记卡,将银行转帐至ACH / SEPA等。 因此,这是关于将继承建模到数据库表中。一种选择是使用单表继承。我团队中的高级人员将单个表称为非规范化表。但我不明白为什么?我在这里看不到任何插入/删除/更新异常,每个付款方式记录都独立存在,没有多余之处 ..

触发器与非正规化存储过程的优缺点

当涉及对事务数据库中的数据进行非规范化以提高性能时,有(至少)三种不同的方法: 通过存储过程推送更新,该过程将同时更新标准化的交易数据和非标准化的报告/分析数据; 交易表上的实现触发器可更新辅助表;这几乎总是维护历史记录时要采用的途径; 将处理推迟到每晚进行批处理,可能需要将ETL放入数据集市/仓库。 / p> 为了这个问题,我们假设选项#3不可行,因为域需要非规范化数据始 ..

存储数据库记录计数是否多余?

我正在使用Rails和MySQL,并且有一个基于行计数的效率问题. 我有一个Project模型,即has_many :donations. 我想计算一个项目的唯一捐助者的数量. projects表中是否有一个名为num_donors的字段,并在创建新的供体时增加它的好主意? 或者由于数据库优化,像@num_donors = Donor.count(:select => 'D ..

我应该使用平面表还是规范化的数据库?

我目前正在使用一个Web应用程序,该应用程序将MySQL数据库用作后端,在继续进行下去之前,我需要知道哪种方法对我的情况更有利. 简单地说,在此应用程序中,用户将能够使用任何数字字段(由他们决定)构造自己的表单,现在我将其全部存储在由外键链接的几个表中.我的一个朋友建议为了使事情“轻松/快速",我应该将每个用户的表单转换为一个平面表,以便从他们那里查询数据保持快速(以防万一). 我应该 ..
发布时间:2020-08-11 04:26:52 数据库

MySQL-我应该反规范化吗?

概述 (抱歉,它含糊不清-我认为,如果我详细介绍一下,将会使事情复杂化) 我有三个表,表一包含一个ID,表二包含其自己的ID和表一的ID,表三包含其自己的ID和表二的ID. 我花了很多时间思考,我认为对于表3来说,也要包含相关的表ID会更有效. -这将意味着我不必连接三个表,我只需查询三个表(对于将经常使用的查询) -通过仅锁定表3中包含表1中特定ID的行,这将使我能够更轻 ..
发布时间:2020-08-11 01:39:05 数据库

我可以在bigquery中对多个大表进行非规范化吗

我可以在bigquery中对多个大表进行非规范化(通过联接)吗? 表1中有4亿行 Table2是2M行 Table3是80万行 如果没有,上传之前是否必须在关系数据库中进行?那将是一个困难的解决方案. 我应该将表分成较小的块并在表上运行联接的迭代,以使它始终从小到大吗?这也是一个困难的解决方案. 谢谢. 解决方案 BigQuery现在支持“大联接",使您可以在联接查 ..
发布时间:2020-07-21 19:06:51 其他开发

如何仅删除字符串中大写字母的变音符号

我需要删除字符串中大写字母的变音符号. 示例:ÉlectroniqueCaméras=> ElectroniqueCaméras(仅修改了É,Caméras中的é保持不变) 我正在使用以下方法,该方法仅从大写字母中删除变音符号,但是重建的字符串看起来像这样-Electronique Came?ras(é丢失了).如何正确重建字符串? public static String remov ..

如何从非规范化表计算非虚增计数

假设我有一个非规范化表,该表包含一个ID和一个我需要计数的值。像这样的东西: Tree_ID | ...其他专栏... | Count_If_True --------------------------------------------- --- 1 | ...其他值... |真 1 | ...其他值... |真 2 | ...其他值... |真 2 | ...其他值.. ..
发布时间:2020-05-30 01:34:41 其他开发

在Oracle中保持表同步

我们将进行并行测试,以将旧系统与新的闪亮版本进行比较.我们有一个Oracle数据库表A,用于存储遗留系统的数据,以及一个等效表B,用于存储新系统的数据,因此在测试期间,该数据库将被非规范化. (此外,旧版系统和表A是固定的-不允许更改) 我想要做的是允许A上的不频繁DML操作传播到B,反之亦然.我从一对触发器开始做起,但是遇到了一个明显的问题,即当触发器运行时,表发生了变异,并引发了异常. ..
发布时间:2020-05-22 00:22:36 数据库

非正规化时的深度有多深

我将OLTP数据库非规范化以用于DWH. 目前,我正在使研究组不规范. 每个研究组都有一个指向一个项目的钥匙. 每个项目都有一个指向1个部门的密钥. 每个系都有一个指向一所大学的钥匙. 每所大学都有指向一个城市的钥匙. 现在我知道您应该对OLTP的sh * t进行规范化处理,但是在这个dwh部门中,它将是一个独立的维度.这也适用于大学.从研究组添加指向部门的密钥就足够了吗?还是尽 ..

是否可以在不使用存储过程的情况下使用NHibernate进行非规范化更新?

我正在考虑在一个具有一定程度的计划非规范化(由DBA计划)的数据库的项目中使用NHibernate.从一组表中读取并将一列映射到一个属性不是问题.但是,在更新时,我必须将一个属性映射回原始表中的原始列,并更新非规范化表中该列的一些副本.可以使用NHibernate而不使用存储过程来做到这一点吗? 编辑:尽管我倾向于同意NXC的回答,但是这个问题是关于如何使用NHibernate解决问题,而不 ..
发布时间:2020-05-17 23:02:11 其他开发

如何在MySQL中找到最流行的单词出现?

我有一个名为results的表,该表有5列. 我想使用title列查找表示以下内容的行:WHERE title like '%for sale%',然后在该列中列出最受欢迎的单词.一个是for,另一个是sale,但我想看看与此相关的其他词. 样本数据: title cheap cars for sale house for sale cats and dogs for sale ..
发布时间:2020-05-15 04:22:34 数据库