CN1916892A - 非同步数据查询方法与系统以及执行该方法的电脑程序的储存媒体 - Google Patents

非同步数据查询方法与系统以及执行该方法的电脑程序的储存媒体 Download PDF

Info

Publication number
CN1916892A
CN1916892A CN 200510092737 CN200510092737A CN1916892A CN 1916892 A CN1916892 A CN 1916892A CN 200510092737 CN200510092737 CN 200510092737 CN 200510092737 A CN200510092737 A CN 200510092737A CN 1916892 A CN1916892 A CN 1916892A
Authority
CN
China
Prior art keywords
querying
asynchronous data
parameter
database
query result
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
Application number
CN 200510092737
Other languages
English (en)
Inventor
梁维国
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wistron Corp
Original Assignee
Wistron Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Wistron Corp filed Critical Wistron Corp
Priority to CN 200510092737 priority Critical patent/CN1916892A/zh
Publication of CN1916892A publication Critical patent/CN1916892A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一种非同步数据查询方法与系统,以及执行该方法的电脑程序的储存媒体,适用于网络化的企业信息系统或一般网际网络信息提供业者所建置的网站,以解决众多使用者重复查询相同数据所造成的等待与效能瓶颈。该方法的主要步骤如下。首先,根据预设规则定时查询数据库,取得查询结果,利用查询结果更新伺服器的变数。然后提供上述变数至用户端。

Description

