首页 Domino 附件和对象服务(DAOS)

Domino 附件和对象服务(DAOS)

举报
开通vip

Domino 附件和对象服务(DAOS)Domino附件和对象服务(DAOS)什么是DAOS?LotusDomino附件和对象服务(DominoAttachmentandObjectService,DAOS)是LotusDomino8.5新推出的全新附件存储方式。相比于以前的附件存储,DAOS极大降低了附件的存储空间,减少了对磁盘I/O的读写,从而提高了Domino服务器的性能。一般的数据库,附件所占存储比例都在50%〜90%之间,因此在Domino服务器的磁盘上,有数量众多大小不一的附件,其中,有些附件是完全相同的。比如,用户在某个数据库中放入一个附件...

Domino 附件和对象服务(DAOS)
Domino附件和对象服务(DAOS)什么是DAOS?LotusDomino附件和对象服务(DominoAttachmentandObjectService,DAOS)是LotusDomino8.5新推出的全新附件存储方式。相比于以前的附件存储,DAOS极大降低了附件的存储空间,减少了对磁盘I/O的读写,从而提高了Domino服务器的性能。一般的数据库,附件所占存储比例都在50%〜90%之间,因此在Domino服务器的磁盘上,有数量众多大小不一的附件,其中,有些附件是完全相同的。比如,用户在某个数据库中放入一个附件,又在某个时候将这个附件放入另外一个数据库,此时,Domino服务器将两份附件分别存储在两个不同的数据库中。这是两份完全相同的附件,能不能在Domino服务器上只存储一份呢?如果能,那不是可以节省服务器的存储空间吗?事实上,DAOS就是这么做的。无论用户在数据库中存入多少份附件,DAOS所做的就是保证相同的附件在Domino服务器上只保存一份,如下图1所示。图1.DAOS和非DAOS比较口HJBAOSinfo-UDcInfQJoclnfo.docln-ta.docanirInk?dOC当然,DAOS带来的好处绝非仅仅是节省存储空间,更重要的是使Domino服务器减少I/O读写操作数和I/O读写数据量,从而提高了Domino服务器的性能。此外,对于管理员来说,由于数据库空间的减小,使得数据库压缩操作完成得更快,耗时减小,在IBM测试中,数据库压缩可以快2〜7倍。由于单附件节省了存储空间,对数据库的备份比之前更快。并且,DAOS对用户和API都是透明的。回页首DAOS设置和工作原理需要注意的是,LotusDomino8.5缺省设置并不启用DAOS。要启用DAOS,先决条件是Domino服务器启用事务日志(事务日志可以在服务器文档里启用),同时,在服务器文档“DAOS”栏设置启用DAOS。此外,需要在数据库层面上进行设置。首先,数据库ODS必须是8.5版本或以上(为51或以上),然后在“databaseproperty”的“advanced”选项选中"UseDominoAttachmentandObjectService”,或者使用带DAOS参数的compact命令对数据库压缩,命令为loadcompact-c-daoson,这样数据库就启用了DAOS。LotusDomino允许启用DAOS和没有启用DAOS的数据库同时存在,给管理员使用DAOS很大的灵活性。如果一个数据库没有启用DAOS,意味着如果有多份相同附件存入这个数据库,仍旧是多份存储,就像以前的附件存储那样。服务器文档"DAOS”栏的设置项如图2:图2.服务器DAOS设置DAOSSettingsStorefileattachmentsinDAOS:EnaLledMinimunn^izeofobjectbefore4096DominowillreinDAOS;DAOSbasepath:DAOSDeierobjectdeletionfor:'-'30da^s“StorefileattachmentsinDAOS”:服务器是否启用DAOS,只有在启用的情况下,其余各项才有意义。此设置对应于notes.ini参数DAOSEnable。“MinimumsizeofobjectbeforeDominowillstoreinDAOS':附件会以DAOS方式存储的最低尺寸要求。如果一个附件的大小小于此设置值,即使所在的数据库启用了DAOS,也不会以DAOS方式存储。此设置对应于notes.ini参数DAOSMinObjSize。“DAOSbasepath”:存储附件的路径,相对于Domino数据目录。以DAOS存储的附件都会存放在此路径下。事实上,即使附件只出现一个文档中,并没有被多个文档引用,也会存储在这里。服务器会在此路径下创建子路径0001、0002,„„.最多能够创建10000这样的子目录,每个子目录最多能存储4000个附件,附件都存储在子目录中。此设置对应于notes.ini参数DAOSBasepath。“Deferobjectdeletionfor”:如果文档中都已删除了某个附件,也就是说,服务器上已经没有文档还引用这个附件,那么,服务器就可以在附件目录下将此附件删除。这个删除工作什么时候做,取决于此项设置。如果设置为“0”,是让服务器在没有任何文档引用这个附件时立刻把附件删除。既然对附件没有任何引用了,还有必要让附件在服务器上保留一段时间吗?考虑这样的情况,在将来的操作中,还会把此附件存入数据库,如果此附件服务器上已经存在,那么就会节省上传附件的时间。此设置对应的notes.ini参数为DAOSDeferredDeleteInterval。前面提到,DAOS会将附件都存放在设定的路径下,每个附件都会以.NLO(NotesLargeObject)后缀名文件存在o.NLO文件的文件名是附件内容的校验和码。当用户往数据库存入一个附件时,DAOS首先对附件的内容做校验和,然后和目录下的.NLO文件做比较(把计算得出的校验码和文件名比较),如果没有找到相同的,说明此附件对服务器来说是“第一份”和“全新”的,将附件加密后,以NLO文件的形式放入目录下。如果已经存在相同的附件,就不会再将附件放入目录。服务器上有一个重要的数据库DAOSCatalog(daoscat.nsf)来维护DAOS附件和其引用的维护,它 记录 混凝土 养护记录下载土方回填监理旁站记录免费下载集备记录下载集备记录下载集备记录下载 了文档与附件之间的对应关系。对每个.NLO文件,DAOSCatalog维护一个计数器,来记录附件被服务器上文档引用的次数。图3描述了DAOS存储过程。图3.DAOS工作过程N是否存柱对应NLO对附件内容做校验和对附件加密(総省)YJt完成VMMdaoscatn&f中对此NLO的引用倍息加入附件对附件回密.修改文件名(MLO)・放入制定目录需要注意的是,服务器在缺省情况下都会用自己的密钥对.NLO文件加密,这样,在操作系统层面,无法直接打开.NLO文件,保证附件安全性。因为使用服务器的密钥进行加密,因此除了附件所在的服务器外,其他Domino服务器都也都无法解密附件。Domino也提供不对.NLO文件加密的设置,虽然这是强烈不推荐的。在notes.ini中设置DAOS_ENCRYPT_NLO=0,Domino服务器就不会对.NLO文件加密。另外,只是对附件的内容计算校验和,这就是说,只要内容相同,不同名称、修改时间的附件对DAOS来说都是相同的。如果用户修改了附件内容并保存,对Domino服务器而言,就是新产生了和原附件不同的附件,DAOS的处理过程和图3类似。当用户删除附件时,一般服务器都不会真正的把.NLO文件删除,它首先更新daoscat.nsf中对相应.NLO文件的计数器,如果计数器不为0,则不用再做任何操作,删除过程已经完成。如果计数器为0,意味着服务器上已经没有对此附件的引用,可以将.NLO文件删除。删除操作何时进行,取决于上文提到的“Deferobjectdeletionfor”设置。daoscat.nsf在DAOS中扮演了十分重要的角色,它存储附件和对其引用的重要信息,是DAOS技术的基础。因此,daoscat.nsf被 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 成只对服务器可见,只有服务器能够读写信息,任何用户,包括服务器管理员,都没有权限访问此数据库的权限,这样能够保证daoscat.nsf中的信息不会因为人为操作而出现不一致的情况。并且,daoscat.nsf是独立的,不和其他服务器上的daoscat.nsf复制同步。Notes文档并不存储附件本身。文档存储的只是对附件的引用(ticket),引用包含了附件的相对地址,因此用户在打开附件时,Domino服务器可以根据这个引用找到附件并打开,DAOS对用户来说是完全透明的,用户并不需要知道附件实际是怎么存储的。图4是附件在Notes文档存储的示意图。图4.DAOS和引用需要注意的是,DAOS是以服务器为范围的,就是说,只有同一服务器上的数据库,才能实现对同一附件的共享。十回页首DAOS和邮件路由DAOS使邮件路由的性能大大提高oMAIL.BOX是特殊的数据库,它也能启用DAOS(但必须选择LZ1作为附件压缩方式)。未启用DAOS时,发送邮件中的附件会和邮件一起放入Domino服务器的MAIL.BOX数据库,邮件路由器会把它们转发到收件人的数据库,在这个过程中附件在多个数据库之间复制,造成很大的I/O开销,对MAIL.BOX的大量读写也会影响邮件转发的性能。图5是两种情况下的邮件路由示意图。图5.DAOS和邮件路由(址品旳Mbil.DaD□□■抖文注DihveDa-vv曲用DAOS涼扃用MgTfl-GaryS0jva—厂在DAOS启用的情况下,邮件内的附件被直接放入DAOS附件路径下,不会经过MAIL.BOX。从MAIL.BOX内转发的仅仅是对附件的引用(ticket),这大大提高了邮件转发性能。图5所描述的是多个收件人的情况,实际上对于单个收件人,DAOS也是这样做的。对于邮件系统来说,共享邮件(sharedmail)和DAOS有共同之处,在多个收件人的情况下,它们都能减少磁盘存储,减少I/O读写操作,并且对用户都是透明的。主要不同点为:共享邮件只能使用在邮件数据库中,而DAOS还可以适用其他数据库。共享邮件共享的是邮件正文,可以包含附件,也可以包含文字等其他内容,而DAOS共享的只是附件。对于含有附件的邮件,DAOS的转发效率比共享邮件高。共享邮件的方式下,邮件正文(包含附件)会进入MAIL.BOX,而在DAOS方式下,附件不会进入MAIL.BOX,而是直接放入附件存储目录,邮件路由器的转发效率更高。Domino8.5及以后的版本建议使用DAOS与数据库设计压缩,文档压缩来代替共享邮件,共享邮件将逐渐退出历史舞台。回页首DAOS管理作为Domino管理员,需要对DAOS附件存储进行管理。下面列出了管理DAOS的主要命令。TellDAOSMgrStatus:列举DAOS操作的状态以及DAOS全局信息,比如附件存储路径,删除没有文档引用附件的间隔等。TellDAOSMgrStatusDbsummary:列举服务器上所有启用DAOS的数据库状态,对附件的引用数目,如图6所示。图6.DAOS命令显示Pataba^e£:\.S5\])ominiJaninG\dataXfcestftA03.nsfif:\85、Jknin<]、Mai£0、tBb1e・ns:fC(tantStfltelsed£sinclii*Dniia!?dSynclironiEedTellDAOSMgrStatusCatalog:列举DAOS中catalog的状态,版本等信息。TellDAOSMgrStatusDatabases:列举服务器上所有启动DAOS的数据库的详细信息,包括状态,上次引用与附件同步的时间,引用数目等,如图7所示。图7.DAOS命令显示Database:f:X85XDr3mino\data\testDaol-nsfDatabasestate=SynchronisedLastpesynchronized:06/25/200901:43:17PMTicketcount:1Database=£=sS5sDomino\data\testDAO2・nsfDatabasestate=SynchpuniEedLasti?esynGhroniEed='66/25/2S0903=66=1^PMTicketcount:3TellDAOSMgrStatusdatabase_name:列举某个数据库的DAOS信息和状态。TellDAOSMgrListNLO-ooutputfile_nameALL/MISSINGdatabase_name:列举指定数据库中所有(ALL)或者丢失(MISSING)的NLO引用,并将结果重定向到文件outputfile_name中。如果NLO文件损坏、删除或丢失,用此命令可以迅速定位,用备份的NLO文件进行恢复。TellDAOSMgrPruneday_number删除没有文档引用的NLO文件。day_number指定NLO已经没有任何引用但还存在服务器上的天数。如果此参数为0,就表示立即清除所有没有引用的NLO文件。如果为非零,比如说3,就是清除所有失去任何引用超过3天的NLO文件。值得注意的是,执行这个命令时,会覆盖前文提到的服务器文档“Deferobjectdeletionfor”的设置。TellDAOSMgrResync:同步启用了DAOS数据库和NLO之间的引用关系。当从操作系统删除数据库,数据库恢复等操作发生后,需要同步DAOS引用关系,并在daoscat.nsf中更新。在Domino服务器工作过程中,可能会出现NLO文件丢失,损坏而无法访问,也可能会因为NSF数据库损坏而致使NLO文件成为“孤立”文件。如果所引用的NLO文件丢失或者无法访问,在NSF文档中打开这个附件时,会遇到如图8这样的错误。图8.错误提示在服务器控制台,输入上文提到过的“TellDAOSMgrListNLO-ooutputfile_nameMISSINGdatabase_name”命令,可以得到数据库中哪个NLO文件丢失,以便进行备份。“fixup-J-Ddatabase_name”用来修复或删除损坏的有附件引用的文档。如果NSF文件损坏,以致在同步时,无法进行扫描,导致某些NLO的计数为0,这样那些NLO文件就成为“孤立”文件,需要及时用备份NSF数据库来恢复损坏的文件。十回页首复制和备份数据库在多个服务器上有副本,这些副本中,有些是启用DAOS的,有些是不启用的,它们之间相互复制,对附件的处理是怎样的呢?事实上,在Domino8.5中,无论是启用DAOS和没启用DAOS之间的复制,还是两个都启用DAOS副本之间的复制,都和“普通”的复制一样,对附件进行全复制,即如果数据库中有多个对同一附件的引用,该附件会被复制多次,并不会只复制一次。但如果复制的目标副本启用DAOS,则此副本的附件在服务器上就会以DAOS方式存储,也就是说,复制过程中,在目标副本启用DAOS的情况下,一个附件可能被复制多次,但在目标服务器上仍旧只存储一份。可以说,Domino8.5中的复制过程并没有充分利用DAOS的特点,理想的情况是,在源和目标副本都启用DAOS时,只复制文档中的引用(ticket)和对应的NLO文件,就完成副本间附件的复制。这里面涉及到一些问 快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题 ,比如,NLO文件都是以服务器的密钥加密的,简单的复制到其他服务器上并不能使用,需要一个解密再加密的过程等。总之,无论是否启用DAOS,附件的复制都是全复制的方式,但或许在以后的版本中或有所改变。因为启用了DAOS,数据库的备份较以前也有所不同,除了NSF夕卜,还需要备份NLO文件。大致的备份步骤为:将NSF文件备份在单独的磁盘。同步NSF数据库和NLO文件的引用关系,执行“TellDAOSMgrResync”。备份daoscat.nsf和daos.cfg,这两个文件都在Domino数据目录下。daos.cfg记录了附件子目录结构等信息。将DAOS附件目录下的NLO文件备份在另一个磁盘,注意保持子目录结构不变。这个过程可以使用数据备份工具,例如TivoliStorageManager)。对于在线备份而言,NLO文件的备份应该在NSF文件备份之后,因为在两种文件备份之间,服务器正常工作,可能会产生新的NLO文件和引用,如果先备份NLO文件,可能会导致备份的NSF文件中的一下引用没法找到NLO文件。需要注意的是,在首次备份以后,可以对NSF和NLO文件采取增量备份,并且,设置服务器文档中“Deferobjectdeletionfor”的时间大于增量备份的间隔时间。若要移动服务器上的附件存储路径,将原有路径下的所有子目录和NLO文件移至新的目录,注意保持所有子目录结构不变,然后对服务器文档“DAOSbasepath”设置做相应修改,重启服务器。回页首注意事项DAOS存储下,附件仍旧占据数据库的配额(quota),虽然实际上只是以引用的方式存在。使用DAOS后,访问或打开附件的时间相比之前稍长,但这种增加是微乎其微的。因为在用户打开附件时,服务器必须先定位到附件,然后解密NLO文件,这些开销就是DAOS所付出的代价。在这样的环境中使用DAOS将带来很大好处:数据库中的附件数量比较多,而且重复性较高。访问附件相对不频繁。需要经常做数据库压缩和备份。相对来说,下面的环境使用DAOS带来的好处较小:附件数量较少。文件内嵌在文档中,而非以附件的方式存在。有很多附件是加密的。(加密的附件不能以DAOS存储)
本文档为【Domino 附件和对象服务(DAOS)】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
青青子衿
暂无简介~
格式:doc
大小:156KB
软件:Word
页数:12
分类:高中语文
上传时间:2022-12-23
浏览量:6