AWS-Redshift
|ChuckChen|
本博客为记录作者平时测试与学习笔记,并分享给大家。专注原创。希望可以带给大家一些技术上的分享。
本博客仅作者本人所有, 与 AWS 官方没有任何关联。所有言论也仅代表作者本人。
展开
-
AWS- Redshift - 延迟维护
Amazon Redshift 保留 30 分钟的每周时段,以应用升级并执行任何其他计划的维护活动,例如更换节点以避免硬件故障。您可以使用 AWS 管理控制台上的修改群集设置或使用修改群集 API,为维护时段选择日期和时间。如果计划的维护时段内没有要执行的维护任务,则集群将继续正常运行至下一个计划的维护时段。业务活动高峰期间,您可能希望将计划的维护推迟到不太繁忙的时间。通过使用“延期维护”功能,您现在可以推迟计划的维护。Amazon Redshift 会等待以下维护时段以应用软件更新。如果在集群上安排了原创 2020-11-23 17:29:08 · 275 阅读 · 0 评论 -
AWS - Redshift - 时区 Timezone
Redshift 中, 您不能使用集群参数组设置 timezone 配置参数。使用 SET 命令只能为当前会话设置时区。要为某个特定数据库用户运行的所有会话设置时区,请使用 ALTER USER 命令。ALTER USER … SET TIMEZONE 将更改后续会话的时区,而不是更改当前会话的时区。日期时间类型(1) 当您创建表时, 若使用日期时间类型为不包含 TZ (time zone), 那么您插入数据时, 无论是否有时区, 结果都为您插入的结果,并且忽略时区。例如:-- t_nt..原创 2020-10-22 17:17:06 · 789 阅读 · 0 评论 -
AWS Redshift - 不同分配方式表及多表联接的执行计划
– 准备测试表及数据create table t1_even (id int, col1 varchar(100), col2 varchar(100)) diststyle key distkey (id);create table t2_even (t1_id int , col1 varchar(100), col2 varchar(100)) diststyle even;create table t3_key (t1_id int, col1 varchar(100), col2 varch原创 2020-09-12 15:44:49 · 467 阅读 · 0 评论 -
AWS Redshift - 查询的执行计划(1)
首先,需要了解一条查询在 Redshift 中所执行的步骤。领导节点接收查询并解析 SQL。、分析程序生成初步查询树,后者是原始查询的逻辑表示。然后,Amazon Redshift 将该查询树输入到查询优化程序中。优化器会评估,如有必要,请重新写入查询以最大程度提高效率。这个过程有时会导致创建多个相关查询来替换单个。优化程序生成查询计划(或若干以上步骤,如果上一步导致执行多个查询),则执行最佳性能。查询计划指定执行选项,例如联接类型、联合订单、聚合选项和数据分发要求。执行引擎将原创 2020-09-09 17:23:26 · 629 阅读 · 0 评论 -
Redshift - 如何设计表
AWS Redshift 中设计表AWS Redshift 是基于 PostgreSQL 的数据仓库。 那么如何创建一个表, 这个表的创建于普通的关系型数据库的表有什么不同呢?在创建 Redshift table 时, 可以选择排序键、分配方式和压缩编码。设计表是为了 减少 I/O 操作数和尽量减少处理查询所需的内存。Sort key:排序键将您的数据按照排序顺序存储在磁盘中。Amazon Redshift 查询优化程序在确定最佳查询计划时会使用排序顺序。如何选择排序键:根据需要频繁查询的数原创 2020-09-09 00:08:06 · 882 阅读 · 0 评论 -
Amazon Redshift - 基本介绍
Amazon Redshift 数据仓库是一个企业级的关系数据库查询和管理系统。特点:支持与多种类型的应用程序建立客户端连接多阶段操作。(检索、比较、计算)MPP(大规模并行处理), 列式存储,架构:基于 PostgreSQL 8.0.2 , 通过 PostgreSQL JDBC 和 ODBC 驱动程序进行通信。以集群形式存在。群集由一个或多个组成 compute nodes 。如果群集配置了两个或以上计算节点,则需要 leader node 协调 compute 节点并处理外部通信。原创 2020-09-03 11:52:44 · 3372 阅读 · 0 评论 -
AWS - Redshift -跨账号导入 S3 数据
Redshift 跨账号导入 S3 数据在 S3 桶账户中,创建可读取S3的 策略。建一个关联其他账号的role,并将(1)中建的策略附给role。在redshift账号中创建策略,将以下内容输入到json选项卡{ "Version": "2012-10-17", "Statement": [ { "Sid": "CrossAccountPolicy", "Effect": "Allow",原创 2020-07-07 09:14:22 · 545 阅读 · 0 评论 -
AWS - Redshift - Unload 数据到S3产生的文件名
当 Redshift Unload 数据时,文件名称会根据表的分配方式及数据分布有关。实验一: 表分配方式为 ALL,数据存在在多个节点,无法预计从哪个节点导出数据。默认情况下,表数据量小时,按ALL分配,变大之后改为EVEN-- Create Tabletestdb=# create table test_unload_19_all (id int);CREATE TABLE-- Insert rowtestdb=# insert into test_unload_19_all values原创 2020-06-19 13:18:00 · 622 阅读 · 0 评论 -
AWS - Redshift - 数据库 schema 表 之间的关系
关于Redshift 中不同库之间的关系。以及schema 之间的关系。-- 准备工作:-- 使用master user-- 建DB, db1, db2-- 在db1中和db2中 建Schema, haha-- 建用户, u1, u2testdb=# create database db1;CREATE DATABASEtestdb=# create database db2;CREATE DATABASEtestdb=# \c db1;psql (12.2, server 8.0.原创 2020-06-10 21:01:59 · 786 阅读 · 0 评论 -
AWS - Redshift - 4个在单节点集群找不到的性能指标
如果是Redshift Cluster单节点, 在 CloudWatch 监控中是看不到这四个指标的。如果想要监控的话,需要增加为多节点。#监控项中,共有4项均为多节点监控值。QueriesCompletedPerSecondQueryDurationWLMQueriesCompletedPerSecondWLMQueryDuration这个在官方文档中并没有说明。是通过非官方文档找到,并自己测出来的。https://docs.amazonaws.cn/redshift/latest/mgmt原创 2020-06-10 14:24:52 · 282 阅读 · 0 评论 -
AWS - DMS - Redshift 作为目标端时的
当 Redshift 集群作为 DMS 中的 目标端 时, IAM Role的这一步经常会被忽略。导致在执行DMS任务时,发现 表已经被创建在目标端了,但是数据确没过去。查看日志,只有一条Warning,Table 'public'.'tablename' (subtask 1 thread 1) is suspended (replicationtask.c:2471)。再无其他信息。这时我们束手无策。返回头去查文档,发现没什么问题啊。同账号,同区域,网络都通,Role创建了,没有LOB。AWS原创 2020-06-06 00:45:11 · 496 阅读 · 0 评论 -
AWS - Redshift - 表和表存储的一些查询
redshift 针对 表信息,存储的查询:-- 查看表信息, diststyle, sizeselect * from pg_catalog.svv_table_info where "table" = 'tablename';-- 查询每个 slice select slice, col, num_values as rows, minvalue, maxvalue from svv_diskusagewhere name='tablename';-- 表中每一列的 1 MB 块的数目原创 2020-06-04 19:53:39 · 1317 阅读 · 0 评论 -
AWS - Redshift - 锁
AWS Redshift 是云中数据仓库服务。通过大规模并行处理、列式数据存储和非常高效且具有针对性的数据压缩编码方案的组合,实现高效存储和最优查询性能。AWS Redshift中有三种锁定模式:[1]AccessExclusiveLock:主要在 DDL 操作过程中获取,如 ALTER TABLE、DROP 或 TRUNCATE。AccessExclusiveLock 将阻止其他所有锁定尝试。AccessShareLock:在 UNLOAD、SELECT、UPDATE 或 DELETE 操作过程中原创 2020-06-04 18:17:33 · 448 阅读 · 0 评论 -
AWS - Redshift - Spectrum 外部数据
创建IAM Role在 Select your use case 下,选择 Redshift - Customizable,然后选择 Next: Permissions。此时显示 Attach permissions policy 页面。选择 AmazonS3ReadOnlyAccess 和 AWSGlueConsoleFullAccess(如果使用的是 AWS Glue 数据目录)。或选择 AmazonAthenaFullAccess(如果使用的是 Athena Data Catalog)。选..原创 2020-06-04 16:32:41 · 365 阅读 · 0 评论 -
AWS - redshift 中的锁
AWS Redshift 是云中数据仓库服务。通过大规模并行处理、列式数据存储和非常高效且具有针对性的数据压缩编码方案的组合,实现高效存储和最优查询性能。AWS Redshift中有三种锁定模式:[1]AccessExclusiveLock:主要在 DDL 操作过程中获取,如 ALTER TABLE、DROP 或 TRUNCATE。AccessExclusiveLock 将阻止其他所有锁定尝试。AccessShareLock:在 UNLOAD、SELECT、UPDATE 或 DELETE 操作过程中获原创 2020-05-28 20:36:07 · 804 阅读 · 0 评论