非同步数据查询方法与系统以及执行该方法的电脑程序的储存媒 体
技术领域
本发明有关一种适用于企业信息领域或一般信息提供业者网站的数据查询方法与系统,且特别是关于一种非同步(asynchronous)的数据查询方法与系统。
背景技术
在现代的企业中,经常使用报表查询网页(report query web page)来查询企业中的各种信息。图1绘示使用者在先前技术的系统查询数据的过程。使用者会用浏览器(browser)101,通过网络102连结伺服器(server)103提供的报表查询网页。报表查询网页会向数据库(database)104查询数据,然后通过网络102将结果回传给使用者的浏览器101。
在这一类网页当中,有些信息是所有使用者都会重复查询的,例如出现在下拉选单的选择项目。随着企业规模扩大,数据量不断增加,有些重复出现的信息必须经过庞大而复杂的数据库查询才能取得。例如大型企业的每一个据点都会有上百万笔数据,整个企业就会有上千万笔数据。而传统的数据查询都是同步(synchronous)处理,也就是说,报表查询网页收到使用者的请求(request)之后才会对数据库发出查询指令,使用者必须等到庞大而复杂的查询指令执行完毕才会看到结果。
于是,在图1的过程中,瓶颈会出现在伺服器103以及数据库104之间的数据查询。如果经常有多位使用者重复查询相同的数据,会让瓶颈现象更加严重,不但加重数据库的负担,也会大幅延长使用者的等待时间。
发明内容
本发明的目的是提供一种非同步数据查询方法,以减少数据库查询次数,降低数据库的负担。
本发明的另一目的是提供一种电脑可读取的储存媒体,储存执行非同步数据查询方法的电脑程序,以降低数据库使用量,加速取得数据时间。
本发明的又一目的是提供一种非同步数据查询系统,以减少伺服器的存储器负担,并且缩短使用者的等待时间。
为达成上述及其他目的,本发明提出一种非同步数据查询方法,包括下列步骤:(a)根据预设规则定时执行下列两个步骤:(a1)查询数据库,取得查询结果;以及(a2)利用查询结果更新变数。然后(b)提供上述变数至用户端。
上述的非同步数据查询方法,在一实施例中,上述预设规则为依照预设周期执行步骤(a1)与(a2)。
上述的非同步数据查询方法,在一实施例中,步骤(a1)还包括连结数据库,以及对数据库下达结构查询语言(structure query language,简称为SQL)指令,取得查询结果。
上述的非同步数据查询方法,在一实施例中,若用户端的登入识别码没有读取变数的权限,则拒绝提供上述变数。
上述的非同步数据查询方法,在一实施例中还包括至少加密上述变数的名称与内容的其中之一。
从另一观点来看,本发明另提出一种电脑可读取的储存媒体,储存可执行上述的非同步数据查询方法的电脑程序。
再从另一观点来看,本发明另提出一种非同步数据查询系统,包括数据库、伺服器、以及查询程序。其中,伺服器提供变数至用户端。查询程序则根据预设规则定时查询数据库,取得查询结果,并且利用上述查询结果更新上述变数。
依照本发明的较佳实施例所述,本发明是以非同步方式定时查询数据库以更新伺服器的变数,然后在用户端查询时,伺服器可立即提供变数至用户端,所以能缩短使用者的等待时间。因为本发明是将来自众多使用者的重复查询集中简化为定时查询,所以能减少数据库查询次数,降低数据库的负担,并且减少伺服器的存储器使用。
为让本发明的上述和其他目的、特点和优点能更明显易懂,下文特举本发明的较佳实施例并配合附图进行详细说明。
附图说明
图1为先前技术的数据查询方法示意图。
图2为根据于本发明一实施例的非同步数据查询系统示意图。
图3与图4为根据于本发明一实施例的非同步数据查询方法流程图。
图5为图2的查询程序的架构示意图。
具体实施方式
以下参照图2至图4说明本发明的一个实施例。首先,图2绘示根据于本实施例的非同步数据查询系统203。非同步数据查询系统203包括伺服器204、查询程序205、以及数据库206。
其中,数据库206负责储存数据并回应查询。伺服器204负责通过网络202提供变数至用户端201。以上的变数内容是预先查询过的数据,可供用户端201直接使用,细节后述。在本实施例中,伺服器204为安装微软公司(Microsoft)的网际网络信息服务(Internet Information Service,简称为IIS)的个人电脑。网络202可以是区域网络(local area network)或网际网络。而用户端201可以是浏览器的网页或独立的应用程序。
在本实施例中,查询程序205是以电脑可读取的储存媒体形式,例如储存于存储器、硬盘、或光盘中,而存在于伺服器204或另一台独立的电脑(未绘示于图2中)。本发明的非同步数据查询主要是由查询程序205执行。所谓的非同步是指从用户端201到伺服器204的查询以及从伺服器204到数据库206的查询是分别独立作业,而不是像图1有一定的先后顺序。简单的说,查询程序205会根据预设规则定时查询数据库206,取得查询结果,然后利用查询结果更新伺服器204的变数,这样一来使用者能够在伺服204内查询到最新的数据。查询程序205的查询,是原本用户端201就会重复发出的查询。将结果储存在伺服器204的变数中,以后用户端201连结伺服器204就能直接取得结果,所以本发明能大幅缩短使用者的等待时间。另一方面,因为查询程序205将原本由众多使用者重复发出的查询,集中简化为单一程序的定时查询,所以本发明能大幅降低数据库的负担。
在本实施例中,上述的预设规则是依照预设周期查询数据库206,例如每隔三分钟或五分钟查询一次,当然也可以用更复杂的定时规则。查询程序205每秒钟都会检查是否要执行查询作业。
在本实施例中,查询程序205会向数据库206下达SQL指令以取得查询结果。至于查询结果,可以是单一文字、单一数字、阵列(array)、数据集合(data set)、数据表(data table)、数据视集(data view)、或可扩充标记语言(extensible markup language,简称为XML)。
为了数据安全起见,在更新伺服器204的变数时,查询程序205可以替变数名称或变数内容加密(encryption),或两者同时加密。在用户端201连结伺服器204时,若用户端201的登入识别码没有读取变数的权限,查询程序205会拒绝提供变数。此外查询程序205也包含事件记录(event log)的功能。如果顺利更新变数,查询程序205会写入正常状态至事件记录。反之,如果从查询数据库206到更新变数的过程中发生例外事件(exception),查询程序205会写入异常状态至事件记录。
接下来,图3与图4为本实施例中,查询程序205所执行的非同步数据查询方法的详细流程图。图3为定时更新变数的流程。
首先,在步骤310读取设定文件。这个设定文件包含查询程序205会用到的所有信息,例如预设的定时规则、定时规则是否执行、连结哪一个数据库、连结数据库所需的帐号与密码、对数据库下达的SQL指令、查询结果的种类等。当然,在本发明的范围中,可以用其他方式取得上述信息,不限于设定文件。例如可以从网络上的数据库、网络上的另一台电脑、或内建于程序中的常数或变数,取得上述信息的全部或其中一部分。
读取设定文件之后,流程进入步骤320,根据预设的定时规则,检查是否要执行查询作业。如果不是,流程至此结束。如果是,流程会进入步骤325取得查询用的SQL指令,在步骤330连结数据库206,然后进入步骤340,对数据库206下达SQL指令,取得查询结果。接着流程进入步骤350,利用前面的查询结果更新变数。在更新变数时,可以顺便为变数名称或变数内容加密,或两者都加密。最后,流程会进入步骤360,写入正常状态至事件记录。另一方面,如果从步骤310到350的过程中发生例外事件,流程会进入步骤370,写入异常状态至事件记录。
接下来,图4为用户端201查询数据时,查询程序205所执行的流程。
首先,在步骤410,用户端201会连结伺服器204,登入报表查询网页。接着在步骤420,查询程序205会检查用户端201的登入识别码是否有读取变数的权限。如果有,查询程序205会在步骤430提供变数给用户端201,否则查询程序205会在步骤440拒绝提供变数。
图5为本实施例的查询程序205的架构示意图。查询程序205包括六个模块:排程模块(schedule module)501、条件数据收集模块(conditional datacollection module)502、数据库连结模块(database connection module)503、查询模块(query module)504、事件记录模块(log module)505、以及安全模块(security module)506。
排程模块501负责定时检查预设规则,判断是否该进行查询作业,也就是执行图3的步骤302。条件数据收集模块502负责取得查询所需的SQL指令,也就是执行图3的步骤325。数据库连结模块503负责连结数据库,也就是执行图3的步骤330。查询模块504负责下达SQL指令,取得查询结果,也就是执行图3的步骤340。事件记录模块505负责记录整个查询作业中的异常状态以及顺利结束后的正常状态,也就是执行图3的步骤360与370。最后,安全模块506负责在用户端201欲取得伺服器204的变数时确保数据安全性,也就是执行图4的步骤420、430、以及440。
在本发明的范围中,并未限定查询程序采用上述的模块架构,重点是只要查询程序能定时查询数据库,更新伺服器的变数,并且将变数提供给用户端,即可达成本发明的功效。
综上所述,本发明是以非同步方式定时查询数据库以更新伺服器的变数,然后在用户端查询时,伺服器可立即提供变数至用户端,所以能缩短使用者的等待时间。因为本发明是将来自众多使用者的重复查询,集中简化为单一程序的定时查询,所以能减少数据库查询次数,降低数据库的负担,并且减少伺服器的存储器使用。
虽然本发明已以较佳实施例揭示如上,然而其并非用以限定本发明,任何熟悉本技术的人员,在不脱离本发明的精神和范围内,当可作出种种的等效的变化或替换,因此本发明的保护范围当视后附的本申请权利要求范围所界定的为准。

