oracle窗帘位图索引,Greenplum数据库设计开发规范参考.docx
Greenplum數(shù)據(jù)庫設計開發(fā)規(guī)范參考
Greenplum數(shù)據(jù)庫設計開發(fā)規(guī)范參考文檔2016年7月目 錄Greenplum數(shù)據(jù)庫設計開發(fā)規(guī)范1V1.511 前言41.1 文檔目的41.2 文檔范圍41.3 預期讀者41.4 參考資料42 開發(fā)規(guī)范檢查項43 GP與TD的差異關注點64 系統(tǒng)級設計74.1 用戶設計74.1.1 超級用戶84.1.2 公共查詢用戶84.1.3 公共數(shù)據(jù)區(qū)用戶84.1.4 集市系統(tǒng)用戶84.2 數(shù)據(jù)庫表空間設計94.3 資源隊列設計104.4 系統(tǒng)級的維護工作114.4.1 系統(tǒng)表的維護工作114.4.2 各種庫表的維護工作124.4.3 投產前統(tǒng)一收集統(tǒng)計信息125 命名規(guī)范126 數(shù)據(jù)庫對象設計規(guī)范136.1 數(shù)據(jù)庫對象數(shù)據(jù)量136.2 表創(chuàng)建規(guī)范136.3 表設計146.3.1 數(shù)據(jù)類型146.3.2 數(shù)據(jù)分布166.3.3 數(shù)據(jù)分區(qū)176.3.4 數(shù)據(jù)表壓縮216.3.5 數(shù)據(jù)表行列存儲226.4 索引設計236.5 視圖設計256.6 Sequence設計266.7 其他數(shù)據(jù)庫對象設計266.7.1 Schema266.7.2 函數(shù)266.7.3 觸發(fā)器276.7.4 臨時表277 開發(fā)規(guī)范277.1 GP查詢優(yōu)化器GPORCA的使用277.2 SQL開發(fā)規(guī)范287.2.1 基本要求287.2.2 大小寫287.2.3 縮進和換行287.2.4 WHERE條件297.2.5 表連接307.2.6 排序語句327.2.7 運算符前后間隔337.2.8 CASE 語句編寫337.2.9 SQL語句注釋347.2.10 嵌套子查詢367.2.11 高效的SQL語句寫法367.2.12 開發(fā)建議417.3 存儲函數(shù)開發(fā)規(guī)范427.3.1 編碼規(guī)則427.3.2 大小寫規(guī)則447.3.3 縮進與換行457.3.4 事務管理規(guī)范467.4 應用開發(fā)規(guī)范467.4.1 禁止在模板中嵌套子查詢477.4.2 兩表關聯(lián)執(zhí)行delete語句477.4.3 Window函數(shù)注意問題477.4.4 Window函數(shù)和聚合函數(shù)使用原則48前言文檔目的隨著Greenplum 數(shù)據(jù)庫倉庫平臺應用逐步上線,為了保證Greenplum 數(shù)據(jù)倉庫系統(tǒng)平臺的平穩(wěn)運行,保證系統(tǒng)的可靠性、穩(wěn)定性、可維護性和高性能,特制定本開發(fā)規(guī)范,以規(guī)范基于Greenplum平臺的應用開發(fā),提高開發(fā)質量。文檔范圍本規(guī)范主要包含Greenplum 數(shù)據(jù)倉庫平臺應用開發(fā)的設計開發(fā)規(guī)范要求;適合于本行所有基于Greenplum 數(shù)據(jù)倉庫平臺的應用開發(fā)。預期讀者Greenplum數(shù)據(jù)倉庫平臺應用的設計與開發(fā)人員;Greenplum 數(shù)據(jù)倉庫平臺的系統(tǒng)管理人員和數(shù)據(jù)庫管理員;Greenplum 數(shù)據(jù)倉庫平臺的運行維護人員;參考資料《GPDB43AdminGuide.pdf》《GPDB43BestPractices.pdf》開發(fā)規(guī)范檢查項本規(guī)范主要用于指導Greenplum數(shù)據(jù)庫平臺的開發(fā),通過規(guī)范要求提升開發(fā)質量。本規(guī)范所提出的觀點都是基于Greenplum數(shù)據(jù)庫產品的最佳實踐。同樣,作為系統(tǒng)或者項目的管理者,也可以通過該規(guī)范對開發(fā)質量進行審查和監(jiān)督。本章節(jié)的檢查列表,是幫助系統(tǒng)管理人員審查開發(fā)質量,關注重點檢查項。檢查項目列表:序號分類檢查項描述1系統(tǒng)級是否有按照開發(fā)規(guī)范創(chuàng)建數(shù)據(jù)庫角色:1、創(chuàng)建子系統(tǒng)專用的用戶2、非超級用戶3、ETL跑批用戶與前端用戶區(qū)分開2資源隊列檢查:數(shù)據(jù)庫角色歸屬的資源隊列是否符合規(guī)范,不允許使用默認隊列pg_default3tablespace檢查:1、是否安裝規(guī)范要求創(chuàng)建獨立的tablespace。2、表是否按照要求創(chuàng)建到該tablespace中。3、檢查相應的用戶是否有配置默認tablespace4表屬主檢查:檢查表的屬主(owner)是否按照規(guī)范,表屬主都應該是子系統(tǒng)的用戶,一般屬主應該是跑批用戶(*_trans)。屬主不允許是超級用戶5庫表設計檢查子系統(tǒng)的中表數(shù)量6檢查分區(qū)表設計是否符合規(guī)范1、如果表太大需要按天劃分分區(qū),只在半年內保留內的天分區(qū);2、按月分區(qū)只在5年內保留月分區(qū);3、五年前的歷史分區(qū)都采用年分區(qū);4、拉鏈表會有特殊的分區(qū),如:p000101015、單個分區(qū)表,子分區(qū)數(shù)量不要超過300個。6、檢查是否有沒用的分區(qū)。是否有沒用的子分區(qū)則需要結合具體的業(yè)務需求來定7檢查是否需要設置為分區(qū)表,分區(qū)粒度是否合適。按照生產環(huán)境判斷分區(qū)粒度的規(guī)則:1、表的總記錄數(shù)超過3億,單表容量超過50GB,需要把表設計為分區(qū)表2、該表在每個實例上記錄數(shù)小于50萬的表,無需進行分區(qū),根據(jù)生產環(huán)境上實例數(shù)計算表總記錄數(shù)小于XXX條記錄,不需要設置為分區(qū)表3、單個子分區(qū)的記錄數(shù)小于1000萬,說明分區(qū)粒度太細8檢查默認分區(qū)是否有過多的數(shù)據(jù)記錄9檢查表
總結
以上是生活随笔為你收集整理的oracle窗帘位图索引,Greenplum数据库设计开发规范参考.docx的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: signature=8405d26e25
- 下一篇: xadmin的html文件,django