# 教程(Tutorial)
# 为何使用DASTRO®?
随着企业的数据量越来越庞大,60%的企业都认为数据挑战巨大,企业越来越需要一个可以流程化处理各种储存形式数据的软件。
# DASTRO®是什么?
DASTRO®是一个一体化、零代码、流程化、云协同、高兼容的数据标准化平台。
- 一体化:将不同数据源的数据整合在一个平台中
- 零代码:零代码轻松处理大量数据
- 流程化:固化数据分析处理流程,可重复使用
- 云协同:支持在云端上的多权限用户的操作
- 高兼容:数据分析结果输出到业务系统或建模分析
# 谁会使用DASTRO®?
# DASTRO®能做什么?
DASTRO®可以:
- 通过按钮拖拽完成复杂的数据准备、分析、处理流程,连通企业的数据孤岛
- 通过一个平台,同时管理线上和线下数据
- 快速分析和识别问题数据,洞察大数据背后的业务价值
- 多个部门的人员可以在云端共同使用一套数据作业的流程。同时,可以保证部门数据的权限安全
- 每一个数据处理的步骤都可以通过定时任务的管理自动执行。因此匹配的业务周期
- 从售后培训到问题解答,DASTRO®平台背后是有经验的技术支持人员。
以下将从实际的业务场景介绍DASTRO®的强大功能。
# Dastro常见使用场景
- 业务场景
某石化公司在最近收购多家公司后,考虑使用SCATLAS®优化模型,重新规划其分销网络。
- 数据挑战
数据规模超过企业目前分析工具的上限(比如Access和Excel)。公司现有计划员不具备数据库使用的技能。
- DASTRO®方案
蓝幸顾问通过实施项目创建了 DASTRO®工作流,并将其交付给计划员。客户的计划员能够轻松通过DASTRO®创建复杂模型,并且根据未来的建模需求进行调整。
# 如何使用DASTRO®?
本节将引入一个简单的案例,你需要跟着①②…标识的步骤一步步动手建立节点组、添加节点、组合工作流,逐渐学会使用DASTRO®。
# 案例:使用DASTRO®整理供应链数据
D公司找到了蓝幸,打算使用SCATLAS®建模的方式来优化其供应链。由于SCATLAS®的数据输入需要固定的格式,将供应链原始数据做处理,使其可以输入SCATLAS®。
# 原始数据下载
# 原始数据介绍
运营团队收集了以下运营数据:
站点
出入库成本
代理商
按月需求预测
供应比例
代理货量占比
国际段运费
本地段运费
# DASTRO®工作流
在拿到原始数据之后,如果手动处理数据,我们通常需要进行检查数据是否能够互相验证、去除数据中的空值行、替换错别字等重复性、流程化的操作。但在DASTRO®中,只需要建立一个工作流,即可一键处理批量数据。
工作流是整个项目的数据处理流程,搭建点击运行即可自动完成数据处理。工作流往往分为以下几大步骤:数据导入、数据预处理、数据整理分析、导出至SCATLAS®。每个大步骤相当于一个节点组。而每个节点组包含多个节点,一个节点就是一个具体的小步骤,比如连接到Excel
、连接数据库
、删除行
、合并表
、条件更新
等。
# 新建工作流:
- 点击导航栏工作流右上角的“+”
- 在弹出窗口中输入工作流名称:New Workflow_北欧四国
- 点击确认
图2.1 新建工作流
操作完成,界面将跳转到工作流“New Workflow_北欧四国”的画布。
# 新建节点组并连线:
- 点击导航栏节点组右上角的“+”
- 在弹出窗口中输入节点组名称:-工厂仓库数据导入预处理
- 点击确认
- 以①~③的方法建立全部六个节点组:工厂仓库数据导入预处理;运输报价数据导入预处理;需求预测数据导入预处理;SCATLAS空表导入;数据整理分析;数据导出到SCATLAS
- 从前一个节点组拖动到后一个节点组来建立流程线
- 点击工作流画布右上角的执行按钮
图2.2 新建节点组
操作完成,工作流画布如下图所示。
图2.3 DASTRO®工作流及主要步骤
# 步骤一:数据导入并预处理
在数据导入与预处理节点组中做数据导入与数据清洗:
首先导入存放在各个Excel中的原始数据;然后可对原始数据做数据清洗和预处理;例如新增/删除行/列、修改数据类型、修改数据值等;最后可创建新表,写入已处理的数据,连接SCATLAS®,导入需要用到的模型空表。
# 节点组1:工厂仓库数据导入预处理
:
节点组完成后,将得到2张输出表:已清洗工厂仓库位置数据、已清洗仓库出入库成本数据。
# 新建节点:连接原始数据表
双击节点组,打开节点组画布
- 双击/拖拽节点【Excel连接】至编辑区域
- 自定义节点名称
- 选择文件路径(文件:工厂仓库信息)
- 设置跳过行数、数字格式、日期格式,并勾选“应用该sheet”或“应用全部sheet”决定该组设定的应用范围
- 勾选后续需要使用的Sheet表
- 点击测试连接
- 点击确认(确认前可检查是否与下图对照)
- 把节点与开始连线,鼠标悬停于节点上,点击运行
操作完成后,可以预览连接的Excel文件。
# 新建节点:工厂仓库位置数据导入
双击/拖拽节点【Excel单Sheet导入】至编辑区域
自定义节点名称
- 选择输入连接
- 选择对应Sheet1
- 填写表名(如下图)
- 点击确认
- 与前一个节点连线并运行该节点
- 操作完成后,该节点创建完成,可以做进一步的编辑。
编辑节点:工厂仓库位置数据导入
点击数据输出,可以编辑输出字段的字段名称和数据类型
# 新建节点:仓库位置数据清洗
目标:去除经度或纬度为空的数据
- 双击/拖拽节点【删除行】
- 选择目标数据
- 点击进入数据编辑菜单中,可以查看输入表字段
- 输入”isnull”, 拖拽需要调整的字段(经度),输入“OR”、”isnull”, 拖拽需要调整的字段(纬度)
- 输入表筛选选择符合过滤条件
- 点击确认(确认前可检查是否与下图对照)
- 操作完成后,可点击预览查看结果。
# 新建节点:工厂仓库表新增站点类型
目标:为创建Scatlas 中的站点表做准备
- 双击/拖拽节点【字段更新】
- 选择目标数据:Facilities
- 点击进入数据编辑菜单中
- 点击新字段,在目标字段框修改字段名:站点类型
- 输入赋值:ExistingFacility
- 点击确认(确认前可检查是否与下图对照)
操作完成后,可点击预览查看结果。
# 新建节点:已清洗工厂仓库位置数据
目标:将已清洗工厂仓库位置数据写入新表
- 双击/拖拽节点【数据选择】
- 填入节点名称:已清洗工厂仓库位置数据
- 选择输入数据:Facilities
- 选择写入模式:写入新表
- 填写新表表名:已清洗工厂仓库位置数据
- 点击进入“数据编辑”菜单,选择输出字段(对照下图)
- 点击确认
- 运行
操作完成后,可点击预览查看结果。
# 新建节点:仓库出入库成本数据导入
- 操作步骤参考新建节点:工厂仓库位置数据导入
操作完成后,仓库出入库成本数据被导入DASTRO®数据库。
# 新建节点:仓库出入库数据清洗
- 双击/拖拽节点删除行
- 选择目标数据
- 点击进入数据编辑菜单中,可以查看输入表字段
- 针对需要调整的字段,填写删除行的筛选条件
- 输入表达式如图
- 输入表筛选选择符合过滤条件
- 点击确认(确认前可检查是否与下图对照)
操作完成后,可点击预览查看结果。
# 新建节点:已清洗仓库出入库成本数据
- 操作步骤参考新建节点:已清洗工厂仓库位置数据
操作完成,已清洗仓库出入库成本数据被写入新表。
# 运行节点组:工厂仓库数据导入预处理
- 按图所示步骤连线
- 点击画布右上角的执行按钮
操作完成,得到2张输出表:已清洗工厂仓库位置数据、已清洗仓库出入库成本数据
# 检查运行结果:工厂仓库数据导入预处理
- 鼠标悬停在数据选择节点右上角的小i图标处
- 点击输出表:已清洗工厂仓库位置数据
- 点击输出表:已清洗仓库出入库成本数据
- 检查输出是否与下图一致
# 节点组2:运输报价数据导入预处理
节点组完成后,将得到3张输出表:已清洗国际段运输报价、已清洗本地段运输报价、已处理历史运量。
# 新建节点:运输报价数据连接
- 操作步骤参考新建节点:连接原始数据表(Excel连接)
操作完成,检查是否与下图一致。
# 新建节点:国际段运输报价导入
目标:导入原始数据表“国际段运输报价”
- 操作步骤参考新建节点:工厂仓库位置数据导入
操作完成,检查是否与下图一致。
# 新建节点:国际段运输报价新增成本基准列
目标:准备Scatlas中的运输策略表,其中包含成本基准字段。单位为方的成本基准为Volume,单位为千克的成本基准为Weight。
- 双击/拖拽【条件更新】节点至编辑区域
- 自定义节点名称
- 选择目标数据
- 在数据编辑菜单中,将新字段拖入目标字段
- 设置更新条件(IF,THEN,ELSE)
- 填写“数据编辑”(见下图)
- 点击编辑图标筛选对应输出字段
- 点击确认
- 连接到前一个节点并点击运行
操作完成后,可点击预览查看结果。
# 新建节点:已清洗国际段运输报价
- 操作步骤参考新建节点:已清洗工厂仓库位置数据
操作完成,将已清洗国际段运输报价写入新表。
# 本地段运输报价节点搭建
- 参考新建节点:国际段运输报价导入建立节点:本地段运输报价导入
- 参考新建节点:国际段运输报价新增成本基准列建立节点:本地段运输报价格式化。将国家名从中文的瑞典、丹麦等替换为英文Sweden、Danmark,便于后续处理
- 参考新建节点:已清洗国际段运输报价建立节点:已清洗本地段运输报价
操作完成后,检查与下图结果是否一致。
# 新建节点:历史运量原始数据导入
- 操作步骤参考新建节点:工厂仓库位置数据导入
操作完成后,历史运量原始数据被导入DASTRO®数据库。
# 新建节点:历史运量新增日期
目标:根据月份添加日期,为每月首日
- 双击/拖拽条件更新节点至编辑区域
- 自定义节点名称
- 选择目标数据
- 在数据编辑菜单中,将新字段拖入目标字段
- 设置更新条件(IF,THEN,ELSE)
- 填写“数据编辑”(见下图)
- 点击编辑图标筛选对应输出字段
- 点击确认
操作完成后,可点击预览查看结果,日期设定为对应月份的第一天。
# 新建节点:历史运量新增限制类型和周期名称
- 参考新建节点:工厂仓库表新增站点类型
- 将限制类型设置为”Fixed”
- 将周期名称设置为”HORIZON”
****操作完成后,可点击预览检查是否与下图一致。
# 新建节点:已处理历史运量
- 操作步骤参考新建节点:已清洗工厂仓库位置数据
操作完成,将已处理历史运量写入新表。
# 运行节点组:运输报价数据导入预处理
- 按图所示步骤连线
- 点击画布右上角的执行按钮
- 检查运行结果:-运输报价数据导入预处理
操作完成,得到3张输出表:已清洗国际段运输报价、已清洗本地段运输报价、已处理历史运量。
# 节点组3:需求预测数据导入预处理
# 新建节点:Demand预测数据连接、需求数据导入
- 参考Excel连接教程新建节点:Demand预测数据连接
- 参考Excel单sheet导入教程新建节点:产品需求数据导入
- 参考Excel单sheet导入教程新建节点:月度需求数据导入
- 参考Excel单sheet导入教程新建节点:代理商需求数据导入
# 产品需求数据处理节点搭建:
- 新增字段ProductName,赋值为国家_产品
值更新为 国家||_||产品 (||表示连接前后两个字符串)
- 新增产品的单位体积,赋值为体积CBM/站点数sites
- 新增产品的单位重量,赋值为重量KG/站点数sites
- 将已处理产品需求数据写入新表:已处理产品需求数据
- 在数据选择节点按下图提示修改数据输出菜单
# 月度需求数据处理节点搭建:
- 新增字段ProductName,赋值为国家_产品
- 新增字段订单日期,赋值为月份,设置数据类型为Date
- 将已处理月度需求数据写入新表:已处理月度需求数据
# 代理商货量数据处理节点搭建:
目标:将百分比形式的货量占比改成小数形式 例如20%变成0.2
- 新建节点:代理商货量占比修正1
目标:去除货量占比的“%“,例如20%变成20
- 新建节点:代理商货量占比修正2
目标:将货量占比数据类型从STRING改为NUMERIC
- 新建节点:代理商货量占比修正3
目标:将20变成0.2
# 代理商货量数据处理节点搭建:
①新建节点:去除无交易代理商去除货量占比为0或国家缺失的代理商数据
②新建节点:代理商名称修正1
将代理商名称改为”CZ_”+城市
③新建节点:代理商名称修正2
若一个城市存在多个代理商,为避免代理商名称重复,在这些代理商名称后加上编号。需要处理的城市包括Stockholm、Rovaniemi。
更新条件(如图):
满足 City like Stockh% and 货量占比 = 0.45 值更新为 Subcon Name || 1
满足 City like Stockh% and 货量占比 = 0.30 值更新为 Subcon Name || 2
满足 City like Rovan% and 货量占比 = 0.30 值更新为 Subcon Name || 1
满足 City like Rovan% and 货量占比 = 0.20 值更新为 Subcon Name || 2
鼠标悬停于输入框内,右侧出现工具栏,可以复制粘贴输入框内容。
- 新建节点:代理商表新增站点类型
目标:为站点主表的创建做准备
目标数据选择Subcon。
在数据编辑菜单,点击新字段,命名为“站点类型”,赋值为Customer(如图)。
- 新建节点:已处理代理商数据
将已处理代理商数据写入新表:已处理代理商数据
# 运行节点组:需求预测数据导入预处理
- 按图所示步骤连线
- 点击画布右上角的执行按钮
- 检查运行结果:-需求预测数据导入预处理
操作完成,得到3张输出表:已处理产品需求数据、已处理月度需求数据、已处理代理商数据。
已处理产品需求数据
已处理月度需求数据
已处理代理商数据
# 节点组4:SCATLAS®空表导入
目标:连接到SCATLAS®,将可能用到的输入表导入到DASTRO®数据库中,导入空表是为了获取其表头,以便快速将整理的数据与表头匹配。
# 新建节点:SCATLAS-Baseline空表连接
- 选择“数据库连接”。
- 填写节点名称:SCATLAS-Baseline空表连接
- 选择数据库类型:SCATLAS
- 填写服务器地址:https://scatlas.com/ (opens new window)
- 输入账号、密码
- 选择文件夹和该文件夹下的模型
# SCATLAS®空表导入:
- 选择“数据库导入”
- 新建节点:Baseline产品空表导入
- 填写节点名称
- 选择输入链接:SCATLAS-Baseline空表连接(前一个节点)
- 表名选择产品
- 写入模式选择写入新表
- 填写表名:
- Baseline产品空表;
- 按①~⑦的方法分别新建节点:
按照相同方法连接如下空表:
- Baseline站点空表导入;
- Baseline客户订单空表导入;
- Baseline客户生产策略空表导入;
- Baseline客户采购策略空表导入;
- Baseline客户运输策略空表导入;
- Baseline客户库存策略空表导入;
- Baseline客户流量限制空表导入。
# 步骤二:数据整理分析
在数据整理分析节点组中将清洗后的原始数据整理成模型输入表的格式:
首先连接并导入前一个节点组的数据;然后可进行合并表、多表更新、数据分组聚合等操作;最后写入新表待用。
# 节点组5:数据整理分析
# 新建节点:已处理数据连接
- 双击/拖拽数据路连接节点至编辑区域
- 填写节点名称:已处理数据连接
- 选择数据库类型:Local Database
- 按下图提示选择表
# 数据库导入节点搭建
- 双击/拖拽数据库导入节点至编辑区域
- 填写节点名称:工厂仓库位置表导入
- 选择输入连接与输入表
- 选择写入模式:写入新表
- 填写输出表名:仓库位置表导入
- 按①~⑤的方法导入仓库出入库成本表、国际段运价表、本地段运价表、产品需求表、月度需求表、代理商表、历史运量数据
# 新建节点:初步合并站点表
目标:结合仓库位置表与代理商表,制作贴近SCATLAS®输入表的合并站点表
- 双击/拖拽表合并节点至编辑区域
- 填写节点名称:初步合并站点表
- 选择输入数据:-数据整理分析节点组中的仓库位置表与代理商表
- 写入模式:写入新表
- 填写表名:初步合并站点表
- 在数据编辑界面,按下图提示调整输出数据字段
- 拖拽代理商表的字段使其与输出字段对应
合并后的站点表可参考下图:
# 新建节点:创建原始订单主表
- 双击/拖拽创建表节点至编辑区域
- 填写节点名称:创建原始订单主表
- 填写表名:原始订单主表
- 按下图填写数据输出菜单
# 制作订单主表节点搭建
- 新建节点:月度需求、站点名称写入订单主表
- 按下图提示填写基础信息(注意:写入已存在的原始订单主表)
- 在数据编辑界面设置关联表关系
- 在数据编辑界面从输入表中选择要输出的字段
- 在数据输出界面调整输出数据字段与输出表结构的对应关系
- 点击确认,节点:月度需求、站点名称写入订单主表搭建完成
- 新建节点:订单主表拆分货量
- 在数据编辑界面,给数量(每个代理商的订单量)按图提示赋值(自定义2是货量占比)
- 点击确认,节点:订单主表拆分货量搭建完成
- 新建节点:已处理订单主表,将处理完的数据写入新表。
# 新建节点:历史运量新增终点国家
目标:将终点的国家信息添加到运量表中
- 按图提示填写基础信息(注意:添加参照表)
- 按图提示设置参照表关联关系(注意:要设置关联类型)
- 在数据编辑菜单,点击新字段,命名为终点国家,将代理商表中的Country拖入赋值框。
- 点击确认,节点:历史运量新增终点国家搭建完成
# 制作运量主表节点搭建
目标:结合国际/本地段运价表与代理商表、历史运量表,制作贴近SCATLAS®输入表的运量表
- 参考本地运价表,按图提示为历史运量表的本地段添加运输天数、运输单价字段,并设置变动成本基准为Quantity。
- 参考国际运价表,按图提示为历史运量表的国际段添加运输天数、运输单价、变动成本基准字段。
- 将处理过的运量数据写入新表:初步合并运量主表
# 运行节点组:数据整理分析
- 按图所示步骤连线
- 点击画布右上角的执行按钮
- 检查运行结果:-数据整理分析
操作完成,得到3张输出表:初步合并站点表、初步合并运量主表、已处理订单主表。
初步合并站点表
初步合并运量主表
已处理订单主表
# 步骤三:数据导出
在数据导出节点组中将模型输入表导出至SCATLAS®,准备自动建模:
连接并导入处理好的模型输入表;连接SCATLAS®,输入账号密码和模型等信息;将模型输入表导出至SCATLAS®。
# 节点组6:数据导出到SCATLAS®
:
节点组完成后,将在SCATLAS®的模型元素里得到2张输入表:产品、站点。
# 连接到上一个节点组
- 新建节点:整理后数据连接,按下图提示选择连接表
- 新建节点:SCATLAS®空表连接,按下图提示选择连接表
# 导入上一个节点组的数据表
- 导入节点组“-数据处理分析”中的“产品主表导入”,按图提示填写
- 导入节点组“-数据处理分析”中的“初步合并站点表”,按图提示填写
- 导入节点组“SCATLAS®空表连接”中的“Baseline产品空表”和“Baseline站点空表”,按图提示填写
# 数据对接:将处理完的产品、站点数据写入待导入的空表
- 新建节点,将产品主表写入已存在的产品空表
- 为处理好的产品主表字段找到对应的产品空表字段:ProductName就是产品名称,体积是指产品的单位体积等…
- 新建节点,将站点主表写入已存在的站点空表
- 为处理好的站点主表字段找到对应的站点空表字段
# 连接SCATLAS®,上传产品、站点表
目标:将处理好的产品、站点数据上传至SCATLAS®的所选模型内,最后达到一键处理数据、一键数据上传的效果。
- 连接到SCATLAS®-Baseline模型,输入您的账号、密码、模型所在文件夹和模型名
双击/拖拽数据库导出节点至画布
- 填写节点名称:导出到SCATLAS®产品表
- 选择输入连接与输入表
- 选择输出连接
- 选择写入模式
- 选择表名:产品
- 勾选写入前清空表
- 点击确认
- 仿照②~⑨的步骤新建站点主表导出节点
# 运行节点组:-数据导出到SCATLAS®
- 按图所示步骤连线
- 点击画布右上角的执行按钮
- 在SCATLAS®的Baseline模型中检查运行结果
操作完成,将在SCATLAS®的模型元素里得到2张输入表:产品、站点。
SCATLAS®中的产品表
SCATLAS®中的站点表
# 其它表的导出
目标:将处理好的客户订单、生产/采购/运输策略、仓库出入库成本表、流量限制数据上传至SCATLAS®的所选模型内,最后达到一键自动建模的效果。
节点组:-数据导出到SCATLAS® Overview(完整版)
- 已处理数据和Baseline模型空表的连接与导入
- 产品/站点主表、客户订单表、库存Policy对接
新建节点:聚合生产Policy
- 按下图提示填写基础信息
- 在数据编辑菜单,将起点名称与产品名称设置为分组字段,流量数量设置为聚合结果,聚合函数选择Sum
- 点击输入数据筛选,按下图提示输入筛选表达式,为了筛选出起点为欧洲/深圳供应的数据
- 点击预览检查聚合结果,共14条,表示每个供应点供应每种产品的数量
- 仿照③~⑦的步骤聚合采购/运输/库存Policy和流量限制
- 生产/采购/运输/库存Policy和流量限制数据对接
- 连接SCATLAS®,上传数据到模型里的生产/采购/运输/库存策略和流量限制表
在DASTRO®的操作结束,可以运行SCATLAS®模型啦
帮助文档 →