利用透通技术存取云端数据库数据的系统的制作方法

文档序号:8002851阅读:280来源:国知局
利用透通技术存取云端数据库数据的系统的制作方法
【专利摘要】一种利用透通技术存取云端数据库数据的系统,具有至少一通道伺服单元及云端的至少一数据库端。一应用程序端输出一连结通知时,该用户通道单元检知HTTP数据格式的一第一伺服位址及一第一数据库位址,以利用一超文件传输协议隧道连结对应的该通道伺服单元而传送一数据库请求,使该通道伺服单元将HTTP数据格式的该第一数据库位址转换成TCP/IP数据格式之一后连结至对应的一数据库端,如此,该应用程序端无需修改程序码即能通过互联网络自该防火墙后的该数据库存取数据。
【专利说明】利用透通技术存取云端数据库数据的系统

【技术领域】
[0001]本发明是属于存取云端数据库数据的【技术领域】,特别是关于一种利用透通技术存取云端数据库数据的系统,使将TCP/IP (Transmiss1n Control Protocol,传输控制协议/ Internet Protocol,互联协议)格式的数据转换成HTTP格式后,经一通道传送至一伺服单元,再自HTTP格式转换回TCP/IP格式而传送至云端的数据库端,以突破防火墙的阻挡而顺利传送数据。

【背景技术】
[0002]建立于主从架构上的ODBC, Open Data Base Connectivity (开放式数据库连接界面)是提供了一种标准的API (Applicat1n Programming Interface,应用程序编程介面)来传送 SQL (Structured Query Language)指令而通过通信层(Network Layer)存取远端数据库的数据。ODBC开创了开放式数据库的使用可能性,其架构大致可区分为应用程序(Applicat1n)、驱动管理员(Driver Manager)、驱动程序(Driver)及数据来源(DataSource)等四单元。该应用程序对外提供使用者交谈界面,对内执行数据的准备工作和呼叫ODBC程序函数、传送SQL指令,及接收并显示数据库所回传的结果。该驱动管理员及该驱动程序为动态连接程序档,该驱动管理员供协助该应用程序去载入该来源驱动程序并连接该数据来源,且该驱动程序主要是执行ODBC的相对函式,并与对应的数据来源(DataSource)做沟通,当该应用程序呼叫ODBC函式,诸如SQLConnect或SQLDriverConnect时,该驱动管理员就会载入相对的驱动程序而与该应用程序呼应,使该应用程序毋需在乎数据来源为何,只要利用对应的该驱动程序即能完成衔接的功能。
[0003]由此可知,ODBC造就了该应用程序与数据库间的独立特性。但,于上述主从式架构中,该应用程序于作业完成(Commit)、返回(Rollback)或超时(Timeout)前须保持与数据库间的连结畅通而不可中断,此时,若数据库为了网络安全问题而藏设于一防火墙后时,该应用程序将无法直接利用原始的该驱动程序进行数据库连结,须先利用VB6或PHP语言编修该驱动程序的程序码及该驱动管理员内设的函式等,以通过互联网协议(TCP/IP)架设出另一层通信通道后,方能突破该防火墙后完成连结,如此,即造成使用上的困难及不便,再者,若数据库为云端系统则更加深程序码及函式的修编繁复度,进而影响数据库的数据存取品质。
[0004]为解决上述问题,如何利用现行常用于突破区网防火墙的超文件传输协议透通技术(HTTP Tunneling)额外建构一通道,供该应用程序于无须修改程序码及函式的情况下即可穿透防火墙连结云端数据库,即为本发明所亟欲探究的课题。


【发明内容】

