轻松搞定,数据开发与分析也能如此简单方便!

本文涉及的产品
实时计算 Flink 版,1000CU*H 3个月
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
大数据开发治理平台DataWorks,资源组抵扣包 750CU*H
简介: DataWorks 是一站式智能大数据开发治理平台,支持阿里云多种大数据和AI计算服务。本次实验将引导您使用Data Studio中的Notebook开发环境,创建个人开发实例,连接MaxCompute等资源进行SQL开发,并体验Python数据分析及DataWorks Copilot智能助手功能。实验涵盖Notebook新建、多引擎SQL开发、交互式分析及智能数据探索,帮助用户快速上手DataWorks的智能化数据开发与管理功能。

一、引言

DataWorks是一站式智能大数据开发治理平台,深度适配阿里云MaxCompute、EMR、Hologres、Flink、PAI 等数十种大数据和AI计算服务,为数据仓库、数据湖、OpenLake湖仓一体、Data+AI解决方案提供全链路智能化的数据集成、大数据AI一体化开发、数据分析与主动式数据资产治理服务,帮助企业进行Data+AI全生命周期数据管理。


本次DataWorks智能交互式数据开发与分析实验中,将使用数据开发Data Studio中的Notebook开发环境,创建一个独享的个人开发环境实例,并在该实例上,连接并使用MaxCompute等计算资源进行SQL数据开发,也可以连接并使用本地的Python环境进行数据开发与分析。同时在此过程中,可使用DataWorks 智能助手Copilot,体验智能的数据开发与分析体验。

image.png

本次实验将带您进行DataWorks Notebook的快速入门,包含:Notebook新建、多引擎SQL开发与分析、Python开发、交互式分析等。同时,使用DataWorks Copilot体验智能数据开发,体验智能交互式数据探索之旅。


二、操作教程

产品开通

1.请先确保具有DataWork产品,若无该产品可前往官网按需购买开通;按需选择地域:华东1(上海)。


2.进入DataWorks产品控制台,选择大数据体验下的DataWorks Gallery,点击Notebook快速入门的载入案例。https://dataworks.console.aliyun.com【操作注意】进入控制台后需要选择刚刚创建资源的对应地域


创建个人开发环境

1.在载入案例弹出框内,点击创建工作空间(若在DataWorks下无工作空间),并填写工作空间名称。若之前没有创建过资源组,则按照指引新建资源组,并绑定到刚刚创建的工作空间上。


2.创建个人开发环境实例,给实例命名,并选择资源组,设定资源配合,最小2CU即可满足实验要求。待个人开发状态显示为运行中。


3.工作空间和个人开发环境实例创建完后,点击确定后进入个人开发空间。并新建Notebook。


应用体验

(一)以MaxCompute为例进行交互式开发


1.点击 image.png ,在弹出的SQL Cell中选择您想运行的大数据引擎

2.点击SQL Cell的请选择计算资源,在弹出框下选择要绑定的计算资源,若您在MaxCompute下无资源,则需点击“+绑定计算资源”


3.选择资源类型 MaxCompute,并点击绑定计算资源


4.新建MaxCompute项目后进行绑定


5.输入以下SQL命令


SELECT 'James' AS name, '25' AS age, 'Hangzhou' AS city;

6.再次点击执行SQL,可得到执行结果

image.png

7.(可选)同样,在Notebook中,支持新增各种SQL Cell,面向多样化大数据引擎进行数据开发与分析。您可以选择其他大数据引擎进行开发分析,以下是SQL示例。说明:如果您选择其他大数据引擎进行开发分析,可能导致费用发生变化,请以控制台显示的实际价格和最终账单为准。a. Hologres SQL Cell

SELECT 'James' AS name, '25' AS age, 'Hangzhou' AS city;

b. EMR Spark SQL Cell

SELECT 'James' AS name, '25' AS age, 'Hangzhou' AS city;

c. StarRocks SQL Cell

SELECT 'James' AS name, '25' AS age, 'Hangzhou' AS city;

d. 以上输入的输出结果均为

image.png

e. Flink SQL Cell

-- @conf name = flink_vvp_job_quick_start
-- @conf engineVersion=vvr-8.0.8-flink-1.17
-- @conf flinkConf."execution.checkpointing.interval"=10second
-- @conf flinkConf."taskmanager.numberOfTaskSlots"=4
-- @conf flinkConf."table.exec.state.ttl"=1hour
-- @conf flinkConf."execution.checkpointing.min-pause"=10second
-- @conf streamingResourceSetting.resourceSettingMode=BASIC
-- @conf streamingResourceSetting.basicResourceSetting.parallelism=4
-- @conf streamingResourceSetting.basicResourceSetting.taskmanagerResourceSettingSpec.memory=4GiB
-- @conf streamingResourceSetting.basicResourceSetting.taskmanagerResourceSettingSpec.cpu=1
-- @conf streamingResourceSetting.basicResourceSetting.jobmanagerResourceSettingSpec.memory=4GiB
-- @conf streamingResourceSetting.basicResourceSetting.jobmanagerResourceSettingSpec.cpu=1
--创建临时源表datagen_source。
CREATE TEMPORARY TABLE datagen_source(
  randstr VARCHAR
) WITH (
  'connector' = 'datagen' -- datagen连接器
);
--创建临时结果表print_table。
CREATE TEMPORARY TABLE print_table(
  randstr  VARCHAR
) WITH (
  'connector' = 'print',   -- print连接器
  'logger' = 'true'        -- 控制台显示计算结果
);
--将randstr字段截取后打印出来。
INSERT INTO print_table
SELECT SUBSTRING(randstr,0,8) from datagen_source;

