CN108897813A - 一种非时态json数据模型的时态扩展以及查询优化方法 - Google Patents
一种非时态json数据模型的时态扩展以及查询优化方法 Download PDFInfo
- Publication number
- CN108897813A CN108897813A CN201810633248.XA CN201810633248A CN108897813A CN 108897813 A CN108897813 A CN 108897813A CN 201810633248 A CN201810633248 A CN 201810633248A CN 108897813 A CN108897813 A CN 108897813A
- Authority
- CN
- China
- Prior art keywords
- tense
- model
- json
- temporal
- tree
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种非时态JSON数据模型的时态扩展以及查询优化方法。通过在传统的数据交换格式JSON上添加时间维度,然后进行数据建模发明了时态JSON树模型,从传统的非时态JSON模型到时态扩展后的时态JSON模型,使其具有表达过去,现在,甚至将来的的语义信息。然后通过在扩展后的时态JSON模型上采用并行计算的思想优化了时态JSON树模型的数据查找的效率。本发明主要包括以下几个步骤:(1)时态扩展:在传统的非时态JSON模型上添加时态信息进行时态扩展;(2)扩展后建模:根据上一步加入了时态语义信息发明提出时态JSON树模型:(3)查询优化:对提出后的时态JSON树模型利用多线程并行计算方法优化查询方法的效率。
Description
技术领域
本发明公开了一种基于传统非时态JSON数据模型的时态扩展以及在扩展后的时态数据模型上采用在多核处理器的硬件环境下利用并行计算的思想解决查询效率的问题。扩展后的时态JSON模型解决了传统非时态数据模型在历史数据方面表达的缺陷。本发明属于时态信息处理技术领域,是一种在传统非时态模型语义蕴含的扩展。
背景技术
时间是现实自然界无所不在的属性,在研究不断变化的现实对象中,时间是一个非常重要的因素。在现实中,任何对象都和时间相关联在一起并受一定的时态关系所约束,因为任何对象都是在一定的时间发生,并在一定的时间消亡,各种事件和实体间的关系常常蕴含在时态信息中,所以我们经常以时间为依据或者把时间当做一个考量因素来解释现实世界中的各种事实和数据。随着时态数据模型概念的提出,时态数据模型便得到了广泛的研究和应用。例如在传统数据库语义表达上通过增加时态信息维度得到了时态数据库,在非时态XML(Extensible Markup Language)数据交换格式上加上时态信息表达得到了时态XML以及双时态的XML,在语义网基石RDF(Resource Description Framework)上增加时间戳得到时态RDF。扩展后的时态数据模型对比非时态数据模型有诸多优点。传统的非时态模型在语义表达上只能表示某一时刻下数据的有效性,不能蕴含过去和将来数据的情况。传统的非时态模型是通过记录数据快照来达到数据在线性时间上的语义表达,但是这样就造成了数据的大量冗余。另外,传统的非时态数据模型的查询因为模型中没有表示数据情况的语义导致查询效率不高。时态信息的三种基本表达:
1、用户自定义时间:指用户根据自己的需要或理解定义的时间;
2、有效时间:指一个对象(事件)在现实世界中发生并保持的那段时间,或者该对象在现实世界中为真的时间;
3、事务时间:指对一个数据库对象进行操作的时间,是一个事实存储在数据库中的时间,它记录着对数据库修改或更新的各种操作历史,对应于现有事务或现有数据库状态变迁的历史。
我们经常讨论的时态维度是有效时间,所以本发明中的时态扩展也仅仅只针对数据的有效时间进行进行语义讨论添加。另外,在扩展后的时态模型数据上的处理类型也有很多,数据的存储,数据的查询,数据查询索引的建立等等。本发明也只对数据查询领域的方法进行优化。
随着互联网的快速发展,Web上的数据也在以指数级的速度增长,而在很多领域表征数据的时效性是非常必要的。时态信息的应用和处理已在各行各业成为必不可少的一部分,特别是在电子政务、电子商务、数据仓库、决策支持***、数据挖掘等信息***中扮演着日益重要的角色。JSON逐渐成为Web中主要的数据交换方式,与XML相比有着许多不可比拟的优点。轻量级,更加容易解析等,因此JSON也得到了广泛的应用。随着JSON的广泛使用,对经典JSON数据模型进行时态扩展使其具有表达描述时间状态的能力,对JSON的发展就显得有着很重要的意义了。这样能够让JSON在Web的数据传输上发挥更好的作用。另外,对JSON本身而言,为了其适应Web3.0时代的发展以及根据其自身特点进行其功能扩展也有很重要的研究意义。本发明的意义和重要性着重于对传统非时态JSON数据模型的时态扩展使其具有蕴含时态语义的信息以及对扩展后的时态JSON数据模型进行查询优化。
发明内容
[发明目的]:为了解决传统非时态JSON数据模型在时态语义信息方面表达的不足,本发明提出在基于传统非时态JSON数据模型上进行时态扩展,并在扩展后的时态数据模型上利用并行计算的思想解决查询效率问题。充分利用了多核处理器的性能,替代以往的单线程查询效率问题。
[技术方案]:本发明方案主要包括以下内容:
1)在传统非时态JSON数据模型上添加时间戳
添加时间戳:在传统JSON树模型上的边上加上表达数据时态信息,并解决添加时间戳之后不影响原有JSON数据格式的语法表达。
2)添加时间戳之后对JSON树模型进行时态数据建模
在上一个步骤的基础之上对添加时态信息的JSON数据进行时态数据建模,并思考解决传统数据模型添加时间维度之后的语义表达以及语义一致性。
3)在扩展后的时态数据模型上进行查询优化
在完成时态JSON数据建模之后,需要对该创建的时态模型进行查询处理方法的优化,本发明采用基于多核处理器的环境下利用并行计算的思想优化查询效率,每个线程运行一个子问题,这里主要包含以下几个部分:1、多线程的创建;2、方法参数的传递;3、返回算法运行结果。多线程的创建需要根据前面拆分的子问题进行创建,相应每个子问题用一个线程运行;然后每个子问题由时态JSON模型中的结点作为参数传递到线程中;最后在某个线程完成要求的查询后将结果返回,其他线程也相应的结束查询任务。
[有益效果]:本发明创造性的将时态维度表达扩展到传统的非时态JSON数据模型领域中,并且使用多核处理器并行进行查询任务,相较于以往的单线程运行算法,能够充分利用现代计算机的硬件资源,极大降低程序运行时间。
[附图说明]:
图1为时态扩展流程图;
图2为多线程查询任务流程图;
[具体实施方式]:
以下结合附图和具体实例对本发明做具体的介绍。
如附图1所示,本发明是基于传统非时态JSON数据模型进行时态JSON数据建模,并对提出的时态JSON数据模型进行查询方法优化。主要分为三个阶段,传统非时态JSON文档添加时间戳、提出时态JSON树模型、对扩展后的时态JSON数据模型进行查询优化。
1.非时态JSON添加时态信息
此步骤的目的根据传统非时态JSON数据交换格式语法进行时态信息的添加,添加时态信息后的JSON文档必须满足非时态JSON数据交换格式的语法,不能因为添加时间维度而破坏其固有的语法结构。
2.时态JSON树模型建模
借鉴传统非时态JSON数据建模的经验,创造性的提出时态JSON模型。本发明提出的时态JSON树模型,是将一个时态JSON文档看成一个JSON对象,然后该JSON对象又可以包含其他JSON对象,根据该语法规律要求将该文档看成是一棵树结构,包含的子对象可以理解成是一个子树。不过如何进行数据建模却又方法多样,本发明对树模型中的结点和边进行分别定义。
结点:将整个时态JSON文档定义成J,V(J)是树模型中结点的集合。树模型中结点的类型有6种,包括根结点(r)、字符串类型结点(s)、数字类型结点(n)、布尔类型结点(b)、值结点(t)、数组结点(a)、以及对象结点(o)。
V(J)={r}∪Vs(J)∪Vn(J)∪Vb(J)∪Vt(J)∪Va(J)∪Vo(J)
边:将整个时态JSON文档定义成J,E(J)是树模型中边的集合。边在JSON树模型中代表着文档中的键-值对中的键或者结点为数组类型所引发出来代表着在数组中的下标值。
E(J)=(p,c)
p代表着表示该边所表示的键值对中的键值。
c代表该边所表示的键值对中的值。
时态信息:模型中时态信息的表示在边上定义,兄弟结点构成的边并集作为父结点对应的边的时态信息,以此来保证模型上时态的一致性。
3.JSON时态数据模型的查询优化
本发明采用的基于多核硬件环境的多线程进行查询的方法,当其中的某一个线程查询到结果正常返回后其他进程也就结束了。具体实施在一下实施案例中进行详细说明。
实施案例
本发明的效果可以用以下具体实例进一步说明。结合附图1和附图2所示,附图1以用户个人简单信息的JSON文档经过若干次修改后通过添加时间时态信息进行数据建模后得到时态JSON树模型,多核多线程环境下首先将根结点传入线程池中的某一个线程,查询看是否是预期查询的结果,如果是结束任务并返回结果,否则将其第一个孩子结点传入一个新的线程进行查询,当前线程跳转到当前结点没有被访问的兄弟结点进行查找,同理,若该兄弟结点也不是预期查询结果,将该兄弟的结点的第一个孩子结点传入给线程池中的另外一个空闲线程,以此类推,直到查询到预期结果或者遍历完整棵树还没有查询到结果,查询成功则将结果返回,否则返回空。该方法是将树模型查询理论中的层次遍历和先序遍历相结合的方法进行数据查询,极大的提高了数据查询的效率,尤其是在该树型文档内容比较大的情形下查询效率提高的更加明显。
Claims (3)
1.一种非时态JSON数据模型的时态扩展以及查询优化方法,其特征在于:包括以下三个步骤:
(1)非时态JSON添加时态信息,在非时态JSON文档中添加时态信息并且不破坏其本身的语法表达;
(2)时态JSON数据建模,提出表达时态JSON文档的树模型;
(3)多线程调用算法查询阶段,将该文档模型传递给查询方法,并返回查询结果。
2.根据权利1要求所述的非时态JSON数据模型的时态扩展以及查询优化方法,其特征在于:所述步骤(2)中提出的时态JSON树模型,分为以下2个步骤:
(2.1)对提出的树模型进行数学定义,分别定义模型中的结点和边,并给出定义的结点和边怎样完整的表达树模型;
(2.2)对2.1中提出的树模型定义给出保证时态一致性上的方法。
3.根据权利1要求所述的非时态JSON数据模型的时态扩展以及查询优化方法,其特征在于:所述步骤(3)多线程调用算法求解,其主要包括以下2个步骤:
(3.1)对于步骤2中得到时态JSON树模型,创建多线程池,将模型传递给最初的父线程,然后按照提出的算法开始执行;
(3.2)根据3.1中的方法将查询到的结果返回,并将创建的其他线程结束并返回给线程池。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810633248.XA CN108897813A (zh) | 2018-06-14 | 2018-06-14 | 一种非时态json数据模型的时态扩展以及查询优化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810633248.XA CN108897813A (zh) | 2018-06-14 | 2018-06-14 | 一种非时态json数据模型的时态扩展以及查询优化方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108897813A true CN108897813A (zh) | 2018-11-27 |
Family
ID=64345136
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810633248.XA Pending CN108897813A (zh) | 2018-06-14 | 2018-06-14 | 一种非时态json数据模型的时态扩展以及查询优化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108897813A (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101901249A (zh) * | 2009-05-26 | 2010-12-01 | 复旦大学 | 一种图像检索中基于文本的查询扩展与排序方法 |
CN107066535A (zh) * | 2017-03-03 | 2017-08-18 | 中国人民解放军海军大连舰艇学院 | 一种基于时态和关键词查询的检索方法和*** |
CN107343302A (zh) * | 2017-07-11 | 2017-11-10 | 南京航空航天大学 | 一种基于多核处理器的传感网路由结构优化方法 |
-
2018
- 2018-06-14 CN CN201810633248.XA patent/CN108897813A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101901249A (zh) * | 2009-05-26 | 2010-12-01 | 复旦大学 | 一种图像检索中基于文本的查询扩展与排序方法 |
CN107066535A (zh) * | 2017-03-03 | 2017-08-18 | 中国人民解放军海军大连舰艇学院 | 一种基于时态和关键词查询的检索方法和*** |
CN107343302A (zh) * | 2017-07-11 | 2017-11-10 | 南京航空航天大学 | 一种基于多核处理器的传感网路由结构优化方法 |
Non-Patent Citations (1)
Title |
---|
周亮等: "基于Spark 的时态查询扩展与时态索引优化研究", 《计算机工程》 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11763175B2 (en) | Systems and methods for semantic inference and reasoning | |
JP7030707B2 (ja) | アプリケーションプログラミングインターフェイスのメタデータ駆動型外部インターフェイス生成ためのシステムおよび方法 | |
US10747571B2 (en) | Systems and methods of improving parallel functional processing | |
EP2831767B1 (en) | Method and system for processing data queries | |
Mishne et al. | Fast data in the era of big data: Twitter's real-time related query suggestion architecture | |
Guller | Big data analytics with Spark: A practitioner's guide to using Spark for large scale data analysis | |
US20130124545A1 (en) | System and method implementing a text analysis repository | |
CN111309757A (zh) | 一种HBase的SQL解释器和优化方法 | |
US11232105B2 (en) | Unified metrics computation platform | |
Garcia | Analysis of big data technologies and method-query large web public rdf datasets on amazon cloud using hadoop and open source parsers | |
Lin et al. | A Cost‐Effective Planning Graph Approach for Large‐Scale Web Service Composition | |
US11726994B1 (en) | Providing query restatements for explaining natural language query results | |
Yuan et al. | VDB-MR: MapReduce-based distributed data integration using virtual database | |
Azez et al. | JOUM: an indexing methodology for improving join in hive star schema | |
CN108897813A (zh) | 一种非时态json数据模型的时态扩展以及查询优化方法 | |
US20090271382A1 (en) | Expressive grouping for language integrated queries | |
Antolínez García | Introduction to apache spark for large-scale data analytics | |
Tripathi et al. | Incremental parallel computing for continuous queries in dynamic graphs using a transactional model | |
Alvarez | Query engine for massive distributed ontologies using mapreduce | |
Lau | Filter: Framework For Integrated Legislative Transparency And Exploratory Research | |
Zafeiriou | Literature review and example implementation on knowledge graphs | |
Irimus | Sequential and asynchronous fetching of large amounts of data in web applications | |
Li | Graph Data Processing and Analysis: From Algorithms to System Development | |
Chlipala | The magazine archive includes every article published in Communications of the ACM for over the past 50 years. | |
Trung | A Method for Live SQL Query Subscription in React Native |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20181127 |
|
WD01 | Invention patent application deemed withdrawn after publication |