活动介绍

万维网信息数据获取:RDBMS网关架构解析

立即解锁
发布时间: 2025-08-23 00:42:38 阅读量: 2 订阅数: 15
### 万维网信息数据获取:RDBMS 网关架构解析 #### 1. API 性能对比 在某些情况下,NSAPI 的性能比 ISAPI 高出 40%;而在其他情况下,NSAPI 能达到 ISAPI 最佳性能的 82%。这些差异归因于 WebStone 基准测试中 NSAPI 代码的特定修改。不过,这两个性能评估测试并未得出明确结果。微软的 IIS(以及 ISAPI)似乎与 Windows 环境更适配,而 NSAPI 是一种可移植规范,能应用于 Netscape 服务器,不受底层操作系统的限制。 #### 2. RDBMS 网关架构的发展 万维网平台的一个重要应用是数据库管理系统(尤其是关系型数据库管理系统,RDBMS)的集成。相关的万维网应用涉及通用架构、有状态操作和性能等诸多问题。 1993 - 1994 年,出现了用于关系管理系统的首批万维网接口。1995 年,Nomad 的 WebDBC、Allaire 的 Cold Fusion 和 Aspect Software Engineering 的 dbWeb 等产品相继问世。这类中间件的重要性推动了相关软件的快速发展,它们已成为互联网和企业内联网的关键组件。第一代 WWW - RDBMS 接口产品主要针对 Windows NT 平台,借助 ODBC 规范访问数据库。 在开发通用 RDBMS 接口的过程中,发现用户查询信息时,大量时间花费在与关系管理系统建立连接上(以基于 CGI 规范的原型为例,使用的是 Informix)。无论采用的网关机制效率如何(如“慢速”的 CGI 与“快速”的服务器 API),每次请求都建立新连接既耗时又耗资源,应尽量减少甚至避免。虽然 CGI 规范在执行速度上效率不高,会影响系统性能,但如果出于可移植性和标准合规性的考虑必须采用,就需要想出“巧妙”的解决方案。 #### 3. 永久连接方案 为解决上述问题,采用了与数据库管理系统建立永久连接的方案。永久连接由一个或多个守护进程在服务主机内建立,这些守护进程代表特定客户端(以及网关实例,如 CGI 脚本)执行查询。守护进程避免了大量数据库连接的低效建立和资源浪费,相关成本由守护进程在实际执行查询前承担,而非网关实例在请求分发时承担,因此用户在查询信息时不会感受到额外的时间开销。该方案的架构如图所示: ```mermaid graph LR A[Any generic database API (interface D)] --> B[:|PMS] B --> C[/HTTP communication (interface A)/] B --> D[/Any gateway specification (interface B)/] B --> E[/Proprietary protocol (interface C)/] D --> F[Same or separate processes] E --> F ``` #### 4. 通用 DBMS 接口 在基于守护进程的架构中,与 DBMS 的接口(接口 D)以及与网关实例的通信机制(接口 C)非常重要。守护进程应能分发任何类型的 SQL 查询,而不考虑数据库、表和字段结构。因此,不建议采用静态接口技术,如将 SQL 语句嵌入典型的 3GL 中(即嵌入式 SQL API - ISO SQL - 92 标准),而应使用通用接口。 当代 RDBMS 在嵌入式 SQL 框架中提供了动态 SQL 功能,允许在不事先了解数据库模式、表和字段结构的情况下执行任何类型的语句。动态 SQL 语句可在运行时构建并放入字符串主机变量中,然后提交给 RDBMS 处理。不过,由于 RDBMS 需要在运行时为动态 SQL 语句生成访问计划,所以动态 SQL 比静态 SQL 慢。在这种架构中,真正的好处在于将动态 SQL 部分(数据库守护进程)与实际的网关实例分离。 另一种通用访问 DBMS 的选项是 SQL 调用级接口(CLI)。SQL CLI 最初由 SQL 访问组(SAG)定义,为远程数据访问提供统一标准。CLI 需要智能数据库驱动程序,将调用转换为本地数据库服务器的访问语言。CLI 被前端工具用于访问 RDBMS,后者需包含相应的驱动程序。每个连接的数据库都需要一个驱动程序,且每个驱动程序都要针对特定服务器编写。SAG API 基于动态 SQL,语句需要先准备再执行。1994 年秋季,SAG CLI 成为 X/Open 规范,后来成为 ISO 国际标准(ISO 9075 - 3)。实际上,X/Open CLI 是一个 SQL 包装器,是基于 SQL 的 DBMS 函数库,可由应用程序调用。 微软的开放数据库连接性(ODBC)API 基于 X/Open CLI。1992 年推出的 ODBC 1.0 版本因性能不佳和文档有限而受到广泛批评。最初,ODBC 仅限于 MS Windows 平台,后来移植到其他平台,如 Sun 的 Solaris。1994 年发布的 ODBC 2.0 有了显著改进,32 位支持提高了新 ODBC 驱动程序的效率。1996 年,微软推出 ODBC 3.0。如今,大多数数据库供应商(如 Oracle、Informix、Sybase)除了支持其本地 SQL API 外,还支持 ODBC API。然而,ODBC 技术存在一些问题,如架构的额外层会带来大量开销(特别是在 SQL 更新和插入操作中),且该规范完全由微软控制。OLE/DB 框架的引入也让人怀疑微软是否会进一步推进 ODBC 的发展。 随着 Java 编程语言的出现,新的 SQL CLI——JDBC(Java 数据库连接性)应运而生。JDBC 是由 Javasoft、Sybase、Informix、IBM 等供应商联合开发的,是一种便携式、面向对象的 CLI,完全用 Java 编写,与 ODBC 非常相似。它允许开发独立于 DBMS 和执行平台的 Java 代码。JDBC 的架构与 ODBC 类似,引入了驱动程序管理器(JDBC 驱动程序管理器)来控制各个 DBMS 驱动程序。应用程序与驱动程序管理器共享一个公共接口。JDBC 驱动程序可分为直接驱动程序和 ODBC 桥接驱动程序,具体有四种类型: | 驱动类型 | 特点 | 适用场景 | 性能 | | ---- | --
corwn 最低0.47元/天 解锁专栏
赠100次下载
继续阅读 点击查看下一篇
profit 400次 会员资源下载次数
profit 300万+ 优质博客文章
profit 1000万+ 优质下载资源
profit 1000万+ 优质文库回答
复制全文

