Greenplum操作

1. 管理命令

2.1 数据库启动


$ gpstart [-a|-m]

# -a: 直接启动,不提示终端用户输入确认

# -m: 只启动master实例,主要是故障处理时使用

2.2 数据库停止


$ gpstop [-a|-m|-f|-u]

# -a: 直接停止,不提示终端用户输入确认

# -m: 只停止master实例

# -f: 停止数据库,中断所有数据库连接,回滚正在运行的事务

# -u: 不停止数据,只加载pg_hba.conf和postgresql.conf中的运行时参数。

2.3 查看数据分布


select gp_segment_id, count(1) from tablename group by 1;

2.4 收集统计信息,回收空间

定期使用vacuum analyze tablename收集统计信息,回收空间。尤其是大数据量删除或导入后。

2.5 实例恢复

通过gpstate或gp_segment_configuration发现实例down掉,可以用gprecoverseg启动down掉的实例。

2. SQL

数据库、表名、结构


# 通过命令行查询

\d 数据库 —— 得到所有表的名字

\d 表名 —— 得到表结构



# 通过SQL语句查询

"select * from pg_tables" —— 得到当前db中所有表的信息(这里pg_tables是系统视图)

"select tablename from pg_tables where schemaname='public'" —— 得到所有用户自定义表的名字(这里"tablename"字段是表的名字,"schemaname"是schema的名字。用户自定义的表,如果未经特殊处理,默认都是放在名为public的schema下)

执行计划


explain [analyze] sql

3. 流处理

kafka(json) -> greenplum

安装扩展包


# 登录对应数据库

$ psql -d postgres



postgres=# CREATE EXTENSION gpss;

Yaml配置文件


$ vi ods_mac_track.yaml



DATABASE: bigdataDB

USER: gpadmin

HOST: host106

PORT: 5432

KAFKA:

  INPUT:

    SOURCE:

      BROKERS: host106:9092,host107:9092,host108:9092

      TOPIC: mac_data

    COLUMNS:

      - NAME: jdata

        TYPE: json

    FORMAT: json

    ERROR_LIMIT: 1000

  OUTPUT:

    TABLE: ods_mac_track

    MAPPING:

      - NAME: track_id

        EXPRESSION: (jdata->>'track_id')::text

      - NAME: mac

        EXPRESSION: (jdata->>'mac')::text

      - NAME: source

        EXPRESSION: (jdata->>'source')::int4

      - NAME: service_code

        EXPRESSION: (jdata->>'service_code')::text

      - NAME: geo_point

        EXPRESSION: (jdata->>'geo_point')::point

      - NAME: geo_hash7

        EXPRESSION: (jdata->>'geo_hash7')::text

      - NAME: geo_md5

        EXPRESSION: (jdata->>'geo_md5')::text

      - NAME: start_time

        EXPRESSION: (jdata->>'start_time')::timestamp

      - NAME: end_time

        EXPRESSION: (jdata->>'end_time')::timestamp

      - NAME: phone

        EXPRESSION: (jdata->>'phone')::text

      - NAME: stay_time

        EXPRESSION: (jdata->>'stay_time')::int8

  COMMIT:

    MAX_ROW: 10000

启动


gpkafka load [--quit-at-eof] [{--force-reset-earliest | --force-reset-latest}] [--debug-port portnum] [-v | --verbose] config.yaml

gpkafka load {-h | --help} 



$ gpkafka load ods_mac_track.yaml

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值