知识大全 与数据库无关的处理放到数据库以外来实现

Posted 数据库

篇首语:学乃身之宝,儒为席上珍。君看为宰相,必用读书人。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 与数据库无关的处理放到数据库以外来实现相关的知识,希望对你有一定的参考价值。

今天碰到了性能问题 DB Server 的 CPU % vmstat 的输出也很高 找到 CPU 高的 sql 语句是使用了一个将 IP 地址字符串转换为数字的 PL/SQL 自定义函数 后来将这个逻辑放到数据库外的 VB 程序实现 CPU 使用率下降 问题解决     其实那个函数处理并不复杂 也没有访问数据库对象 没想到有如此大的影响 得出的结论就是 与数据库无关的处理过程放到数据库以外的调用程序来实现 即便用 sql 程序可以实现也应如此     还有一个要注意的问题 即不要在查询语句中调用自定义的 PL/SQL 函数 举个例子 自定义函数如下 输入 位整数 IP 地址 输出 IP 所属省份 ipdb 中有 万条数据 CREATE OR REPLACE FUNCTION fn_ipaddr_to_province (p_ipaddr NUMBER)    RETURN VARCHAR IS    v_ret VARCHAR  ( ) :=  ;BEGIN    BEGIN        SELECT province            INTO v_ret            FROM ipdb        WHERE start_ip <= p_ipaddr AND end_ip >= p_ipaddr AND ROWNUM =  ;    EXCEPTION        WHEN NO_DATA_FOUND        THEN            v_ret :=  ;    END;    RETURN v_ret;EXCEPTION    WHEN OTHERS    THEN        RAISE;END fn_ipaddr_to_province;/根据省份确定服务器地址 domainname 中有 条数据 方法一 BEGIN    SELECT serverip        INTO v_serverip        FROM domainname    WHERE province = fn_ipaddr_to_province (p_ip) AND ROWNUM =  ;EXCEPTION    WHEN NO_DATA_FOUND    THEN        v_serverip :=  ;END; 这种方法 CPU 使用率 % 以上方法二 v_province := fn_ipaddr_to_province (p_ip);BEGIN    SELECT serverip        INTO v_serverip        FROM domainname    WHERE province = v_province AND ROWNUM =  ;EXCEPTION    WHEN NO_DATA_FOUND    THEN        v_serverip :=  default domain ;END; 这种方法 CPU 使用率 % 左右 cha138/Article/program/Oracle/201311/18095

相关参考

什么是数据采集与处理系统(DAS)?

  数据采集与处理系统(DAS--DataAcquisitionSystem)是机组的信息中心,完成数据的采集、处理,进行CRT显示、记录、报警、历史存储、事故追忆、计算、操作指导等功能。

什么是数据采集与处理系统(DAS)?

  数据采集与处理系统(DAS--DataAcquisitionSystem)是机组的信息中心,完成数据的采集、处理,进行CRT显示、记录、报警、历史存储、事故追忆、计算、操作指导等功能。

知识大全 数据结构考研分类复习真题 第十章 排序[4]

  .下面给出的四种排序方法中排序过程中的比较次数与排序方法无关的是(   )【北京航空航天大学一(分)】  A.选择排序法    

知识大全 数据结构考研分类复习真题 第十章 排序[19]

  .采用败者树进行k路平衡归并的外部排序算法其总的归并效率与k(  )【北京工业大学一(分)】  A.有关    B.无关  .采用败者树

知识大全 数据结构考研分类复习真题 第二章 线性表[5]

  ()静态链表既有顺序存储的优点又有动态链表的优点所以它存取表中第i个元素的时间与i无关  ()静态链表中能容纳的元素个数的最大数在表定义时就确定了以后不能增加  ()静态链表与动态链表在元素的插入

知识大全 数据结构之抽象数据类型[2]

  抽象数据类型  抽象数据类型(AbstructDataType简称ADT)是指一个数学模型以及定义在该模型上的一组操作抽象数据类型的定义取决于它的一组逻辑特性而与其在计算机内部如何表示和实现无关即

知识大全 技术应用-asp.net加密方法

  无论什么时候只要我们使用数据库开发网站我们就必须保护用户资料这非常必要  黑客可以盗窃口令个人隐私遭到严重的破坏最好的方法就是不储存原始密码而是加密后再放到数据库中  当我们想验证用户时我们只需将

知识大全 数据结构与算法概论复习习题[1]

  第章 绪论  简述下列术语数据数据元素数据对象数据结构存储结构数据类型和抽象数据类型  解数据是对客观事物的符号表示在计算机科学中是指所有能输入到计算机中并被计算机程序处理的符号的总称 

某污水处理厂运行进水数据统计和分析

摘要:城市污水处理厂建设规模与处理标准是污水处理厂工艺选择、基建费用和运行管理费用的决定因素。实践中,往往因为设计水量或水质普遍与实际运行情况有较大的差异,而造成经济上的浪费。南方某污水处理厂工程已经

某污水处理厂运行进水数据统计和分析

摘要:城市污水处理厂建设规模与处理标准是污水处理厂工艺选择、基建费用和运行管理费用的决定因素。实践中,往往因为设计水量或水质普遍与实际运行情况有较大的差异,而造成经济上的浪费。南方某污水处理厂工程已经