1. 程式人生 > >14.4 Using Index-Organized Tables forPerformance 使用索引組織的表

14.4 Using Index-Organized Tables forPerformance 使用索引組織的表

14.4 Using Index-Organized Tables for Performance

原文:

An index-organized table differs from an ordinarytable in that the data for the table is held in its associated index. Changesto the table data, such as adding new rows, updating rows, or deleting rows,result only in updating the index. Because data rows are stored in the index,index-organized tables provide faster key-based access to table data forqueries that involve exact match or range search or both.

A parent/child relationship is an example of asituation that may warrant an index-organized table. For example, a memberstable has a child table containing phone numbers. Phone numbers for a memberare changed and added over time. In a heap-organized table, rows are insertedin data blocks where they fit. However, when you query the members table, youalways retrieve the phone numbers from the child table. To make the retrievalmore efficient, you can store the phone numbers in an index-organized table sothat phone records for a given member are inserted near each other in the datablocks.

In some circumstances, an index-organized table mayprovide a performance advantage over a heap-organized table. For example, if aquery requires fewer blocks in the cache, then the database uses the buffercache more efficiently. If fewer distinct blocks are needed for a query, then asingle physical I/O may retrieve all necessary data, requiring a smaller amountof I/O for each query.

Global hash-partitioned indexes are supported forindex-organized tables and can provide performance benefits in a multiuser OLTPenvironment. Index-organized tables are useful when you must store relatedpieces of data together or physically store data in a specific order.

譯文:

索引組織的表與普通表的不同之處在於表的資料儲存在相關的索引中。對錶中資料的修改,比如增加新的行,更新已有行,或者刪除行這些操作終究都只是更新索引的操作。因為資料行被儲存在索引中,索引組織的表在查詢時能提供更快的基於key的資料訪問,無論是精確匹配的查詢還是範圍查詢皆是如此。

一種父子關係的情況可能就需要索引組織的表。比如,一個成員表有一個子表,子表中包含成員的電話號碼。隨著時間的推移,成員的電話號碼會改變和增加新的號碼。在一個堆組織的表中,資料行被新增在它們可以被放進去的資料塊中。但是,當查詢成員表時,總是要從子表中獲得電話號碼。為了是獲得電話號碼的操作更加有效,可以將電話號碼儲存在索引組織的表中,這樣一個特定成員的若干個電話號碼會被儲存在相鄰的資料塊中。

在某些情況下,索引組織的表會比堆組織的表提供更好的效能。比如,一個查詢如果需要的快取塊少一些,那麼資料塊就能夠更有效的利用緩衝塊。如果一個查詢需要的資料塊少一些,可能一次I/O就能或得到所有需要的資料,這樣會減少查詢需要的I/O次數。

索引組織的表也支援全域性雜湊分割槽索引,這可以在多使用者的OLTP環境中提供效能優勢。當你必須把相關的資料都儲存在一起或者需要資料物理上有序儲存的時候,你可能需要索引組織的表。

相關推薦

14.4 Using Index-Organized Tables forPerformance 使用索引組織

14.4 Using Index-Organized Tables for Performance 原文: An index-organized table differs from an ordinarytable in that the data for the

組織索引組織索引聚簇

卸載 對比 影響 partition 重新登錄 一個數 struct 可變 cal --- 堆組織表就不說了,其索引中記錄了記錄所在位置的rowid,查找的時候先找索引,然後再根據索引rowid找到塊中的行數據索引組織表,其行數據以索引形式存放,因此找到索引,就等於找到了行

【MySQL技術內幕】16-索引組織

在 InnoDB儲存引擎中,表都是根據主鍵順序組織存放的,這種儲存方式的表稱為索引組織表( index organized table)。在 InnoDB儲存引擎表中,每張表都有個主鍵( Primary Key),如果在建立表時沒有顯式地定義主鍵,則 InnoDB儲存引擎會按

Oracle三種table: 堆Heap Table、索引組織IOT和聚簇Cluster

常用資料庫支援情況: Oracle支援堆表,索引組織表,聚簇表Cluster; PostgreSQL只支援堆表,不支援索引組織表; Innodb只支援索引組織表; MyISAM只支援堆表。 Oracle使用rowid資料型別儲存行地址,rowid可以分成兩種,分別適於不同的

索引組織+建立索引組織

索引組織表(不同於一般表) 1在儲存時不是普通表那樣採用堆組織的方式將資料無須的存放在資料段中,而是採用類似B樹索引的索引組織方式將記錄按照某個主鍵列排序後,再以B樹的方式存在資料段中。 2如果向索引組織表中新增資料,oracle會根據主鍵列對其進行排序,然

Ubunte 14.4快捷鍵使用

