融智技术学院

 找回密码
 注册
查看: 209|回复: 0

IT百科——字段

[复制链接]
MrLi 发表于 2013-12-31 13:00:04 | 显示全部楼层 |阅读模式
字段

计算机科学领域,有多个部分的数据可以将其分成几个字段。关系型数据库按照记录集分配数据,也可将记录称为“行”。每条记录有多个字段,所有记录的某一字段构成了“列”。

在面向对象编程中,字段(也被称作数据成员或成员变量)是类或对象的封装数据。在一些特定情况下的字段(也被称为实例变量)里,每个对象的实例都是实例变量:例如,一个雇员类有一个Name字段而每个一个雇员都有一个名字。静态字段(也被称为类变量)是一个被所有实例共享的一个变量。

固定长度

字段包含数量固定的位值,从而确定了字段的固定长度。四个字节的字段的包括了有31位的二进制整型加一个符号位(总共32位)。一个30个字节的名字字段可能包含一个通常以空格结尾的人名。使用固定长度字段有一个坏处,字段的某一部分可能浪费掉,但是这部分空间依然需要按照最大长度分配。同样,有些字段会被遗漏,填充失去的字段仍然需要维持固定的实例化记录起始点。
变长字段

变长字段没有固定的物理尺寸大小。例如字段几乎经常使用的文本字段,它可以很大很大,或者有很多长度不确定的字段。例如,像PubMed一样的书目数据库有很多短小的字段,就如发表日期和作者名称,但是也有摘要,而摘要则会长度不一。保存一个一定长度的固定长度字段是无效的,因为摘要需要执行在一个最大长度范围上,另外也是因为空间浪费在记录了(尤其不确定是否会缺少使用空间)。

数据库通过特殊的方法实现了通常变长字段的保存,为了使所有给定类型的记录都有统一而且小巧的空间。这么做也有助于性能的提升。另外,序列化的数据格式就像文件系统的类型保存、通过网络传输的数据等等常常使用不同的性能策略。其中选择依据因素有记录总长度、存储介质的性能特性和期望的访问模式。

数据库通常实现保存可变长度字段的方式
        字符或字节序列,在结尾处有一个不能在字符串或字节中使用的标志。这使得在当前字段下访问之后的字段变得很慢,这是因为之后的字段总是与开始记录处有不统一的物理距离。
        一个指向其他地方数据的指针,例如URI,文件偏移(也指可能的长度),或者指向一条记录所在的特定地方的一个键值。这通常看上去提升了处理速度,但因为需要固定长度的字段,所以处理也将很慢。
        一个长度前缀后跟上字符或字节的长度数值。这避免了像第一种方法一样的结尾标识符,并避免了如第二种方法一样损失部分内容。另一方面,它规定了最大长度:可以使用(通常的固定长度)前缀来表示最大数值。此外,记录仍然长短不一,而且为了到达之后的字段必须遍历。
如果变长字段常为空,可附加其他优化发挥作用。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

新突破电商

小黑屋|手机版|Archiver|融智技术学院 ( 京ICP备09018999号 )

GMT+8, 2019-8-26 13:26

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表