移植到非sql域的sql构造的制作方法

上传人:ting****789 文档编号:310043619 上传时间:2022-06-14 格式:DOCX 页数:3 大小:20.16KB
返回 下载 相关 举报
移植到非sql域的sql构造的制作方法_第1页
第1页 / 共3页
亲,该文档总共3页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《移植到非sql域的sql构造的制作方法》由会员分享,可在线阅读,更多相关《移植到非sql域的sql构造的制作方法(3页珍藏版)》请在金锄头文库上搜索。

1、移植到非sql域的sql构造的制作方法专利名称:移植到非sql域的sql构造的制作方法技术领域:本发明大体涉及结构化查询语言(SQL)数据构造,以及基于对SQL数据构造的分析将SQL数据构造移植(port)到非SQL域,以及对于SQL数据构造所实现的结果。背景技术:随着计算技术的发展以及计算设备变得更普遍,使用计算机对于日常活动已经变得常见。例如,人们可能利用web浏览器或另一搜索应用来获得与各种话题有关的信息。在一具体示例中,可能在驾驶时进行搜索来定位最近的加油站。为了返回搜索结果,计算设备搜索搜索与当前位置和当前位置附近的加油站有关的巨量数据。可以想象,为获得所请求的信息而要访问并审阅的数

2、据可能是非常大量的数据。已经开发出各种搜索工具来允许寻找感兴趣的项和/或操纵感兴趣的项(或对其工作)的高效性。这些搜索工具可用于各种大小的数据集。然而,当数据集增长到非常大时,对数据集工作可能变得笨拙或难以管理。这些非常大的数据集被称为“大数据”。大数据的笨拙性(awkwardness)包括捕捉数据、存储数据、在数据中搜索、共享数据、对数据执行分析(或解决问题)、使数据视觉化时的困难以及其他困难。例如,与大数据相关联的困难是对关系型数据库进行工作。关系型数据库通过使用数据集内的公共特征来操作以匹配数据。所得到的数据的分组可以按照有逻辑的或易于人理解的方式来组织。在一示例中,SQL (结构化查询

3、语言)是一种可用来更新、删除和/或请求来自数据库的信息的专用语言。已经为了对SQL数据构造进行高效地操作而开发出了各种SQL构造。这些SQL构造可以被移植到其他非SQL域,包括大数据。然而,存在一些与SQL构造有关的约束。例如,在设计或开发SQL构造时,开发是针对特定域视图(例如,表)的。因此,如果要更新或修改SQL构造,这些动作是在其中设计该SQL构造的特定域视图中执行的。当今的计算系统和SQL构造的上述缺点仅旨在提供常规系统的一些问题的概览,并且不旨在是穷尽性的。常规系统的其他问题以及此处所描述的各非限制性实施例的对应的益处可以在审阅以下描述后变得更显而易见。发明内容此处提供了简化的发明内

4、容以帮助能够对以下更详细的描述和附图中的示例性、非限制性实施例的各方面有基本或大体的理解。然而,本发明内容并不旨在是详尽的或穷尽的。相反,本发明的唯一目的在于,以简化的形式提出与一些示例性、非限制性实施例相关的一些概念,作为以下各实施例的更详细的描述的序言。此处公开的方面涉及便于在非SQL域中使用SQL构造。根据各方面,提供了一种将SQL构造移植到非SQL构造的手段,非SQL构造诸如是图,作为聚焦数据结构(focal datastructure)而不是键-值对(例如,计算系统和应用中的数据表示)。所公开的方面还提供了键-值对到图形相关数据结构的数学和逻辑变换。这些和其他实施例在下文中更详细地描

5、述。参考附图进一步描述各非限制性实施例,在附图中图I示出了根据一方面的示例性计算系统的框图;图2示出了根据一方面的被配置成将结构化查询语言构造移植到非结构化查询语言域的示例性的非限制性的系统;图3示出根据一方面的在表空间中表示的数据;图4示出了根据一方面的示例性张量(tensor);图5示出了示例性的二维秩二张量(rank-two tensor);图6不出了不例性的二维秩三张量(rank-three tensor);图7示出了示例性超图(hypergraph);图8示出了与上面讨论的相同的数据的示例性超图表示;图9示出了根据一方面的用于被移植到非结构化查询语言域的结构化查询语言构造的非限制性的

