数据MSSQL非结构化数据解决方案

mssql  时间:2021-01-21  阅读:()

SQL Server 2008为存储和搜索非结构化数据提供了一个灵活的解决方案。FILESTREAM加强了存储数据库中的非关系数据像BLOB和关系数据的性能而没有降低可管理性。如果你需要使用一个只用于BLOB的存储那么远程BLOB存储API能够帮助你集成你的BLOB数据和你的数据库中的关系数据并提供一个一致的编程界面用于与这个数据交互还提供了系统的独立性用来存储数据。最后当你需要通过使用在这篇白皮书中讨论的任何解决方案来存储和使用大型文档库时 SQL Server2008帮助你使得搜索非关系数据更加有效也更易于管理。microsoft SQL Serve r 2008提供了一个灵活的解决方案使得可以存储非结构化数据并将它与关系数据合并起来建立使用整个公司范围内的数据的综合的解决方案。

在最近几年个人和公司创建和存储的数字数据的数量急剧膨胀。过去企业使用计算机系统和数据库以结构化格式例如关系表或固定的格式文档来存储它们的大部分商业数据软件应用程序使用这些结构化数据存储来执行商业操作。然而在现今公司的很大一部分数据是存储在使用功能强大的工具例如Mi c ros oftOffice Excel和Microsoft Office Word所创建的文档中的而数字摄影、文档扫描、视频产品和音频格式进一步的扩大了用于商业数据的非结构化数据格式的范围。此外在存储硬件和内存上的成本的显著降低极大的影响了存储在计算机中的数据的数量和类型并导致产生了新一代的商业应用这些商业应用合并了传统的关系数据结构和非结构化数字内容。数字内容的丰富意味着公司现在正在试图能够在企业范围内管理关系数据和非结构化数据并需要一个能够全面满足关系数据存储和非关系数据存储同时降低管理和建立使用这些数据的应用程序的成本的解决方案。

例如考虑一个保险索赔应用程序在过去的15年里是怎样改变的。15年前这个应用程序一般维护一列以简单的行和列来存储的保险索赔记录。而今天一个保险索赔应用程序更趋向于管理一组包括图片、照片和文档的索赔记录。它还可能需要以基于XML的格式来显示索赔数据 以此来与其它的系统集成并且它还可能包括更高级别的功能像空间可视化、报表和分析。

SQL Server2008提供了一些超出传统的数据库系统、 向能够存储、管理和查询所有类型的数据的数据平台发展的功能;包括非结构化二进制数据、 XML和空

间数据。这篇白皮书集中讲述了非结构化数据并描述了使用SQL Server 2008的存储、管理和使用非结构化数据的选项。

商业推动非结构化数据

大多数公司依赖于存储在数据库中的关键业务数据并在存储和操纵这些数据的数据管理系统和应用上投入很大。然而 日渐增长的业务产生了大量的数字图片、文档视频和其它多媒体格式的非关系和非结构化数据——这些新的数据格式迅速成为正式的和非正式的商业处理的一个关键组成部分它们与现有的商业应用程序集成在一起遵守调整要求或者简单的提供了一个更加丰富的用户体验。

例如在下面这些商业情景中

◆一个保险公司需要存储政策文档和按照要求处理来提取这些文档。

◆一个在线的零售商需要存储用于在一个电子商城中显示它的产品的视频胶片。

◆一个电话系统需要保存语音信息的音频流以便他们可以远程传送。

◆一个广播台需要制作一个在它的网站上用于下载的并可以搜索的广播库。

◆一个操作需要存储文档的图片形式的电子拷贝并能很容易的获取与一个单独的客户端或例子相关的文档。

◆一个建筑合伙企业需要存储和提取数字计划和其相关联的客户端数据。

◆一个需要转换和保存大量的现有的文件和分类内容的库用于在一个数字搜索工具中进行检索和使用。

这些是全球商业中使用的非机构化数字数据的一些新的例子;并且随着创建数字内容变得越来越容易公司也在寻找新的创新方式来使用这个数字内容来改进或扩展它们的商业能力。

对于非结构化数据的挑战

当新的非结构化数据的类型在不断增加的同时数字内容带来了很多好处和商业机遇但是它同时还带来了一些针对需要合并这些非结构化数据源到计算机应用程序和服务中去的系统架构师、管理员和应用程序开发人员的挑战。

