分布式DBA:掌握SQL存储过程
2008-09-01 09:58:34 来源:WEB开发网DB2 存储过程:基础知识
您在客户端工作站上对远程服务器和位于该服务器上的数据库进行分类的任何时候,都存在一个简单的 DB2 客户端/服务器环境。在这种环境中,每次对远程服务器上的数据库执行 SQL 语句时,语句本身通过网络从客户端发送到服务器上的数据库。然后数据库处理语句,结果通过网络发送回客户端。这意味着,对于每条被执行的 SQL 语句,两条消息都必须经过网络。因此,执行大量 SQL 操作的应用程序将产生大量网络通信。
存储过程是编写并直接存储在数据库中的命名 SQL 语句组(在一些情况中,包括操作系统调用)。存储过程提供下列优势:
减少网络通信量。对于编码在存储过程中的 SQL 语句,消息不通过网络发送。如果存储过程设计正确,那么只有客户端应用程序需要的数据才通过网络发送。
提高服务器密集型工作的性能。因为较少数据通过网络发送,并且因为处理在服务器上完成,所以复杂查询和其它服务器密集型的工作可以更快地执行。
业务逻辑的分离和重用。当业务规则被合并到存储过程中时,可以仅仅根据需求调用存储过程来多次重用逻辑。此外,保证相同的业务规则逻辑在所有使用它的应用程序中一致实施。如果业务规则改变,那么只需要改变存储过程中的逻辑;不需要更改调用存储过程的应用程序。
访问服务器功能。因为存储过程在服务器工作站上直接运行,所以它们可以利用任何额外的内存、更快的处理器或数据库服务器可能具备的其它资源。另外,存储过程可以执行许多 DB2 的管理命令,这些命令只能在服务器上运行。最后,因为存储过程不仅仅限于执行数据库的活动,所以它们的优点是可以利用已经安装在服务器上的任何附加软件。
但是,有两个需要注意的地方。第一,所有输入数据都必须在调用时从应用程序传递到存储过程。第二,存储过程生成的结果数据集只有在存储过程完成执行后才返回给应用程序。换句话说,在存储过程运行期间,应用程序和存储过程之间不能发生任何交互。
- ››分布式计算多机部署与配置
- ››分布式单词发音抓取机器人
- ››分布式网络爬虫关键技术分析与实现一网络爬虫相关...
- ››分布式 DBA: 创建和使用分区表
- ››分布式 Key-Value 存储系统:Cassandra 入门
- ››分布式 DBA: Cursor Stability Isolation Level 的...
- ››掌握技巧 DNS服务器快速排错
- ››掌握迅雷5.9常用快捷键 让你快如闪电
- ››掌握 Dojo 工具包,第 8 部分: 明日之星 - DojoX
- ››掌握 Facebook 应用程序开发,使用 PHP、RAD、WAS...
- ››掌握 Facebook 应用程序开发,使用 PHP、RAD、WAS...
- ››分布式 DBA:存储、I/O 和 DB2,第 1 部分(针对在...
更多精彩
赞助商链接