Appearance
一、手工数据上传到s3
1. 点击上传按钮
2. 添加文件,上传
3. redshift中建表(首次导入需要建表),语句如下:
SQL
CREATE TABLE bnp_internal.uf_revenue_accrual
(
bill_to_id character varying(256),
customer_number character varying(256),
customer_name character varying(256),
bill_to character varying(256),
sop_type character varying(256),
item_site_id character varying(256),
sop_number character varying(256),
document_date date ,
gl_posting_date date ,
item_number character varying(256),
item_description character varying(256),
extended_price numeric(18, 5) ,
period character varying(256),
internal character varying(256),
amount numeric(18, 5),
inv_type character varying(256),
pk_id integer NOT NULL identity(1, 1) ,
pt timestamp without time zone DEFAULT ('now'),
PRIMARY KEY (pk_id)
) DISTSTYLE AUTO
SORTKEY
(pk_id);
Pk_id + pt 是全表唯一主键
Pk_id 是每次导入自动生成的唯一号
pt 为插入表中的时间
4. 执行copy命令,将手工数据插入表中(注意:copy是追加数据,如果想要全量覆盖,要先清空数据再全量插入)
SQL
COPY accounting.bnp_internal.uf_revenue_accrual
(bill_to_id, customer_number, customer_name, bill_to, sop_type, item_site_id, sop_number, document_date, gl_posting_date, item_number, item_description, extended_price, period, internal, amount, inv_type)
FROM 's3://bi-upload-manual/accounting/sales_report/UF Revenue Accrual/pt=2024-09-19/UF Revenue Accrual.csv'
IAM_ROLE 'arn:aws:iam::814820688657:role/service-role/AmazonRedshift-CommandsAccessRole-20240415T074151'
FORMAT AS CSV DELIMITER ',' QUOTE '"' IGNOREHEADER 1 REGION AS 'us-west-2'
;
二、数据处理
1. 手工数据与ar_invoice_line数据合并后做特定处理,如 location、service type 的映射匹配
2. 执行unload命令将处理后的结果保存到s3(每次的结果可以保留一个版本)
三、Cube创建
1. 在平台上点击 new ,选择要使用的表(第二步骤中数据处理后的结果表,此例中表名为 sales_report)
2. 选好表后,点击 OK
必填项:cube的一级tag、二级tag、cube名称、度量(MEASURE)表达式
非必填项:可增删改 维度(DIMENSIONS)和 随意拖拽维度到filter/row/column
a、修改维度字段:
b、删除维度字段:点击Delete
c、增加新的维度字段:
d、编辑度量表达式
Redshift中支持的函数见文档:
https://docs.aws.amazon.com/zh_cn/redshift/latest/dg/c_Aggregate_Functions.html
e、拖拽维度字段到filter/row/column
选中维度字段不放,放到想要的位置即可。
Filter :筛选器,即过滤条件,SQL中where里面的表达式
Row:透视表的行头
Column :透视表的列头
f、以上步骤中配置好后点击保存按钮,即创建了一个新的cube。
g、查看cube数据点击view
注意:创建cube时,filter/row/column中拖拽了哪些字段,measure勾选了哪个字段,点击view默认展示哪些字段