国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > Oracle > 正文

Oracle 的位圖索引

2024-08-29 13:44:14
字體:
來源:轉載
供稿:網友

  
         
 Oracle的索引主要包含兩類:BTree和位圖索引。默認情況下大多使用Btree索引,該索引就是通常所見 唯一索引、聚簇索引等等,Btree用在OLTP,加快查詢速度。位圖索引是Oracle的比較引人注目的地方,其主要用在OLAP(聯機數據分析)方面,也就是數據倉庫方面用到,目的是在加快查詢速度是,節省存儲空間。通常情況下,索引都要耗費比較大的存儲空間,位圖采用了壓縮技術實現磁盤空間縮減。Btree用在高基數(即列的數據相異度大),位圖用在低基數列。位圖索引的基本原理是在索引中使用位圖而不是列值。通常在事實表和維表的鍵之間有很低的集的勢(cardinality),使用位圖索引,存儲更為有效,與B*Tree索引比較起來,只需要更少的存儲空間,這樣每次讀取可以讀到更多的記錄,而且與B*Tree索引相比,位圖索引將比較,連接和聚集都變成了位算術運算,大大減少了運行時間,從而得到性能上的極大的提升。

在Oracle中如何合理的使用位圖索引?以下的幾個事項應該考慮。              *  假如要使用位圖索引,初始化參數STAR_TRANSFORMATION_ENABLED應該設置為               TRUE.            *   優化模式應該是CBO。對于數據倉庫的環境中,總是應該考慮使用CBO(COST-BASED                OPTIMIZER)。            *   位圖索引應該建立在每一個事實表的外鍵列上。(這只是一個一般的規則.)         此外,對于數據表中的cardinality如何客觀的確定也是一個問題,一萬條數據中只包含3個值的集和算是低的了,那么一億條記錄中包含3萬條記錄算不算低的呢?對于這樣的情況,建議幾行一下數據的模擬測試,一般來說,在數據倉庫環境中,位圖索引的性能要好于B*Tree索引。還要注重位圖索引不是為OLTP數據庫設計的,不應該在OLTP數據庫中大量的使用它,尤其是對那些有更新操作的表 。 


 Oracle的索引主要包含兩類:BTree和位圖索引。默認情況下大多使用Btree索引,該索引就是通常所見 唯一索引、聚簇索引等等,Btree用在OLTP,加快查詢速度。位圖索引是Oracle的比較引人注目的地方,其主要用在OLAP(聯機數據分析)方面,也就是數據倉庫方面用到,目的是在加快查詢速度是,節省存儲空間。通常情況下,索引都要耗費比較大的存儲空間,位圖采用了壓縮技術實現磁盤空間縮減。Btree用在高基數(即列的數據相異度大),位圖用在低基數列。位圖索引的基本原理是在索引中使用位圖而不是列值。通常在事實表和維表的鍵之間有很低的集的勢(cardinality),使用位圖索引,存儲更為有效,與B*Tree索引比較起來,只需要更少的存儲空間,這樣每次讀取可以讀到更多的記錄,而且與B*Tree索引相比,位圖索引將比較,連接和聚集都變成了位算術運算,大大減少了運行時間,從而得到性能上的極大的提升。

在Oracle中如何合理的使用位圖索引?以下的幾個事項應該考慮。              *  假如要使用位圖索引,初始化參數STAR_TRANSFORMATION_ENABLED應該設置為               TRUE.            *   優化模式應該是CBO。對于數據倉庫的環境中,總是應該考慮使用CBO(COST-BASED                OPTIMIZER)。            *   位圖索引應該建立在每一個事實表的外鍵列上。(這只是一個一般的規則.)         此外,對于數據表中的cardinality如何客觀的確定也是一個問題,一萬條數據中只包含3個值的集和算是低的了,那么一億條記錄中包含3萬條記錄算不算低的呢?對于這樣的情況,建議幾行一下數據的模擬測試,一般來說,在數據倉庫環境中,位圖索引的性能要好于B*Tree索引。還要注重位圖索引不是為OLTP數據庫設計的,不應該在OLTP數據庫中大量的使用它,尤其是對那些有更新操作的表 。
 



 Oracle的索引主要包含兩類:BTree和位圖索引。默認情況下大多使用Btree索引,該索引就是通常所見 唯一索引、聚簇索引等等,Btree用在OLTP,加快查詢速度。位圖索引是Oracle的比較引人注目的地方,其主要用在OLAP(聯機數據分析)方面,也就是數據倉庫方面用到,目的是在加快查詢速度是,節省存儲空間。通常情況下,索引都要耗費比較大的存儲空間,位圖采用了壓縮技術實現磁盤空間縮減。Btree用在高基數(即列的數據相異度大),位圖用在低基數列。位圖索引的基本原理是在索引中使用位圖而不是列值。通常在事實表和維表的鍵之間有很低的集的勢(cardinality),使用位圖索引,存儲更為有效,與B*Tree索引比較起來,只需要更少的存儲空間,這樣每次讀取可以讀到更多的記錄,而且與B*Tree索引相比,位圖索引將比較,連接和聚集都變成了位算術運算,大大減少了運行時間,從而得到性能上的極大的提升。