[0005]有鉴于现有技术的问题,本发明的目的在于提供一种利用透通技术存取云端数据库数据的系统,其利用超文件传输协议隧道(HTTP Tunnel)连结到防火墙后的云端数据库,而允许使用者无需修改应用程序的程序码即可进行数据的存取,提升应用程序的操作便利性及使用满意度。
[0006]根据本发明的目的,该利用透通技术存取云端数据库数据的系统用于主从式架构中而具有一应用程序端及云端的至少一数据库端,供允许该应用程序端无需修改程序码即能通过互联网络自一防火墙后的该数据库存取数据,该应用程序端预先执行一第一数据库设定档,且该利用透通技术存取云端数据库数据的系统设有一用户通道单元及至少一通道伺服单元,该用户通道单元预先执行一第二数据库设定档而取得一位址清单并连结该应用程序端,又该位址清单至少内存至少一第一伺服位址及至少一第一数据库位址;该用户通道单元接收该应用程序端所输出的一连结通知时,依该连结通知查询该位址清单而获知HTTP数据格式的该第一伺服位址及该第一数据库位址,并利用一超文件传输协议隧道(HTTP Tunnel)经该防火墙连结对应该第一伺服位址的该通道伺服单元,传送内设该第一数据库位址的一数据库请求予该通道伺服单元,使该通道伺服单元分析该数据库请求而将HTTP数据格式的该第一数据库位址转换成TCP/IP数据格式之一后,依TCP/IP数据格式的该第一数据库位址连结对应的该数据库端,完成该应用程序端与该数据库端间的连线。
[0007]其中,该应用程序端支援开放式数据库连接界面(Open Data BaseConnectivity, ODBC)驱动程序而可同时与多个个数据库端连接,且该用户通道单元及该通道伺服单元利用SOHT (Socket Over Http Tunneling)技术建立该超文件传输协议隧道。该应用程序端预先执行该第一数据库设定档而指定供予连结该用户通道单元的一连接口,使该用户通道单元于接收该连结通知时通过该连接口网络连结该应用程序端,如此,使用者无须修改该应用程序端繁复的程序码,而是通过设定档的安装执行即可进行与该数据库端间的数据存取动作。
[0008]当该数据库端为多个使用型态时,该利用透通技术存取云端数据库数据的系统更设有一链管伺服单元(Connect1n Management Server),其通过该超文件传输协议隧道经该防火墙连结该用户通道单元。该链管伺服单元预先执行一第三数据库设定档,以取得该位址清单而记录该第一伺服位址及该第一数据库位址。当该用户通道单元接收该连结通知时输出一回报指令,使该链管伺服单元检测各该数据库端的使用状态而获知可提供最佳服务的该数据库端时,该链管伺服单元自该位址清单截取对应的该第一伺服位址及该第一数据库位址而分别形成该第二伺服位址及该第二数据库位址,反馈予该用户通道单元,供该用户通道单元通过该HTTP Tunnel输出该数据库请求及该第二数据库位址予对应该第二伺服位址的该通道伺服单元。该通道伺服单元分析该数据库请求并将HTTP数据格式的该第二数据库位址转换成TCP/IP数据格式之一后,依该第二数据库位址连结对应的该数据库端,完成该应用程序端与该数据库端间的连线。
[0009]综上所述,本发明是将现行HTTP透通技术应用至数据库管理系统中,使利用该用户通道单元及该通道伺服单元建立该HTTP Tunnel的同时进行数据格式的转换,以通过HTTP格式的数据较容易突破该防火墙的传输特性将数据传送至云端数据库或自数据库读取数据。如此,无论云端数据库是否为了网络安全而设有该防火墙,本发明皆允许使用者于完成该等设定档的设定而无需修改该应用程序端的程序码后,即可直接存取该数据库端数据,达确保数据库网络安全性的同时方便使用者操作的功效。再者,当该数据库端非藏设于该防火墙后时,本发明仍允许该应用程序端直接通过原TCP/IP连结该数据库端。

【专利附图】

【附图说明】
[0010]图1为本发明较佳实施例的一实施态样的架构示意图。
[0011]图2为本发明较佳实施例的一实施态样的一流程图。
[0012]图3为本发明较佳实施例的一实施态样的用户通道单元的程序码。
[0013]图4为本发明较佳实施例的二实施态样的架构示意图。
[0014]图5为本发明较佳实施例的二实施态样的流程图。
[0015]图6为本发明较佳实施例的二实施态样的用户通道单元的程序码。
[0016]附图标记说明:1-系统;10_应用程序端;100_连结通知;11_用户通道单元;110-位址清单;1100-第一伺服位址;1101-第一数据库位址;1102_数据库请求;1103_回报指令;12_通道伺服单元;13_数据库端;14_防火墙;15-链管伺服单元;S10?S27-步骤。