输出结果

image.png


(二)使用Python进行数据分析

1.  在Notebook中,能够新增Python Cell,编写Python代码进行数据处理和开发等
在Python Cell中输入示例代码

import matplotlib.pyplot as plt
# 数据准备
categories = ['Category A', 'Category B', 'Category C', 'Category D']
values = [23, 45, 17, 56]
# 创建柱状图
plt.figure(figsize=(10, 6))  # 设置图形大小
plt.bar(categories, values, color=['blue', 'green', 'red', 'purple'])  # 绘制柱状图,可自定义颜色
# 添加标题和轴标签
plt.title('Sample Bar Chart')
plt.xlabel('Categories')
plt.ylabel('Values')
# 显示数值
for i in range(len(values)):
    plt.text(i, values[i], str(values[i]), ha='center', va='bottom')  # 在每个柱子下方显示数值
# 显示图形
plt.show()

运行后即可获得示例柱状图:

image.png

2. 交互式分析

在Notebook中,您可以使用Python封装ipywidgets交互组件,并在SQL中引用该交互组件的变量,以实现灵活的交互式查询。a. 在Python Cell中输入以下内容,使用Python构建ipywidgest交互组件

from ipywidgets import interactive,IntSlider
query_age = 20
def f(age):
    global query_age
    query_age = age
interactive(f, age=IntSlider(value=20, min=1, max=100, step=1, description='查询年龄:'))

可得到下面的输出结果

image.png

b. 使用SQL引用交互组件中对象进行查询

SELECT '${query_age}' AS age;

image.png


(三)体验智能助手Copilot

DataWorks Copilot⽀持根据⾃然语⾔对已有代码进⾏纠错、注释⽣成及代码解释等操作。同时,还⽀持为您解答SQL相关的语法及函数问题。


1.SQL改写

在代码编辑器中,输⼊并选中下面的代码,单击顶部菜单栏右侧的Copilot

image.png ,进⼊Copilot Chat功能界⾯,在Chat输⼊框中,输⼊您的改写要求,单击发送,等待Copilot返回结果。


预设代码:

SELECT ds
,spu_id
,SUM(sales_amt) AS total_sales
,COUNT(DISTINCT order_id) AS total_orders
,COUNT(DISTINCT sku_id) AS total_skus
,COUNT(DISTINCT buyer_id) AS total_buyers
,COUNT(DISTINCT buyer_id) / COUNT(DISTINCT order_id) AS avg_buyers
_per_order
,COUNT(DISTINCT buyer_id) / COUNT(DISTINCT sku_id) AS avg_buyers_p
er_sku
,SUM(sales_amt) / COUNT(DISTINCT order_id) AS avg_sales_per_order
,SUM(sales_amt) / COUNT(DISTINCT sku_id) AS avg_sales_per_sku
FROM default.dwd_ec_trd_create_ord_di
WHERE order_date BETWEEN '2024-09-01' AND '2024-09-18'
GROUP BY ds
,spu_id
ORDER BY total_sales DESC
LIMIT 10
;

预设指令:

修改SQL,将其结果从列转置为行,使用unpivot

image.png

2.SQL 解释

预设代码:

SELECT season
,SUM(tran_amt) AS total
FROM mf_cop_sales
PIVOT (SUM(tran_amt) FOR season IN ('Q1' AS spring,'Q2' AS summer,'Q3' AS a
utumn,'Q4' AS winter))AS pivot_tablel
;

预设指令:

解释这段代码

image.png


3.生成注释
预设代码:

CREATE TABLE ods_mbr_user_info
(
id BIGINT
,gmt_create STRING
,gmt_modified STRING
,id_card_number STRING
,id_card_type STRING
,is_delete STRING
,nick STRING
,reg_address STRING
,reg_birthdate STRING
,reg_city_id STRING
,reg_email STRING
,reg_fullname STRING
,reg_gender STRING
,reg_mobile_phone STRING
,reg_nation_id STRING
,reg_prov_id STRING
,user_active_time STRING
,user_active_type STRING
,user_id BIGINT
,user_regdate STRING
,user_regip STRING
,vip_level STRING
)
COMMENT '';

预设指令:

为每个字短添加注释

image.png

4.智能建表

在Data Studio⻚⾯,单击左侧⼀级菜单栏中的数据⽬录,在数据⽬录列表中,选择任意⼀个数据⽬录,新建表,进⼊新建表的功能界⾯,单击⻚⾯顶部中的Copilot 建表,进⼊Copilot 建表功能界⾯,在输⼊框中,输⼊您的指令,单击发送,等待Copilot返回结果。


