데이터 베이스 MySQL 튜토리얼 磁盘排序影响Oracle数据库性能的罪魁祸首

磁盘排序影响Oracle数据库性能的罪魁祸首

Jun 07, 2016 pm 03:15 PM
oracle 영향 성능 종류 데이터 베이스 디스크

欢迎进入Oracle社区论坛,与200万技术人员互动交流 >>进入 当建立同Oracle会话时,会在 服务器 内存 中划分出一个专门用来排序的区域,从而为会话提供排序空间。但是,这个排序空间毕竟有限,若记录数量超过这个排序空间的话,就需要进行磁盘排序。但是,我

欢迎进入Oracle社区论坛,与200万技术人员互动交流 >>进入

  当建立同Oracle会话时,会在服务器内存中划分出一个专门用来排序的区域,从而为会话提供排序空间。但是,这个排序空间毕竟有限,若记录数量超过这个排序空间的话,就需要进行磁盘排序。但是,我们都知道,磁盘排序的执行速度要比内存排序的执行速度慢1400倍。而且,磁盘排序会消耗临时表空间的资源,并且可能影响到正在进行的其他SQL排序,因为Oracle必须为临时表空间中的数据块分配缓冲池。而且,过多的磁盘排序会导致空闲缓冲等待,以及将执行其他任务的数据块从缓冲池中分页出去。对于数据库管理员来说,在内存中进行排序总是比磁盘排序更受欢迎。所以说,磁盘排序是影响Oracle数据库性能的罪魁祸首。

  在数据库优化的时候,我们应该想法设法降低数据库的磁盘排序。为此,笔者有如下建议。

  一、合理设置Sort_area_size参数

  虽然说Oracle10G以后的数据库会自动对内存进行管理。但是,在一些性能要求比较高或者排序频率比较高的数据库中,仍然有必要对一些影响内存分配的参数进行调整。其中,最重要的一个参数就是Sort_area_size。

  Oracle数据库会为所有的链接Oracle会话分配Sort_area_size这个参数。所以,对于拥有大量用户的数据库来说,如果增加这个参数的值,会让磁盘排序的几率明显降低,不过数据库也要为此付出这个代价,很容易导致内存过载。但是,如果这个参数的值设置的过低的话,又会导致过多的磁盘排序。

  所以,这个参数并不是越大越好。因为这个参数如果设置的过大的话,其带来的性能收益反而会降低。因为为了提高有限几个查询的速度,可能会浪费大量的内存。这无疑是我们数据库管理员不希望看到的。

  在实际工作中,我们往往需要在两者之间进行一个均衡。设置一个合理的参数,尽量让数据库减少磁盘排序的几率,同时也不能使得服务器内存过载。

  为此笔者有一个建议。数据库管理员应该每隔一段时间增加这个参数的值,并使用Statspack工具定时监控内存排序与磁盘排序的数据。在起初进行调整的时候最好每个小时查询一次。通过这些数据,我们就可以得到一个合理的参数值,在两这之间取得一个均衡。

  前期调整完成后,在后期仍然需要进行监控。因为后期随着企业应用的改变,这个参数仍然需要根据实际情况进行调整,以提高数据库的性能。

  二、尽量减少不必要的排序

  在某些情况下,尽管数据库管理员没有直接通过Order By等语句对数据库记录进行排序,可是Oracle数据库服务器仍然会对查询结果进行排序。因为这些语句需要起作用,必须要先对数据进行排序。所以,他们往往带有隐性的排序功能。

  我们在数据库维护或者前台应用程序设计的时候,要尽量的减少这种不必要的排序。如Distinct关键字,它的作用就是取消重复的记录。但是,要实现这个目的的话,则数据库必须要先对记录进行排序,然后才能够去除重复的记录内容。故在设计的时候,尽量要避免使用Distinct关键字。其实,笔者在工作中,经常会碰到这种情况,某些记录其实不存在重复记录,但是程序开发人员为了保障数据的准确性,就在SQL语句中加入了Distinct关键字,从而造成了不必要的排序。

  另外,在其他一些情况下,也会导致不必要的排序。如排序合并连接,也会导致不必要的排序。故无论何时,只要使用了排序合并连接,就会执行排序已连接关键值。故在数据库与应用程序设计的时候,要尽量避免排序合并连接。其实,在许多情况下,嵌套循环连接反而使更好的选择。因为这个嵌套循环连接,它更加有效而且不会导致不必要的排序以及不比要的全表扫描。

  其次,有时候缺失索引也会导致一些并不要的排序。

  故数据库管理员在平时的工作中,要尽量的减少这些不必要的排序,以让宝贵的内存资源交给更重要的任务来适用。

