我面临以下问题。我有一张非常大的桌子。该表是以前从事该项目的人员的传承。该表在MS SQL Server中。
该表具有以下属性:
您可能会猜到,不可能对该表运行任何合理的查询。现在人们只将新记录插入表中,而没有人使用它。因此,我需要对其进行重组。我计划创建一个新结构,并用旧表中的数据重新填充新结构。显然,我将实现分区,但这不是唯一要做的事情。
该表最重要的功能之一是,那些纯文本字段(即不必将其转换为另一种类型)通常具有频繁重复的值。因此,给定列中值的实际变化范围是5到30个不同的值。这引发了进行规范化的想法:对于每个这样的文本列,我将创建一个附加表,其中包含该列中可能出现的所有不同值的列表,然后在该附加表中创建一个(tinyint)主键,然后将在原始表中使用适当的外键,而不是将这些文本值保留在原始表中。然后,我将在此外键列上放置一个索引。用这种方法处理的列数约为100。
它提出了以下问题:
抱歉,这么长的文字。
感谢您的每条评论!
PS我创建了一个有关加入100张桌子的相关问题。
联接100张桌子
除了针对数据运行查询的速度外,您还将发现标准化数据的其他好处…例如大小和可维护性,仅凭这些就可以证明对其进行标准化…
但是,它也可能会提高查询速度。当前只有一行包含300个文本列的行非常庞大,并且几乎可以肯定已经超过了存储行数据页的8,060字节限制…,而是存储在ROW_OVERFLOW_DATA
或LOB_DATA
分配单元中。
通过规范化来减小每行的大小,例如用TINYINT
外键替换冗余文本数据,并且还通过将不依赖于此大表主键的列删除到另一个表中,数据将不再溢出,并且您每页还可以存储更多行。
至于通过执行JOIN
获取标准化数据而增加的开销…如果正确索引了表,则不会增加大量开销。但是,如果确实增加了不可接受的开销,则可以根据需要有选择地对数据进行规范化。
问题内容: 假设我有一个熊猫数据框: 我想计算数据框的列均值。 这很简单: 然后按列范围max(col)-min(col)。这又很容易: 现在,对于每个元素,我要减去其列的均值并除以其列的范围。我不确定该怎么做 任何帮助/指针将不胜感激。 问题答案:
本文向大家介绍归一化和标准化的区别?相关面试题,主要包含被问及归一化和标准化的区别?时的应答技巧和注意事项,需要的朋友参考一下 归一化: 把数据变成(0,1)之间的小数 把有量纲表达式变成无量纲表达 标准化: 将数据按比例缩放,去除数据单位的限制,将其转化为无量纲的纯数,便于不同单位或量级的指标能够进行比较和加权
前端标准化 本篇文章主要讲解什么是前后端分离,为什么要做前后端分离,还包括如何将前端工程化、前端编码约定、如何进行写RESTFul资源接口。 我们将前端分成两个工程: 1) WEB工程:主要提供RESTFul资源接口。 2) HTML工程:主要H5和JS,实现前端MVC分层,实现多端的能力。 前端标准化目标:代码可维护、可重构,组件化、可扩展【多端】
我的问题是批处理规范化(BN)正在规范化什么。 我在问,BN是单独标准化每个像素的通道还是一起标准化所有像素的通道。它是在每张图像的基础上还是在整个批次的所有通道上进行的。 具体而言,BN在X上运行。比如说,。因此,当轴=3时,它在“c”维度上运行,即通道数(对于rgb)或特征图数。 因此,假设X是rgb,因此有3个通道。BN是否做到了以下几点:(这是BN的简化版本,用于讨论维度方面。我知道gam
这是我的第一个问题,所以如果我没有正确的提问礼仪,我很抱歉。 我有两个非常凌乱的大表,叫做中心和联系人——一个有公司和地址数据,另一个有联系人、公司和地址数据: 中心: -CompanyGUID(PK) -CompanyName -主电话 -主电子邮件 -地址1 -地址2 -城镇 -邮政编码 注意事项 联系方式: -联系方式(PK) -FirstName -LastName -CompanyNam
问题内容: 我需要规范化值列表以适合概率分布,即介于0.0和1.0之间。 我知道 如何 规范化,但是很好奇Python是否具有自动执行此功能的功能。 我想从: 至 问题答案: 采用 : 对总和进行归一化以确保总和始终为1.0(或尽可能接近)。 采用 相对于最大值归一化