使用Spark SQL读取阿里云OSS的数据

读OSS数据

创建一个table,并关联OSS目录路径

sql 复制代码
CREATE TABLE my_table
USING parquet
OPTIONS (
  path 'oss://my_bucket/my_data_dir/dt=20230904',  -- 关联OSS路径
  header 'true', -- 如果Parquet文件包含列名的头部信息,则设置为'true',否则设置为'false'
  inferSchema 'true' -- 自动推断Parquet文件的模式
);

如果数据文件是Parquet格式的,可以自动推断出表的schema,很方便。

这样就可以使用sql语句读取数据了。

sql 复制代码
DESC my_table;
SELECT * FROM my_table limit 50;

写OSS数据

首先创建一个关联OSS目录的database:

sql 复制代码
--drop database if exists keepdb CASCADE;  -- 注意这个drop操作会删除OSS上对应目录下的数据,谨慎!!!

create database if not exists my_db location 'oss://my_bucket.oss-cn-beijing-internal.aliyuncs.com/my-data-dir';

现在就可以通过sql写入数据到OSS了,如下:

sql 复制代码
use my_db;

create table my_oss_table like my_table;

insert overwrite table my_oss_table
select * from my_table;
相关推荐
hzp6663 小时前
阿里云的centos8 服务器安装MySQL 8.0
mysql·阿里云·centos8
武昌库里写JAVA6 小时前
使用 Java 开发 Android 应用:Kotlin 与 Java 的混合编程
java·vue.js·spring boot·sql·学习
水涵幽树7 小时前
MySQL 时间筛选避坑指南:为什么格式化字符串比较会出错?
数据库·后端·sql·mysql·database
funfan05178 小时前
在IDEA中DEBUG调试时查看MyBatis-Plus动态生成的SQL语句
sql·intellij-idea·mybatis
TG_yunshuguoji9 小时前
阿里云对象存储OSS之间进行数据转移教程
阿里云·数据迁移·在线迁移
AI 嗯啦10 小时前
SQL详细语法教程(七)核心优化
数据库·人工智能·sql
云布道师15 小时前
AI时代下阿里云基础设施的稳定性架构揭秘
人工智能·阿里云·架构
Hello123网站15 小时前
Qwen2-阿里云最新发布的通义千问开源大模型
阿里云·开源·云计算·ai工具
A 计算机毕业设计-小途1 天前
大四零基础用Vue+ElementUI一周做完化妆品推荐系统?
java·大数据·hadoop·python·spark·毕业设计·毕设
不羁。。1 天前
【撸靶笔记】第八关:GET - Blind - Boolian Based - Single Quotes
数据库·sql·mybatis