东软OpenBASE数据库管理系统解决方案(一)

日期: 2008-06-18 来源:TechTarget中国

  OpenBASE可运行在PC机、工作站和小型机上,如SGI、SUN、HP和IBM等;其服务器可以在各种主流的UNIX操作系统平台上运行,如IRIX、Sun OS、Solaris、HP UX、SCO UNIX、AIX等,客户端应用程序除了可以在上述UNIX平台上运行之外,还可以在DOS、MS Windows等平台上运行;支持TCP/IP网络通讯协议,可以利用SLIP/PPP支持通过电话线的远程通讯。用户在OpenBASE上开发的应用程序可以很方便地从一种平台移植到另一种平台上。下图是一个可能的OpenBASE的系统运行环境图。



  编程接口


  OpenBASE提供的基本数据库语言是SQL语言。SQL是一种数据语言,包括数据定义、操作与控制,但它本身不具有计算完备性,如条件测试的IF命令、GOTO命令和执行循环的FOR命令等。为了开发能访问数据库的应用程序,还必须使用普通的高级程序设计语言,如C、JAVA、FORTRA、COBOL等语言作为宿主语言,并把SQL以各种形式加入到这些宿主语言程序中构成数据库应用程序。


  OpenBASE提供了五种不同的数据库应用编程接口,即模块式SQL、嵌入式SQL、调用级接口、ODBC接口、JDBC接口。


  一)、模块式SQL


  一个SQL模块可以包括一个应用程序中多个源程序调用的SQL命令。SQL模块中的每个命令与一个源程序名相关联,如果其中有源程序需要删除或改名,相应的SQL模块的命令必须通过执行实用程序nsqldrop进行删除。如果预编译同一应用系统中的其它源程序时有新的命令加入,不删除这些命令很可能导致标识符的重复。


  创建一个数据库应用程序既要对SQL模块进行编译,又要对宿主语言程序进行编译,当SQL模块编译完成后,该SQL模块被编目在相应的数据库中,在这种方式中,一个应用程序通过它所引用的SQL模块与指定的数据库相关联。在嵌入式SQL中,上述整个过程是由预编译器自动完成的。


  删除数据库中一个已经存在的模块的方法是使用nspldrop 实用程序,但是应当指出,一旦模块被删除,与之相关的应用程序虽然依然存在,但是已不能再运行了,这是因为这个应用程序的SQL模块在数据库中的表示已经不再存在了。


  用户可以对模块执行(进而与其相关的应用程序的执行)的权限进行授权和撤消,是通过实用程序nsqlgrant 和nsqlrevoke实现的。


  目前SQL模块的宿主语言可以是C、JAVA、FORTRA、COBOL。


  二)、嵌入式SQL


  嵌入式SQL(Embedded SQL) 在这种方式中,SQL命令被直接嵌入到应用程序的源代码中,与其它程序设计语言的语句一起使用这个方法的优势是把应用集中在一个源程序中。SQL语句可以用类似于ORA-CLE PRO*C的方式嵌入到C语言和OPUS语言中,使用这种方式程序员学习的曲线较短。


  在处理过程中,嵌入式的SQL命令首先由编译器转变成SQL模块的形式,这样,每个应用程序与一个或几个SQL模块相关。对于含有嵌入式SQL命令的源程序,预编译器将产生一个源程序的拷贝,其中的SQL命令被替换成过程调用,并根据模块定义语法将SQL命令写入一个或几个SQL模块中,每个SQL命令与其中的一个过程相对应。


  三)、调用级接口


  1、C语言调用级接口


  OpenBASE为C/C++语言提供了调用级接口。C调用级接口提供了12个例行程序接口,支持用户很方便的用动态命令访问OpenBASE数据库。


  2、JAVA语言调用级接口


  JAVA调用级接口是OpenBASE专用的JAVA应用程序接口,提供了两个类SYSDynamic和SQLConnect。该接口用于在JAVA程序中执行动态的SQL命令,该接口可用于客户/服务器结构,也可通过Java Servlet用于三层体系结构。


  四)、ODBC应用编程接口


  OpenBASE支持Microsoft的ODBC标准,提供了OpenBASE的ODBC驱动程序,允许用户用标准的ODBC API编写C/C++、Visual BASIC、Delphi、PowerBuilder、Lotus Notes、Visual Foxpro、MS-Word宏、MS-EXCEL宏等的应用程序。
 
  五)、JDBC应用编程接口


  OpenBASE支持SUN公司的JDBC标准,提供了OpenBASE的JDBC驱动程序,允许用户用标准的JDBC API编写Java应用程序。


  体系结构


  OpenBASE具有三种体系结构,即集中式体系结构、客户/服务器体系结构、Web浏览器/Web应用服务器/数据库服务器三层体系结构。


  集中式体系结构


  在集中式体系结构中,数据库服务器和应用都运行在一台机器上,他们之间不经过网络协议传递数据,关系比较紧密,可以根据用户需求配置高性能的共享内存,帮助用户提高系统效率。


  客户/服务器


  OpenBASE的客户/服务器结构如图所示。



  在这种体系结构中OpenBASE数据库系统由OpenBASE 数据库服务器、OpenBASE ODBC驱动程序、OpenBASE JDBC驱动程序以及OpenBASE网络连接通讯接口等部分构成。数据库服务器其他部分通过TCP/IP协议连接构成一个有机的整体。


  在这种方式中,既可以通过OpenBASE客户端工具OpenTools,也可以通过第三方开发工具如PB,VB,Delphi等,还可以用Java来构造应用程序。OpenBASE 数据库服务器包括OpenBASE连接监控器Multiend,各种客户端程序并不直接访问数据库,而是通过Multiend访问,有效的减轻了数据库的工作负荷,提高了系统的吞吐率。


  Web浏览器/Web应用服务器/数据库服务器



  上图显示了OpenBASE的三层体系结构。这是一种典型的”瘦客户机模式”,客户端几乎不需要专门设计的软件,极大地降低了开发和维护的费用,并使对信息的访问不受地理位置的限制,企业的管理人员可以在网络的任何地方,使用任何能够运行浏览器的计算机,就能获得存储在服务器上的信息。


  OpenBASE Web应用服务器作为系统的中间层提供了Web服务器、数据库事务监控服务器、媒体服务器以及用于实现应用逻辑的THTML扩展语言和Java Servlets运行环境。OpenBASE Web应用服务器使用分布式的数据库访问代理访问后端的数据库服务器,并通过事务管理器对数据库事务进行统一的调度和管理,为应用系统提供了一种扩充的HTML语言实现应用逻辑。Java Servlet运行环境全面支持Java Servlet的应用开发,允许用户通过HTTP直接调用Java Servlet。


  OpenBASE Web应用服务器采用多线索体系结构,支持HTTP 1.1标准,采用先进的动态页面缓冲技术,能够以很小的系统开销获得较高的服务性能。OpenBASE Web应用服务器采用SSL与身份验证相结合的方式来保证数据通讯过程的安全性和用户访问的安全性,使用扩展ACL实现访问控制,使控制逻辑与控制对象分离,达到应用程序内部的控制粒度。媒体服务器为用户提供了一个高度可伸缩性和可扩展性的多媒体服务的开发和应用环境。OpenBASE Web应用服务器还可以作为综合服务管理平台,对系统中的各种服务进行管理,并使用户能够根据需要对服务进行定制。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

相关推荐