存储非结构化数据的挑战

要考虑的第一个挑战 同时也可能是最明显的挑战就是非结构化数据的大

量存储。你值得拥有一个使你可以灵活地满足存储非关系数据、同时将成本和管理费用降低到最小的特定需求的系统。当你计划存储非结构化数据时你要考虑的主要问题包括

◆存储你的非结构化数据的成本不只是包括硬件成本还包括管理成本。

◆非结构化数据的物理存储位置例如文件服务器和网络附加存储(NAS)设备。

◆管理持久力和存档政策。

◆将非结构化数据文件和相关联的关系数据集成起来并维护结构化数据源和非结构化数据源间的事务一致性。

◆将与维护关系数据和非结构化数据相关的管理费用降低到最小。

◆性能和可扩展性。 .

◆保护非结构化数据并确保相关的关系数据的一致性。

◆非结构化数据的可用性和可恢复性。

使用非结构化数据的挑战

还有关于存储非结构化数据的相关问题你必须考虑数据将怎样被你公司的应用程序使用。一些具有代表性的要考虑的事项包括

◆在建立使用结构化数据和非结构化数据的应用程序时遇到的开发挑战包括编写代码来创建、提取、更新和删除非结构化数据并维护相关联的关系数据源和非结构化数据源间的事务一致性。

◆索引和搜索非结构化数据。

◆显式提取可用的元数据(例如从表格区域或文件属性) 并将它显示给用户。

◆将文档内容转换为可以搜索和查询的格式(例如转换音频文件到文本形式从而可以被数据库查询或纯文本引擎检索到。 )

在SQL Server2008中的非结构化数据的目标

非结构化数据面临的相关挑战反应了那些开始为数字内容建立解决方案的公司所关注的一些常见情况

◆管理多个不同的平台来处理关系数据和非关系数据从而导致不必要的复杂性。

◆这些分散的数据存储使得对于开发人员来说增加了复杂度并提高了经

理的部署难度。

◆开发人员和数据库管理员缺乏在这些不同的数据类型中可以使用的服务。

SQL Server2008旨在解决这些问题通过

◆降低管理这些不同的数据类型的成本。

◆简化使用关系数据和非关系数据的应用程序的开发工作。

◆将现在只用于关系数据的功能扩展到非关系数据。

在SQL Server2008中存储非结构化数据

依赖于关系数据和非关系数据的应用程序通常使用下面的三个架构中的一个

◆数据库中的关系数据以及文件系统和文件服务器上的非关系型二进制大对象(BLOB) 。

◆数据库中的关系数据和只用于BLOB的存储中的非关系数据。

◆数据库中的关系数据和非关系数据。

每一个方法都有其优劣之处。例如在文件服务器或只用于B LO B的存储中存储非结构化数据会降低每GB所花费的费用但是通常会增加管理和建立应用程序的复杂性 因为应用程序不得不维护包含BLOB数据的数据库和单独的系统中的记录以及这些记录所关联的对象间的完整性。另一方面在数据库中存储BLOB数据方便地集中了数据存储但是通常带来了更高的成本并会导致性能下降。

SQL Server2008推出了两个用于存储BLOB数据的新功能

◆FILESTREAM是一个你可以在varbinary字段上设置的属性 以便数据存储在文件系统中(因此受益于它的快速流式功能和存储能力)但是直接在数据库的上下文中管理和访问。 :

◆远程BLOB存储一个客户端应用程序编程接口(API) 它降低了建立依赖于一个用于B LO B的外部存储和一个用于关系数据的数据库的应用程序的复杂性。

此外SQL Server2008继续通过varbinary数据库类型支持标准的BLOB字段。

SQL Server BLOB

SQL Server 2005推出了varbinary(max)数据类型它使得你可以在一个SQLServer字段或变量中存储最大为2 147 483 647字节的大型二进制数据值。

当使用修订过的max时你可以通过设置large value types out of row表选项来控制数据怎样存储在物理的表的数据页面中。当这个选项设置为ON时所有的值存储在单独的链接页面上而在这个记录的数据页面上会保存一个指向这些页面的16位的根指针。当这个选项设置为OFF时最大为8000字节的值存储在这行的数据页面上而更大的值存储在单独的链接页面上。

