Skip to content

一、手工数据上传到s3

1. 点击上传按钮

Example Image

2. 添加文件,上传

Example Image

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 的映射匹配

Example Image

2. 执行unload命令将处理后的结果保存到s3(每次的结果可以保留一个版本)

Example Image

三、Cube创建

1. 在平台上点击 new ,选择要使用的表(第二步骤中数据处理后的结果表,此例中表名为 sales_report)

Example Image

2. 选好表后,点击 OK

Example Image 必填项:cube的一级tag、二级tag、cube名称、度量(MEASURE)表达式

非必填项:可增删改 维度(DIMENSIONS)和 随意拖拽维度到filter/row/column

Example Image

a、修改维度字段:

Example Image

b、删除维度字段:点击Delete

c、增加新的维度字段:

Example Image

d、编辑度量表达式

Example Image

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

Example Image 注意:创建cube时,filter/row/column中拖拽了哪些字段,measure勾选了哪个字段,点击view默认展示哪些字段 Example Image

四、Report创建

1. 在查看cube页面,可随意更改条件,点击save to report 按钮保存成想要的Report

Example Image

2. 弹窗填写:report id/report name/report type 后点击save即可保存Report

Example Image

3. 查看Report:

Example Image

五、邮件配置:可将Report以邮件形式发送给用户查看

1. 创建邮件配置信息:

Example Image

2. 弹窗填写:收件人、抄送、邮件题目、Report列表(可多选)、邮件发送频率(每天、每周、每月),Report数据的文件类型(xlsx/csv),点击保存即可。

Example Image