1、微软处理海量非结构化数据的技术和解决方案,DAT315,朱海峰高级技术方案顾问微软(中国)有限公司,孙巍技术总监北京中达金桥技术服务有限公司,点击此处修改二级标题将幻灯片标题设置为 “Title Case”标题字号为 40分或类似尺寸,并尽可能不换行将二级标题设置为 “sentence case”二级标题的字体颜色已经在PPT模板中定义,议题,SQL Server 能力及案例文档存储技术发展趋势案例讨论,文档存储技术发展趋势,新时代非结构型数据的挑战,未来的发展方向,统一标准的存储平台支持所有数据类型、各式,新数据形态成为标准实体,单一数据平台的应用,需要协调的数据存取,简约、可扩展的管理模式
2、,结构型、非结构型数据的集成,支持BLOB的抽象编程接口提供更多的服务围绕非结构化数据,例如:搜索,分析提供集成多种空间数据源的能力提供结构化和非结构化数据的关联、集成属性的提取/推广灵活的架构适用于非关系型数据的关系型操作,实体汇总,实体数据访问,企业级数据查询,通过实体架构实现对实体的直接搜索查询针对多数据源的联合并发搜索查询与 Microsoft Office SharePoint Server 和 FAST 的集成,其他数据源,数据源1,数据源2,数据源3,FAST,企业查询门户,应用特定查询,SQL Server,SharePoint,SQLServer存储,数据文件流,可适用于不同
3、网域的数据流服务,例如:金融、制造,监测数据基于历史数据实现决策支持的和业务分析与现有SQL Server 部件集成,充分利用现有能力,例如:报表、数据分析,报警,报表,报表及数据分析,数据流服务引擎,数据流服务应用接口,金融数据,例如:股票交易记录,点将流量数据,例如;Web 日志,历史数据流,SQL Server文档存储新技术,文档、多媒体文件的存储,传统的三种存储模式,SQL Server 非结构型数据存储技术,RBS - Remote Blob Storage,FILESTREAM BLOB Storage,SQL BLOB,文件流(FILESTREAM)简介,非结构数据直接储存于文件
4、系统(使用NTFS文件系统)VARBINARY(MAX) 数据类型上注明存储属性即可开启文件流存储功能丰富的双重编程模式T-SQL语句(数据库语法)编程Win32文件系统I/O编程接口支持数据库事务属性BLOBs 大小上限= 文件系统大小与SQL Server集成数据库管理,例如:备份、恢复.与SQL Server数据库安全管理集成,RBS 技术简介,远程BLOB存储标准的存储接口可使用不同存储体系后端存储无技术限制:文件系统、数据库、文件流、专用文档存储等等后端存储改变不影响应用(不需要改变)宽松(链路级)一致性保证SQL Server管理链路级一致性和垃圾收集,例如:删除、更改等等市场趋势
5、RBS优势降低BLOB存储成本降低数据库工作负载,提高系统扩展性标准应用端借口可使用不同存储使用经济的普通服务器完成复杂的存储和工作流要求,非结构型数据存储技术一览,演 示,使用不同方式访问SQL Blob数据,孙巍技术总监北京中达金桥技术服务有限公司,SQL Server Blob数据访问,SQL Server Blob访问方式Filestream存储T-SQL访问Win32 API访问Varbinary存储访问性能与Blob数据块大小有关系统设计时需要对存储数据的平均大小及使用模式进行评估,示例代码-TSQL,FilestreamSelect file from documents whe
6、re docId=1Varbinary(max)Select file from documents where docId=1,示例代码-Win32 API,DllImport(sqlncli10.dll, SetLastError = true, CharSet = CharSet.Unicode)static extern SafeFileHandle OpenSqlFilestream(string FilestreamPath,UInt32 DesiredAccess,UInt32 OpenOptions,byte FilestreamTransactionContext,UInt3
7、2 FilestreamTransactionContextLength,Int64 AllocationSize);,示例代码-Win32 API,SqlTransaction transaction = sqlConnection.BeginTransactio(mainTranaction);sqlCommand.Transaction = transactio;sqlCommand.CommandText =SELECT GET_FILESTREAM_TRANSACTION_CONTEXT();Object obj = sqlCommand.ExecuteScalar();byte t
8、xContext = (byte)obj;SafeFileHandle handle = OpenSqlFilestream(filePath,DESIRED_ACCESS_READWRITE,SQL_FILESTREAM_OPEN_NO_FLAGS,txContext,(UInt32)txContext.Length,0);byte buffer = new byte512;FileStream fileStream = new FileStream(handle,FileAccess.ReadWrite,buffer.Length,false);,远程读取性能,远程写入性能,远程更新性能,
9、FILESTREAM最佳实践,尽可能避免对多个小文件的附加操作,每个附加操作都将创建新的Filestream文件。如果必须建议使用varbinary(max)在高负载的多线程系统中,可以考虑通过OpenSqlFilestream或SqlFilestream API设置AllocationSize,减少碎片如果文件很大,避免使用T-SQL进行更新或附加,这样会对tempdb有很大开销,FILESTREAM最佳实践,当读取FILESTREAM数据时考虑如下因素如果仅需要读取初始的部分数据,可以使用substring函数如果读取整个文件,考虑使用Win32 API当读取整个文件时,指定FILE_SE
10、QUENTIAL_ONLY标志程序中的缓存尽量设置为60KB的整数倍,FILESTREAM最佳实践,使用文件组及分区进行负载均衡NTFS优化fsutil behavior set disable8dot3 1Fsutil behavior set disablelastaccess 1Format F:/FS:NTFS /A:64KRAID级别磁盘接口,Remote Blob Storage 技术框架及实现,RBS 架构,SQL FS lib,IBM lib,Centera lib,SQL RBS API,SQL Server,IBM,Centera,SQL DB,供应商接口,客户应用程序可以
11、支持多种不同的Blob存储机制或设备供应商将提供相应的接口类库,RBS 服务创建读取垃圾收集删除,Net App lib,NetApp,RBS 示例,文档或多媒体数据,应用程序,RBS 客户端类库,存储供应商类库,存储,SQL Server,1,2,3,1,写入 BLOB数据(图片),返回BlobID,将BlobID 写入PhotoRef 字段,2,3,机器边界,RBS文档写流程,写Blob 地址Reference,写Blob,写Blob,写Blob,返回地址Reference,取得Collection 信息,清理,App Machine应用服务机,SQL Server,终端用户例如:浏览器,
12、应用,触发、存储过程,服务,存储接口,应用端接口,存储接口,Database Machine 数据库服务机,用户请求,RBS文档读流程,1 用户请求,4 请求BLOB (标识),9 应用读取BLOB,8 读取BLOB,7 读取BLOB,App Machine应用服务机,SQL Server,终端用户例如:浏览器,应用,触发、存储过程,应用端接口,存储接口,Database Machine 数据库服务机,10 用户读取BLOB,2 请求BLOB标识, 应用读取BLOB标识,5 请求BLOB (标识),6 请求BLOB(标识),演 示,使用RBS实现对于FILESTREAM的负载均衡,孙巍技术总监
13、北京中达金桥技术服务有限公司,远程文档与文件流结合的文档存储解决方案,解决方案特点,远程BLOB存储技术与FILESTREM文件流技术的集成由FILESTREM文件流存储节点组成的存储池可以迅速扩展(使用经济实惠的PC服务器)RBS后端的FILESTREM文件流接口提供多线程、多通道的负载均衡逻辑进行文档的读写负载分配可以用户可以根据需要灵活调整存储节点可转变为“只读”属性(存储历史数据,不接受新档案)可以迅速添加节点并重新设置负载均衡模式智能备份恢复功能可以避免历史性“只读”数据的重复备份,显著降低备份需要的时间和空间客户生产环境显示单线程文档写入可达到48M+/秒性能(限于存储设备性能),
14、解决方案优势,按用户需要扩展存储池更合理的资源投入避免大规模初期投入造成空置设备、存储空间的浪费后续投入经济上可得益于硬件价格的快速跌落后续投入可取的更现代的技术,自然升级系统,且不需要更改应用服务器性能提升快,降价快存储成本降低快,读写性能提高快分期扩展自然形成不同层次的存储池,帮助信息生命周期的管理老旧数据在老一代存储池,新数据、常用数据在新一代系统上,有更好性能可嵌入各种服务、应用对文档数据进行整个生命周期的管理。例如:审计、备份、归档、删除等等可集成各种不同存储媒介进一步支持各种服务,例如NAS、磁带或其他现有或未来存储技术可嵌入智能缓冲区,将当前文档、历史文档、归档数据、备份集合在一
15、起,RBS+文件流解决方案架构一中小型系统应用场景,FILESTREM文件流接口提供负载均衡、多线程、多通道文档读写RBS+FILESTREM文件流存储池可根据用户需要使用经济实惠的PC服务机扩展,RBS+文件流解决方案架构二大型企业级应用场景,RBS+文件流存储池,企业核心BLOB存储系统,SQL RBS后端存储接口Provider API,SQL DBRBS数据库,Filestream 文件流存储接口,横向扩展,SQL RBS 应用端接口Client API,客户订制应用,RBS接口,档案管理使用场景,核心档案存储可通过服务层安全的提供各种应用借口档案导入可嵌入智能保留期限识别模块防火墙提
16、供基础保护如需要应用层可通过防火墙PORT FORWARDING功能延伸到外网,企业核心档案存储使用RBS+文件流可扩展解决方案,调阅,其他,收集,查询,管理,导入,安全,服务接口,防火墙,建议使用硬件配置,市场性价比较好的PC服务机标准:4芯4核16G存储标准光纤技术SAN或其他存储设备估算方式至少2台每台承担10-20T(当前数据使用)每台承担20-40T(历史数据使用)设计应可达到单通道读写每秒40M以上(实际情况根据存储设备吞吐量),代码字体或字号,请用此版面展示软件代码aaa请用展示字体为Courier New这一单一空间字体,模板颜色,字体,字号和颜色模式已经在PPT模板中定义请使用下面展示的颜色模式更多指示请参见下页超文本衔接颜色: ,SampleFill,SampleFill,SampleFill,SampleFill,SampleFill,视 频,视频名称,姓名职务公司,演 示,演示名称,姓名职务公司,客 户,客户名称,姓名职务公司,合作伙伴,合作伙伴名称,姓名职务公司,宣布,宣布题目,姓名职务公司,表格格式,图标格式,饼图格式,疑问和解答,参考资源,
Copyright © 2018-2021 Wenke99.com All rights reserved
工信部备案号:浙ICP备20026746号-2
公安局备案号:浙公网安备33038302330469号
本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。