在Oracle中如何合理的使用位圖索引?以下的幾個事項應該考慮。              *  假如要使用位圖索引,初始化參數STAR_TRANSFORMATION_ENABLED應該設置為               TRUE.            *   優化模式應該是CBO。對于數據倉庫的環境中,總是應該考慮使用CBO(COST-BASED                OPTIMIZER)。            *   位圖索引應該建立在每一個事實表的外鍵列上。(這只是一個一般的規則.)         此外,對于數據表中的cardinality如何客觀的確定也是一個問題,一萬條數據中只包含3個值的集和算是低的了,那么一億條記錄中包含3萬條記錄算不算低的呢?對于這樣的情況,建議幾行一下數據的模擬測試,一般來說,在數據倉庫環境中,位圖索引的性能要好于B*Tree索引。還要注重位圖索引不是為OLTP數據庫設計的,不應該在OLTP數據庫中大量的使用它,尤其是對那些有更新操作的表 。 



 Oracle的索引主要包含兩類:BTree和位圖索引。默認情況下大多使用Btree索引,該索引就是通常所見 唯一索引、聚簇索引等等,Btree用在OLTP,加快查詢速度。位圖索引是Oracle的比較引人注目的地方,其主要用在OLAP(聯機數據分析)方面,也就是數據倉庫方面用到,目的是在加快查詢速度是,節省存儲空間。通常情況下,索引都要耗費比較大的存儲空間,位圖采用了壓縮技術實現磁盤空間縮減。Btree用在高基數(即列的數據相異度大),位圖用在低基數列。位圖索引的基本原理是在索引中使用位圖而不是列值。通常在事實表和維表的鍵之間有很低的集的勢(cardinality),使用位圖索引,存儲更為有效,與B*Tree索引比較起來,只需要更少的存儲空間,這樣每次讀取可以讀到更多的記錄,而且與B*Tree索引相比,位圖索引將比較,連接和聚集都變成了位算術運算,大大減少了運行時間,從而得到性能上的極大的提升。

在Oracle中如何合理的使用位圖索引?以下的幾個事項應該考慮。              *  假如要使用位圖索引,初始化參數STAR_TRANSFORMATION_ENABLED應該設置為               TRUE.            *   優化模式應該是CBO。對于數據倉庫的環境中,總是應該考慮使用CBO(COST-BASED                OPTIMIZER)。            *   位圖索引應該建立在每一個事實表的外鍵列上。(這只是一個一般的規則.)         此外,對于數據表中的cardinality如何客觀的確定也是一個問題,一萬條數據中只包含3個值的集和算是低的了,那么一億條記錄中包含3萬條記錄算不算低的呢?對于這樣的情況,建議幾行一下數據的模擬測試,一般來說,在數據倉庫環境中,位圖索引的性能要好于B*Tree索引。還要注重位圖索引不是為OLTP數據庫設計的,不應該在OLTP數據庫中大量的使用它,尤其是對那些有更新操作的表 。 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 荣昌县| 邛崃市| 怀集县| 芜湖市| 志丹县| 皮山县| 衡阳市| 虎林市| 石首市| 乌审旗| 克山县| 通许县| 威信县| 安陆市| 浮梁县| 南部县| 巴林右旗| 丹东市| 德令哈市| 茌平县| 民丰县| 西乡县| 九江县| 延川县| 龙门县| 饶平县| 汕头市| 皮山县| 虎林市| 保康县| 嘉禾县| 柯坪县| 搜索| 阿拉善右旗| 威海市| 大竹县| 伊通| 台南市| 沈阳市| 西青区| 无棣县|