CN104572939B - 一种行业内异构数据交换的数据查询方法 - Google Patents
一种行业内异构数据交换的数据查询方法 Download PDFInfo
- Publication number
- CN104572939B CN104572939B CN201410841998.8A CN201410841998A CN104572939B CN 104572939 B CN104572939 B CN 104572939B CN 201410841998 A CN201410841998 A CN 201410841998A CN 104572939 B CN104572939 B CN 104572939B
- Authority
- CN
- China
- Prior art keywords
- data
- data system
- standard dictionary
- isomeric
- field
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/80—Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
- G06F16/81—Indexing, e.g. XML tags; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种行业内异构数据交换的数据查询方法。本方法为:1)建立一行业标准词典,记录不同异构数据***数据库结构与标准词典中数据结构的对应关系;2)在各异构数据***之间建立查询条件下发和查询结果返回的传输通道,并在传输通道上发布其所支持的服务接口;3)各异构数据***分别根据所述服务接口生成访问接口并注册到传输通道上;4)根据行业标准词典输入查询请求,然后通过异构数据***的访问接口将该查询请求发送给所选异构数据***;5)异构数据***将收到的查询请求根据行业标准词典转换为自己能识别的查询语句进行查询,并返回查询结果。本发明能够使异构数据***之间进行查询,大大提高了查询效率。
Description
技术领域
本发明涉及计算机行业数据交互领域。具体的说,涉及一种使数据在不同的***之间被正确的组织、传输和解析查询的方法。
技术背景
为了提高生产力,各行各业都建立了形形色色的信息化业务***。由于早年各行业都处于探索阶段,缺少对信息化建设的整体规划,信息化业务***建设通常是由各下级单位自行建设的,导致同行业内各下级单位相同功能的业务***采用了不同厂家的产品,在功能上有差异,采用的开发语言有差异,采用的数据库有差异,数据存储格式有差异,形成了信息孤岛。
随着技术的发展和行业信息化意识的提高,各行业对业务数据越来越重视,行业主管部门希望把本行业的重要数据进行集中管理,进行数据大集中,形成整个行业的数据仓库,用来进行更高层次的数据分析和更全面的数据共享,大集中的数据库一般采用数据上报的技术进行处理。
但是行业数据大集中通常只会集中存储一些关键数据,更多的详细数据还是分散在各下级单位的数据库中。各下级单位之间会有数据互查的需求,上级单位也会需要到下级单位查询没有上报的数据。
在同级单位之间进行数据互查时,由于各单位业务***的数据是异构的,为了达到互查的目标,必须制定统一的沟通标准,这个沟通标准是行业标准,行业内的所有单位和软件供应商都应该遵循该标准。基于该行业标准,进行查询条件的编码、传输和解码。多个***间的数据查询模型如图1所示。
发明内容
本发明的目的是为行业内异构数据交换定义规则,让各个***之间能互相理解对方的语法,然后根据对方要求把数据查询结果返回。
为实现上述目的,本发明的解决方案是:
一种行业内异构数据交换的数据查询方法,其步骤为:
1)建立一行业标准词典,记录不同异构数据***数据库结构与标准词典中数据结构的对应关系;
2)在各异构数据***之间建立查询条件下发和查询结果返回的传输通道,并在所述传输通道上发布其所支持的服务接口;
3)各所述异构数据***分别根据所述服务接口生成访问接口并注册到所述传输通道上;
4)根据所述行业标准词典输入查询请求,然后通过所选异构数据***的访问接口将该查询请求发送给所选异构数据***;
5)所述异构数据***将收到的查询请求根据所述行业标准词典转换为自己能识别的查询语句进行查询,并返回查询结果。
进一步的,所述行业标准词典包括数据集、字段和编码;其中,数据集对应于异构数据***的数据库中的表,字段对应于异构数据***的数据库中的字段,编码对应于异构数据***的数据库中的字段值。
进一步的,创建所述行业标准词典的方法为:将各所述异构数据***要交互的数据抽象出若干个数据集,每一数据集具有一编号、名称和含义;每一数据集包括若干字段;每一字段具有若干编码。
进一步的,所述数据集中的字段包括:字段编号、英文编码、中文名称、类型、长度、所用编码、表达格式。
进一步的,所述异构数据***分别在所述传输通道上注册,获取一节点编号;所述查询请求包括查询发起者的异构数据***标号、目标异构数据***编号和查询条件。
进一步的,采用统一格式输入所述查询请求。
进一步的,所述查询请求为XML格式。
进一步的,所述返回结果采用统一格式。
进一步的,所述返回结果的格式为XML格式或JSON格式。
进一步的,所述传输通道为企业服务总线ESB。
本发明首先要搭建行业ESB(企业服务总线),为查询条件下发和数据返回建立传输通道。
然后定义行业标准词典,定义出行业内都能识别的数据集、字段、编码。比如行业规定1表示男,0表示女。某企业1表示男,2表示女,那么该在向外提供数据时必须将2转换为0,否则行业内其他企业无法识别2。
最后根据标准词典确定查询条件下发的格式和查询结果返回的格式。本发明中采用统一定义的XML格式,便于不同的企业可以互相识别。
为了在行业间实现数据交换,需要在行业内部搭建ESB(企业服务总线),由行业主管部门定义ESB上支持的服务接口,发布为Web Service。各下级单位要实现ESB的各个接口,并且在ESB上注册自己的访问接口,供其他单位访问本单位数据。本单位要使用其他单位数据时,只需要访问相应单位的ESB接口即可。
为了能让各单位能理解彼此的语法,首先需要定义行业标准词典,相当于语言中的单词。各单位在描述查询请求时必须使用行业标准词典,这样才能彼此理解。标准词典定义包含:数据集、字段、编码3个层次。数据集相当于数据库中的表,字段就相当于数据库中的字段,编码相当于数据库中字段的枚举值。有了这3层的定义,就可以让各个下级单位理解彼此的数据。
只有词典还不够,还应该描述出需要别的单位什么样的数据,所以还需要定义查询条件的表达格式。我们采用类SQL的表达方式来描述我们的查询条件,最后把查询条件形成一个XML下发给目标单位。
除了定义查询表达式格式,还需要定义返回结果格式。结果格式可以是XML或者JSON格式的,XML格式的更便于阅读,JSON格式的体积更小,传输开销更小。目标单位收到查询XML后,需要根据标准词典翻译成自己***能识别的查询语句进行查询(因为查询XML的格式是行业标准,XML中每个节点是什么都有明确定义,比如该节点下描述的是要请求的要查询数据的目标节点信息,另一个节点描述的是要查询那个数据集。XML的结构和标准词典都属于行业标准),查询出结果后,再根据标准词典把数据转换为符合行业标准的格式,返回给查询单位。
本发明的优点和积极效果:
a)ESB采用Web Service发布,是跨平台跨语言的。只要支持Web Service调用的***就可以使用ESB。本发明能够使异构数据***之间进行查询,大大提高了查询效率。
b)ESB的接口实现采用注册机制,保证了ESB的扩展性。ESB上增加了节点不需要在ESB上做任何处理。
c)行业标准词典的制定,使各下级单位能用统一语言描述自己的数据需求,又能维持现有的业务***可以继续使用。只需要每个厂家把自己的数据结构和行业标准词典的数据结构对应。
d)查询类SQL的定义使各单位在互相查询时有极大的灵活性。
e)查询条件和查询结果返回是XML格式(也可以采用JSON格式)的,可以在多种开发语言下进行转换。
附图说明
图1是多个***间的数据查询模型;
图2是行业ESB的结构示意图;
图3是查询条件的结构示意图;
图4是返回结果的结构示意图。
具体实施方式
图2是行业ESB的结构示意图。行业主管部门负责定义ESB的服务接口,为行业内的各级单位提供节点编码规则,提供节点注册功能。每个下级单位要使用ESB时都需要先在ESB中注册一个节点,需要访问其它单位的数据时,需要指明要访问哪个节点的数据。例如图2中,单位A在ESB中注册的节点号是1001,单位B在ESB中注册的节点号是1002。单位A想查询单位B的数据时,需要告诉ESB自己的节点号是1001,需要访问节点1002的数据,需要查询的数据要求。ESB在收到节点1001的请求后,会在注册信息中查询节点1002的信息,找到节点1002是单位B,然后调用单位B的实现接口,单位B返回查询结果后转发给单位A。
行业标准词典的定义按照颗粒度分为数据集、字段、编码3个层次,和我们定义本地数据库结构类似。在定义数据集时需要针对行业数据进行抽象,把整个行业要交互的数据抽象出若干个数据集,每个数据集表示一组特定含义的数据。给每个数据集定义编号、名称和含义,编号是数据集的唯一标识,在数据查询时要使用数据集的编号。字段是比数据集颗粒度更细的数据,通常用来表示一个属性。行业标准词典中要定义出每个字段的编号、英文编码、名称、类型、长度、所用编码、表达格式等信息。字段的编号是字段的唯一标识,在数据查询时要使用字段的编号。编码是用来定义字段的枚举值的,有的字段只能从若干个选项中进行选择。例如:我们要在行业标准词典中定义人员信息,我们需要先定义数据集:人员信息(BASIC_0001),BASIC_0001就是人员信息数据集的唯一标识。人员信息中包含人员姓名,性别,出生日期等字段,我们需要定义各个字段的信息如表1:
表1为人员信息数据集的字段表
编号 | 英文编码 | 名称 | 类型 | 长度 | 所用编码 | 备注 |
C01 | NAME | 姓名 | char | 20 | ||
C02 | SEX | 性别 | char | 1 | CODE0001 | |
C03 | BIRTHDAY | 出生日期 | date |
在上面的表格中,性别使用了编码,我们还需要在行业标准词典中定义这个编码的具体值,见下面表2:
性别编码(CODE0001)
表2为性别编码表
编码 | 含义 |
1 | 男 |
2 | 女 |
在定义完行业标准词典后,还需要通过XML描述要查询的内容。XML中包含审计信息、数据要求、查询条件等信息(如图3所示)。审计信息主要验证请求用户的身份、记录用户来源等,用来做日志记录。数据要求中主要记录用户对查询数据的要求,例如:返回多少行数,优先级,是否异步查询等。查询条件是XML的核心内容,通过类SQL来组织查询条件。查询条件由投影、连接、选择、排序、分组等构成(名词见标准SQL定义)。投影是需要查询的字段。连接是需要查询的数据集。排序是需要排序的字段和排序方式。分组是需要分组的字段。上述的数据集和字段描述都采用行业标准词典中的定义。选择是查询条件的核心,查询条件比较复杂,支持多个字段的嵌套查询,多个字段之间支持and和or连接符,字段和值之间的关系需要定义=、>、<、>=、<=、like等关系的表达方式。
最后还需要定义返回结果的格式。返回结果可以采用JSON和XML格式的,推荐使用JSON,因为返回结果数据可能会比较多。返回结果由成功标志、异常信息、数据集合构成(如图4所示)。成功标志说明本次查询是否成功。异常信息记录失败的报错信息。数据集合把查询结果封装为JSON或者XML返回。每一行数据的字段都使用行业标准词典中定义的字段。
Claims (8)
1.一种行业内异构数据交换的数据查询方法,其步骤为:
1)建立一行业标准词典,记录不同异构数据***数据库结构与标准词典中数据结构的对应关系;所述行业标准词典包括数据集、字段和编码;其中,数据集对应于异构数据***的数据库中的表,字段对应于异构数据***的数据库中的字段,编码对应于异构数据***的数据库中的字段值;创建所述行业标准词典的方法为:将各所述异构数据***要交互的数据抽象出若干个数据集,每一数据集具有一编号、名称和含义;每一数据集包括若干字段;每一字段具有若干编码;
2)在各异构数据***之间建立查询条件下发和查询结果返回的传输通道,并在所述传输通道上发布其所支持的服务接口;
3)各所述异构数据***分别根据所述服务接口生成访问接口并注册到所述传输通道上;
4)根据所述行业标准词典输入查询请求,然后通过所选异构数据***的访问接口将该查询请求发送给所选异构数据***;
5)所述异构数据***将收到的查询请求根据所述行业标准词典转换为自己能识别的查询语句进行查询,并返回查询结果。
2.如权利要求1所述的方法,其特征在于,所述数据集中的字段包括:字段编号、英文编码、中文名称、类型、长度、所用编码、表达格式。
3.如权利要求1或2所述方法,其特征在于,所述异构数据***分别在所述传输通道上注册,获取一节点编号;所述查询请求包括查询发起者的异构数据***标号、目标异构数据***编号和查询条件。
4.如权利要求3所述的方法,其特征在于,采用统一格式输入所述查询请求。
5.如权利要求4所述的方法,其特征在于,所述查询请求为XML格式。
6.如权利要求1或2所述的方法,其特征在于,所述返回结果采用统一格式。
7.如权利要求6所述的方法,其特征在于,所述返回结果的格式为XML格式或JSON格式。
8.如权利要求1或2所述的方法,其特征在于,所述传输通道为企业服务总线ESB。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410841998.8A CN104572939B (zh) | 2014-12-30 | 2014-12-30 | 一种行业内异构数据交换的数据查询方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410841998.8A CN104572939B (zh) | 2014-12-30 | 2014-12-30 | 一种行业内异构数据交换的数据查询方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104572939A CN104572939A (zh) | 2015-04-29 |
CN104572939B true CN104572939B (zh) | 2018-05-22 |
Family
ID=53089001
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410841998.8A Active CN104572939B (zh) | 2014-12-30 | 2014-12-30 | 一种行业内异构数据交换的数据查询方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104572939B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105224594B (zh) * | 2015-08-26 | 2020-01-14 | 北京锐安科技有限公司 | 一种面向服务体系架构数据互联查询***及查询方法 |
CN108536728A (zh) * | 2018-02-24 | 2018-09-14 | 国家计算机网络与信息安全管理中心 | 一种数据查询方法和装置 |
CN110795470A (zh) * | 2019-10-30 | 2020-02-14 | 北京锐安科技有限公司 | 一种关联数据获取方法、装置、设备及存储介质 |
CN112417016B (zh) * | 2020-11-18 | 2024-03-22 | 北京锐安科技有限公司 | 一种数据交换方法、***、设备及存储介质 |
CN112818005B (zh) * | 2021-02-03 | 2024-02-02 | 北京清科慧盈科技有限公司 | 结构化数据的搜索方法、装置、设备及存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6715144B2 (en) * | 1999-12-30 | 2004-03-30 | International Business Machines Corporation | Request based automation of software installation, customization and activation |
TW502181B (en) * | 2001-05-04 | 2002-09-11 | Lasmsoft Corp | Dynamic real-time exchange method and system of heterogeneous database and of heterogeneous data source |
CN103617176B (zh) * | 2013-11-04 | 2017-03-15 | 广东电子工业研究院有限公司 | 一种实现多源异构数据资源自动同步的方法 |
-
2014
- 2014-12-30 CN CN201410841998.8A patent/CN104572939B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN104572939A (zh) | 2015-04-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11567997B2 (en) | Query language interoperabtility in a graph database | |
CN104572939B (zh) | 一种行业内异构数据交换的数据查询方法 | |
CN105446966B (zh) | 生成关系数据转换为rdf格式数据的映射规则的方法和装置 | |
US8423514B2 (en) | Service provisioning | |
Karnitis et al. | Migration of relational database to document-oriented database: structure denormalization and data transformation | |
US20180232262A1 (en) | Mapping heterogeneous application-program interfaces to a database | |
US10452639B2 (en) | Processing joins in a database system using zero data records | |
US20080183689A1 (en) | Search method and apparatus for plural databases | |
US9367563B2 (en) | Managing records in a travel management system | |
US10621194B2 (en) | Automated harmonization of data | |
US11107010B2 (en) | Content exchange with a travel management system | |
US11553023B2 (en) | Abstraction layer for streaming data sources | |
JP2016028317A (ja) | コンテンツ交換方法およびシステム | |
JP2016006642A (ja) | レコードデータ構造を管理する方法およびシステム | |
CN105912723B (zh) | 一种自定义字段的存储方法 | |
JP2016006641A (ja) | コンテンツ管理システム | |
US9607072B2 (en) | System and method for implementing nested relationships within a schemaless database | |
CN112100261B (zh) | 基于异构数据源连接的物模型建模方法 | |
US8145629B2 (en) | Method and system for business reporting | |
WO2017208922A1 (ja) | データ交換システム、データ交換方法、及びデータ交換プログラム | |
Bermes | Convergence and interoperability: a Linked Data perspective | |
CN106126602A (zh) | 一种基于xml实现价格策略字典的方法 | |
JP5056384B2 (ja) | 検索プログラム、方法及び装置 | |
JP7125691B2 (ja) | データ交換システム、データ交換方法、及びデータ交換プログラム | |
CN109739923A (zh) | 一种数据导入的方法和*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
PE01 | Entry into force of the registration of the contract for pledge of patent right | ||
PE01 | Entry into force of the registration of the contract for pledge of patent right |
Denomination of invention: A Data Query Method for Heterogeneous Data Exchange within the Industry Effective date of registration: 20230807 Granted publication date: 20180522 Pledgee: Bank of China Limited Beijing Xicheng Branch Pledgor: RUN TECHNOLOGIES Co.,Ltd. BEIJING Registration number: Y2023980051158 |