image.png



来源  |  阿里云开发者公众号

相关实践学习
基于Hologres轻量实时的高性能OLAP分析
本教程基于GitHub Archive公开数据集,通过DataWorks将GitHub中的项⽬、行为等20多种事件类型数据实时采集至Hologres进行分析,同时使用DataV内置模板,快速搭建实时可视化数据大屏,从开发者、项⽬、编程语⾔等多个维度了解GitHub实时数据变化情况。
相关文章
|
9月前
|
小程序 安全 网络协议
小程序免费SSL证书获取申请
小程序免费SSL证书的获取与申请流程包括:1. 选择可靠的证书颁发机构(如JoySSL);2. 注册并申请证书,填写注册码230922;3. 根据需求选择单域名或通配符证书;4. 提交并完成域名所有权验证;5. 下载并安装证书文件;6. 配置小程序的HTTPS设置;7. 启用并测试SSL证书;8. 定期更新维护证书。通过这些步骤,确保小程序数据传输的安全性和可靠性。
|
存储 数据挖掘 大数据
详解阿里云数据中台,一篇文章全面了解大数据“网红”
一直想写一篇关于数据中台正面文章,现在有闲时做些总结,想充分诠释一下DT内部人如何看待数据中台。 数据中台的概念是最早由阿里巴巴首次提出,是为了应对内部众多业务部门千变万化的数据需求和高速时效性的要求而成长起来的,它既要满足业务部门日常性的多个业务前台的数据需求,又要满足像双十一,六一八这样的业务高峰、应对大规模数据的线性可扩展问题、应对复杂活动场景业务系统的解耦问题,而在技术、组织架构等方面采取的一些变革。
26654 0
|
人工智能 Cloud Native 安全
统一多层网关好处多,阿里云云原生 API 网关打造全能型网关
本文分享了作为一款全能型网关【云原生 API 网关】是如何帮助企业落地统一网关架构的。
8652 107
|
9月前
|
监控 搜索推荐 API
京东商品详情API接口的开发、应用与收益探索
在数字化和互联网高速发展的时代,京东通过开放商品详情API接口,为开发者、企业和商家提供了丰富的数据源和创新空间。本文将探讨该API接口的开发背景、流程、应用场景及带来的多重收益,包括促进生态系统建设、提升数据利用效率和推动数字化转型等。
263 3
|
10月前
|
机器学习/深度学习 人工智能 自然语言处理
医疗行业的语音识别技术解析:AI多模态能力平台的应用与架构
AI多模态能力平台通过语音识别技术,实现实时转录医患对话,自动生成结构化数据,提高医疗效率。平台具备强大的环境降噪、语音分离及自然语言处理能力,支持与医院系统无缝集成,广泛应用于门诊记录、多学科会诊和急诊场景,显著提升工作效率和数据准确性。
753 3
|
机器学习/深度学习 自然语言处理 算法
长序列中Transformers的高级注意力机制总结
Transformers在处理长序列时面临注意力分散和噪音问题,随着序列增长,注意力得分被稀释,影响相关上下文表示。文章探讨了序列长度如何影响注意力机制,并提出了多种解决方案:局部敏感哈希减少计算需求,低秩注意力通过矩阵分解简化计算,分段注意力将输入分割处理,层次化注意力逐级应用注意力,递归记忆增强上下文保持,带有路由的注意力机制动态调整信息流,以及相对位置编码改进序列理解。这些方法旨在提高Transformer在长序列任务中的效率和性能。
781 3
uni-app 11设置备注和标签页
uni-app 11设置备注和标签页
199 2
uni-app 11设置备注和标签页
|
人工智能 运维 NoSQL
动态精选|阿里云2月产品与服务更新盘点
阿里云宣布全面降价,核心产品如云服务器、对象存储和云数据库降价高达55%,增强人工智能平台PAI的功能,推出EAS-Serverless模型服务和DLC的闲时资源利用。云数据库Redis版支持离线全量Key分析,MongoDB版增加分片集群按key闪回功能。此外,还发布了文档AI助手、服务器迁移中心的一键迁移功能、应用高可用服务的多活容灾2.0版本、云安全中心的无代理检测商业化版本、云解析DNS流量分析、Salesforce on Alibaba Cloud的Sandbox预览版以及OpenAPI Explorer的SID等新功能。
405 0
|
小程序 PHP 开发者
微信公众号开发(八)生成带参数二维码,以及将二维码下载至本地
微信的二维码真是个神奇的东西。在我们开发中,应用也是很多~ 用户扫描带场景值(参数)二维码时,可能推送以下两种事件:
712 1
|
Kubernetes 数据可视化 容器
部署Kubernetes集群+Dashboard可视化页面-1.18.6版本(二)
部署Kubernetes集群+Dashboard可视化页面-1.18.6版本(二)
1157 0
部署Kubernetes集群+Dashboard可视化页面-1.18.6版本(二)