相关推荐

LI_李波

资深数据库专家
北理工计算机硕士,曾在一家全球领先的互联网巨头公司担任数据库工程师,负责设计、优化和维护公司核心数据库系统,在大规模数据处理和数据库系统架构设计方面颇有造诣。
最低0.47元/天 解锁专栏
赠100次下载
百万级 高质量VIP文章无限畅学
千万级 优质资源任意下载
千万级 优质文库回答免费看
立即解锁

专栏目录

最新推荐

【硬件连接秘籍】:STM32F103C8T6与ATT7022E的高级接线教程

![【硬件连接秘籍】:STM32F103C8T6与ATT7022E的高级接线教程](https://img-blog.csdnimg.cn/7d68f5ffc4524e7caf7f8f6455ef8751.png) # 摘要 本文深入探讨了STM32F103C8T6微控制器与ATT7022E电能计量芯片的集成过程,详细阐述了硬件连接、通信协议、数据处理及故障诊断等关键技术环节。通过对比分析SPI与I2C通信协议,本文指导读者如何根据实际应用选择合适的通信方式,并提供了硬件连接的具体步骤和实践案例。此外,文章还探讨了系统集成后的性能优化与安全性增强措施,确保了数据采集系统的稳定性和可靠性。本文

【CHI 660e扩展模块应用】:释放更多实验可能性的秘诀

![【CHI 660e扩展模块应用】:释放更多实验可能性的秘诀](https://upload.yeasen.com/file/344205/3063-168198264700195092.png) # 摘要 CHI 660e扩展模块作为一款先进的实验设备,对生物电生理、电化学和药理学等领域的实验研究提供了强大的支持。本文首先概述了CHI 660e扩展模块的基本功能和分类,并深入探讨了其工作原理和接口协议。接着,文章详尽分析了扩展模块在不同实验中的应用,如电生理记录、电化学分析和药物筛选,并展示了实验数据采集、处理及结果评估的方法。此外,本文还介绍了扩展模块的编程与自动化控制方法,以及数据管

代码审查的艺术:提升代码质量与团队协作的实践技巧

# 摘要 代码审查是提高软件质量、保证项目成功的重要环节。本文首先介绍了代码审查的基础知识及其重要性,然后详细阐述了有效的审查流程,包括审查前的准备、实际操作步骤及审查后的总结反馈。第三章聚焦于审查过程中的沟通技巧,包括冲突管理及团队知识共享。第四章探讨了技术层面的审查深度,如代码结构理解、质量提升和自动化审查实践。最后,本文展望了代码审查的未来趋势,包括AI审查工具的使用和敏捷开发环境下的审查挑战,同时指出了隐私和合规性方面的问题及其应对策略。本文为软件开发人员和团队提供了全面的代码审查指南和实践建议。 # 关键字 代码审查;审查流程;沟通技巧;自动化审查;技术深度;敏捷开发 参考资源链

【数据驱动EEG分析在MATLAB中的实现】:EEGbdfreader的角色与应用

![matlab开发-EEGbdfreader](https://img-blog.csdnimg.cn/cd31298e37e34d86b743171a9b158d20.png) # 摘要 数据驱动的脑电图(EEG)分析在神经科学研究中具有关键作用,本文全面介绍EEG分析的基础概念、分析理论与方法,并深入探讨MATLAB及其工具箱在EEG数据处理中的应用。文章详细阐述了EEGbdfreader工具的特点和在EEG数据读取与预处理中的作用,重点讨论了EEG信号的特征分析、时频分析方法和独立成分分析(ICA)的原理与应用。通过实践应用章节,本文展示了如何在MATLAB环境中安装EEGbdfre

OPCUA-TEST与机器学习:智能化测试流程的未来方向!

![OPCUA-TEST.rar](https://www.plcnext-community.net/app/uploads/2023/01/Snag_19bd88e.png) # 摘要 本文综述了OPCUA-TEST与机器学习融合后的全新测试方法,重点介绍了OPCUA-TEST的基础知识、实施框架以及与机器学习技术的结合。OPCUA-TEST作为一个先进的测试平台,通过整合机器学习技术,提供了自动化测试用例生成、测试数据智能分析、性能瓶颈优化建议等功能,极大地提升了测试流程的智能化水平。文章还展示了OPCUA-TEST在工业自动化和智能电网中的实际应用案例,证明了其在提高测试效率、减少人

【ERP系统完美对接】:KEPServerEX与企业资源规划的集成指南

![【ERP系统完美对接】:KEPServerEX与企业资源规划的集成指南](https://forum.visualcomponents.com/uploads/default/optimized/2X/9/9cbfab62f2e057836484d0487792dae59b66d001_2_1024x576.jpeg) # 摘要 随着企业资源规划(ERP)系统在企业中的广泛应用,其与工业自动化软件KEPServerEX的集成变得日益重要。本文详细探讨了ERP与KEPServerEX集成的理论基础、实践步骤、遇到的问题及解决方案,并通过案例研究分析了集成效果。理论分析涵盖了ERP系统的功能

【AGV调度系统的云集成奥秘】:云技术如何革新调度系统

![AGV调度系统](https://diequa.com/wp-content/uploads/2022/06/screenshot-differential-drive-main.png) # 摘要 随着物流自动化需求的不断增长,自动引导车(AGV)调度系统在提高效率和降低成本方面扮演着越来越重要的角色。本文旨在探讨云计算技术如何影响AGV调度系统的设计与性能提升,包括资源弹性、数据处理能力及系统效率优化等。通过对AGV调度系统与云服务集成架构的分析,本文提出了集成实践中的关键组件和数据管理策略。同时,针对安全性考量,本文强调了安全架构设计、数据安全与隐私保护、系统监控和合规性的重要性。

MATLAB遗传算法的高级应用:复杂系统优化

# 摘要 遗传算法是一种基于自然选择原理的搜索和优化算法,其在解决复杂系统优化问题中具有独特的优势。本文首先介绍了遗传算法的基本概念、工作原理以及在MATLAB平台上的实现方式。随后,详细探讨了遗传算法在处理复杂系统优化问题时的应用框架和数学建模,以及与传统优化方法相比的优势,并通过实际案例分析来展现其在工程和数据科学领域的应用效果。文章还涉及了遗传算法在MATLAB中的高级操作技术,包括编码策略、选择机制改进、交叉和变异操作创新及多目标优化技术,并讨论了约束处理的方法与技巧。为了提高遗传算法的实际性能,本文还介绍了参数调优的策略与方法,并通过案例分析验证了相关技术的有效性。最后,本文展望了遗

【Flash存储器的数据安全】:STM32中的加密与防篡改技术,安全至上

![【Flash存储器的数据安全】:STM32中的加密与防篡改技术,安全至上](https://cdn.shopify.com/s/files/1/0268/8122/8884/files/Security_seals_or_tamper_evident_seals.png?v=1700008583) # 摘要 随着数字化进程的加速,Flash存储器作为关键数据存储介质,其数据安全问题日益受到关注。本文首先探讨了Flash存储器的基础知识及数据安全性的重要性,进而深入解析了STM32微控制器的硬件加密特性,包括加密引擎和防篡改保护机制。在软件层面,本文着重介绍了软件加密技术、系统安全编程技巧

【MCP23017集成实战】:现有系统中模块集成的最佳策略

![【MCP23017集成实战】:现有系统中模块集成的最佳策略](https://www.electroallweb.com/wp-content/uploads/2020/03/COMO-ESTABLECER-COMUNICACI%C3%93N-ARDUINO-CON-PLC-1024x575.png) # 摘要 MCP23017是一款广泛应用于多种电子系统中的GPIO扩展模块,具有高度的集成性和丰富的功能特性。本文首先介绍了MCP23017模块的基本概念和集成背景,随后深入解析了其技术原理,包括芯片架构、I/O端口扩展能力、通信协议、电气特性等。在集成实践部分,文章详细阐述了硬件连接、电