图⽚存储系统.java_数据库中存储⼤量图⽚设计
1、图像的存储策略
在数据库的 开发过程中,经常需要在数据库中存储⼀些备注信息,⽽这些备注信息的内容⼀般较⼤,格式多样-如有可能是语⾳⽂件、视频⽂件、图⽚⽂件、⽂本⽂件等,怎样 实现这些格式不同的备注⽂件的存取及预览,⼀直是开发⼈员⽐较关⼼的⼀个问题,本⽂系统的介绍了三种存取备注⼆进制信息的⽅法。
对备注⼆进制信息的存储可以采⽤以下三种⽅式;server系统和普通系统的区别
⽅法⼀:⽂件保存在固定的路径下,数据库中存取⽂件路径和名称
⽅法⼆:数据库中⽤blob类型或者varbinary类型字段存储备注⽂件
⽅法三:在本地⽤PowerBuilder的OLE存储结构存储备注⽂件
三种⽅法的优缺点
⽅法⼀:⽂件保存在固定的路径下,数据库中存取⽂件路径和名称可以节省数据空间,避免了数据库过分膨胀,但备注⽂件必须在⼀定的⽬录下,不能丢失,且同 ⼀⽬录下⽂件不能重名,对⽂件的管理造成⼀定的困难,另外,在OLE控件中浏览显⽰备注⽂件时,由于每次都要调⽤服务器程序,所以速度较慢。
⽅法⼆:在数据库中⽤blob类型或者varbinary类型字段存储备注⽂件,当⽂件存储在数据库中以后,就可以删除硬盘上原来的临时⽂件,不需要复杂的⼆进制⽂件管理,且数据库可以存储在⽹络服务器上,对数据的共享⾮常⽅便。
⽅法三:在本地⽤OLE存储结构存储备注⽂件。可以把所有的⼆进制⽂件信息存储在⼀个OLE存储⽂件中,管理⽐较⽅便。当⼆进制⽂件信息存储后,可以删除原来的临时⽂件;因为打开存储⽂件后不需要每次执⾏服务器程序来显⽰存储信息,所以存取速度较快。
2、SQL Server 2000存储图像数据库设计
图像数据库技术⼀直致⼒于解决海量数字图像的有效存储和管理问题。它是数据库技术的继承和发展,⼀⽅⾯,图像数据和⽂本数据存在着本质的区别,在⽂本数 据领域得以成功应⽤的传统数据库技术,如果⼀成不变的照搬到图像数据库领域,结果往往是低效,甚⾄⽆效;另⼀⽅⾯,传统数据库的许多成果,如SQL语⾔、 索引技术等都值得图像数据库借鉴。上述两个⽅⾯的结合成为⽬前图像数据库技术发展的主流。
2.1 BLOB数据类型
BLOB是⾮常巨⼤的不定的⼆进制或者字符型数据,通常是⽂档(.txt、.doc)和图⽚(.jpeg、.gif、.bmp),
它可以存储在数据库 中。在SQL Server中,BLOB可以是text、ntext或者image数据类型。 Image数据类型存储的是长度不确定的⼆进制数据,最⼤长度是2GB。
BLOB数据在SQL Server系统中的存储⽅式不同于普通的数据类型,对于普通类型的数据系统直接在⽤户定义的字段上存储数据值,⽽对于BLOB类型数据,系统开辟新的存 储页⾯来存放这些数据,表中BLOB类型数据字段存放的仅是⼀个16个字节的指针,该指针指向存放该条记录的BLOB数据的页⾯。
2.2 BLOB的设计策略
BLOB数据是数据量很⼤的数据类型,它会占⽤⼤量的硬盘空间、内存和⽹络资源,因此合理地设计包含有BLOB数据类型的属性表,对提⾼存储效率、查询速度有很⼤的影响。⼀般BLOB的设计原则如下:
(1)使⽤BLOB数据类型还是使⽤varchar或者varbinary数据类型
⼆进制⼤对象并不⼀定要存储为text、ntext或者image数据类型,它们也可以作为varchar或者varbinary数据类型村处在表格 中。数据类型的选择要根据将要存储的BLOB的实际⼤⼩。如果数据不会超过8K,那么就使⽤Varchar或者varbinary数据类型。如果这些⼤对 象的尺⼨超过8K,那么就使⽤text、ntext或者image数据类型。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论