跳到主要内容

从存储桶加载数据

当数据文件存储在对象存储桶(如 Amazon S3)中时,可以使用 COPY INTO 命令直接将它们加载到 Databend 中。请注意,文件必须是 Databend 支持的格式,否则无法导入数据。有关 Databend 支持的文件格式的更多信息,请参阅 输入输出文件格式

image

本教程以 Amazon S3 存储桶为例,提供详细的分步指南,帮助您高效完成从存储桶中的文件加载数据的过程。

教程:从 Amazon S3 存储桶加载数据

准备工作

在开始之前,请确保已完成以下任务:

  1. 下载示例文件 books.parquet 并保存到本地文件夹。该文件包含两条记录:
books.parquet
Transaction Processing,Jim Gray,1992
Readings in Database Systems,Michael Stonebraker,2004
  1. 在 Amazon S3 中创建存储桶并上传示例文件。具体操作方法请参考以下链接:

本教程中,我们在 美国东部(俄亥俄) 区域(ID: us-east-2)创建了一个名为 databend-toronto 的存储桶。

Alt text

步骤 1. 创建目标表

在 Databend 中执行以下 SQL 语句创建表:

USE default;
CREATE TABLE books
(
title VARCHAR,
author VARCHAR,
date VARCHAR
);

步骤 2. 将数据复制到表中

  1. 使用 COPY INTO 命令将数据加载到目标表:
COPY INTO books
FROM 's3://databend-toronto/'
CONNECTION = (
AWS_KEY_ID = '<my-access-key-id>',
AWS_SECRET_KEY = '<your-secret-access-key>',
REGION = 'us-east-2'
)
PATTERN = '.*[.]parquet'
FILE_FORMAT = (
TYPE = 'PARQUET'
);
  1. 检查已加载的数据:
SELECT * FROM books;

---
title |author |date|
----------------------------+-------------------+----+
Transaction Processing |Jim Gray |1992|
Readings in Database Systems|Michael Stonebraker|2004|