Claims (19)

1.一种非同步数据查询方法,包括:
(a)根据一预设规则定时执行下列两个步骤:
(a1)查询一数据库,取得一查询结果;
(a2)利用该查询结果更新一变数;以及
(b)提供该变数至一用户端。
2.如权利要求1所述的非同步数据查询方法,其特征在于该预设规则为依照一预设周期执行步骤(a1)与(a2)。
3.如权利要求1所述的非同步数据查询方法,其特征在于步骤(a1)还包括:
连结该数据库;以及
对该数据库下达一结构查询语言指令,取得该查询结果。
4.如权利要求1所述的非同步数据查询方法,其特征在于该查询结果为下列其中之一:单一文字、单一数字、阵列、数据集合、数据表、数据视集、以及可扩充标记语言。
5.如权利要求1所述的非同步数据查询方法,其特征在于还包括:
若步骤(a1)与(a2)顺利结束,则写入正常状态至一事件记录。
6.如权利要求1所述的非同步数据查询方法,其特征在于还包括:
若执行步骤(a1)或(a2)时发生例外事件,则写入异常状态至一事件记录。
7.如权利要求1所述的非同步数据查询方法,其特征在于还包括:
若该用户端的登入识别码没有读取该变数的权限,则拒绝提供该变数。
8.如权利要求7所述的非同步数据查询方法,其特征在于还包括:
至少加密该变数名称与该变数内容的其中之一。
9.如权利要求1所述的非同步数据查询方法,其特征在于该用户端为网页与应用程序其中之一。
10.一种电脑可读取的储存媒体,储存一电脑程序,该电脑程序可执行如权利要求1所述的非同步数据查询方法。
11.一种非同步数据查询系统,包括:
一数据库;
一伺服器,提供一变数至一用户端;以及
一查询程序,根据一预设规则定时查询该数据库,取得一查询结果,并且利用该查询结果更新该变数。
12.如权利要求11所述的非同步数据查询系统,其特征在于该预设规则为依照一预设周期查询该数据库。
13.如权利要求11所述的非同步数据查询系统,其特征在于该查询结果是借助一结构查询语言指令自该数据库取得。
14.如权利要求11所述的非同步数据查询系统,其特征在于该查询结果为下列其中之一:单一文字、单一数字、阵列、数据集合、数据表、数据视集、以及可扩充标记语言。
15.如权利要求11所述的非同步数据查询系统,其特征在于该查询程序的作用还包括:若顺利更新该变数,则写入正常状态至一事件记录。
16.如权利要求11所述的非同步数据查询系统,其特征在于该查询程序的作用还包括:若自查询该数据库至更新该变数的过程中发生例外事件,则写入异常状态至一事件记录。
17.如权利要求11所述的非同步数据查询系统,其特征在于该查询程序的作用还包括:若该用户端的登入识别码没有读取该变数的权限,则拒绝提供该变数。
18.如权利要求17所述的非同步数据查询系统,其特征在于该查询程序的作用还包括:至少加密该变数名称与该变数内容的其中之一。
19.如权利要求11所述的非同步数据查询系统,其特征在于该用户端为网页与应用程序其中之一。
CN 200510092737 2005-08-19 2005-08-19 非同步数据查询方法与系统以及执行该方法的电脑程序的储存媒体 Pending CN1916892A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 200510092737 CN1916892A (zh) 2005-08-19 2005-08-19 非同步数据查询方法与系统以及执行该方法的电脑程序的储存媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 200510092737 CN1916892A (zh) 2005-08-19 2005-08-19 非同步数据查询方法与系统以及执行该方法的电脑程序的储存媒体

