返回顶部
首页 > 资讯 > 数据库 >怎么提高dml的性能
  • 639
分享到

怎么提高dml的性能

2024-04-02 19:04:59 639人浏览 独家记忆
摘要

这篇文章主要介绍“怎么提高dml的性能”,在日常操作中,相信很多人在怎么提高dml的性能问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么提高dml的性能”的疑惑有所帮助!接

这篇文章主要介绍“怎么提高dml的性能”,在日常操作中,相信很多人在怎么提高dml的性能问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么提高dml的性能”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

若是批量处理海量数据的话通常都是很复杂及缓慢的,方法也很多,但是通常的概念是:分批删除,逐次提交。下面介绍一下提高DML语句效率的常用方法。

UPDATE

① 多字段更新使用一个查询。

② 将表修改为NOLOGGING模式。

③ 根据情况决定是否暂停索引,更新后恢复。避免在更新的过程中涉及到索引的维护。

④ 批量更新,每更新一些记录后及时进行提交动作,避免大量占用回滚段和临时表空间。

⑤ 可以创建一个临时的大的表空间用来应对这些更新动作。

⑥ 加大排序缓冲区。

⑦ 如果更新的数据量接近整个表,那么就不应该使用索引而应该采用全表扫描。

⑧ 如果服务器有多个CPU,那么可以采用PARELLEL Hint,可以大幅度地提高效率。

⑨ 建表的参数非常重要,对于更新非常频繁的表,建议加大PCTFREE的值,以保证数据块中有足够的空间用于UPDATE。

⑩ 通过快速游标更新法,并对ROWID进行排序更新,如下所示:

DECLARE
   V_COUNTER NUMBER;
 BEGIN
   V_COUNTER := 0;
   FOR CUR IN (SELECT A.AREA_CODE, B.ROWID ROW_ID FROM TA A, TB B WHERE A.ID = B.ID ORDER BY B.ROWID ) LOOP
     UPDATE TB SET AREA_CODE = CUR.AREA_CODE WHERE ROWID = CUR.ROW_ID;
     V_COUNTER := V_COUNTER + 1;
     IF (V_COUNTER >= 1000) THEN
       COMMIT;
       V_COUNTER := 0;
     END IF;
  END LOOP;
  COMMIT;
END;

⑪ 当需要更新的表是单个或者被更新的字段不需要关联其它表带过来中的数据(例如:外键约束),则选择标准的UPDATE语句,速度最快,稳定性最好,并返回影响条数。如果WHERE条件中的字段加上索引,那么更新效率就更高。但若需要关联表更新字段时,UPDATE的效率就非常差。此时可以采用MERGE且非关联形式高效完成表对表的UPDATE操作。

INSERT

① 将表修改为NOLOGGING模式。

② 暂停索引。

③ 以APPEND模式插入。

④ 加入PARALLEL,采用并行插入。

DELETE

① 利用FORALL完成。

② 利用ROWID或ROW_NUMBER() OVER()高效删除重复记录。

③ 将表修改为NOLOGGING模式。

到此,关于“怎么提高dml的性能”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

您可能感兴趣的文档:

--结束END--

本文标题: 怎么提高dml的性能

