检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
参考图10可以看到数据倾斜时,单个任务的shuffle数据远大于其他Task的数据,导致该任务耗时时间变长。 图10 数据倾斜示例图 数据倾斜原因和解决: Shuffle的数据倾斜基本是由于join中的key值数量不均衡导致。 对join连接条件进行group by 和count,统计每个连接条件的key值的数量。示例如下:
计算值默认值为0。 由于浮点类型的数据在计算机中的存储方式的限制,在比较两个浮点类型的数据是否相等时,因存在精度问题,不能直接采用“a==b”的方式进行比较,建议使用“(a-b)的绝对值<=EPSILON”这种方式进行比较,EPSILON为允许的误差范围,一般为1.1920929
添加到弹性资源池中的队列不再单独计费,以弹性资源池为计费项计费: 按需计费模式:按弹性资源池的实际CUs计费。 包年/包月计费模式:按弹性资源池的实际CUs计费,其中规格部分包年/包月,超出规格的部分按需计费。 弹性资源池CU时套餐包:按购买的套餐包周期价格扣费,其中套餐包内的规格包周期计费,超出套餐包规格的部分按需计费。
在DLI管理控制台左侧,选择“资源管理 > 队列管理”。 选择需要扩容的队列,单击“操作”列“更多”中的“规格变更”。 在“规格变更”页面,“变更方式”选择“扩容”,设置扩容的CU值。 图1 扩容 确定费用后,单击“提交”。 缩容 当计算业务较小,不需要那么大的队列规格时,可以通过手动变更队列规格来缩容当前队列。
如何设置安全组规则,请参见《虚拟私有云用户指南》中“安全组”章节。 若使用MRS HBase,请在增强型跨源的主机信息中添加MRS集群所有节点的主机ip信息。 详细操作请参考《数据湖探索用户指南》中的“修改主机信息”章节描述。 语法格式 create table hbaseSource (
敏感类的业务,如交互类的查询等。 库表管理中表的列表页面,表类型为Managed的即代表DLI表。 OBS表 OBS表的数据存储在OBS上,适用于对时延不敏感的业务,如历史数据统计分析等。 OBS表通常以对象的形式存储数据,每个对象包含数据和相关的元数据。 库表管理中表的列表页面
将写好的自定义函数打成JAR包,并上传到OBS上。 在DLI管理控制台的左侧导航栏中,单击数据管理>“程序包管理”,然后点击创建,并使用OBS中的jar包创建相应的程序包。 在DLI管理控制台的左侧导航栏中,单击作业管理>“Flink作业”,在需要编辑作业对应的“操作”列中,单击“编辑”,进入作业编辑页面。
通常按需计费的队列,在空闲1h后计算资源会被释放,再次使用时,需要重新分配计算资源,可能会耗费5~10min时间。 按需计费以小时为单位进行结算。不足一小时按一小时计费,小时数按整点计算。 例如 12:10 ~12:30、12:10 ~12:55 期间使用,则收取1个小时的费用。 具体的计费模式请参考:计费说明。
N 表的insert overwrite TABLENAME select Y N 表的alter Y N 表的select Y Y 表的delete Y N 表的drop Y N 表的desc/describe TABLENAME Y Y 表的comment Y N 表的explain
其他服务的操作权限。 CU数量 CU数量为DLI的计算单元数量和管理单元数量总和,CU也是DLI的计费单位,1CU=1核4G。 当前配置的CU数量为运行作业时所需的CU数,不能超过其绑定队列的CU数量。 说明: 当开启TaskManager配置时,为了优化弹性资源池队列的管理,在您设置“单TM
用户已上传到DLI资源管理系统的类型为file的资源包名。也支持指定OBS路径,例如:obs://桶名/包名。 modules Array of Strings 依赖的系统资源模块名,具体模块名可通过查询组内资源包(废弃)接口查看。 DLI系统提供了用于执行跨源作业的依赖模块,各个不同的服务对应的模块列表如下:
创建队列的用户。 create_time 否 Long 创建队列的时间。单位为“毫秒”的时间戳。 queue_type 否 String 队列的类型,。 sql general all 如果不指定,默认为“sql”。 cu_count 否 Integer 与该队列绑定的计算单元数,即当前队列的CU数。
返回string中从integer1位置开始的长度为integer2的子字符串。若integer2未配置,则默认返回从integer1开始到末尾的子字符串 REPLACE(string1, string2, string3) STRING 用string3代替string1中的string2后的字符串,并返回替换后的string1字符串
rty_value,...)] 描述 创建一个空的schema。schema是表、视图以及其他数据库对象的容器。当指定可选参数IF NOT EXISTS时,如果系统已经存在同名的schema,将不会报错。 示例 创建一个名为web的schema: CREATE SCHEMA web;
SQL中的行,位置比名称更重要。 支持从BOOLEAN、TINYINT、SMALLINT、INTEGER、BIGINT、REAL、DOUBLE或VARCHAR进行转换。当数组的元素类型为支持的类型之一、Map的键类型是VARCHAR且Map的值类型是支持的类型之一或行的每个字段类
使用kafka发送数据,输出到print中。 根据kafka所在的虚拟私有云和子网创建相应的跨源,并绑定所要使用的队列。然后设置安全组,入向规则,使其对当前将要使用的队列放开,并根据kafka的地址测试队列连通性(通用队列> 找到作业的所属队列> 更多> 测试地址连通性 > 输入kafka的地址 > 测试)。如果能连
是否必填 table 需要查询的表的表名,支持database.tablename格式 table,path须选填其中之一 path 需要查询的表的路径 table,path须选填其中之一 predicate 需要定义的谓语句,筛选需要Clustering的分区 否 order 指定clustering的排序字段
(property_name=property_value, ...); 描述 这条命令并不会将SCHEMA当前的内容移动到修改后的路径下,也不会修改与指定schema关联的表或分区,它只会修改新添加进数据库的表的上级目录。 示例 Create schema foo; --修改schema 存储路径 ALTER
集合函数 函数说明 CARDINALITY(array) 返回数组中元素的数量。 array '[' INT ']' 返回数组中 INT 位置的元素。索引从 1 开始。 ELEMENT(array) 返回数组的唯一元素(其基数应为 1);如果数组为空,则返回 NULL。如果数组有多个元素,则抛出异常。
复合类型(例如,Tuple,POJO)返回字段的值。 tableName.compositeType.* 返回 Flink 复合类型(例如,Tuple,POJO)的平面表示,将其每个直接子类型转换为单独的字段。在大多数情况下,平面表示 的字段与原始字段的命名类似,但使用 $ 分隔符(例如 mypojo$mytuple$f0)。