尽管新的 FILESTREAM和远程BLOB能力是设计用来提供比标准的varbinaryBLOB字段更好的性能和可管理性但有一些场景是使用varbinary字段更适合的(具有代表性的是当BLOB平均规模小于250 KB的时候。 )

FILESTREAM属性

在SQL Server 2008中你可以将FILESTREAM属性应用到一个varbinary字段然后SQL Server为这个字段在本地NTFS文件系统上存储数据。在文件系统上存储数据带来两个重大的优势

◆性能可匹配文件系统的流性能。

◆BLOB规模只受文件系统的空间规模限制。

然而字段可以像SQL Server中的其它任何BLOB字段一样来管理所以管理员可以使用SQL Server的可管理性和安全功能来集成BLOB数据管理和关系数据库中的其它数据——而不需要单独管理文件系统数据。在SQL Server中将数据定义为一个FILESTREAM字段还确保了在数据库中的关系数据和存储在文件系统中的非结构化数据在数据级的一致性。FILESTREAM字段的使用和BLOB字段一样这意味着维护操作的完全集成(例如备份和恢复)、和SQL Server安全模型的完全集成、 以及纯事务的支持。

应用程序开发人员可以通过两个编程模型中的一个来使用FILESTREAM数据;他们可以使用Transact-SQL就像对待标准的BLOB字段一样的来访问和操纵数据或者他们可以使用Win32流式API和Transact-SQL事务型语义来确保一致性这意味着他们可以对FILESTREAM BLOB使用标准的Win32读/写调用这和他们与文件系统上的文件交互时所做的一样。

在SQL Server 2008中 FILESTREAM字段只可以将数据存储在本地磁盘空间并且FILESTREAM字段不支持像简单加密和以表为值的参数等功能。此外你不能在数据库快照或数据库镜像会话中使用包含了FILESTREAM字段的表不过支

持日志传送功能。

远程BLOB存储API

尽管FILESTREAM属性将文件系统的性能和可扩展性与在数据库中存储BLOB的可管理性和数据一致性结合起来但是通常会出现在像EMC Centera、Fujitsu Nearl ine、 Microsoft windows®这样的文件服务器或其它任何只用于BLOB的存储的系统中存储BLOB更有效或成本利用率更高的场景。在SQL Server 2008中的远程BLOB存储API通过提供一个基于提供商的架构使得可以更容易的将只用于远程BLOB存储解决方案和你的数据库中的关系数据集成起来这个架构使得你的应用程序可以使用任何BLOB存储而不需要特定的BLOB存储功能或代码。

在架构方面有两个关键部分

◆客户端库它是一个能够使得任何提供商和你的BLOB以及关系数据一起使用的组件。客户端应用程序使用客户端库和任何适用的提供商库来插入、更新和查询存储在BLOB中的数据和数据库中存储的数据。

◆供应商库它是一个由BLOB存储供应商提供的具有代表性的组件(尽管它可以定制开发) 。供应商库实现了一个常规接口提供了一组标准的服务这些服务抽象了对这个特定的存储执行Create、Fetch、Enumerate、Delete和GarbageCol lect操作的细节。

当你的数据库B LO B需要存储在与数据库不同的服务器上并需要和其它系统协作时远程BLOB存储API(Remote BLOB Store API)是一个理想的选择。它对BLOB存储没有任何限制。任何提供远程BLOB存储提供商的系统或任何可以建立于远程BLOB存储提供商的系统都支持它。因为与BLOB存储的交互细节被提供商库抽象出来了所以你可以改变存储而不必改动应用程序这带来了很大的好处并且降低了开发人员和管理员的复杂度。Mi c ros oft与业内的所有存储供应商合作以确保提供一个适当的供应商库用于远程BLOB存储API 。 使用远程BLOB存储API使你能够灵活地使用不同的系统来管理关系数据和非关系数据。远程BLOB存储API通过链接级别的一致性维护了数据库中的记录与在外部存储的BLOB之间的一致性。例如如果你通过一个删除语句从数据库中删除B LO B参照系统将从存储中删除BLOB。然而使用远程BLOB存储API不能提供随着BLOB直接存储到数据库中而来的数据级别的一致性 要做到这一点你需要使用

