oracle窗帘位图索引,Greenplum数据库设计开发规范参考.docx

Greenplum数据库设计开发规范参考

Greenplum数据库设计开发规范参考文档2016年7月目 录Greenplum数据库设计开发规范1V1.511 前言41.1 文档目的41.2 文档范围41.3 预期读者41.4 参考资料42 开发规范检查项43 GP与TD的差异关注点64 系统级设计74.1 用户设计74.1.1 超级用户84.1.2 公共查询用户84.1.3 公共数据区用户84.1.4 集市系统用户84.2 数据库表空间设计94.3 资源队列设计104.4 系统级的维护工作114.4.1 系统表的维护工作114.4.2 各种库表的维护工作124.4.3 投产前统一收集统计信息125 命名规范126 数据库对象设计规范136.1 数据库对象数据量136.2 表创建规范136.3 表设计146.3.1 数据类型146.3.2 数据分布166.3.3 数据分区176.3.4 数据表压缩216.3.5 数据表行列存储226.4 索引设计236.5 视图设计256.6 Sequence设计266.7 其他数据库对象设计266.7.1 Schema266.7.2 函数266.7.3 触发器276.7.4 临时表277 开发规范277.1 GP查询优化器GPORCA的使用277.2 SQL开发规范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 开发建议417.3 存储函数开发规范427.3.1 编码规则427.3.2 大小写规则447.3.3 缩进与换行457.3.4 事务管理规范467.4 应用开发规范467.4.1 禁止在模板中嵌套子查询477.4.2 两表关联执行delete语句477.4.3 Window函数注意问题477.4.4 Window函数和聚合函数使用原则48前言文档目的随着Greenplum 数据库仓库平台应用逐步上线,为了保证Greenplum 数据仓库系统平台的平稳运行,保证系统的可靠性、稳定性、可维护性和高性能,特制定本开发规范,以规范基于Greenplum平台的应用开发,提高开发质量。文档范围本规范主要包含Greenplum 数据仓库平台应用开发的设计开发规范要求;适合于本行所有基于Greenplum 数据仓库平台的应用开发。预期读者Greenplum数据仓库平台应用的设计与开发人员;Greenplum 数据仓库平台的系统管理人员和数据库管理员;Greenplum 数据仓库平台的运行维护人员;参考资料《GPDB43AdminGuide.pdf》《GPDB43BestPractices.pdf》开发规范检查项本规范主要用于指导Greenplum数据库平台的开发,通过规范要求提升开发质量。本规范所提出的观点都是基于Greenplum数据库产品的最佳实践。同样,作为系统或者项目的管理者,也可以通过该规范对开发质量进行审查和监督。本章节的检查列表,是帮助系统管理人员审查开发质量,关注重点检查项。检查项目列表:序号分类检查项描述1系统级是否有按照开发规范创建数据库角色:1、创建子系统专用的用户2、非超级用户3、ETL跑批用户与前端用户区分开2资源队列检查:数据库角色归属的资源队列是否符合规范,不允许使用默认队列pg_default3tablespace检查:1、是否安装规范要求创建独立的tablespace。2、表是否按照要求创建到该tablespace中。3、检查相应的用户是否有配置默认tablespace4表属主检查:检查表的属主(owner)是否按照规范,表属主都应该是子系统的用户,一般属主应该是跑批用户(*_trans)。属主不允许是超级用户5库表设计检查子系统的中表数量6检查分区表设计是否符合规范1、如果表太大需要按天划分分区,只在半年内保留内的天分区;2、按月分区只在5年内保留月分区;3、五年前的历史分区都采用年分区;4、拉链表会有特殊的分区,如:p000101015、单个分区表,子分区数量不要超过300个。6、检查是否有没用的分区。是否有没用的子分区则需要结合具体的业务需求来定7检查是否需要设置为分区表,分区粒度是否合适。按照生产环境判断分区粒度的规则:1、表的总记录数超过3亿,单表容量超过50GB,需要把表设计为分区表2、该表在每个实例上记录数小于50万的表,无需进行分区,根据生产环境上实例数计算表总记录数小于XXX条记录,不需要设置为分区表3、单个子分区的记录数小于1000万,说明分区粒度太细8检查默认分区是否有过多的数据记录9检查表

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/503552.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

