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

首頁 > 數據庫 > Oracle > 正文

oracle 優化的一點體會

2024-08-29 13:56:21
字體:
來源:轉載
供稿:網友
關于oracle 優化的內容很多,概念龐雜,不過可以總結出一個大綱性的東西作為需要考慮的方向,然后再逐步細化。oracle優化按重要性需要考慮設計、開發、調整幾個方面。

首先是設計,這是最重要的部分,借用TOM的話:“性能是設計出來的,不是調整出來的”。設計分為邏輯設計和物理設計,邏輯設計一般要遵循3NF,同時也要根據應用的需要引入逆規范化的設計,應為NF設計雖然消除了數據冗余,但隨著規范化越高需要連接的表可能越多,同樣對性能有影響,所以需要平衡考慮,至于何時要3NF,何時要逆規范化,要是具體情況而定。

物理設計一個是存儲,比如物理文件、聯機日志文件、歸檔日志文件的磁盤布局,各種RAID的使用等(在這方面piner的分析比較全面細致),第二是要根據應用的特性,選擇文件組織方式,靈活運用oracle的各種表和索引類型,例如交叉表可以考慮使用IOT、讀密集型并且經常關聯的字段使用cluster,還有全局臨時表、外部表等等。除了普通的B樹索引外,在低基數情況下考慮使用位圖索引,使用函數時引入基于函數的索引等。

其次是開發階段,比如老生常談的使用綁定變量、外鍵加索引、使用bulk collect、分析函數、直接路徑加載,在OLAP應用中使用partition、MV、位圖索引、并行化操作等等。沒種技術要深入研究都有很多內容。

最后才是調整,這是在出現性能問題時采用的手段。這已經形成了一個完整的方法論。
1)設立合理的性能優化目標。
2)測量并記錄當前性能(STATSPACK、AWR等)。
3)確定當前Oracle性能瓶頸(從Oracle 等待接口v$system_event、v$session_event和v$session_wait中獲得等待事件,進而找出影響性能的對象和sql語句
)。
4)把等待事件記入跟蹤文件(autotrace、10046事件等)。
5)確定當前的OS瓶頸(sar、iostat、cpustat、mpstat、netstat、top、osview等)。
6)優化所需的成分(應用程序、數據庫、I/O、爭用、OS等)。
7)跟蹤并實施更改控制過程。
8)測量并記錄當前性能
9)重復步驟3到7,直到滿足優化目標

以上是本人對Oracle優化的一些粗線條的體會,可以指出優化需要考慮的大的方向,而相關的技術細節非常多,每項都要仔細研究,正如piner總結的:多思考、多實踐、多總結。

再記點題外話,公司節后要對技術部作人員調整,說白了就是裁人,這次除了要個網管保證能上網就不留技術的人了,假期準備簡歷,節后找工作。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 中方县| 临猗县| 莲花县| 景洪市| 五峰| 贵阳市| 嘉禾县| 西丰县| 合江县| 蒲江县| 汽车| 金门县| 九寨沟县| 屯门区| 阜平县| 玛沁县| 马公市| 调兵山市| 吉林省| 彭阳县| 孝感市| 虎林市| 临夏县| 潞西市| 卢龙县| 漳浦县| 济源市| 龙岩市| 岳阳县| 姚安县| 安阳市| 会东县| 应城市| 梅河口市| 全南县| 萝北县| 甘谷县| 龙井市| 桃园市| 和田市| 南投县|