1. 数据科学
HENGSHI Sense 提供了自助式数据处理工作,可完成数据清洗、转换、合并功能,但是对于数据科学家来说,他们更习惯自己编写代码进行数据处理。 为了满足数据科学家的需求,HENGSHI Sense 提供了数据科学模块,支持数据科学家使用Python、SQL编写和运行代码, 实现数据清洗、数据探索、数据建模、机器学习、数据可视化等数据处理工作。
数据科学是一个开放空间,对拥有数据管理角色的用户开放。用户可以创建笔记、执行笔记、查看笔记运行结果,也可以编辑和运行其他用户创建的笔记。
1.1. 笔记
笔记是数据科学任务运行的基本单位,每个“笔记”相互独立。 笔记中包括段落(编写的代码)、执行计划、运行环境设置等。
笔记工作流程大概为:创建笔记->设置笔记运行环境->创建段落,编写代码,实现数据处理功能->执行笔记,查看运行结果。
下面通过示例了解笔记工作的大概流程。
1.1.1. 笔记示例
在数据科学模块中,点击创建笔记,输入笔记名称,完成笔记创建。
在笔记页面中,点击设置进入运行环境设置页面,添加代码运行需要的数据连接和事务提交方式,如图所示。
点击“+”号新建段落,选择语言、运行环境和默认Schema。
参照步骤3、4,创建其他段落。 当所有段落都创建后,可点击全部执行手动执行笔记,也可以根据需要设置执行计划,在指定时间执行。
上述示例简单地介绍了笔记工作流程,下面详细介绍数据科学笔记的各种概念和常用操作。
1.2. 段落
段落是数据科学中实现数据处理功能的最小单位,每个笔记可由一个或多个段落组成。段落支持新建、配置、编辑、删除、执行等操作。
1.2.1. 新建和删除
新建段落包括新建空白段落和上传文件两种方式。
新建空白段落: 点击“+”号可以新增一个空白段落,用户自己编写代码。
上传文本文件: 点击上传文件图标可以将文本文件上传到段落中。
段落废弃时可以点击右侧的删除按钮来删除。
1.2.2. 配置段落
配置段落包括配置语言、运行环境和默认执行路径Schema。
语言: 指段落中使用的脚本语言,包括SQL和PYTHON。同一笔记支持多种语言编写的段落同时构建。
- SQL:使SQL语言编写代码。 要求代码符合所选连接类型的语法要求。
- Python:使用Python语言编写代码。 可用于数据分析高级需求,如数据的深度挖掘和加工,机器学习建模等场景。
- 支持Python编写段落。
- 提供内置封装的函数,高效获取指定的数据连接。 目前暂时只支持MySQL、Oracle、PostgreSQL、SQL Server、Hive数据库。
- 默认支持Pandas、scikit-learn等主流数据分析和机器学习库,其他库可由客户DBA自行安装扩展。
运行环境:指当前笔记运行的环境,从笔记设置中的有效的连接列表进行选择。
默认Schema:指在段落中不指定Schema时默认使用的Schema,是段落执行的具体路径。
1.2.3. 编辑段落
段落可直接进行编辑,也可点击右侧的打开按钮在全屏模式下编辑。 全屏模式展示了运行环境下所有table及其字段名称,方便用户编写代码及调试。
1.2.4. 段落执行
段落的代码编写完成后,需要进行执行,查看运行结果。 段落支持测试执行和提交执行。
测试执行
测试执行是运行代码,查看代码结果是否正确,不会将结果提交到数据库。 Python语言的段落不支持事务回滚,所以没有测试执行功能。
- 提交执行
提交执行是运行代码并将代码执行结果直接提交到数据库中。
测试执行和提交执行都会展示预览结果和执行日记。
预览结果
预览结果只针对SQL语言的段落,当代码中包含show、select等标准输出语句时,会在预览结果中展示相应输出信息,其他情况预览结果页面无数据展示。
执行日记
执行日记显示了段落运行情况,可协助用户进行段落调试和问题定位。
1.3. 笔记设置
笔记设置包括运行环境设置和运行时事务提交设置。
1.3.1. 运行环境
运行环境是指运行段落使用的数据连接。 点击添加按钮,在弹出的数据连接页面中选择需要的数据连接,数据连接会显示在授权链接列表中。
如果对连接有RW权限,连接状态显示有效,否则连接状态为无效。
授权
在授权连接列表中,打开一个连接的三点菜单,选择授权,可以将该连接授权给数据科学的所有用户,数据科学的所有用户都可以使用该连接运行笔记,不管该用户是否有RW权限。
取消授权
授权之后,所有用户都可以执行笔记,从而会有数据泄漏的危险,如果用户不想授权给其他用户,可以在每次执行完笔记之后,取消授权,这样其他用户就无法使用该连接执行笔记了。点击取消授权之后,连接状态变为无效,任何用户都无法使用该连接了。
删除
在授权连接列表中,打开一个连接的三点菜单,选择删除,该连接从授权连接列表中消失。 如果有段落使用该连接,删除时会报错并给出提示信息。
1.3.2. 事务提交
笔记运行时可设置整体提交事务和分段落提交事务两种方式。
整体提交事务
笔记运行时所有段落会作为一个事务提交,如果有一个段落失败,则全部段落都回滚。
分段落提交事务
笔记运行时,每个段落会作为一个事务提交,如果有某个段落失败,则只回滚该段落,其他事务正常执行和提交。
1.4. 执行
笔记中段落编写完成后,需要进行执行。 每个段落可以单独执行,也可和笔记一起执行。 笔记执行包括全部执行和执行计划。
1.4.1. 全部执行
全部执行即手动执行,点击该按钮会执行当前笔记中所有段落,执行结果会提交到数据库中。
1.4.2. 执行计划
除了手动执行外,笔记可设置执行计划,按照设定计划运行。 点击右上角的执行计划,进入执行计划设置页面,设置计划的基本信息、调度信息、告警信息。
- 基本信息:设置执行时失败重试次数及任务的优先级。
- 调度信息:
- 设置任务的调度时间,可设置多个调度时间。
- 设置任务的前置依赖,可设置多个前置依赖任务。
- 设置依赖等待时间。
- 告警信息:开启失败告警,当任务执行失败后,会以邮件形式通知到收件人。
笔记设定执行计划后,可在任务管理中查看执行情况。
results matching ""
No results matching ""
衡石文档
- 产品功能一览
- 发布说明
- 新手上路
- 安装与启动
- 系统管理员手册
- 数据管理员手册
- 分析人员手册
- 数据查看员手册
- 数据服务
- 最佳实践
- 衡石分析平台 API 手册
- 附录