磁盘排序影响Oracle数据库性能的罪魁祸首

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

레드 스톤/레드 통화 목록 가격 예측 및 토큰 경제학에 대한 자세한 설명 레드 스톤/레드 통화 목록 가격 예측 및 토큰 경제학에 대한 자세한 설명 Mar 03, 2025 pm 10:42 PM

이번에는 Redstone Token $ Red가 Binance TGE의 Binance LaunchPool에서 출시됩니다! Binance가 사전 시장 거래 한도 메커니즘을 시작한 것은 이번이 처음입니다! 첫날 한도는 200%이며, 3 일 후에 금지는 "시장이 시작될 때 최고점이 달성 될 것"을 피하기 위해 3 일 후에 해제됩니다! LaunchPool 메커니즘은 지정된 토큰 (BNB, USDC, FDUSD) 활동 기간이 48 시간 : 08:00 UTC에 2025 년 2 월 28 일 UTC에 UTC로 지정된 토큰 (BNB, USDC, FDUSD) 활동 기간이 필요한 Redstone에 참여하는 Binancelaunchpool을 소개합니다.

데비안에서 오라클 보안 설정을 수행하는 방법 데비안에서 오라클 보안 설정을 수행하는 방법 Apr 02, 2025 am 07:48 AM

데비안 시스템에서 Oracle 데이터베이스의 보안을 강화하려면 많은 측면이 시작되어야합니다. 다음 단계는 안전한 구성을위한 프레임 워크를 제공합니다. 1. Oracle 데이터베이스 설치 및 초기 구성 시스템 준비 : 데비안 시스템이 최신 버전으로 업데이트되었는지 확인하고 네트워크 구성이 올바르며 필요한 모든 소프트웨어 패키지가 설치되었습니다. 설치를 위해 공식 문서 또는 신뢰할 수있는 타사 리소스를 참조하는 것이 좋습니다. 사용자 및 그룹 : 전용 Oracle 사용자 그룹 (예 : Oinstall, DBA, BackupDBA)을 만들고 적절한 권한을 설정합니다. 2. 보안 제한을 설정하는 리소스 제한 사항 : 편집 /etc/security/limits.d/30-oracle.conf

Binance OPBNB 란 무엇입니까? 사용자에게 미치는 영향은 무엇입니까? Binance OPBNB 란 무엇입니까? 사용자에게 미치는 영향은 무엇입니까? Mar 05, 2025 pm 12:36 PM

Binance는 OPBNB : BINANCE가 최근 BNB Smart Chain (BSC) - OPBNB 테스트 네트워크를위한 새로운 확장 솔루션 출시를 발표했다고 발표했습니다. 이 기사는 OPBNB의 특성과 사용자에게 잠재적 영향을 설명합니다. OPBNB 세부 설명 OPBNB는 EVM (Ethereum Virtual Machine)과 호환되는 OpmentismoPStack을 구축 한 Layer2 확장 솔루션입니다. BSC의 확장 성을 향상시키고 네트워크 혼잡을 완화하며 거래 비용을 줄이는 것을 목표로합니다. OPBNB를 더 잘 이해하려면 다음의 주요 개념을 이해해야합니다. Layer2 (블록 체인 레이어 2) : 일부 기본 체인 기능을 두 번째 레이어로 전송하여 주를 개선합니다.

GO를 사용하여 Oracle 데이터베이스에 연결할 때 Oracle 클라이언트를 설치해야합니까? GO를 사용하여 Oracle 데이터베이스에 연결할 때 Oracle 클라이언트를 설치해야합니까? Apr 02, 2025 pm 03:48 PM

GO를 사용하여 Oracle 데이터베이스에 연결할 때 Oracle 클라이언트를 설치해야합니까? GO에서 개발할 때 Oracle 데이터베이스에 연결하는 것이 일반적인 요구 사항입니다 ...