某些您可以编辑的区域交叠在一起 可能不能同时显示_DX200操作要领—修改与编辑程序(三十九)...

3.5 修改程序3.5.1 程序的调出1. 选择主菜单中的【程序内容】2. 选择【程序选择】–显示程序一览表。3. 选择要调出的程序3.5.2 程序相关画面程序相关画面有下面5种,可以确认/编辑每个程序的设定或登录。•程序标题画面显示和编辑注释、登录日期、编辑禁止的状态等。…

求二叉树中以x为根的子树的深度_还在玩耍的你,该总结啦!(本周小结之二叉树)...

给「代码随想录」一个星标吧!❝有学习就要有总结❞本周小结本周赶上了十一国庆,估计大家已经对本周末没什么概念了,但是我们该做总结还是要做总结的。本周的主题其实是「简单但并不简单」,本周所选的题目大多是看一下就会的题目&a…

oracle (+)的可读性,Oracle基础笔记一

1.基本 SELECT 语句1.基本 SELECT 语句SELECT 标识 选择哪些列。FROM 标识从哪个表中选择。注意:SQL 语言大小写不敏感。SQL 可以写在一行或者多行关键字不能被缩写也不能分行各子句一般要分行写。使用缩进提高语句的可读性。2.算术运算符( - * /)数字和日期使…

钉钉功能介绍_平棉集团组织召开阿里钉钉办公系统基础功能培训会

4月11日上午,平棉集团在总部26楼多媒体会议室组织召开阿里钉钉办公系统基础功能培训会,邀请河南一一信息技术公司经理杨杉前来授课。集团公司董事长张先顺及公司领导陈亚民、王仲山、王向阳、陶尚林,各生产经营单位主管销售工作的负责人和公司…

qemu搭建arm运行linux内核,centos使用qemu搭建ARM64运行环境

准备工作(1) linux 内核源码, 从github上获取git clone https://github.com/torvalds/linuxmake kernelversion(2) 交叉编译工具,从linaro官网(www.linaro.org)上获取解压后设置环境变量即可xz -d gcc-linaro-xxx.tar.xztar -xvf gcc-linaro-xxx.tarexpo…

java 某年某月中第几周 开始时间和结束时间_重磅!库里又要签下一超级大合同!4年2亿啊!退役时间也定了...

好家伙!现在的超级巨星都喜欢提前续约了,继詹姆斯与湖人签下两年8500万美元顶薪协议后,库里也有望达成这一成就。当地时间周一训练结束后,他接受采访谈到自己的续约问题,表示已经和球队交流过,同时明确表态…

vb ftp linux,VB FTP上传和下载模块

Option ExplicitPrivate Const INTERNET_OPEN_TYPE_DIRECT 1Private Const scuseragent "vb wininet"Private Const INTERNET_FLAG_PASSIVE &H8000000调用设置环境Private Declare Function InternetOpen Lib "wininet.dll" Alias "InternetOp…

python struct pack一个数组_Python中struct.pack的一个疑问

展开全部的确很奇怪。我试验了10几分钟,你按下面的方法来做就可以正确。import structzzz ("{Type:2}").encode("utf-8")length len(zzz)a struct.pack("%ds"%length,zzz)print(a)简单的说32313133353236313431303231363533e59b9e…

linux list 添加失败,linux运维实战案例之Argument list too long错误与解决方法

1、错误现象这是一台Mysql数据库服务器,在系统中运行了很多定时任务,今天通过crontab命令又添加了一个计划任务,退出时发生了如下报错:#crontab -e编辑完成后,保存退出,就出现下面如下图所示错误&#xff1…

软件项目周报模板_一份高质量的职场工作周报,要这样写