6、示例性的系统;图10示出了根据一方面的在非结构化查询语言域中使用结构化查询语言构造的非限制性的流程图;图11示出了根据一方面的在非结构化查询语言域中使用结构化查询语言构造的另一非限制性的流程图;图12是表示其中可实现在此处所述的各个实施例的示例性的非限制性的联网环境的框图;以及图13是表示其中可实现此处所描述的各种实施例的一个或多个方面的示例性的非限制的计算系统或操作环境的框图。具体实施例方式概览随着因特网和相关技术的普遍使用,各种格式的巨量数据可用于消费。一种这样的格式被定义为结构化查询语言(SQL)构造(例如,基本元素、命令、和语句)。SQL是一种用来管理关系型数据库管理系统(RDBMS)

7、中的数据的编程语言(或声明性计算机语言)。SQL的范围包括数据插入、查询、更新和删除,以及数据访问控制,以及其他。一般而言,RDBMS包括存储在表中的数据,而各个表之间的关系也被存储在表中。存储中的数据量已经呈指数增长,并且在某些情况下,SQL型的表可能不再能够存储数据并执行查询。而且,在某些情况下,SQL型的表可能不是存储数据和执行查询的最有利方式。然而,存在大量已经保留在SQL型的表中的数据,而对于已经捕捉的数据,将数据提取成另一种格式可能被证明是困难的,或者昂贵的。此外,某些程序员善于创建SQL构造,并且因此通过创作、操纵和执行SQL查询来执行其相应的编程功能。然而,其他程序员可能不利用

8、SQL查询,并且因此SQL查询句法对这些其他程序员而言可能是不熟悉的。从而,这些其他程序员很可能不利用SQL查询句法,而是会使用一种不同构造来执行其相应的功能。这带来了保留在SQL型的表中的数据和以不同构造来存储的数据之间的断裂(disconnect)。为了使数据兼容(例如,为了改变底层数据存储实现),涉及到更多的时间和花费。例如,程序员将需要学习不同的编程语言,或者将需要把以一种格式保留的数据以另一种格式重新输入。从而,提供一种便于在非SQL域中使用SQL构造的手段将是有益的。在一方面,对SQL构造的这种使用可以对程序员隐藏。例如,程序员可能输入一种格式(例如,SQL)的数据,并且基于要如何

9、使用该数据,可以以一种不同格式(诸如表、矩阵、张量、图、超图等)来存储或操纵该数据。一方面涉及一种系统,包括数据访问组件和抽象组件,所述数据访问组件被配置成获得以第一格式表示的数据,所述抽象组件被配置成基于所述数据的所定义的最终结果将所述数据的表示从第一格式变换到第二格式。第一格式的所述数据是以结构化查询语言构造定义的,而第二格式的所述数据的表示是在非结构化查询语言域中。在一示例中,抽象组件被进一步配置成对用户隐藏与变换和第二格式有关的细节。 在一示例中,数据访问组件被配置成获得输入数据格式的数据,而处理组件被配置成将数据的表示从输入数据格式变换成存储格式。存储格式独立于输入数据格式。在另一示

10、例中,该系统包括查询增强组件,所述查询增强组件被配置成分析所定义的最终结果并确定用于数据的表示的适当格式类型,其中所述适当格式类型是基于实现的效率或容易程度来确定的。根据另一示例,该系统包括转换组件,所述转换组件被配置成将一数据表示改变为与另一数据表示相兼容。在一进一步示例中,该系统包括存储组件,所述存储组件被配置成以第三格式保留所述数据的表示,第三格式独立于第一格式和第二格式。根据一些不例,第二格式是表、矩阵、兀组、图、或超图中的一个。在一方面,第一格式和第二格式是相同数据的不同表示。在一方面,该系统包括接口组件,所述接口组件被配置成接收对数据的请求。进一步对于此方面,所述抽象组件获得存储格

11、式的数据并将该数据从存储格式变换成与所接收的请求相对应的格式。在一示例中,所述抽象组件被进一步配置成在非结构化查询语言域中使用结构化查询语言构造。根据另一方面的是一种方法,所述方法包括获得结构化查询语言格式的数据,并解释该数据的表示。该方法还包括将该数据的表示从结构化查询语言格式变换成非结构化查询语言格式,其中该非结构化查询语言格式提供了效率功能(efficiency function)或者简单性功能(simplicity function)。该方法还包括以非结构化查询语言格式输出该数据。所输出的数据可以被用户(诸如程序员)感知。在一示例中,获得该数据包括从存储介质访问该数据。在另一示例中,解