Oracle PL/SQL Deep Dive : 마스터 링 절차, 기능 및 패키지 Oracle PL/SQL Deep Dive : 마스터 링 절차, 기능 및 패키지 Apr 03, 2025 am 12:03 AM

Oraclepl/SQL의 절차, 기능 및 패키지는 각각 작업, 반환 값 및 구성 코드를 구성하는 데 사용됩니다. 1. 프로세스는 출력 인사와 같은 작업을 수행하는 데 사용됩니다. 2. 함수는 두 숫자의 합계와 같은 값을 계산하고 반환하는 데 사용됩니다. 3. 패키지는 관련 요소를 구성하고 재고를 관리하는 패키지와 같은 코드의 모듈성 및 유지 가능성을 향상시키는 데 사용됩니다.

레드 스톤 (빨간색) 에어 드롭에 참여할 때 몇 개의 빨간 토큰을 얻을 수 있습니까? 레드 스톤 (빨간색) 에어 드롭에 참여할 때 몇 개의 빨간 토큰을 얻을 수 있습니까? Mar 04, 2025 pm 05:48 PM

Redstone (Red) 에어 드롭 활동은 본격적으로 진행되어 많은 투자자들이 참여하도록 유도합니다. Redstone은 강력한 유효성 검사기 네트워크, 실시간 데이터 통합 ​​기능 및 커뮤니티 인센티브 메커니즘을 갖춘 고급 크로스 체인 데이터 Oracle이며 많은 유명한 투자 기관에서 지원해 왔습니다. 독특한 기술적 장점으로 인해 경쟁이 치열한 Oracle 시장에서 눈에 띄게 만들어지고 미래의 개발에 큰 잠재력이 있습니다. 이 기사는 Redstone 프로젝트에 대한 심층 분석을 수행하고 Airdrops에 참여할 수있는 빨간 토큰의 수를 탐색하며 Red Tokens의 가격에 대한 전망을 만들어 투자자가 Redstone 프로젝트 및 투자 위험을 더 잘 이해하고 평가할 수 있도록 도와줍니다. 특히 BNB 소지자의 경우 에어 드롭에 참여하면 빨간 토큰을 얻고 디지털 자산 그룹을 풍부하게 할 수 있습니다.

ERP 시스템 소프트웨어는 무엇입니까? 권장 ERP 시스템 소프트웨어 ERP 시스템 소프트웨어는 무엇입니까? 권장 ERP 시스템 소프트웨어 Apr 03, 2025 pm 12:54 PM

ERP 소프트웨어를 선택할 때는 먼저 산업, 규모, 예산 및 IT 인프라를 포함한 기업의 요구를 명확히 한 다음 핵심 비즈니스 프로세스에 따라 요구 사항을 충족하는 시스템을 선택하십시오. 일반적인 ERP 시스템에는 다음이 포함됩니다. SAP에는 강력한 기능이지만 비싼 기능을 갖춘 대기업에 적합합니다. Oracle은 포괄적 인 기능을 가지고 있지만 비싸며 대기업에 적합합니다. Odoo는 중소 기업에 적합하며 저렴한 비용과 사용자 정의가 가능합니다. SAAS ERP는 클라우드에 배치되어 주문형 비용을 지불하며 빠르게 개발하는 기업에 적합합니다. 선택하기 전에 시험을 실시하고 전문적인 조언을 문의하며 애프터 판매 서비스에주의를 기울여 가장 적합한 ERP 시스템을 선택해야합니다.

암호화폐 전문 용어에 익숙해질 수 있도록 반드시 읽어야 할 통화 업계 용어 60개 암호화폐 전문 용어에 익숙해질 수 있도록 반드시 읽어야 할 통화 업계 용어 60개 Dec 17, 2024 pm 03:20 PM

암호화폐 세계를 탐험하고 싶으신가요? 업계 용어에 대한 60페이지 분량의 가이드를 꼭 읽어보세요! 이 가이드는 암호화폐, 블록체인, 스테이블 코인과 같은 기본 개념부터 롱, 숏, 레버리지와 같은 거래 용어, 노드, 스마트 계약, DeFi와 같은 기술 용어에 이르기까지 모든 것을 다룹니다. 이러한 용어에 대한 확실한 이해는 암호화폐 커뮤니티에서 자신감 있는 대화와 투자 결정을 위한 견고한 기반을 제공할 것입니다.

See all articles