自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(71)
  • 收藏
  • 关注

转载 hive 中decimal类型

Hive decimal类型,最好指定长度吧。刚开始以为Hive的decimal类型和MySql一致。后来发现想错了,还是个大坑! Hive的decimal类型借鉴于Oracle,decimal(m,n)表示数字总长度为m位,小数位为n位,那么整数位就只有m-n位了。这与MySql是不一样的,MySql就直接表示整数位为m位了。 如果你在使用Hive的时候发现字段长度不够,那会出现什么样的问题呢?Hive在处理数值字段的时候会直接置该字段值为NULL,不会将它截去。 如果你建的表不带...

2021-06-15 11:32:50 7709 2

原创 事物特性、隔离级别

1、事务的四大特性:ACID原子性:事务包含的操作,要么全部提交,要么全部回滚;一致性:事务必须使数据库从一个一致性状态变到另外一个一致性状态,即数据库不论事务实行前后都必须处于一个一致性状态 例如:A B两个账户之间不论怎么转账,转账前后,两个账户的和相同;隔离性:多个并发事务之间相互隔离;即要达到这么一种效果:对于任意两个并发的事务T1和T2,在事务T1看来,T2要么在T1开始之前就已经结束,要么在T1结束之后才开始,这样每个事务都感觉不到有其他事务在并发地执...

2021-02-18 19:27:09 192

转载 Python中零碎知识点记录

1:输出格式化: 对齐方式:星号用于加强显示效果,默认是空白 print ‘{:<30}’.format(‘左对齐’) # 左对齐************ print ‘{:>30}’.format(‘右对齐’) # ************右对齐 print ‘{:^30}’.format(‘居中对其’) # **居中对其* 字符串处理相关文章:http://blog.mcxiao

2016-01-21 18:20:29 389

转载 python面向对象--类学习记录

1:python支持封装、继承,但不支持多态; 2:在python中,类还可以继承多个类,在继承多个类时,它对类中的函数查找有两种方式: 在python3.X之后,都是广度优先; python2.7中广度优先的前提条件:D继承BC,BC又同时继承A,只有满足这个条件,新式类才会遵循广度优先,否则不会;( 新式类 :当前类或者基类继承了objiect类就叫新式类,否者

2016-01-20 19:16:10 316

原创 python脚本之间的引用

引用同一目录下的脚本: main_use_new2.py和tran.py为同一目录下脚本,pre_month_day为tran.py中的一个函数: main_use_new2.py脚本内容如下: from tran import pre_month_dayprint(pre_month_day(‘20160331’,13))执行main_use_new2.py脚本即可 –注意此时借用tran

2016-01-18 19:13:09 2197

转载 python中的时间函数编写

#coding=utf-8import calendar as calfrom datetime import datetime, timedeltadef last_day(date):    '''    ---------------------------------------------------------    @名称     --%@NAME:

2016-01-15 18:40:55 866

转载 GP优化

1.数据仓库优化原则尽可能使用压缩、按列存储将视图替换成实际的表将复杂查询拆分,利用中间表复用中间结果,一方面可以减少重复计算,节省IO, 另一方面也可以降低内存使用,提高效率。2. GP DB的SQL程序开发优化规范1、批量数据处理后,无论成功与否,都应该进行vaccum analyze .2、对于大表的DISTINCT操作,请用 GR

2016-01-08 19:06:53 1066

转载 GP数据库备份

1.表的逻辑备份方式1) 备份表结构及数据:create table new_tablename as select * from old_tablename;或select * into new_tablename from old_tablename where 1=1;2) 仅备份表结构(不备份数据):select * into new_table name fr

2016-01-08 19:05:37 2797

转载 GP与ORACLE数据库语法差异汇总

1. 基本数据类型差异 Oracle数据库 GP数据库  VACHAR2 VACHAR  CLOB TEXT   DATE DATE/TIME/TIMESTAMP  NUMBER NUMERIC/SMALLINT/INTEGER/BIGINT/REAL/DOUBLE PRECISION  BLOB BYTEA  alter table

2016-01-08 18:59:48 6848 2

原创 GP中外部表数据装载

