记录数据
只要历史还在延续人类将继续各种记录活动一些哲学家甚至说人类与动物的一个主要区别就在于人类具有记录过去事件(并回想)的能力
口头记录
口头记录很有可能是人类掌握的第一种持久化存储数据的方式人们通过用心地记忆将信息从一代人传给下一代人这种口头记录方式还产生出了诸如旋律和押韵等记忆法口头传递信息的方式高度依赖于记忆力在传递过程中信息可能会走样(就像中国的传话筒游戏一样)或者当传话者不幸地遭遇到狮子鲨鱼或者大灰熊之后要口头传递的信息将完全消失
图画记录
以图画(例如巖画或壁画)方式来记录信息是非常稳固的它在某种程度上较少依赖于个体命运的变幻莫测图画信息可以记录在多种媒介(例如粘土石头树皮皮肤)之上其中一些图画幸存到了现代遗憾的是这些图画的创作背景已经丢失了考古学家对它们的解读多半依靠猜测
书写记录
最早的图画文字和随后的象形文字是以书写形式记录信息的开端这可以追溯到约公元前年当时的苏美尔人发明了在泥版上进行楔形书写的方式这也称为楔形文字这种书写逐步演变成为各种字母表每一种都有自己的书写系统某些与之相近某些则完全独立它打开了记录文本信息的大门这种书写方式与时至今日我们使用的书写方式非常类似随着时间的推移用于书写记录的介质也不断得到改进粘土莎草纸小牛皮丝绸和纸张等
印刷文字
记录和传播信息曾经是一个辛苦的手工过程必须手工地复制每一条记录这种方式大大限制了对信息的存取接下来的发展就是使用印刷技术自动处理这一过程最早出现的是中国的木版印刷术这可以追溯到公元年是最早出现并延续至今的印刷技术印刷术极大地加速了记录和传播信息的过程只需要相对很少的工作使用一块木板就可以轻松地生产出数百份的拷贝活字印刷技术的发明首先出现在中国和韩国(分别于年和年)之后世纪欧洲的Johannes Gutenberg也发明了活字印刷技术这一技术通过自动化的复制极大地方便了人们对信息的获取然而一个印刷介质(例如一本书)每次依然只能被一个用户(读者)所使用搜索其中的内容仍然是一个艰辛的手工过程即使发明了索引系统也是如此(所谓索引就是一个关键字的列表它列出了使用这些关键字的那些页面的页码)
综上所述
随着技术的进步以各种介质来保存信息成为可能例如文本图片和声音等而直到电子数据存储技术的发展才使得可以将文本图片和声音等信息存储在一起相互之间进行引用并能自动地检索这些信息不过在这之前必须先将数据数字化
模拟数据与数字数据
在第一台计算机发明之前绝大多数信息都是以人类可读的格式来创建和存储的为了便于存储和检索信息人们创造了各种机械系统但信息本身依然是模拟的印刷绘画和记录下来的声音记录在密纹唱片上的声音是模拟数据而记录在CD上的声音是数字数据许多专注的高保真音响爱好者声称CD的声音只是近似于真实声音(他们是对的)但是绝大多数人不会注意到两者的差别人们并不会拒绝数字CD所带来的便利(或者采用更好的办法将音频文件存储在自己的计算机上)
在世界各地多个不同的人独立地提出了用二进制格式来表示数据的想法MIT的工程师Claude Shannon在年明确地阐述了二进制计算的原理德国科学家Konrad Zuse于年创造出了第一台功能完备的二进制计算机事实证明二进制系统是唯一适合电子信号处理的系统于是人们开始转而适应计算机
IBM在世纪年代早期推出了扩展的二进制编码的十进制交换码(Extended Binary CodedDecimal Interchange CodeEBCDIC)使用EBCDIC编码可以将人们熟悉的字符和标点符号转换为和的组合在世纪年代早期又产生了美国信息交换标准码(American Standard Codefor Information InterchangeASCII)直到年制定了Unicode编码标准Unicode编码系统可以适应地球上的各种书写系统目前可以表示 个字符覆盖种不同的文字
最初的努力着重于表示字符和数值而用二进制来表示其他类型的数据也并不遥远在将图画和声音数字化之后最终也可以将它们存储到数据库中
存储还是不存储
年IBM出售兆字节的持久存储设备售价高达每兆字节 美元(难怪当时的人们不得不作出一个令人痛苦的决定即用两位数字而不是四位数字来存储日期这造成了着名的YK问题)而年(Morrow Designs)每兆字节的价格下降到美元到了年月西部数据一百万兆字节的硬盘仅售美元相当于一美分兆字节!
当存储器非常昂贵时人们不得不精心选择要存储哪些数据随着价格的跌落人们就开始随心所欲地捕捉和存储各种数据了
多年以来DBMS的最高目标就是以一种计算机能操作的格式来构造和组织数据首选的办法就是收集并排序数据然后将其以小块的形式保存到某种数据库之中(那时称之为数据银行它遵循某些规范)用户必须掌控属于自己的所有数据随着Internet的繁盛情况发生了改变现在分布式的数据成为标准它取代了集中式的数据用户可能需要选择存储关于如何找到数据的信息并将数据存储在那里
当然有时需要谨慎小心地保证数据的安全(例如金融数据和私人数据)存储数据的数据所有者对于如何访问和修改数据具有完全的权限权限控制是数据库的专长
数据具有各种各样的格式开发人员需要决定如何存储数据尽管在处理非结构化数据方面有了进步但将数据组织为一定的分类系统(这一过程称为数据建模请参考第章和第章中更为详细的信息)无论在速度还是灵活性方面都具有明显的优势将数据分解为最小的块需要在设计数据库时付出大量努力但比起将数据作为整块存储这将给以多种方式使用数据带来很大的灵活性这就像把乐高拼装城堡玩具与注塑城堡玩具相比一样后者永远都是一个城堡模型而前者的拼装模块可以用来构造一个赛车模型在第章中将讨论如何在结构化和非结构化数据(以及介于两者之间的数据类型)之间进行权衡
返回目录SQL实战新手入门
编辑推荐
Oracle索引技术
高性能MySQL
数据仓库与数据挖掘培训视频教程