FILESTREAM或者varbinary。

比较BLOB的存储选择

下表比较了SQL Server 2008中的BLOB数据的存储选择。

表1 BLOB存储选项对照

这些选项意味着SQL Server 2008为存储非结构化数据提供了一个最适合你的业务需求的灵活的解决方案。

在SQL Server2008中搜索非结构化数据

使用非关系数据的应用程序的一个最常见的要求是使得可以在数据上作纯文本搜索。

综合的纯文本搜索

SQL Server在之前的版本中支持纯文本搜索。然而它一直依赖于一个外部的服务——Windows Search Service——作为它的纯文本搜索引擎。使用外部服务产生了下面两个挑战

◆对外部服务的依赖使得部署更加复杂也更难进行支持。

◆结合了纯文本搜索谓词和标准的SQL谓词的查询性能受到影响 因为从搜索的纯文本部分得来的整个结果集不得不在标准的谓词应用之前放置在这个引擎上。查询优化器不能创建与纯文本搜索谓词协作的计划。

在SQL Server2008纯文本搜索是完全集成在数据库引擎中的。通过将纯文本引擎直接集成到SQL核心中SQL Server 2008解决了之前版本中所面临的挑战降低了管理和部署SQL Server的成本 同时提高了搜索非结构化数据的性能。

酷番云78元台湾精品CN2 2核 1G 60G SSD硬盘

酷番云怎么样?酷番云就不讲太多了,介绍过很多次,老牌商家完事,最近有不少小伙伴,一直问我台湾VPS,比较难找好的商家,台湾VPS本来就比较少,也介绍了不少商家,线路都不是很好,有些需求支持Windows是比较少的,这里我们就给大家测评下 酷番云的台湾VPS,支持多个版本Linux和Windows操作系统,提供了CN2线路,并且还是原生IP,更惊喜的是提供的是无限流量。有需求的可以试试。可以看到回程...

HostYun 新增可选洛杉矶/日本机房 全场9折月付19.8元起

关于HostYun主机商在之前也有几次分享,这个前身是我们可能熟悉的小众的HostShare商家,主要就是提供廉价主机,那时候官方还声称选择这个品牌的机器不要用于正式生产项目,如今这个品牌重新转变成Hostyun。目前提供的VPS主机包括KVM和XEN架构,数据中心可选日本、韩国、香港和美国的多个地区机房,电信双程CN2 GIA线路,香港和日本机房,均为国内直连线路,访问质量不错。今天和大家分享下...

Dataideas:$1.5/月KVM-1GB/10G SSD/无限流量/休斯顿(德州)_主机域名

Dataideas是一家2019年成立的国外VPS主机商,提供基于KVM架构的VPS主机,数据中心在美国得克萨斯州休斯敦,主机分为三个系列:AMD Ryzen系列、Intel Xeon系列、大硬盘系列,同时每个系列又分为共享CPU和独立CPU系列,最低每月1.5美元起。不过需要注意,这家没有主页,你直接访问根域名是空白页的,还好他们的所有套餐支持月付,相对风险较低。下面以Intel Xeon系列共...

mssql为你推荐
马云卸任软银董事马云拥有软银多少股份手机浏览器哪个好手机浏览器哪个好?手机浏览器哪个好用?少儿英语哪个好少儿英语哪种的好?ps软件哪个好Photoshop哪个软件好用点?游戏盒子哪个好lol游戏盒子哪个好辽宁联通网上营业厅的联通营业厅怎么走首选dns服务器地址什么是首选DNS服务器和备用DNS服务器?首选dns服务器首选DNS服务器和备用DNS服务器有什么区别?360云盘下载别人在百度知道给了你360云盘资源,怎么在360云盘使用????360云查杀360出了个云查杀?啥叫云啊
个人域名备案 主机优惠码 东莞电信局 locvps 国外服务器网站 免费网站监控 商务主机 网站挂马检测工具 150邮箱 idc是什么 百度云1t 根服务器 cxz 域名和主机 闪讯网 美国十大啦 卡巴斯基免费下载 免费服务器 qq部落18-3 装修瓦工培训 更多