CREATE EXTERNAL TABLE ext_expenses ( name text, date date,  amount float4, description text )LOCATION ('gpfdist//etlhost:8081/*','gpfdist//etlhost:8082/*')FORMAT 'TEXT' (DELIMITER '|')ENCODING

2016-01-08 18:49:38 5528

原创 GP中copy命令

--把外部文件(cvs格式)copy至数据库内部表mytable中COPY mytable FROM '/data/myfile.csv' WITH CSV HEADER; (文件生成在Master)\COPY mytable FROM ‘/data/myfile.csv’ WITH CSV HEADER;(文件生成在本地)--把 '|' 为分隔符的外部文件copy至数据库内部

2016-01-08 18:46:56 8107

转载 GP数据移植注意事项

1.移植/ETL开发过程中的注意事项(1). 在功能没有变化的情况下,除性能问题外,最好保留脚本原来的逻辑,只进行语法移植(将Oracle的特殊SQL语法转换为Greenplum DB能识别的ANSI【美国国家标准委员会】语法);(2).对于在朝GP数据库移植或新功能开发中需注意以下几类情况:Ø ETL脚本中的Oracle创建临时表SQL语句,需要修改,注意数据类型、数据分布等;

2016-01-08 18:45:21 1547

原创 GP中外部表例子

