云服务器内容精选

  • 后续指引 完成TPC-H样例模板开发并提交Spark SQL作业操作后,如果您想了解更多关于Spark SQL作业相关操作,建议您参考以下指引阅读。 分类 文档 说明 界面操作 SQL编辑器 提供执行Spark SQL语句操作的界面指导,包含SQL编辑器界面基本功能介绍、快捷键以及使用技巧等说明。 Spark SQL作业管理 提供Spark SQL作业管理界面功能介绍。 Spark SQL模板管理 DLI支持定制模板或将正在使用的SQL语句保存为模板,便捷快速的执行SQL操作。 开发指导 Spark SQL语法参考 提供Spark SQL数据库、表、分区、导入及导出数据、自定义函数、内置函数等语法说明和样例指导。 使用Spark作业访问DLI元数据 提供Spark SQL作业开发的操作指引和样例代码参考。 Spark SQL 相关API 提供Spark SQL相关API的使用说明。
  • 后续指引 完成Spark Jar作业快速入门操作后,如果您想了解更多关于Spark Jar作业相关操作,建议您参考以下指引阅读。 分类 文档 说明 界面操作 Spark Jar作业管理 提供Spark Jar作业管理界面功能介绍。 Spark程序包管理 针对不同角色用户,您可以通过权限设置分配不同的程序包组或程序包,不同用户之间的作业效率互不影响,保障作业性能。 开发指南 Spark SQL语法参考 提供Spark SQL相关的数据库、表、分区、导入及导出数据、自定义函数、内置函数等语法说明和样例指导。 Spark Jar 相关API 提供Spark Jar相关API的使用说明。 Spark 作业SDK参考 提供执行Spark批处理作业的接口样例说明。
  • 步骤1:上传数据至OBS 参考Spark作业样例代码开发Spark Jar作业程序,编译并打包为“spark-examples.jar”。参考以下操作步骤上传该作业程序。 提交Spark作业之前,需要在OBS中上传数据文件。 登录管理控制台 在服务列表中,单击“存储”中的“对象存储服务OBS”,进入OBS管理控制台页面。 创建桶,这里以桶名“dli-test-obs01”为例。 单击“创建桶”。 进入“创建桶”页面,选择“区域”,输入“桶名称”。其他参数保持默认值或根据需要选择。 创建OBS桶时,需要选择与DLI管理控制台相同的区域,不可跨区域执行操作。 单击“立即创建”。 单击所建桶“dli-test-obs01”,进入“对象”页面。 选择左侧列表中的“对象”,选择“上传对象”,将需要上传的文件,例如“spark-examples.jar”上传到指定目录,单击“确定”。 例如,文件上传成功后,待分析的文件路径为“obs://dli-test-obs01/spark-examples.jar”。 关于OBS管理控制台更多操作请参考《对象存储服务控制台指南》。 OBS上传文件指导,请参见《OBS工具指南》。 针对大文件场景,由于OBS管理控制台对文件大小和数量限制较多,所以推荐使用OBS工具上传大文件,如OBS Browser+或obsutil工具上传。 OBS Browser+是一个比较常用的图形化工具,,支持完善的桶管理和对象管理操作。推荐使用此工具创建桶或上传对象。 obsutil是一款用于访问管理OBS的命令行工具,对于熟悉命令行程序的用户,obsutil是执行批量处理、自动化任务的好的选择。 您可以通过以下多种方式将文件上传至桶,OBS最终将这些文件以对象的形式存储在桶中。 表1 OBS上传对象的不同访问方式 访问方式 上传对象方法 控制台 通过控制台上传对象 OBS Browser+ 通过OBS Browser+上传对象 obsutil 通过obsutil上传对象 SDK 使用SDK上传对象 ,具体参考各语言开发指南的上传对象章节 API PUT上传 、POST上传
  • 步骤3:创建数据库 在进行数据查询之前还需要创建一个数据库,例如db1。 “default”为内置数据库,不能创建名为“default”的数据库。 在DLI管理控制台,单击左侧导航栏中的“SQL编辑器”,可进入SQL作业“数据库”页面。 在“SQL编辑器”页面右侧的编辑窗口中,输入如下SQL语句,单击“执行”。阅读并同意隐私协议,单击“确定”。 create database db1; 数据库创建成功后,左侧单击“ ”刷新数据库页面,新建建的数据库db1会在“数据库”列表中出现。 在DLI管理控制台第一次单击“执行”操作时,需要阅读隐私协议,确认同意后才能执行作业,且后续“执行”操作将不会再提示阅读隐私协议。
  • 步骤2:创建队列 队列是使用DLI服务的基础,执行SQL作业前需要先创建队列。 DLI有预置的可用队列“default”。如果使用default队列,将按照扫描量计费。 用户也可根据需要自己创建队列。使用自建队列,将按照CU时或包年包月计费。 登录DLI管理控制台。 第一次进入数据湖探索管理控制台需要进行授权,以获取访问OBS的权限。 至少勾选“Tenant Administrator(全局服务)”权限。 在DLI管理控制台,单击左侧导航栏中的“SQL编辑器”,可进入SQL作业“数据库”页面。 在左侧导航栏,选择队列页签,单击右侧的创建队列。 图1 创建队列 创建队列详细介绍请参考创建队列。 具体计费方式请参考《数据湖探索计费说明》。
  • 步骤4:创建表 数据库创建完成后,需要在数据库db1中基于OBS上的样本数据“obs://obs1/sampledata.csv”创建一个表,例如table1。 在“SQL编辑器”页面右侧的编辑窗口上方,选择队列“default”和数据库“db1”。 在编辑窗口中,输入如下SQL语句,单击“执行”。 create table table1 (id int, name string) using csv options (path 'obs://obs1/sampledata.csv'); 表table1创建成功后,单击左侧“数据库”页签,再单击db1,新创建的表table1会在“表”区域下方显示。
  • 后续指引 完成Spark SQL作业快速入门操作后,如果您想了解更多关于Spark SQL作业相关操作,建议您参考以下指引阅读。 分类 文档 说明 界面操作 SQL编辑器 提供执行Spark SQL语句操作的界面指导,包含SQL编辑器界面基本功能介绍、快捷键以及使用技巧等说明。 Spark SQL作业管理 提供Spark SQL作业管理界面功能介绍。 Spark SQL模板管理 DLI支持定制模板或将正在使用的SQL语句保存为模板,便捷快速的执行SQL操作。 开发指导 Spark SQL语法参考 提供Spark SQL数据库、表、分区、导入及导出数据、自定义函数、内置函数等语法说明和样例指导。 使用Spark作业访问DLI元数据 提供Spark SQL作业开发的操作指引和样例代码参考。 Spark SQL 相关API 提供Spark SQL相关API的使用说明。
  • 步骤5:查询数据 完成以上步骤后,就可以开始进行数据查询了。 单击“SQL编辑器”页面左侧的“数据库”页签,选择新创建的表table1,双击表,在右侧编辑窗口中,自动输入SQL查询语句,例如查询table1表的1000条数据: select * from db1.table1 limit 1000; 单击“执行”,系统开始查询。 SQL语句执行成功/失败后,可在SQL作业编辑窗口下方“查看结果”页签查看查询结果。
  • 步骤1:上传数据至OBS 使用DLI查询数据前,需要将数据文件上传至OBS中。 登录管理控制台。 在服务列表中,单击“存储”中的“对象存储服务OBS”,进入OBS管理控制台页面。 创建桶,本例桶名以“obs1”为例。 单击页面右上角“创建桶”。 进入“创建桶”页面,选择“区域”,输入“桶名称”。其他参数保持默认值或根据需要选择。 创建OBS桶时,需要选择与DLI管理控制台相同的区域,不可跨区域执行操作。 单击“立即创建”。 单击所建桶“obs1”,进入“对象”页面。 勾选左侧列表中的“对象”,选择“上传对象”,将需要上传的文件“sampledata.csv”上传到指定目录,单击“上传”。 “sampledata.csv”样例文件可以通过新建“sampledata.txt”,复制如下英文逗号分隔的文本内容,再另存为“sampledata.csv”。 12,test 文件上传成功后,待分析的文件路径为“obs://obs1/sampledata.csv”。 关于OBS管理控制台更多操作请参考《对象存储服务控制台指南》。 OBS上传文件指导,请参见《OBS工具指南》。 针对大文件场景,由于OBS管理控制台对文件大小和数量限制较多,所以推荐使用OBS工具上传大文件,如OBS Browser+或obsutil工具上传。 OBS Browser+是一个比较常用的图形化工具,支持完善的桶管理和对象管理操作。推荐使用此工具创建桶或上传对象。 obsutil是一款用于访问管理OBS的命令行工具,对于熟悉命令行程序的用户,obsutil是执行批量处理、自动化任务的好的选择。 您可以通过以下多种方式将文件上传至桶,OBS最终将这些文件以对象的形式存储在桶中。 表1 OBS上传对象的不同访问方式 访问方式 上传对象方法 控制台 通过控制台上传对象 OBS Browser+ 通过OBS Browser+上传对象 obsutil 通过obsutil上传对象 SDK 使用SDK上传对象 ,具体参考各语言开发指南的上传对象章节 API PUT上传 、POST上传
  • 步骤4:创建队列 创建DLI Flink OpenSource SQL作业,不能使用系统已有的default队列,需要您创建队列,例如创建名为“Flinktest”的队列。创建队列详细介绍请参考创建队列。 登录DLI管理控制台总览页,单击右上角“购买队列”进入购买队列页面。 第一次进入数据湖探索管理控制台需要进行授权,以获取访问OBS的权限。 配置参数。 计费模式:按需计费 区域:默认区域 项目:默认或按需选择 名称:Flinktest 类型:通用队列。勾选“专属资源模式”。 AZ策略:单AZ 规格:16CUs 企业项目:default 描述:不填 高级选项:自定义 网段:配置的网段不能与Kafka的子网网段冲突 标签:不填 单击“立即购买”,确认配置。 配置确认无误,提交请求。 由于队列绑定集群需要时间,创建后需等待10~15分钟后,队列才可正常使用。
  • 步骤3:创建OBS桶保存输出数据 在本样例中,需要为作业“JobSample”开通对象存储服务(OBS),为DLI Flink作业提供Checkpoint、保存作业日志和调试测试数据的存储功能。 具体操作请参见《对象存储服务控制台指南》中的“创建桶”章节。 在OBS管理控制台左侧导航栏选择“对象存储”。 在页面右上角单击“创建桶”,配置桶参数。 区域:选择与DLI服务相同的区域 桶名称:具体根据实际情况选择桶名,例如当前选择:obstest 默认存储类别:标准存储 桶策略:私有 默认加密:关闭 归档数据直读:关闭 企业项目:default 标签:不填写 单击“立即创建”。
  • 后续指引 完成Flink OpenSource SQL作业快速入门操作后,如果您想了解更多关于Flink OpenSource SQL作业相关操作,建议您参考以下指引阅读。 分类 文档 说明 界面操作 Flink作业管理 提供Flink作业管理界面功能介绍。 Flink模板管理 提供Flink作业样例模板和自定义模板功能介绍。您可以根据习惯和业务需要自定义作业模板,方便后续创建提交作业。 开发指南 Flink SQL语法参考 提供Flink OpenSource SQL创建源表、结果表和维表的语法说明和样例指导。 Flink作业样例 提供Flink作业程序开发的样例指导。 使用Flink Jar写入数据到OBS 提供Flink如果将数据处理后写入到OBS的样例代码。 Flink作业相关API 提供Flink相关API的使用说明。
  • 步骤2:准备数据输出通道 采用RDS作为数据输出通道,创建RDS MySQL实例,具体操作请参见《云数据库MySQL快速入门》中的“MySQL快速入门”章节。 登录RDS管理控制台。 在管理控制台左上角选择区域。 单击“购买数据库实例”配置相关参数。主要参数的填下说明如下,其他参数保持默认值即可。 计费模式:按需付费 区域:选择与DLI服务相同的区域 实例名称:rds-dliflink 数据库引擎:MySQL 数据库版本:8.0 实例类型:主备 存储类型:SSD云盘 主可用区:自定义 备可用区:自定义 时区:默认 性能规格:2 vCPUs | 8 GB 存储空间:40GB 虚拟私有云、子网:选择1中创建的虚拟私有云和子网。 数据库端口:3306 安全组:选择1中创建的安全组。 管理员密码:****(请妥善管理密码,系统无法获取您设置的密码内容) 确认密码:**** 参数模板:Default-MySQL-8.0 只读实例:暂不购买 单击“立即购买”,确认规格信息。 单击“提交”,完成RDS实例的创建。 登录MySQL,并使用下述命令在flink库下创建orders表。 登录MySQL,单击“SQL窗口”,在SQL查询页面输入以下创建表语句,创建RDS MySQL表。 CREATE TABLE `flink`.`orders` ( `order_id` VARCHAR(32) NOT NULL, `order_channel` VARCHAR(32) NULL, `order_time` VARCHAR(32) NULL, `pay_amount` DOUBLE UNSIGNED NOT NULL, `real_pay` DOUBLE UNSIGNED NULL, `pay_time` VARCHAR(32) NULL, `user_id` VARCHAR(32) NULL, `user_name` VARCHAR(32) NULL, `area_id` VARCHAR(32) NULL, PRIMARY KEY (`order_id`) ) ENGINE = InnoDB DEFAULT CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci;
  • 操作流程 样例场景需要创建一个Flink OpenSource SQL作业,且该作业包含一个输入流和一个输出流。输入流用于从Kafka读取数据,输出流用于将数据写入到RDS中。操作流程如下: 步骤1:准备数据源通道 步骤2:准备数据输出通道 步骤3:创建OBS桶保存输出数据 步骤4:创建队列 步骤5:创建DLI连接Kafka的增强型跨源连接 步骤6:创建DLI连接RDS的增强型跨源连接 步骤7:创建Flink OpenSource SQL作业
  • 如果您是数据分析师 如果您是数据分析师,建议您先熟悉以下模块,掌握DLI支持的Spark、Flink等常用SQL语法,帮助你查询分析业务数据。 组件 模块 说明 Spark相关 数据库相关 在Spark场景下的创建数据库、删除数据库以及查看数据库等数据库操作语法。 表相关 在Spark场景下的创建表、修改表,删除表等语法。 跨源连接相关 跨源连接访问HBase、OpenTSDB、DWS、RDS、CSS、DCS及DDS场景的下的语法。 自定义函数 Spark支持通过创建自定义函数来满足更多的计算需求。 内置函数 支持数学函数、日期函数、字符串函数、聚合函数、分析窗口函数等内置函数进行数据分析。 Flink OpenSource SQL相关 数据定义语句DDL 创建Kafka、DIS、JDBC、DWS、Redis、HBase、userDefined等source流获取数据,作为作业的输入数据。 创建ClickHouse、Kafka、DIS、DWS、Redis、SMN、HBase、Elasticsearch及userDefined结果表,用于将Flink作业输出数据写入到该表中。 创建JDBC、DWS、HBase的维表用于与Flink的输入流进行连接。 数据操作语句DML 支持查询、集合操作、窗口函数、JOIN等相关语法操作进行数据分析。 自定义函数 DLI支持的UDF自定义函数、UDTF自定义表值函数、UDAF自定义聚合函数的语法介绍和操作说明。 内置函数 DLI支持的数学运算函数、字符串函数、时间函数、条件函数、类型转换函数、集合函数、值构建函数、属性访问函数、Hash函数、聚合函数、表值函数语法介绍和使用示例。 Flink SQL相关 创建输入流 创建source流从CloudTable、DIS、DMS、EdgeHub、Kafka、OBS中获取数据,作为作业的输入数据。 创建输出流 DLI提供将作业的输出数据写入到CloudTable、OpenTSDB、Elasticsearch、DCS、DDS、DIS、DMS、DWS、HBase、RDS、Kafka中的语法操作。 创建中间流 中间流用来简化SQL逻辑,若SQL逻辑比较复杂,可以写多个SQL语句,用中间流进行串接。 创建维表 创建Redis、RDS的维表和Flink的输入流进行连接。