【具体实施方式】
[0017]为使贵审查委员能清楚了解本发明的内容,谨以下列说明搭配图式,敬请参阅。
[0018]请参阅图1、2,其分别为本发明较佳实施例的一实施态样的架构示意图及流程图。如图所示,该透通技术存取云端数据库数据的系统I用于主从式架构中而具有一应用程序端10、一用户通道单元11、至少一通道伺服单元12及云端的至少一数据库端13,且该用户通道单元11与该通道伺服单元12间存在有一防火墙14。该应用程序端10支援ODBC驱动程序并通过TCP/IP连结该用户通道单元11。该用户通道单元11与该通道伺服单元12利用SOHT技术于彼此间建立一 HTTP Tunnel,供以突破该防火墙14彼此连结。该通道伺服单元12通过TCP/IP连结该数据库端13。该系统I通过包含如下述步骤的动作流程,实现使该应用程序端10无需修改程序码即能通过互联网络自该防火墙14后的该数据库13存取数据的功能。
[0019]首先,步骤S10,该应用程序端10预先执行一第一数据库设定档:
[0020]DB_CL0UD=1
[0021 ] DB_CL0UDSVR=172.16.220.116:8085
[0022]DB_PTNUM=12345
[0023]DB_SVADR=127.0.0.1
[0024]DB_USRID=SYSADM,
[0025]以指定供予连结该用户通道单元11的一连接口:12345。同时,该用户通道单元11执行一第二数据库设定档:
[0026]client.port=12345
[0027]soht.server=http://172.16.220.116:8085/soht/service
[0028]remote.db=DBSAMPL5
[0029]remote.address=172.16.220.114
[0030]remote.port=2455
[0031]soht.user=dbmaker
[0032]soht.password=172134047079015245178043176118152139186000155185142087242084
[0033]soht.server=http://127.0.0.1:8080/soht/service
[0034]remote.db=TESTDB
[0035]remote.address=172.16.220.56
[0036]remote.port=33557
[0037]soht.user=dbmaker,
[0038]以获知该应用程序端10的连接口并取得一位址清单110,该位址清单110至少内存有一第一伺服位址 1100,诸如 172.16.220.116:8085 与 127.0.0.1:8080,及一第一数据库位址 1101,如 172.16.220.114:2455 与 172.16.220.56:33557。
[0039]当该应用程序端10欲连结该数据库端13时,步骤Sll:输出TCP/IP数据格式的一连结通知100予该用户通道单元11,使该用户通道单元11执行:
[0040]java-Dclouddb.properties=,c:/./clouddb.properties,-jar cloud-client.jar
[0041]指令后进入工作状态。
[0042]在步骤S12中,该用户通道单元11是如图3所示,接收该连结通知100后通过固定的该连接口网络连结该应用程序端10,且步骤S13:依该连结通知100查询该位址清单110而获知对应的HTTP数据格式的该第一伺服位址1100及该第一数据库位址1101后,利用该HTTP Tunnel经该防火墙14连结对应该第一伺服位址1100的该通道伺服单元12。
[0043]接着,步骤S14,该用户通道单元11传送一数据库请求1102予该通道伺服单元12,该数据库请求1102内设有该第一数据库位址1101。
[0044]在步骤S15中,该通道伺服单元12接收并分析该数据库请求1102,以将HTTP数据格式的该第一数据库位址1101转换成TCP/IP数据格式之一后,依TCP/IP数据格式的该第一数据库位址1101连结对应的该数据库端13。
[0045]完成该应用程序端10与该数据库端13间的连线后,步骤S16,该用户通道单元11转换自该应用程序端10传送而来的数据,以经该通道伺服单元12传送予该数据库端13,或转换经该通道伺服单元12传送来的数据库数据而传送予该应用程序端10。
[0046]承上,当该数据库端13为多个使用型态,且进一步地考量各该数据库端13具有不同的数据负荷量、网络传输速率及运算效能等使用状态时,该系统I是如图4所示设有一链管伺服单元15。该链管伺服单元15亦利用SOHT技术建立与该用户通道单元11间的另一HTTP Tunnel,供以突破该防火墙14而彼此连结,如此,该系统I的动作流程将如图5所示。
[0047]在步骤S20中,该应用程序端10预先执行该第一数据库设定档而指定供予连结该用户通道单元11的该连接口,该用户通道单元11执行该第二数据库设定档而获知该应用程序端10的连接口并取得该位址清单110,同时,该链管伺服单元15执行一第三数据库设定档:
[0048]soht.server=http://172.16.220.116:8085/soht/service
[0049]remote.db=DBSAMPL5
[0050]remote.address=172.16.220.114
[0051]remote.port=2455
[0052]soht.server=http://127.0.0.1:8080/soht/service
[0053]remote.db=TESTDB
[0054]remote.address=172.16.220.56
[0055]remote.port=33557
[0056]以取得该位址清单110而记录该第一伺服位址1100及该第一数据库位址1101。
[0057]当该应用程序端10欲连结该数据库端13时,步骤S21:输出该连结通知100予该用户通道单元11,使该用户通道单元11执行:
[0058]java-Dclient.port=12345-jar cloud-client.jar
[0059]后指令后进入工作状态。
[0060]步骤S22,该用户通道单元11是如图6所示,通过固定的该连接口网络连结该应用程序端10,并输出一回报指令1103予该链管伺服单元15,使该链管伺服单元15进入步骤S23:检测各该数据库端13的使用状态,以计算获得可提供较佳服务的该数据库端13后,自该位址清单110截取对应的该第一伺服位址1100及该第一数据库位址1101而分别形成一第二伺服位址及一第二数据库位址,并反馈一链路数据予该用户通道单元11,该链路数据内含可提供较佳服务的该数据库端13的装置名称、该第二数据库位址及该第二伺服位址,且该第二数据库位址及该第二伺服位址为HTTP数据格式。
[0061]接着,步骤S24,该用户通道单元11依该链路数据而直接利用该第二伺服位址经该HTTP Tunnel连结对应的该通道伺服单元12。并且,步骤S25,该用户通道单元11传送该数据库请求1102予该通道伺服单元12,该数据库请求1102依该链路数据的接收结果而内设有该第二数据库位址。于步骤S26中,该通道伺服单元12接收并分析该数据库请求1102,以将HTTP数据格式的该第二数据库位址转换成TCP/IP数据格式之一后,依该第二数据库位址连结对应的该数据库端13。完成该应用程序端10与该数据库端13间的连线后,步骤S27,该用户通道单元11转换自该应用程序端10传送而来的数据,以经该通道伺服单元12传送予该数据库端13,或转换经该通道伺服单元12传送来的数据库数据而传送予该应用程序端10。
[0062]在本实施例中,当该数据库端13并非藏设于该防火墙14后方时,该应用程序端10仍可直接利用原TCP/IP互联链路连结对应的该数据库端13。
[0063]以上所述仅为举例性的较佳实施例,而非为限制性者。任何未脱离本发明的精神与范畴,而对其进行的等效修改或变更,均应包含于后附的申请专利范围中。
【权利要求】
1.一种利用透通技术存取云端数据库数据的系统,是用于主从式架构中而具有一应用程序端及云端的至少一数据库端,供允许该应用程序端无需修改程序码即能通过互联网络自一防火墙后的该数据库存取数据,其特征在于: 该应用程序端预先执行一第一数据库设定档,且该利用透通技术存取云端数据库数据的系统设有一用户通道单元及至少一通道伺服单元,该用户通道单元预先执行一第二数据库设定档而取得一位址清单并连结该应用程序端,又该位址清单至少内存至少一第一伺服位址及至少一第一数据库位址;该用户通道单元接收该应用程序端所输出的一连结通知时,依该连结通知查询该位址清单而获知HTTP数据格式的该第一伺服位址及该第一数据库位址,并利用一超文件传输协议隧道经该防火墙连结对应该第一伺服位址的该通道伺服单元,传送内设该第一数据库位址的一数据库请求予该通道伺服单元,使该通道伺服单元分析该数据库请求而将HTTP数据格式的该第一数据库位址转换成TCP/IP数据格式之一后,依TCP/IP数据格式的该第一数据库位址连结对应的该数据库端,完成该应用程序端与该数据库端间的连线。
2.根据权利要求1所述的利用透通技术存取云端数据库数据的系统,其特征在于,该应用程序端支援开放式数据库连接界面驱动程序。
3.根据权利要求2所述的利用透通技术存取云端数据库数据的系统,其特征在于,该应用程序端是预先执行该第一数据库设定档而指定供予连结该用户通道单元的一连接口,使该用户通道单元于接收该连结通知时通过该连接口网络连结该应用程序端。
4.根据权利要求3所述的利用透通技术存取云端数据库数据的系统,其特征在于,更设有一链管伺服单元,且该数据库端为多个使用型态,该链管伺服单元通过该超文件传输协议隧道经该防火墙连结该用户通道单元;该用户通道单元接收该连结通知时输出一回报指令,使该链管伺服单元检测各该数据库端的使用状态而反馈HTTP数据格式的一第二伺服位址及一第二数据库位址,供该用户通道单元通过该超文件传输协议隧道输出该数据库请求及该第二数据库位址予对应该第二伺服位址的该通道伺服单元,该通道伺服单元分析该数据库请求并将HTTP数据格式的该第二数据库位址转换成TCP/IP数据格式之一后,依该第二数据库位址连结对应的该数据库端,完成该应用程序端与该数据库端间的连线。
5.根据权利要求4所述的利用透通技术存取云端数据库数据的系统,其特征在于,该链管伺服单元是预先执行一第三数据库设定档,以取得该位址清单而记录该第一伺服位址及该第一数据库位址,于该链管伺服单元检测各该数据库端的使用状态而获知可提供最佳服务的该数据库端时,自该位址清单截取对应的该第一伺服位址及该第一数据库位址而分别形成该第二伺服位址及该第二数据库位址,反馈予该用户通道单元。
6.根据权利要求5所述的利用透通技术存取云端数据库数据的系统,其特征在于,该用户通道单元及该通道伺服单元是利用SOHT技术建立该超文件传输协议隧道。
7.根据权利要求1所述的利用透通技术存取云端数据库数据的系统,其特征在于,当该数据库端非藏设于该防火墙后时,该应用程序端直接通过原TCP/IP连结该数据库端。
【文档编号】H04L29/06GK104348850SQ201310316757
【公开日】2015年2月11日 申请日期:2013年7月25日 优先权日:2013年7月25日
【发明者】莊景如, 胡佩芬, 胡书渊, 邱坤廷 申请人:凌群电脑股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1