创建外部表注意事项:同一台机器上的外部表对应的gpfdist端口号尽量错开,从8081-8088gpfdist -p 8081 -d /ftp2/interface/data/GPload_home创建可写外部表:Greenplum也支持对外部表的写操作。这需要在创建表的时候指定写关键字:CREATE WRITABLE EXTERNAL TABLE weblogs(

2016-01-08 18:39:05 5593

原创 GP中的临时表

create global temporary table tkr_audi_samp_m_temp(  deal_date    numeric(8),  prov_id      character varying(5),  element_id   numeric(10),  strategy_id  numeric(10),  cnt          numeri

2016-01-08 18:37:48 4208

原创 GP数据库中的表

1.创建表1) 创建普通表:CREATE  TABLE  table_name (     column_1    integer PRIMARY KEY DEFAULT   nextval('sequence_name'),    --为表建立主键,并设置默认值为sequence自动生成;     column_2    varchar(40) NOT NULL,--

2016-01-08 18:36:19 12932

原创 GP数据库开发语句

select to_number('1234','99999')  --1234select to_number('1234','999')  --123查看建表语句select show_tableinfo('dw', 'tb_cartoon_mag_info_d');在命令窗口查看表结构\d gp查看credit4表字段信息select * fr

2016-01-08 18:34:13 8608 1

原创 GP数据库系统管理语句

gpconfig -s max_connections;--查看最大连接数psql -h 10.255.235.96 -p 5432 -d ac -U gpconnectselect  count(*) from pg_stat_activity;--查看连接数据库的活跃会话数查询GP数据库中表的数据量,去除系统表、外部表--select schemaname,tablen

2016-01-08 18:31:30 3228

转载 GP-Sql基础语法

SELECT SELECT select_list    FROM table_expression    [ORDER BY sort_expression1 [ASC | DESC] [, sort_expression2 [ASC | DESC] ...]]    [LIMIT { number | ALL }]  [OFFSET number]用户与ORACLE相似,l

2016-01-08 18:27:52 14360

原创 GP-sql编写原则

一、大表与小表关联    A、避免小表left join大表        解决方案:        小表left join(大表inner join小表的结果),其中可能还需要去重等结合实际逻辑的处理    B、分布键不是关联键,导致大表重分布现象        解决方案:        及时为大表收集统计信息,让GP将大表作为大表处理,而不是作为小表处理     

2016-01-08 18:26:10 2112

原创 GP管理-基本语法

一:创建数据库1:create database new_dbname;2:客户端程序createdb,通过命令行:createdb -h masterhost -p 5432 new_dbname;3:克隆数据库缺省情况,创建数据库是通过克隆template1的方式完成的;可以通过克隆任何一个DB来创建新的数据库:create database new_dbname te

2016-01-08 18:19:17 1904

转载 GP数据加载卸载

在gp中提供了几种方式用于加载和卸载数据:external tables、gpload、copy等等,这几种方式没有优劣之分,只是在不同场景下使用不同的技术而已。本文将首先测试使用外部表的方式进行加载和卸载数据。外部表-external tables,分为只读readable和只写writable两种类别,而每种又可以分为常规regular和web两种类型。

2016-01-08 18:17:35 2938

原创 Linux if 语法

if [  ] 语句中参数意思:[ -n "${var}" ]  参数var长度大于0,则为真;例子:test_a.txt #! /bin/shstr=$1if [ -n "${str}" ]then   echo "your input is '${str}' "else  echo "your input is 'null' "fi  

2016-01-08 18:04:36 315

转载 linux在shell中获取时间

linux在shell中获取时间获得当天的日期#!/bin/bash#/bin/datev_date=`/bin/date`v_date_1=$(date +%Y%m%d)v_day=`date +%Y%m%d`v_next=$(date -d next-day +%Y%m%d)echo $v_table$v_dateecho $v_table$v_

2016-01-08 17:59:13 524

转载 浅谈 PostgreSQL 的 timestamp 类型

PostgreSQL: 浅谈 PostgreSQL 的 timestamp 类型一 PostgreSQL 中的时间类型如下Name                                          Storage Size   Description                                 Low Value    High Valu

2016-01-08 17:54:20 25436

原创 GP数据库中时间函数例子

select to_timestamp(current_timestamp,'yyyy-mm-dd hh24:mi:ss')2015-11-27 15:40:01+08select current_timestamp(0)2015-11-27 15:42:56+08select current_timestamp(0)::timestamp2015-11-27 15:43:20

2016-01-08 17:52:37 16394

原创 python3.5[No module named 'encodings']报错

2015年12月份遇见的问题,报错详细信息:执行外部程序任务tmk_mail_use_cdr_h命令python /etl11/vgop_ac_gp/src/mail/mk/tmk_mail_use_cdr_h.py PRO_GPMK_tmk_mail_use_cdr_h tmk_mail_use_cdr_h 20151222 Fatal Python error: Py_Initia

2016-01-08 17:29:55 34029

原创 GP基础汇总

Copy语句使用:copy tbl_a to '/tmp/tbl_xulie.sql';copy tbl_a from '/tmp/tbl_xulie.sql';  序列中的setval重置序列对象的计数器数值。双参数的形式设置序列的 last_value 字段为声明数值并且将其 is_called 字段设置为 true,表示下一次 nextval 将在返回数值之前递增该序

2015-07-18 19:25:31 698

转载 append_only表相关

在greenplum里面有一种appendonly表,只能insert,不能update、delete的一种表。压缩表、列存储表,必须是appendonly的表。下面介绍appendonly表的一些特性。1.首先建一张appendonly的表:[sql] view plaincopy1. aligputf8=# create table cxf_test1 with(appendonl

2015-07-18 19:23:54 2360

转载 GP中数据管理

Greenplum产品是基于流行的PostgreSQL之上开发,几乎所有的PostgreSQL客户端工具及PostgreSQL应用都能运行在Greenplum平台上。PostgreSQL支持大部分 SQL标准并且提供了许多其他现代特性:复杂查询、外键、触发器、视图、事务完整性、MVCC。同样,PostgreSQL 可以用许多方法扩展,比如, 通过增加新的数据类型、函数、操作符、聚集函数、索引方

2015-07-18 19:19:21 759

转载 Python脚本访问Greenplum数据库安装指导

安装前准备(1)操作系统(系统上面要安装一些必备的开发工具(比如gcc等))linux-82:/home/PyODBC # cat/etc/SuSE-releaseSUSE Linux EnterpriseServer 11 (x86_64)VERSION = 11PATCHLEVEL = 1(2)安装所需的软件包gree

2015-07-18 19:13:07 953

原创 Oracle中分区汇总

CREATE TABLE "VGOPDW"."TDW_READ_CHAPTER_VISIT_CDR_D"    ( "STATIS_MONTH" NUMBER(6,0),  "STATIS_DATE" NUMBER(8,0),  "USER_SERV_NUMBER" NUMBER(12,0),  "LAST_2_NUM" NUMBER(2,0) GENERATED ALWAYS A

2015-06-25 18:22:07 428

原创 Oracle中的sqlldr

Oracle--sqlldr用法sqlldr VGOPDW/omzleSYC#565@TMDA CONTROL=63227_sqlldr.CTL log=63227_sqlldr.logSQL*LOADER是ORACLE的数据加载工具,通常用来将操作系统文件迁移到ORACLE数据库中。SQL*LOADER是大型数据仓库选择使用的加载方法,因为它提供了最快速的途径(DIRECT,PARA

2015-06-25 18:21:00 490

原创 Oracle中的去重

1。用rowid方法据据oracle带的rowid属性,进行判断,是否存在重复,语句如下: 查数据:      select * from table1 a where rowid!=(select   max(rowid)   from table1 b where a.name1=b.name1 anda.name2=b.name2......)删数据:     delete   fr

2015-06-25 18:20:02 2101

原创 Oracle中的锁

SELECT a.* FROM V$LOCKED_OBJECT a,DBA_OBJECTS bwhere a.object_id=b.object_id and b.object_name like '%TDW_CARTOON_ROW_D%'and b.owner='VGOPDW'select T2.USERNAME,t1.SID,t1.TYPE,t1.LMODE,t1.REQUE

2015-06-25 18:17:54 440

原创 Oracle中创建数据库链接

PEAKSTS =  (DESCRIPTION =    (ADDRESS_LIST =      (ADDRESS = (PROTOCOL = TCP)(HOST = 10.248.3.45)(PORT = 1521))    )    (CONNECT_DATA =      (SERVICE_NAME = tmda)    )  )create datab

2015-06-25 18:16:18 889

转载 Oracle中RAC Failover 详解

Oracle RAC Failover 详解 Oracle  RAC 同时具备HA(High Availiablity) 和LB(LoadBalance). 而其高可用性的基础就是Failover(故障转移).它指集群中任何一个节点的故障都不会影响用户的使用,连接到故障节点的用户会被自动转移到健康节点,从用户感受而言, 是感觉不到这种切换。  Oracle 10g RAC 的Fai

2015-06-25 18:13:10 500

原创 Oracle中的单引号(转义)

ORACLE单引号转义:在ORACLE中,单引号有两个作用:    1:字符串是由单引号引用    2:转义。  单引号的使用是就近配对,即就近原则。而在单引号充当转义角色时相对不好理解  1.从第二个单引号开始被视为转义符,如果第二个单引号后面还有单引号(哪怕只有一个)。        SQL> select '''' result from dual;  RESUL

2015-06-25 18:10:39 53930

原创 Oracle中hint提示

oracle常用的HINT提示如何干预执行计划 - - 使用hints提示         基于代价的优化器是很聪明的,在绝大多数情况下它会选择正确的优化器,减轻了DBA的负担。但有时它也聪明反被聪明误,选择了很差的执行计划,使某个语 句的执行变得奇慢无比。此时就需要DBA进行人为的干预,告诉优化器使用我们指定的存取路径或连接类型生成执行计划,从而使语句高效的运行。例如,如果我 们

2015-06-25 18:08:36 412

原创 Oracle--正则表达式常用例子汇总

正则表达式用于字符串处理、表单验证等场合,实用高效。现将一些常用的表达式收集于此,以备不时之需。用户名:/^[a-z0-9_-]{3,16}$/密码:/^[a-z0-9_-]{6,18}$/十六进制值:/^#?([a-f0-9]{6}|[a-f0-9]{3})$/电子邮箱:/^([a-z0-9_\.-]+)@([\da-z\.-]+)\.([a-z\.]{2,6})$/URL:

2015-06-25 17:46:02 931

原创 Oracle--正则表达式例子

-- 查询value中不是纯数字的记录select * from fzq ;select * from fzq where  regexp_like(value,'^[[:digit:]]+$');--以数字开头,并且匹配多次,直到结尾select * from fzq where  regexp_like(value,'^[[:digit:]]+');--以数字开头,并且含有一个或多

2015-06-25 17:43:43 395

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除