命令ctrl+alt+f1.....f5 進入命令模式ALT+F7 返回桌面模式ctrl+alt+t 調出超級終端窗口Ubunte 14.4快捷鍵使用

淺析MySQL中的Index Condition Pushdown (ICP 索引條件下推)和Multi-Range Read(MRR 索引多範圍查找)查詢優化

修正 itl iad 較高的 一句話 mysql5 條件篩選 global 查詢條件 本文出處:http://www.cnblogs.com/wy123/p/7374078.html(保留出處並非什麽原創作品權利,本人拙作還遠遠達不到,僅僅是為了鏈接到原文,因為後續對

Ubuntu 14.4 安裝OpenVZ

passwd amd64 _for grub code 文章 cgroup down 32位系統 添加源 vim /etc/apt/sources.list.d/openvz.list 寫入下面內容保存 如果需要,可以視情況改動註釋..(如果看不懂,請不要在意這行字) de

14.4 exportfs命令 14.5 NFS客戶端問題 15.1 FTP介紹

使用vsftpd搭建ftp14.4 exportfs命令 客戶端: 14.5 NFS客戶端問題 mount -t nfs -o nfsvers=3 192.168.15.132:/tmp /mnt/nfs 15.1 FTP介紹 15.2/15.3 使用vsftpd搭建ftp 14.4 export

14.4多繼承

Python 多繼承 多繼承 # -*-coding:utf-8 -*- __author__ = ‘xiaojiaxin‘ __file_name__ = ‘多繼承‘ #只有python和c++支持多繼承 class grandf: def a(self): print("

Motion Paths in WPF 4 using Expression Blend 4

yellow HA ply cfa folder shape span HP port 原文 Motion Paths in WPF 4 using Expression Blend 4 Posted by: Pravinkumar Dabade , on 3/19/

14.4 exportfs命令 14.5 NFS客戶端問題 15.1 FTP介紹 15.2/15.3

CA 圖片 tex proc AD pro NFS客戶端問題 vsftp ddc 14.4 exportfs命令由於配置了no_root_squash的權限所以有如下結果: 14.5 NFS客戶端問題 15.1 FTP介紹 15.2/15.3 使用vsftpd搭建ftp

用正則表達式實現 運算 express = '1 -2* ((60-30 +(-40/5) *(9-2*5/3 +7 /3*99 /4*2998 +10 *568 /14))-(-4*3)/(16-3*2))'

repl bsp val 實現 strip expr 運算 lac spl #!/usr/bin/env python # coding:utf-8 import re def dealwith(express): express.replace(‘+-‘,‘

淺析MySQL中的Index Condition Pushdown (ICP 索引條件下推)和Multi-Range Read(MRR 索引多範圍查詢)查詢優化

一、ICP優化原理 Index Condition Pushdown (ICP),也稱為索引條件下推,體現在執行計劃的上是會出現Using index condition(Extra列,當然Extra列的資訊太多了,只能做簡單分析)ICP原理通俗講就是,查詢過程中,直接在查詢引擎層的API獲取資料的時

在CDH5.14.4 中安裝StreamSets與案例執行

在CDH5.14.4 中安裝StreamSets與案例執行 標籤(空格分隔): 大資料平臺構建 一: Streamset 簡介與系統環境介紹 二: 安裝軟體準備 三: 在CDH5.14.4 整合使用StreamSets 四: streamsets 基本使用案例執行

MySQL5.6之Index Condition Pushdown(ICP,索引條件下推)

轉載 :https://blog.csdn.net/z69183787/article/details/53954914 http://mdba.cn/2014/01/21/index-condition-pushdownicp%E7%B4%A2%E5%BC%95%E6%9D%A1%E4%BB%

4.14~4.20數論①

gcd和lcm 一行GCD int gcd(int a,int b){return b==0 ? a:gcd(b,a%b);} 二進位制演算法 inline int GCD(int x,int y) { int i,j; if(!x)return y;

4.14-4.15 安裝jdk 和 navicat

作者: 飛劍神 網址:www.feijianshen.com 郵箱: [email protected] 本人:百度雲:wrzfeijianshen 本部落格共開下載部落格和其中用到的工具連結地址:連結:https://pan.baidu.com/s/18f7qXy

翻譯: Clustered Index Design Considerations 聚集索引設計註意事項

enter 發生 size 謂詞 detailed 外鍵 防止 des 16px 原文出自:《Pro SQL Server Internals, 2nd edition》的CHAPTER 7 Designing and Tuning the Indexes中的Cluster

window 核心程式設計 14.4 檢視虛擬地址 比較全的使用者自定義函式

#include <windows.h> #include <stdio.h> #include<iostream> #include <string.h> #include "strsafe.h" #include <WinInet.h>