`
juji1010
  • 浏览: 117160 次
社区版块
存档分类
最新评论

转--Keep小表到内存,提高访问速度

 
阅读更多

Keep小表到内存,提高访问速度

俩小表,频繁更新,老出现等待

干脆keep到内存里,避免物理读,提高性能

使用到参数buffer_pool_keep

Oracle的高速缓冲区其实可以分成三个不同的子池

默认池

Keep

Recycle

Keep中可以保留经常使用的数据,使其不被老化调,提高命中率;recycle相反。默认数据存放在默认池中

数据库版本

SQL> select * from v$version;

BANNER

----------------------------------------------------------------

Oracle9i Enterprise Edition Release9.2.0.8.0 - 64bit Production

PL/SQL Release9.2.0.8.0 - Production

CORE 9.2.0.8.0 Production

TNS for Solaris: Version9.2.0.8.0 - Production

NLSRTL Version9.2.0.8.0 - Production

Sga分配,Variable Size有足够空间

SQL> show sga

Total System Global Area 2635566408 bytes

Fixed Size 732488 bytes

Variable Size 704643072 bytes

Database Buffers 1929379840 bytes

Redo Buffers 811008 bytes

Keep池已经分配

SQL> show parameter keep

NAME TYPE VALUE

------------------------------------ ----------- ------------------------------

buffer_pool_keep string

control_file_record_keep_time integer 7

db_keep_cache_size big integer 33554432

keep表到内存中

alter table tbl_a storage (buffer_pool keep);

alter table tbl_b storage (buffer_pool keep);

keep索引到内存中

alter index IND_AA storage (buffer_pool keep);

查询被存在于keep池中的表

SELECT BUFFER_POOL,table_name FROM DBA_Tables where BUFFER_POOL<>'DEFAULT';

BUFFER_ TABLE_NAME

------- ------------------------------

KEEP TBL_A

KEEP TBL_B

使用keep表到内存的方式可以显著缓解
buffer busy wait
cache buffer chains
等待事件的出现
至于如何确定应该keep的对象可以通过对x$bh 视图中tch字段的值进行统计而获得
原则上讲,热的索引和表,无论大小都可以放到内存中
分享到:
评论

相关推荐

    第2课 内存结构和后台进程

    - 考虑使用Oracle TimesTen等内存数据库解决方案提高数据访问速度。 ##### 4.2 合理利用后台进程 - 监控并调整后台进程的配置,确保其能够有效执行所需任务。 - 利用Oracle提供的自动化工具和服务,减轻后台进程...

    国产达梦数据库常用查功语句及内存管理操作(附官方免费学习地址)

    - **缓冲区内存**:用于存储经常访问的数据和索引信息,以减少磁盘I/O操作,提高查询效率。 - **数据缓冲区**:包括`normal`、`keep`、`recycle`和`fast`四种类型。 - `normal`:普通数据页缓存。 - `keep`:常驻...

    oracle优化------缓存对象与数据

    在Oracle数据库优化领域,缓存机制是一项关键的技术手段,旨在通过将频繁访问的数据和对象保留在内存中来提高系统的响应速度和整体性能。本篇文章将深入探讨Oracle数据库中的缓存机制,包括缓存数据和缓存数据库对象...

    内存管理内存管理内存管理

    操作系统维持着一个虚拟地址到物理地址的转换的表,以便计算机硬件可以正确地响应地址请求。并且,如果地址在硬盘上而不是在 RAM 中,那么操作系统将暂时停止您的进程,将其他内存转存到硬盘中,从硬盘上加载被...

    操作系统(内存管理)

    操作系统维持着一个虚拟地址到物理地址的转换的表,以便计算机硬件可以正确地响应地址请求。并且,如果地址在硬盘上而不是在 RAM 中,那么操作系统将暂时停止您的进程,将其他内存转存到硬盘中,从硬盘上加载被请求...

    Oracle 11g体系-全面详解

    - `db_keep_cache_size`: 存放经常访问的小表或索引等。 - `db_recycle_cache_size`: 存放偶尔进行全表扫描的大表的数据。 - **Redo Log Buffer**: 记录了数据库的所有修改信息(包括DML和DDL),主要用于数据库恢复...

    BIGIPLTM内存Cache原理与配置[定义].pdf

    内存Cache,也称为RAM Cache,是BIG-IP系统中一种优化HTTP对象访问的技术,它将频繁访问的HTTP对象存储在系统的随机存取内存(RAM)中,以提高响应速度和减少对后端服务器的请求负荷。 内存Cache的主要特性在于其...

    OARACLE参数配置优化

    合理的参数设置不仅可以提升系统的响应速度、提高并发处理能力,还能有效利用系统资源,避免不必要的性能瓶颈。以下是从给定文件中提取的关键参数及其优化方法。 #### 1. SGA_MAX_SIZE - **描述**:SGA(Shared ...

    Java性能优化技巧集锦.doc

    局部变量的访问速度较快,因为它们保存在栈中。因此,应该尽量使用局部变量,而不是静态变量或实例变量。 1.7 乘法和除法 应该尽量避免使用乘法和除法运算,因为它们比其他运算符慢得多。可以使用其他方法来实现...

    Oracle 认证学习笔记

    SGA 是在启动 Oracle 数据库实例时创建的一块共享内存区域,它由多个不同的内存结构组成,主要用于存储数据库的信息以及缓存频繁访问的数据。SGA 被设计成一个大型缓冲池,其中的数据可以被 Oracle 的各个进程所共享...

    如何提高sql性能

    通过合理配置数据缓冲池,可以减少对磁盘的访问次数,进而提高SQL查询的速度。 1. **数据缓冲池大小**:增加数据缓冲池的大小可以容纳更多的数据块,减少物理I/O操作。然而,过度增大数据缓冲池也可能导致其他内存...

    java经典面试题

    - 通过线程池管理线程,提高响应速度和资源利用率。 27. **`Concurrent` 包里的其他组件**: - `ArrayBlockingQueue`:阻塞队列。 - `CountDownLatch`:倒计时闭锁。 28. **`wait()` 和 `sleep()` 的区别**: ...

    Oracle In Memory技术最佳实践.pdf

    - **内存访问速度**:内存中的数据访问速度远高于硬盘上的数据访问速度。 - **矢量指令**:支持高效的向量化操作,能够一次性处理多条数据记录,大幅提高处理效率。 - **数据扫描**:能够快速扫描内存中的列格式数据...

    决战Nginx系统卷:高性能Web服务器详解与运维 - 第1章

    - **使用缓存机制加速远程FastCGI服务器的访问**:提高动态内容响应速度。 - **模块化的结构**:包括gzip压缩、字节range响应、chunk响应等多种过滤器。 - **支持SSL和TLS SNI**:确保数据传输的安全性。 **1.1.2 ...

    Oracle性能调整建议手册

    **1.13 将SGA的内存keep在物理内存中** - **作用**:确保SGA占用的内存不会被操作系统交换出去,以避免性能损失。 **1.14 将LOG并发打开** - **命令**:通过`ALTER DATABASE SET CONCURRENTLY;`来允许日志文件同时...

    Oracle性能优化培训

    - **Nested Loop Join**:适用于小表或已经排序的数据集。 - **Sort Merge Join**:适用于大型数据集,且需要对结果进行排序的情况。 - **Hash Join**:适用于大表之间的连接,尤其是当连接条件较为简单时。 - *...

    oracle 10g优化

    磁盘 I/O 是数据库性能瓶颈之一,优化磁盘 I/O 可以有效提高数据访问速度。 - **参数调整**: - 采用 RAID 技术提高磁盘读写速度。 - 使用固态硬盘 (SSD) 替换传统硬盘。 - 分散热点数据以均衡磁盘负载。 #### ...

    Oracle外排序研究

    1. **磁盘排序速度远低于内存排序**:由于磁盘I/O速度远远慢于内存访问速度,因此磁盘排序会大大增加数据处理时间。 2. **临时表空间资源消耗**:外排序会占用临时表空间中的资源,导致资源紧张,可能影响其他依赖...

    nginx配置详细-最全说明

    - **含义**: 定义一个共享内存区域,用于存储限制访问规则。 - **示例**: ```nginx limit_zone crawler $binary_remote_addr 10m; ``` - **作用**: 用于实现IP地址访问频率限制。 19. **`upstream`**: - **...

    WebKit和Chromium源码及原理剖析.pdf

    - SPDY是由Google开发的一种网络传输协议,旨在提高Web应用的加载速度。 - HTTP/2是HTTP协议的下一代版本,引入了多项改进,如多路复用、头部压缩等。 - QUIC(Quick UDP Internet Connections)是Google提出的一...

Global site tag (gtag.js) - Google Analytics