本文链接: https://lsjlt.com/news/60891.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 怎么提高dml的性能
    这篇文章主要介绍“怎么提高dml的性能”,在日常操作中,相信很多人在怎么提高dml的性能问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么提高dml的性能”的疑惑有所帮助!接...
    99+
    2024-04-02
  • 怎么样提高Web性能
    这篇文章将为大家详细讲解有关怎么样提高Web性能,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。 1. 清理 HTML 文档HTML,即超文本标记语言,几乎是所有网站的支柱...
    99+
    2024-04-02
  • 怎么提高电脑性能
    小编给大家分享一下怎么提高电脑性能,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!具体操作:点击左下角的搜索,搜索“控制面板”,点击进入。在查看方式处选择「大图标」...
    99+
    2023-06-27
  • 怎么提高数据库性能
    这篇文章将为大家详细讲解有关怎么提高数据库性能,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。以下是提升数据库性能的6种实用的方式,无需增加更强大的服务器,也无需重写代码或...
    99+
    2024-04-02
  • 怎么提高mysql服务性能
    分享几个提高mysql服务性能的技巧开启查询缓存大多数的MySQL服务器都开启了查询缓存。这是提高性最有效的方法之一,而且这是被MySQL的数据库引擎处理的。当有很多相同的查询被执行了多次的时候,这些查询结果会被放到一个缓存中,这样,后续的...
    99+
    2024-04-02
  • win10怎么提高显卡性能
    今天小编给大家分享一下win10怎么提高显卡性能的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。win10提高显卡性能的设置教...
    99+
    2023-07-01
  • Javascript之怎么提高React性能
    本篇内容主要讲解“Javascript之怎么提高React性能”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Javascript之怎么提高React性能”吧!1.解决重复渲染问题我们大多数人都知...
    99+
    2023-07-05
  • Cassandra中怎么提高性能和扩展性
    要提高Cassandra的性能和扩展性,可以考虑以下几点: 数据建模优化:设计合理的数据模式,避免数据倾斜和冗余,优化查询性能。...
    99+
    2024-03-15
    Cassandra
  • 怎么提高cassandra读存储性能
    这篇文章给大家分享的是有关怎么提高cassandra读存储性能的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。  cassandra作为一个分布式的存储性能,其特点是写快读慢。最近...
    99+
    2024-04-02
  • 怎么使用WITH AS提高性能
    这篇文章将为大家详细讲解有关怎么使用WITH AS提高性能,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。  如何使用WITH AS提高性能  1. 案例起因  公司门店应...
    99+
    2024-04-02
  • 使用Swoole怎么提高Laravel性能
    使用Swoole怎么提高Laravel性能?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。环境1:硬件: 1 CPU, 4 Cores, 16GB MemoryMacOS 1...
    99+
    2023-06-15
  • 后端接口怎么提高性能
    本篇内容主要讲解“后端接口怎么提高性能”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“后端接口怎么提高性能”吧!1. MySQL查询慢是什么体验?谢邀,利益相关。大多数互联网应用场景都是读多写少,...
    99+
    2023-06-15
  • 虚拟主机性能怎么提高
    要提高虚拟主机的性能,可以采取以下几个方法:1. 优化网站代码:对网站代码进行优化,包括压缩图片、合并CSS和JavaScript文...
    99+
    2023-08-26
    虚拟主机
  • mongodb并发读性能怎么提高
    要提高MongoDB的并发读性能,可以考虑以下几个方面的优化: 数据模型设计:合理设计数据模型,将相关的数据放在同一个文档中,避...
    99+
    2023-10-26
    mongodb
  • CSS怎么实现提高渲染性能
    这篇文章主要讲解了“CSS怎么实现提高渲染性能”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“CSS怎么实现提高渲染性能”吧!1、不要使用*{}经常有前端开发...
    99+
    2024-04-02
  • 怎么提高.NET垃圾回收性能
    本篇内容介绍了“怎么提高.NET垃圾回收性能”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!对于GC垃圾回收,很多人不会陌生。我们这里讲的是提...
    99+
    2023-06-17
  • win10系统怎么提高电脑性能
    以下是一些提高Windows 10电脑性能的方法:1. 清理磁盘空间:删除不需要的文件和程序,使用磁盘清理工具或第三方软件进行清理。...
    99+
    2023-09-12
    win10
  • mongodb并发读取性能怎么提高
    要提高 MongoDB 的并发读取性能,可以考虑以下几个方面: 使用索引:在需要频繁读取的字段上创建索引,以加快查询速度。 ...
    99+
    2023-10-27
    mongodb
  • 怎么提高MySQL Limit查询性能的方法
    这篇文章给大家分享的是有关怎么提高MySQL Limit查询性能的方法的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。在MySQL数据库操作中,我们在做一些查询的时候总希望能避免数...
    99+
    2024-04-02
  • 怎么用FieldMask提高C#的gRpc服务性能
    这篇文章主要介绍“怎么用FieldMask提高C#的gRpc服务性能”,在日常操作中,相信很多人在怎么用FieldMask提高C#的gRpc服务性能问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么用Fiel...
    99+
    2023-06-29
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作