vertica常用sql语句总结

在使用vertica的过程中,需要使用一些系统表对数据库集群进行监控,现对一些常用的sql语句进行总结。

1.查看session信息

select * from sessions;

2.关闭某个session

select CLOSE_SESSION ('sessionid');

sessionid由1中的查询获得
3.导出表结构

select export_objects('','tablename');

第一个参数为null表示将结果输出到屏幕,也可以换成一个绝对路径将结果输出到文件中。
4.收集统计信息

select analyze_statistics('tablename');

该函数其实有3个参数,除了表名外,后边还有可选的列参数及收集信息时的抽样百分比(默认为10%)。
5.查看license信息

select audit_license_size();

该函数会输出license允许的数据量及license到期日期,以及目前的数据量。
6.查看某个schema下的所有表的实际占用空间(压缩后的空间使用)

   SELECT 
   anchor_table_schema,
   anchor_table_name,
   SUM(used_bytes) / ( 1024^3 ) AS used_compressed_gb 
   FROM   v_monitor.projection_storage
   Where anchor_table_schema = 'public'
   GROUP  BY anchor_table_schema,
   anchor_table_name;

当然,也可以指定anchor_table_name来查看某个表的压缩后的空间占用。
7.查看某个表下的projection信息

 select get_projections('tablename');

8.对某个表的projection进行刷新
有两种方法:

select START_REFRESH();

该方法会刷新当前schema下的所有未更新到最新的projections,默认会在后台异步执行。

select refresh('tablename');

该方法在前台异步执行,会刷新一个或多个表(参数可以用逗号隔开)。若不指定参数,会刷新所以过期的projections。
9.查看刷新过程及状态

selECT * from projection_refreshes where refresh_status = 'refreshing';

查看哪些projection正在执行刷新。
10.查看每个节点,每个projection的ros容器个数

SELECT node_name, projection_schema, projection_name, SUM(ros_count) AS ros_count FROM v_monitor.projection_storage GROUP BY node_name, projection_schema, projection_name ORDER BY ros_count DESC;

vertica要求每个节点,每个projection的ros容器个数不超过1024,否则,在进行数据加载时可能会报错。
11.查看某个projection的分区个数

seleCT projection_name,count(distinct partition_key) from partitions group by projection_name order by projection_name;

通过对partitions系统表的查询,可以获得更多的分区信息。
12.ros合并操作

select DO_TM_TASK('task'[, '[database.]schema.]{table | projection}]');

常用的task有两个,分别是moveout和mergerout。

  • Moveout将数据从WOS复制到Tuple Mover,然后复制到ROS, 数据被分类,编码和压缩成列文件。
  • Mergeout将较小的ROS容器组合成较大的容器,以减少碎片。

13.查看正在运行的ros合并操作

seleCT projection_name,ros_count,total_ros_used_bytes from tuple_mover_operations where table_name = 'tablename' and operation_status = 'Running' group by projection_name,ros_count,total_ros_used_bytes order by projection_name;

14.查看加载和拒绝的记录数的一些信息

SELECT schema_name, table_name, load_start, load_duration_ms, is_executing, parse_complete_percent, sort_complete_percent, accepted_row_count, rejected_row_count FROM v_monitor.load_streams;
  • 4
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值