周报是会呼吸的痛,它会在每个周五来回滚动。几乎每个职场人都会为周报所折腰,因为周报看起来是小事,但又不仅仅是小事。周报,是职场人士对一周工作的总结和记录,是展示自己工作状态和成果的重要载体,是领导…

linux 多线程客户端服务端通信,[转载]多线程实现服务器和客户端、客户端和客户端通信;需要代码,留言...

一、实验名称动手打造自己的 IM二、实验目的1本次实验旨在锻炼大家的Socket编程能力,以日常生活中广泛使用的IM软件为背景,培养大家对于网络编程的兴趣。2、通过本次实验,培养linux环境下网络编程能力,使得我们对网络应用层的网络…

python安装sqap_python文件I/O

python文件I/O键盘读入:raw_input函数str raw_input("请输入: ")input函数,可以接受一个python表达式作为输入str input("请输入:")输入:[ x*5 for x in range(2, 10, 2)]open函数:f…

linux 设置ssh并发度,在linux如何使用ControlPersist加快SSH连接速度的问题

不经意间我们又来到了文章的学习,在众多学习中,我们的文章也许不起眼,但是想必大家都有很多问题吧,所以重要的下面我们就来讲解一下,大家一定要认真看奥!!Linux系统进行服务器配置管理迁移的时候…

linux下c标准库位置,C 标准库 IO 使用详解

其实输入与输出对于不管什么系统的设计都是异常重要的,比如设计 C 接口函数,首先要设计好输入参数、输出参数和返回值,接下来才能开始设计具体的实现过程。C 语言标准库提供的接口功能很有限,不像 Python 库。不过想把它用好也不容…

python调用系统_python 执行系统命令

Python中执行系统命令常见的几种方法:(1)os.system# 仅仅在一个子终端运行系统命令,而不能获取命令执行后的返回信息# 如果再命令行下执行,结果直接打印出来例如:>>> import os>>> os.system(ls)chk_err_log.py…

linux libbz2.so.1,libbz2.so.1.0: cannot open shared object file: No such file or directory

在解决这个报错的过程中,我学到了Linux下解决问题的一种新思路。这个报错很早之前就遇到过,当时是用自己安装的miniconda来下载安装samtools(非root用户),安装完成之后运行就这样报错了,但是其他的软件又可以正常运行,…

python文件对象是可以迭代的_详解python可迭代对象、迭代器和生成器

可迭代对象什么是可迭代对象?顾名思义就是可以迭代的一个对象,再通俗点就是可以被for循环遍历的对象,如常用的list、str等数据类型。我们可以使用isinstance来判断这个数据是否是可迭代对象,在此要先从Iterable包中导入模块collec…

linux更改nginx最大访问数,Linux下nginx服务的配置文件nginx.conf中模块的讲解之配置limit_conn_zone来限制并发连接数以及下载速率...

一、限制并发连接数的配置方法如下:1、在nginx.conf里的http{}里加上如下代码:# vim /usr/local/nginx/conf/nginx.conf#在其中的36行加入下面的内容(在http{}模块中加入的)limit_conn_zone $binary_remote_addr zoneaddr:10m;#解释内容如下:要限制连接&…

python实现杨辉三角形博客园_Python实现杨辉三角

杨辉三角,是二项式系数在三角形中的一种几何排列。在欧洲,这个表叫做帕斯卡三角形。帕斯卡(1623----1662)是在1654年发现这一规律的,比杨辉要迟393年,比贾宪迟600年。杨辉三角是中国古代数学的杰出研究成果之一,它把二…

ftm模块linux驱动,飞思卡尔k系列_ftm模块详解.doc

飞思卡尔k系列_ftm模块详解1.5FTM模块1.5.1 FTM模块简介FTM模块是一个多功能定时器模块,主要功能有,PWM输出、输入捕捉、输出比较、定时中断、脉冲加减计数、脉冲周期脉宽测量。在K10中,共有FTM0,FTM1,FTM2三个独立的F…