12、释该数据的表示包括接收对期望结果的显式定义。进一步对于本示例,所述变换是所述显式定义的结果。在另一示例中,解释该数据的表示包括根据一个或多个数据输入来推断期望结果的定义。进一步对于本示例,所述变换是基于所推断的定义的。根据一示例,该结构化查询语言格式和该非结构化查询语言格式提供了等同的结果。在某些方面,该方法包括以结构化查询语言格式或非结构化查询语言格式存储该数据。在另一示例中,获得该数据包括接收对该数据的请求。进一步的方面涉及计算机可读存储介质,该计算机可读存储介质包括存储在其中的计算机可执行指令,这些指令响应于执行致使计算系统执行各操作。所执行的操作包括收集以第一格式表示的数据并实时地将所

13、述数据的表示从第一格式变换成第二格式。所述变换可以基于所述数据的所定义的最终结果。第一格式的所述数据是以结构化查询语言构造定义的,而第二格式的所述数据的表示是在非结构化查询语言域中。第二格式是基于获得所定义的最终结果的效率来选择的。在一示例中,所执行的操作进一步包括对一个或多个用户(或程序员)隐藏变换的细节。根据另一示例,第一格式和第二格式是相同数据的不同表示。此处,以上已经呈现了将SQL构造移植到非SQL域的各实施例中的某一些的概览。作为接下来的内容的路标,更详细地描述数据的变换的各示例性、非限制性实施例和特征。随后,为了附加说明,给出一些非限制性实现和示例,之后是其中可实现这些实施例和/或

14、特征的代表性网络和计算环境。移植到非SQL域的SQL构造通过参考提供将SQL构造移植到非SQL域(包括大数据)的一个或多个非限制性方式进行的进一步描述,图I大致地示出了示例性计算系统的框图。此处公开的各方面可用于数据服务,或者通过其展示所述服务的运行时和web服务的任何组合。而且,“移植(porting)”是指改编软件以便可创建可执行程序的过程。该示例性计算系统允许对数据的表示的抽象和操纵,其中与数据的创作、存储、操纵和执行有关的细节是对程序员(或用户)隐藏的。图I中所示的计算系统包括环境100,该环境可以是编程环境。然而,所公开的方面不限于此,而环境100可以是执行环境(例如,查询的执行)、

15、用户环境(例如,对搜索结果的请求,其中所述搜索结果是作为列表或另一种格式返回的,诸如当非程序员或个人请求因特网搜索时)、或另一种类型的环境。在一些方面,环境100与一个或多个个人设备相关联,如移动设备,其中这些个人设备中的每一个可以与不同的用户相关联。在其他方面,环境100与分布式网络相关联并且个人设备被配置成基于该分布式网络的操作参数来操作。例如,一公司可通过分布式网络提供计算能力以与个人设备(例如,蜂窝电话、膝上型计算机、PDA (个人数字助理)等等)一起使用。然而,其他类型的环境也可适于与所公开的方面一起使用。计算系统还包括数据访问组件110,所述数据访问组件被配置成获得数据集合120。

16、例如,可从环境100接收查询130。基于查询130,数据访问组件110被配置成获得数据集合120。例如,该查询可以是对整修木地板有关的信息的请求,该请求是作为查询被输入的,该查询可由词(例如“整修(refinish)”)、一对词(“木地板(wood floor”)、短语(例如,“整修木地板,)、问题(例如,“我如何整修我的硬木地板? ”)、或以另一种方式表示。而且,该查询可以以人类语言格式或计算机语言格式接收。在一示例中,输入查询的手段可以是搜索引擎,诸如被设计成搜索万维网和FTP服务器以获得信息的Web搜索引擎。在某些应用中,搜索可以通过例如访问数据库和/或打开目录来进行。基于查询的搜索的结果可以被呈现为列表,并且可包括各种格式的数据(例如,网页、图像、数据以及文件)。在某些方面,查询130与对底层数据构造执行修改和/或其他动作有关。例如,程序员可对如何寻找并呈现搜索结果作出改变。在此情况下,所取回的数据集合120将是底层数据构造。在某些方面,数据集合120可以第一格式表示。在一简单示例中,数据集合(或结果)是数字五,它可用多种格式来表

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号