CN1645799A - 基于远程代理的分布式统一数据存取系统 - Google Patents
基于远程代理的分布式统一数据存取系统 Download PDFInfo
- Publication number
- CN1645799A CN1645799A CN 200510005084 CN200510005084A CN1645799A CN 1645799 A CN1645799 A CN 1645799A CN 200510005084 CN200510005084 CN 200510005084 CN 200510005084 A CN200510005084 A CN 200510005084A CN 1645799 A CN1645799 A CN 1645799A
- Authority
- CN
- China
- Prior art keywords
- client
- server
- data
- access
- distributed
- 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
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storage Device Security (AREA)
Abstract
本发明涉及一种基于远程代理的分布式统一数据存取系统,属于计算机数据处理中的数据访问技术领域。现有技术中,客户端访问数据库时均需先配置各厂商的客户端软件,包含繁杂的安装与配置数据库步骤,且不能统一访问;而对于文件服务器上的数据,现有方法采用可写的目录共享不太安全,容易受病毒攻击。本发明所述的系统以一台代理服务器实际访问分布式数据库与分布式文件系统服务器,而最终客户端不能用业务软件之外的工具访问业务数据,也不需要额外安装与部署业务软件之外的任何客户工具,如数据库客户端或分布式文件系统客户端。采用本发明所述的系统,不仅实现了对分布式数据的统一访问,而且保证了系统的安全性与易用性。
Description
技术领域
本发明属于计算机数据处理中的数据访问技术领域,具体涉及一种基于远程代理的分布式统一数据存取系统。
背景技术
目前各行各业的基于客户端/服务器技术的数据存取系统非常多,对于分布式数据库和分布式文件存取系统来说,它们常常将其业务数据存放在专有的数据库服务器或文件服务器上。为了能够察看与修改业务数据,各客户端通常需要安装与配置访问各数据库的客户端工具(如SQL Server,Db2 Oracle都有专门的客户包),这些访问工具对使用客户端的最终用户而言实际上是不必要的,只是用来保证软件的客户端能够访问数据库。而且,对最终用户来说,这些客户端访问工具的安装与配置较复杂,容易出错,用户也可能误用某些客户端访问工具错误地修改了服务器中的数据等。另外,对于软件开发商来说,如果数据放在不同厂商的数据库中,更是很难以一种简单易用的方法统一访问。
如果将数据放在文件系统服务器上,现阶段许多系统采用windows的目录共享或Unix上的Samba,但是,这样做的不足之处是软件为了能够修改数据,需要采用可写的目录共享,这样太不安全,客户可以在自己机器上直接修改数据文件,现在的许多病毒也攻击可写的共享目录,因此安全性差。此外,目录共享也不适合在Internet上使用。
发明内容
针对现有技术中存在的缺陷,本发明的目的是提供一种基于远程代理的分布式统一数据存取系统,该系统能以一种简便高效且安全易用的方式存取业务系统的数据,方便软件的部署与维护,提高软件的运行效率。
为达到以上目的,本发明采用的技术方案是:
一种基于远程代理的分布式统一数据存取系统,包括存有分布式数据库和分布式文件系统的服务器端和访问数据的客户端,该系统服务器端还设有代理服务器即数据访问服务器,存有分布式数据库和分布式文件系统的服务器端通过接口与代理服务器连接,代理服务器再通过客户端调用接口与客户端连接;该系统采用客户端与服务器技术,将分布式数据库访问与分布式文件系统访问的工具移动到统一的数据访问服务器上,即实际访问分布式数据库和分布式文件系统的工具设置在代理服务器上,客户端不再部署原数据库或文件系统的客户端工具,客户端采用经过统一定义的访问接口即客户端调用接口通过代理服务器访问实际数据库与文件服务器中的业务数据,而不能用业务软件之外的工具访问业务数据。
进一步来说,设置在代理服务器上实际访问分布式数据库和分布式文件系统的工具包括:
1)数据库访问服务程序,该服务程序专门处理客户端传递的数据库访问请求,然后调用相应数据库的访问接口,完成安全认证、数据库连接池管理、多并发任务支持、数据库事务SQL命令执行、SQL查询结果集生成;
2)文件访问服务程序,该服务程序专门处理客户端传递的文件系统访问请求,然后调用相应文件访问接口,完成安全认证、文件设备管理、目录访问、文件增加、删除、复制。
更进一步,该系统采用自检式的运行机制,系统服务采用一个主控进程,多个工作进程的模型,主控进程预先启动几个工作进程,然后接受客户请求,分配给一个工作进程处理,工作进程如果必要,可以再将其分配给自身的一个线程处理,保证最大的并发度,主控进程自动检查有问题的工作进程,终止它并重起一个工作进程。
客户端与服务器之间的通信协议采用TCP/IP协议,并在其基础上定义一个数据包协议,客户端与服务器通信时先确定通信类型,然后将数据分解成一个或多个数据包,通过TCP/IP协议传递到另一方,对方先将数据包读出来拼接为一块完整的数据,解读数据含义,执行要求的操作,返回相应的一个或多个数据包。
进一步,客户端调用接口包括以下4个接口对象:
a)数据连接对象:该对象用来连接服务器,通过用户名与口令验证用户;
b)数据库访问对象,该对象执行以下功能:
(1)对数据库进行维护:包括创建数据表,修改数据表和删除数据表;
(2)执行数据库操作或命令;
(3)获取、打开数据库操作结果集;
c)数据结果集对象:该对象用来在结果集中上下滚动,获取查询的列信息及每列的值;
d)文件系统访问对象,该对象执行以下功能:
(1)查看文件系统信息,列出文件系统设备名称、剩余空间;
(2)列出目录下的目录与文件名称、大小属性;
(3)创建或删除目录或文件;
(4)查看文件内容。
该系统采用的客户端与服务器端为统一数据存取服务器端和统一数据存取客户端,统一数据存取客户端是由一台或多台计算机组成,统一数据存取服务器端也是由一台或多台服务器组成,服务器端与代理服务器为不同的服务器或者为同一台服务器。
该系统的客户端即最终用户的计算机终端统一定义了一组访问接口,这组接口接受客户要访问的数据的特征信息,把它提交给服务器,并获取服务器返回的数据内容。
该系统的代理服务器端根据客户端传递的信息,访问实际的数据,将这些实际内容按照客户要求的方式返回给客户端。
该系统的服务器端能够同时响应多个客户端的请求,客户端也能够同时访问多个不同的服务器端。
该系统的客户端与服务器端之间的通讯方式通过互联网或局域以太网络的方式连接。
本发明的效果在于:将本发明所述的基于远程代理的分布式统一数据存取技术应用于需要使用分布式数据库或分布式文件系统存放业务数据的计算机系统中,实现了以一种简便高效且安全易用的方式存取业务系统的数据,方便相关业务软件的部署与维护,提高整个系统的运行效率。之所以具有这些效果,是因为这种方法的主要特点是制定了访问分布式数据的统一方法,以一台代理服务器实际访问数据库与文件服务器。所有的较困难部署都在这台代理服务器上,最终客户不能用业务软件之外的工具非法访问业务数据,也不需要额外安装与部署业务软件之外的任何客户工具(如数据库客户端或分布式文件系统客户端),保证了系统的安全性与易用性。
具体来说,相对于现有技术,本系统主要有以下一些优点:
1)保证了客户端以简单易用的方式访问数据
每个客户端不需要配置任何数据库工具,也没有任何文件访问客户工具(用户也不用关心这些)。软件的安装,数据库的迁移都十分容易。
2)保证了服务器端数据的安全性
所有的用户都只能操作软件限定的数据,不会发生数据被非法篡改的情况。对于文件访问,由于功能仅局限于通过接口访问,彻底防住了大部分通过目录共享进行攻击的病毒。
3)提高了软件的效率
由于实际数据处理都集中在性能较高的代理服务器上,只将较少的结果传递给客户端,配置很一般的客户端允许速度都可以接受,比客户原来的同类软件提高了效率。
附图说明
图1是基于远程代理的分布式统一数据存取系统实现模型图;
图2是数据访问接口对象图;
图3是数据包结构图;
图4是服务器实现原理图。
具体实施方式
下面结合附图和实施例对本发明作进一步的描述:
如图1所示,一种基于远程代理的分布式统一数据存取系统,由存有分布式数据库1和分布式文件系统2的服务器端和访问数据的客户端3组成。此外,该系统还设有代理服务器即数据访问服务器4,该系统采用客户端/服务器技术,将数据库访问与分布式文件系统访问移动到统一的数据访问服务器4上,实际访问分布式数据库和分布式文件系统的工具设置在代理服务器4上,客户端3不再部署原数据库或文件系统的客户端工具,客户端采用经过统一定义的访问接口通过代理服务器4访问实际数据库1与文件服务器2的业务数据,而不能用业务软件之外的工具非法访问业务数据。
具体来说,
1)数据库访问服务程序在代理服务器上运行,该服务程序专门处理客户端传递的数据库访问请求,然后调用相应数据库的访问接口,完成安全认证、数据库连接池管理、多并发任务支持、数据库事务SQL命令执行、SQL查询结果集生成等;
2)文件访问服务程序在代理服务器上运行,该服务程序专门处理客户端传递的文件系统访问请求,然后调用相应文件访问接口,完成安全认证、文件设备管理、目录访问、文件增加、删除、复制等;
3)该系统采用自检式的运行机制,如图4所示,系统服务采用一个主控进程,多个工作进程的模型,主控进程预先启动几个工作进程,然后接受客户请求,分配给一个工作进程处理,工作进程如果必要,可以再将其分配给自身的一个线程处理,保证最大的并发度,主控进程自动检查有问题的工作进程,终止它并重起一个工作进程;
4)客户端/服务器通信协议采用TCP/IP,在其基础上定义一个数据包协议,数据包结构如图3所示,包括数据包的长度、数据包的类型、数据包的状态以及实际数据四个部分。客户端与服务器通信时先确定通信类型,然后将数据分解成一个或多个数据包,通过TCP/IP传递到另一方,对方先将数据包读出来拼接为一块完整的数据,解读数据含义,执行要求的操作,返回相应的一个或多个数据包;
5)客户端调用接口包括以下4个接口对象:
a)数据连接对象:该对象用来连接服务器,通过用户名与口令验证用户;
b)数据库访问对象,该对象执行以下功能:
(1)对数据库进行维护:包括创建数据表,修改数据表和删除数据表;
(2)执行数据库操作或命令;
(3)获取、打开数据库操作结果集;
c)数据结果集对象:该对象用来在结果集中上下滚动,获取查询的列信息及每列的值;
d)文件系统访问对象,该对象执行以下功能:
(1)查看文件系统信息,列出文件系统设备名称、剩余空间;
(2)列出目录下的目录与文件名称、大小属性;
(3)创建或删除目录或文件;
(4)查看文件内容。
本实施例中,该系统采用客户/服务器逻辑模型,分为统一数据存取服务器端和统一数据存取客户端,可以分别有多个客户端和多个服务器端,客户端可以是不同的操作系统。
上述的客户端为最终用户的计算机终端,统一定义了一组访问接口,这组接口接受客户要访问的数据的特征信息,如数据库的查询语句,文件的路径信息,把它提交给服务器,获取服务器返回的数据内容。
服务器端主要根据客户端传递的信息,访问实际的数据,如数据库中的记录,或文件系统中的相应文件,将这些实际内容按照客户要求的方式返回给客户端。本实施例中,服务器端能够同时响应多个客户端的请求,客户端也能够同时访问多个不同的服务器端,客户与服务器之间的通讯方式是通过互联网方式连接。
下面结合本发明的两个运用实例来说明本发明的显著效果:
一、本发明应用于大百科出版社的实例
大百科出版社的跨介质出版系统是客户端/服务器结构的。
其服务器是Unix平台的,数据库与文件服务器都在Unix上,实际数据存储在磁盘阵列上;客户端在Windows平台上。
通过采用本发明所述的系统,数据的存储由Unix上的服务器统一管理,业务系统的部署集中在服务器上,所有的访问数据的客户(编辑)只部署了该系统中的一个客户端,客户不需要学习与使用数据库客户端,部署简化到接近浏览器/服务器结构的程度。
大百科的跨介质出版系统在完成测试后迁移到实际运行环境中时,数据库服务器与文件服务器都发生了变化,而几十个编辑没有受到任何影响,充分证实了本发明所述系统的简单实用性。
二、本发明应用于商务印书馆的实例
商务印书馆的辞书编撰系统通过采用本发明所述的基于远程代理的分布式统一数据存取系统,实现了数据的安全访问。
商务印书馆原有的系统中,数据库向每个最终客户机公开,文件服务器上的目录共享给客户。经常发现数据库蠕虫与攻击共享目录的病毒,引起了严重的危害。
通过使用本技术,除了实现简单高效的部属外,由于数据库与文件只开放给本发明的服务器,未发生过数据被非法篡改、文件服务器被攻击现象,充分证实了发明所述系统的安全性。
Claims (10)
1.一种基于远程代理的分布式统一数据存取系统,包括存有分布式数据库和分布式文件系统的服务器端和访问数据的客户端,其特征在于:该系统服务器端还设有代理服务器即数据访问服务器,存有分布式数据库和分布式文件系统的服务器端通过接口与代理服务器连接,代理服务器再通过客户端调用接口与客户端连接;该系统采用客户端与服务器技术,将分布式数据库访问与分布式文件系统访问的工具移动到统一的数据访问服务器上,即实际访问分布式数据库和分布式文件系统的工具设置在代理服务器上,客户端不再部署原数据库或文件系统的客户端工具,客户端采用经过统一定义的访问接口即客户端调用接口通过代理服务器访问实际数据库与文件服务器中的业务数据,而不能用业务软件之外的工具访问业务数据。
2.如权利要求1所述的一种基于远程代理的分布式统一数据存取系统,其特征是,设置在代理服务器上实际访问分布式数据库和分布式文件系统的工具包括:
1)数据库访问服务程序,该服务程序专门处理客户端传递的数据库访问请求,然后调用相应数据库的访问接口,完成安全认证、数据库连接池管理、多并发任务支持、数据库事务SQL命令执行、SQL查询结果集生成;
2)文件访问服务程序,该服务程序专门处理客户端传递的文件系统访问请求,然后调用相应文件访问接口,完成安全认证、文件设备管理、目录访问、文件增加、删除、复制。
3.如权利要求1或2所述的一种基于远程代理的分布式统一数据存取系统,其特征是,该系统采用自检式的运行机制,系统服务采用一个主控进程,多个工作进程的模型,主控进程预先启动几个工作进程,然后接受客户请求,分配给一个工作进程处理,工作进程如果必要,可以再将其分配给自身的一个线程处理,保证最大的并发度,主控进程自动检查有问题的工作进程,终止它并重起一个工作进程。
4.如权利要求3所述的一种基于远程代理的分布式统一数据存取系统,其特征是,客户端与服务器之间的通信协议采用TCP/IP协议,并在其基础上定义一个数据包协议,客户端与服务器通信时先确定通信类型,然后将数据分解成一个或多个数据包,通过TCP/IP协议传递到另一方,对方先将数据包读出来拼接为一块完整的数据,解读数据含义,执行要求的操作,返回相应的一个或多个数据包。
5.如权利要求4所述的一种基于远程代理的分布式统一数据存取系统,其特征是,客户端调用接口包括以下4个接口对象:
a)数据连接对象:该对象用来连接服务器,通过用户名与口令验证用户;
b)数据库访问对象,该对象执行以下功能:
(1)对数据库进行维护:包括创建数据表,修改数据表和删除数据表;
(2)执行数据库操作或命令;
(3)获取、打开数据库操作结果集;
c)数据结果集对象:该对象用来在结果集中上下滚动,获取查询的列信息及每列的值;
d)文件系统访问对象,该对象执行以下功能:
(1)查看文件系统信息,列出文件系统设备名称、剩余空间;
(2)列出目录下的目录与文件名称、大小属性;
(3)创建或删除目录或文件;
(4)查看文件内容。
6.如权利要求1所述的一种基于远程代理的分布式统一数据存取系统,其特征是:该系统采用的客户端与服务器端为统一数据存取服务器端和统一数据存取客户端,统一数据存取客户端是由一台或多台计算机组成,统一数据存取服务器端也是由一台或多台服务器组成,服务器端与代理服务器为不同的服务器或者为同一台服务器。
7.如权利要求1所述的一种基于远程代理的分布式统一数据存取系统,其特征是:该系统的客户端即最终用户的计算机终端统一定义了一组访问接口,这组接口接受客户要访问的数据的特征信息,把它提交给服务器,并获取服务器返回的数据内容。
8.如权利要求1所述的一种基于远程代理的分布式统一数据存取系统,其特征是:该系统的代理服务器端根据客户端传递的信息,访问实际的数据,将这些实际内容按照客户要求的方式返回给客户端。
9.如权利要求1所述的一种基于远程代理的分布式统一数据存取技术,其特征是:该系统的服务器端能够同时响应多个客户端的请求,客户端也能够同时访问多个不同的服务器端。
10.如权利要求1所述的一种基于远程代理的分布式统一数据存取技术,其特征是:该系统的客户端与服务器端之间的通讯方式通过互联网或局域以太网络的方式连接。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200510005084 CN1645799A (zh) | 2005-01-31 | 2005-01-31 | 基于远程代理的分布式统一数据存取系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200510005084 CN1645799A (zh) | 2005-01-31 | 2005-01-31 | 基于远程代理的分布式统一数据存取系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1645799A true CN1645799A (zh) | 2005-07-27 |
Family
ID=34875178
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200510005084 Pending CN1645799A (zh) | 2005-01-31 | 2005-01-31 | 基于远程代理的分布式统一数据存取系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1645799A (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101163094B (zh) * | 2006-10-13 | 2010-12-01 | 中兴通讯股份有限公司 | 实现任务间共享数据的方法 |
CN102033912A (zh) * | 2010-11-25 | 2011-04-27 | 北京北纬点易信息技术有限公司 | 一种分布式数据库访问方法及系统 |
CN102053982A (zh) * | 2009-11-02 | 2011-05-11 | 阿里巴巴集团控股有限公司 | 一种数据库信息管理方法和设备 |
CN102055730A (zh) * | 2009-11-02 | 2011-05-11 | 华为终端有限公司 | 云处理系统、云处理方法和云计算代理装置 |
WO2011113265A1 (zh) * | 2010-03-18 | 2011-09-22 | 中兴通讯股份有限公司 | 一种实现数据共享访问的方法、装置及系统 |
CN103870600A (zh) * | 2014-04-02 | 2014-06-18 | 中国银行股份有限公司 | 一种基于Oracle数据库的数据表备份方法及装置 |
CN104380301A (zh) * | 2012-05-25 | 2015-02-25 | 微软公司 | 管理分布式操作系统物理资源 |
CN104580283A (zh) * | 2013-10-14 | 2015-04-29 | 北大方正集团有限公司 | 服务器、终端、数据管理系统和数据管理方法 |
CN111882470A (zh) * | 2020-06-03 | 2020-11-03 | 武汉达梦数据技术有限公司 | 一种分布式公共征信方法与装置 |
CN112115504A (zh) * | 2020-06-29 | 2020-12-22 | 上海金融期货信息技术有限公司 | 一种基于tds协议的数据库访问方法和系统 |
-
2005
- 2005-01-31 CN CN 200510005084 patent/CN1645799A/zh active Pending
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101163094B (zh) * | 2006-10-13 | 2010-12-01 | 中兴通讯股份有限公司 | 实现任务间共享数据的方法 |
CN102053982B (zh) * | 2009-11-02 | 2017-03-01 | 阿里巴巴集团控股有限公司 | 一种数据库信息管理方法和设备 |
CN102053982A (zh) * | 2009-11-02 | 2011-05-11 | 阿里巴巴集团控股有限公司 | 一种数据库信息管理方法和设备 |
CN102055730A (zh) * | 2009-11-02 | 2011-05-11 | 华为终端有限公司 | 云处理系统、云处理方法和云计算代理装置 |
CN102055730B (zh) * | 2009-11-02 | 2013-09-11 | 华为终端有限公司 | 云处理系统、云处理方法和云计算代理装置 |
WO2011113265A1 (zh) * | 2010-03-18 | 2011-09-22 | 中兴通讯股份有限公司 | 一种实现数据共享访问的方法、装置及系统 |
CN102033912A (zh) * | 2010-11-25 | 2011-04-27 | 北京北纬点易信息技术有限公司 | 一种分布式数据库访问方法及系统 |
CN104380301A (zh) * | 2012-05-25 | 2015-02-25 | 微软公司 | 管理分布式操作系统物理资源 |
CN104380301B (zh) * | 2012-05-25 | 2017-08-25 | 微软技术许可有限责任公司 | 管理分布式操作系统物理资源 |
CN104580283A (zh) * | 2013-10-14 | 2015-04-29 | 北大方正集团有限公司 | 服务器、终端、数据管理系统和数据管理方法 |
CN103870600A (zh) * | 2014-04-02 | 2014-06-18 | 中国银行股份有限公司 | 一种基于Oracle数据库的数据表备份方法及装置 |
CN111882470A (zh) * | 2020-06-03 | 2020-11-03 | 武汉达梦数据技术有限公司 | 一种分布式公共征信方法与装置 |
CN112115504A (zh) * | 2020-06-29 | 2020-12-22 | 上海金融期货信息技术有限公司 | 一种基于tds协议的数据库访问方法和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1645799A (zh) | 基于远程代理的分布式统一数据存取系统 | |
CN101042699A (zh) | 基于访问控制的安全搜索引擎系统 | |
US10225363B2 (en) | Methods and systems for providing a consistent profile to overlapping user sessions | |
CN1253813C (zh) | 内容-索引搜索系统和方法 | |
DE60125989T2 (de) | Verfahren und apparat für eine verbesserte dateiverwaltung | |
US7149849B2 (en) | Caching based on access rights in connection with a content management server system or the like | |
US20070112960A1 (en) | Systems and methods for removing duplicate search engine results | |
CN1713179A (zh) | 在对象模型中的影响分析 | |
CN1921413A (zh) | 用于管理多主机环境下的公共信息模型的方法和系统 | |
EP2193460A2 (en) | Aggregated search results for local and remote services | |
KR20060080581A (ko) | 저장 플랫폼과 애플리케이션 프로그램 사이의 애플리케이션프로그래밍 인터페이스 | |
EP1756737B1 (en) | Method for selecting a processor for query execution | |
CN1302417C (zh) | 临时目录管理 | |
CN1833241A (zh) | 注释数字对象 | |
US11741144B2 (en) | Direct storage loading for adding data to a database | |
CN1794239A (zh) | 具有搜索功能的模板式网站自动生成系统及其方法 | |
US20090265314A1 (en) | Secure file searching | |
CN101046806A (zh) | 搜索引擎系统和方法 | |
DE112017005512T5 (de) | Datenübertragung innerhalb von geschäftsräumen und ausserhalb von geschäftsräumen | |
CN1787526A (zh) | 卫星遥感数据应用产品网络动态发布系统 | |
US7136872B2 (en) | Method, system, and article of manufacture for transferring structured data between different data stores | |
CN1633080A (zh) | 在网络管理系统中实现日志的方法 | |
CN1744524A (zh) | 入侵检测装置和入侵检测系统 | |
CN1279468C (zh) | 用于映射文件句柄的方法和装置 | |
CN116204534B (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 | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |