举个栗子:专有云MaxCompute创建TableStore外部表

本文涉及的产品
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
表格存储 Tablestore,50G 2个月
简介: 在MaxCompute的上边创建OTS的外部表的方式来进行验证

1、 案例背景

某客户专有云v3环境现场,TableStore(OTS)数据迁移,需要进行数据校验工作,由于迁移工具并未有校验的api接口或者独有的校验工具,所以考虑使用在MaxCompute的上边创建OTS的外部表的方式来进行验证;

2、创建外部表访问的方式

方式1:
MaxCompute计算服务要访问TableStore数据需要有一个安全的授权通道。MaxCompute可以通过阿里云的访问控制服务(RAM)和令牌服务(STS)来实现对数据的安全访问;
执行方式:
RAM控制台,创建角色AliyunODPSDefaultRole,并将策略内容设置为如下:

{
  "Statement": [
    {
      "Action": "sts:AssumeRole",
      "Effect": "Allow",
      "Principal": {
        "Service": [
          "odps.aliyuncs.com"
        ]
      }
    }
  ],
  "Version": "1"
}

然后编辑该角色的授权策略,将权限AliyunODPSRolePolicy授权给该角色。
方式2:
通过LOCATION参数设置用户的ak,sk的方式来进行访问;
执行方式如下配置:

LOCATION 'tablestore://<*your AK id*>:<*your AK secret key*>@odps-ots-dev.cn-hangzhou.ots.aliyuncs.com';

3、专有云测试案例

PS:本案例采用了最开始的一种方案,也是错误的一种方式并参考了公共云的文档进行的配置导致出现问题报错现象的发生;
如下为错误操作过程:
专有云控制台--ram管理当中创建AliyunODPSDefaultRole角色并设置将权限AliyunODPSRolePolicy授权给该角色
如下图所示:
ram

然后在dataworks数据开发平台进行OTS外部表的创建操作报错;
但是执行报错没有权限进行外部表的创建操作;
所以考虑使用ak,sk的方式进行创建测试,但是依然报错缺少using参数;
errortable
ps:图片内的原因,文章后边会给出解释;
error_
参考的是公共云的创建操作步骤:
image
参考链接:https://help.aliyun.com/document_detail/54519.html?spm=a2c4g.11174283.6.717.1549590ehPHFc6
但是如果在操作命令后加上using ""参数,也可以创建成功;
但是查询会报如下 failed 2的无脑报错:
cdpfail2
fail2


检查fronted和odpsworker的docker中的相关log日志没有有效的报错信息出现;
这个时候,就需要考虑了.......................................
建表语句没有问题,ram role权限没有问题,ak,sk也没有问题;
但是创建就出现了两个问题:
1、使用ram role权限配置odps.properties.rolearn参数建表报错无权限?
2、在location中设置ak,sk方式建表也报错,缺少using?


由于添加using ""参数以后建表成功产生的误导,导致后续一直在排查为什么会报错fail 2的错误发生;
其实应该追本溯源,最应该考虑的是是否公共云和专有云在创建OTS外部表的创建语句是否有什么不同之处?
所以查看对应版本专有云关于MaxCompute创建OTS外部表的创建语句命令如下:
image
恍然大悟!!!
然后按照专有云文档的描述,重新进行了语句的创建操作如下:
righttable


建表成功,问题解决!

总结:

1、对于公共云和专有云一定要区分清楚,可以参考,但不能完全模仿使用;
2、对于实现方式一定要提前确认好,比如sts的ram role访问还是ak,sk的访问;

参考链接:
https://yq.aliyun.com/articles/69314?spm=a2c4g.11186623.2.29.47d0249cKkv8Ut

相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps&nbsp;
目录
相关文章
|
6月前
|
SQL 分布式计算 关系型数据库
实时数仓 Hologres产品使用合集之湖仓加速版查询maxcompute外部表,有什么优化途径吗
实时数仓Hologres的基本概念和特点:1.一站式实时数仓引擎:Hologres集成了数据仓库、在线分析处理(OLAP)和在线服务(Serving)能力于一体,适合实时数据分析和决策支持场景。2.兼容PostgreSQL协议:Hologres支持标准SQL(兼容PostgreSQL协议和语法),使得迁移和集成变得简单。3.海量数据处理能力:能够处理PB级数据的多维分析和即席查询,支持高并发低延迟查询。4.实时性:支持数据的实时写入、实时更新和实时分析,满足对数据新鲜度要求高的业务场景。5.与大数据生态集成:与MaxCompute、Flink、DataWorks等阿里云产品深度融合,提供离在线
|
4月前
|
分布式计算 搜索推荐 物联网
大数据及AI典型场景实践问题之通过KafKa+OTS+MaxCompute完成物联网系统技术重构如何解决
大数据及AI典型场景实践问题之通过KafKa+OTS+MaxCompute完成物联网系统技术重构如何解决
|
4月前
|
存储 分布式计算 关系型数据库
实时数仓 Hologres产品使用合集之创建外部表时提示不支持ODPS的datetime数据类型,该怎么解决
实时数仓Hologres是阿里云推出的一款高性能、实时分析的数据库服务,专为大数据分析和复杂查询场景设计。使用Hologres,企业能够打破传统数据仓库的延迟瓶颈,实现数据到决策的无缝衔接,加速业务创新和响应速度。以下是Hologres产品的一些典型使用场景合集。
|
5月前
|
分布式计算 大数据 数据挖掘
MaxCompute产品使用合集之如何解决MC通过外部表方式访问Hologres时,数据量达到3000万条左右导致查询速度慢
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
|
6月前
|
存储 分布式计算 专有云
MaxCompute产品使用问题之阿里公有云的数据如何迁移到阿里专有云
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
65 10
|
6月前
|
SQL 分布式计算 Java
MaxCompute操作报错合集之查询外部表insert到内部表报错,两表字段一致,是什么原因
MaxCompute是阿里云提供的大规模离线数据处理服务,用于大数据分析、挖掘和报表生成等场景。在使用MaxCompute进行数据处理时,可能会遇到各种操作报错。以下是一些常见的MaxCompute操作报错及其可能的原因与解决措施的合集。
|
6月前
|
存储 分布式计算 大数据
MaxCompute产品使用合集之是否支持创建OSS外部表为分区表,并访问OSS上以分区方式存储的数据
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
|
6月前
|
分布式计算 安全 大数据
MaxCompute操作报错合集之创建oss外部表时出现了报错:"Semantic analysis exception - external table checking failure, error message:,该怎么办
MaxCompute是阿里云提供的大规模离线数据处理服务,用于大数据分析、挖掘和报表生成等场景。在使用MaxCompute进行数据处理时,可能会遇到各种操作报错。以下是一些常见的MaxCompute操作报错及其可能的原因与解决措施的合集。
160 1
|
7月前
|
分布式计算 DataWorks 关系型数据库
DataWorks产品使用合集之在DataWorks中,MaxCompute创建外部表,MaxCompute和DataWorks的数据一直保持一致如何解决
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
61 0
DataWorks产品使用合集之在DataWorks中,MaxCompute创建外部表,MaxCompute和DataWorks的数据一直保持一致如何解决
|
7月前
|
分布式计算 Java 数据库连接
实时数仓 Hologres产品使用合集之该创建外部表maxCompute的这个服务器列表如何解决
实时数仓Hologres是阿里云推出的一款高性能、实时分析的数据库服务,专为大数据分析和复杂查询场景设计。使用Hologres,企业能够打破传统数据仓库的延迟瓶颈,实现数据到决策的无缝衔接,加速业务创新和响应速度。以下是Hologres产品的一些典型使用场景合集。
112 0