Publications (1)

Publication Number Publication Date
CN1916892A true CN1916892A (zh) 2007-02-21

Family

ID=37737890

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 200510092737 Pending CN1916892A (zh) 2005-08-19 2005-08-19 非同步数据查询方法与系统以及执行该方法的电脑程序的储存媒体

Country Status (1)

Country Link
CN (1) CN1916892A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101957849A (zh) * 2010-09-21 2011-01-26 用友软件股份有限公司 静态报表生成方法和装置
CN104216986A (zh) * 2014-09-03 2014-12-17 陈飞 以数据更新周期进行预操作提高数据查询效率的装置及方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101957849A (zh) * 2010-09-21 2011-01-26 用友软件股份有限公司 静态报表生成方法和装置
CN104216986A (zh) * 2014-09-03 2014-12-17 陈飞 以数据更新周期进行预操作提高数据查询效率的装置及方法
CN104216986B (zh) * 2014-09-03 2017-11-10 陈飞 以数据更新周期进行预操作提高数据查询效率的装置及方法

Similar Documents

Publication Publication Date Title
US6775675B1 (en) Methods for abstracting data from various data structures and managing the presentation of the data
US6832222B1 (en) Technique for ensuring authorized access to the content of dynamic web pages stored in a system cache
US7930215B2 (en) Contextual computing system
US7593960B2 (en) System and method for least work publishing
US8095644B2 (en) System and method for analyzing web paths
JP5443615B2 (ja) モデル駆動手法を使用する柔軟性のあるデータ・アーカイブのための方法、並びにそのシステム、及びコンピュータ・プログラム
US20020174126A1 (en) Methods and apparatus for real-time business visibility using persistent schema-less data storage
US20100217777A1 (en) System for Automatic Arrangement of Portlets on Portal Pages According to Semantical and Functional Relationship
US20070239799A1 (en) Analyzing log files
WO2001082142A1 (en) System and method for determining user identity fraud using similarity searching
ZA200503578B (en) Adaptively interfacing with a data repository
Varga et al. Introducing Microsoft SQL Server 2016: Mission-Critical Applications, Deeper Insights, Hyperscale Cloud
CN102200996A (zh) 对动态报告进行解析和索引
US20080109441A1 (en) Topic Map for Navigational Control
US20040153748A1 (en) Method for configuring a data processing system for fault tolerance
US20070100914A1 (en) Automated process for identifying and delivering domain specific unstructured content for advanced business analysis
US8429609B2 (en) Method and system for web-based enterprise change and configuration management reports
CN1916892A (zh) 非同步数据查询方法与系统以及执行该方法的电脑程序的储存媒体
CN101206649B (zh) 多任务解析系统及方法
US20050229162A1 (en) Systems and methods for providing multi-environment test automation
US20030225722A1 (en) Method and apparatus for providing multiple views of virtual documents
EP1748366A1 (en) A data processing system and method
Cisco CiscoSecure ACS 2.2(3) for UNIX Installation Guide
Cisco CiscoSecure ACS 2.2(3) for UNIX Installation Guide
Papakonstantinou et al. The Enosys Markets data integration platform: lessons from the trenches

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication