返回文档中心

OushuDB 产品文档

  • 产品介绍
    • Oushu Database简介
    • 体系架构
      • 概览
      • 查询执行流程
      • 弹性调度执行
      • 极速执行器
      • 高速互联网络
      • 事务管理
      • 资源管理器
      • 存储模块
    • 基本用法
      • 启动/停止 OushuDB
      • 创建数据库和表
      • 查看查询执行情况
      • 概述
      • 数据库
      • 模式
      • 表
      • 创建和管理视图
      • 函数/存储过程
  • Release Notes
    • Oushu Database 6.2.1.0 新特性 (发布日期:2025年4月09日)
    • Oushu Database 6.1.0.0 新特性 (发布日期:2025年1月15日)
    • Oushu Database 6.0.0.0 新特性 (发布日期:2024年11月8日)
    • Oushu Database 5.4.0.0 新特性 (发布日期:2024年11月24日)
    • Oushu Database 5.3.0.0 新特性 (发布日期:2023年10月13日)
    • Oushu Database 5.2.0.0 新特性 (发布日期:2023年6月30日)
    • Oushu Database 5.1.0.0 新特性 (发布日期:2023年3月31日)
    • Oushu Database 5.0.0.0 新特性 (发布日期:2022年9月1日)
    • Oushu Database 4.9.0.0 新特性 (发布日期:2022年3月25日)
    • Oushu Database 4.8.0.0 新特性 (发布日期:2021年10月30日)
    • Oushu Database 4.6.0.0 新特性 (发布日期:2021年8月13日)
    • Oushu Database 4.5.0.0 新特性 (发布日期:2021年5月8日)
    • Oushu Database 4.4.0.0 新特性 (发布日期:2021年3月17日)
    • Release Notes History
      • Oushu Database 4.3.0.0 新特性 (发布日期:2021年1月15日)
      • Oushu Database 4.0.5.0 新特性 (发布日期:2020年12月20日)
      • Oushu Database 4.0.4.0 新特性 (发布日期:2020年11月12日)
      • Oushu Database 4.0.3.0 新特性 (发布日期:2020年10月26日)
      • Oushu Database 4.0.1.0 新特性 (发布日期:2020年8月28日)
      • Oushu Database 4.0.0.0 新特性 (发布日期:2020年7月17日)
      • Oushu Database 3.4.0.0新特性 (发布日期:2020年2月25日)
      • Oushu Database 3.3.1.2特性 (发布日期:2020年1月3日)
      • Oushu Database 4.0 Beta 新特性 (发布日期:2019年9月12日)
      • Oushu Database 3.3.1.0新特性 (发布日期:2019年10月25日)
      • Oushu Database 3.3.0.1新特性 (发布日期:2019年3月6日)
      • Oushu Database 3.3.0.0新特性 (发布日期:2019年2月21日)
      • Oushu Database 3.2.0.0新特性 (发布日期:2018年10月8日)
      • Oushu Database 3.1.2.1新特性 (发布日期:2018年10月8日)
      • Oushu Database 3.1.2新特性 (发布日期:2018年6月6日)
      • Oushu Database 3.1.1新特性 (发布日期:2018年3月28日)
      • Oushu Database 3.1.0新特性 (发布日期:2018年3月6日)
      • Oushu Database 3.0.1新特性 (发布日期:2017年10月30日)
      • Oushu Database 3.0新特性 (发布日期:2017年9月20日)
      • Oushu Database 2.2.0新特性 (发布日期:2017年6月19日)
      • Oushu Database 2.1.1新特性 (发布日期:2017年5月10日)
      • Oushu Database 2.1.0新特性 (发布日期:2017年3月24日)
      • Oushu Database 2.0.1新特性 (发布日期:2017年1月20日)
  • 管理数据库访问
    • 配置数据库授权
    • 客户端认证
  • 查询优化
    • 查询优化
      • 查询计划
      • 查询处理流程
      • Explain Analyze
      • 统计数据
      • 诊断性能问题
      • 物化视图
    • 性能提升技巧
      • 使用EXPLAIN
      • 规划器使用的统计信息
      • 用明确的JOIN子句控制规划器
      • 装载数据库
    • 缓存服务器
    • Append-only表无效数据清理
    • 统计信息自动收集
  • 数据定义
    • 创建和管理数据库
      • 概述
      • 创建一个数据库
      • 模板数据库
      • 数据库配置
      • 删除数据库
    • 创建和管理表空间
    • 创建和管理模式
      • 创建模式
    • 创建和管理表
      • 表的基本概念
      • 缺省值
      • 生成列
      • 约束
      • 系统列
      • 修改表
      • 继承
      • 依赖性跟踪
    • 创建和管理外部表
      • 外部表定义
      • 访问外部数据
    • 选择表存储模型
    • 分区表
      • 表分区
    • 创建和使用序列
    • 索引
    • 创建和管理视图
  • 数据插入/删除/更新
    • 插入数据
    • 更新数据
    • 删除数据
    • MAGMA实时表
  • 查询
    • FROM 子句
  • 数据类型
    • 货币类型
    • 数组
    • 范围类型
    • 域类型
    • 对象标识符类型
    • pg_lsn 类型
    • 脱敏数据类型
  • 函数和操作符
    • 逻辑操作符
    • 比较函数和操作符
    • 数学函数和操作符
    • 字符串函数和操作符
    • 二进制串函数和操作符
    • 位串函数和操作符
    • 模式匹配
    • 数据类型格式化函数
    • 时间/日期函数和操作符
    • 枚举支持函数
    • 几何函数和操作符
    • 网络地址函数和操作符
    • XML 函数
    • JSON 函数和操作符
    • 序列操作函数
    • 条件表达式
    • 数组函数和操作符
    • 范围函数和操作符
    • 聚集函数
    • 窗口函数
    • 子查询表达式
    • 行和数组比较
    • 集合返回函数
  • 类型转换
    • 概述
    • 操作符
    • 函数
    • 值存储
    • UNION、CASE和相关结构
    • SELECT的输出列
  • 数据导入导出
    • 导入导出简介
    • hdfs外部表导入数据
    • hdfs外部表导出数据
    • gpfdist外部表导入数据
    • gpfdist外部表导出数据
    • 使用COPY命令导入导出数据
    • 格式化输入和输出文件
    • dblink外部表导入数据
    • 共享 Hive 元数据
    • 在 Spark 中访问 OushuDB 元数据
  • 编程接口
  • SQL 客户端
  • 管理指南
    • 日常运维
      • 数据库状态监控
      • 硬件及操作系统监控
      • 统计信息维护
      • 数据库备份
    • 存储管理
      • 存储管理简介
      • Hudi提交归档
    • 系统扩容
      • 主节点扩容
      • 计算节点扩容
      • Magma 扩容
      • Magma 缩容
      • HDFS 扩容
    • 资源管理
      • 资源管理简介
      • 资源管理配置
      • 设置查询内存使用
      • 虚拟计算集群
    • 备份恢复
      • pg_dump 和 pg_restore
      • oushudb backup restore
    • 跨集群容灾
    • 数据库审计
    • 数据库监控
    • 实时监控
  • 参考手册
    • Reference:commands
    • SQL 命令
      • ABORT
      • ALTER AGGREGATE
      • ALTER COLLATION
      • ALTER CONVERSION
      • ALTER DATABASE
      • ALTER DEFAULT PRIVILEGES
      • ALTER EVENT TRIGGER
      • ALTER EXTENSION
      • ALTER FOREIGN DATA WRAPPER
      • ALTER FOREIGN TABLE
      • ALTER FUNCTION
      • ALTER GROUP
      • ALTER INDEX
      • ALTER LANGUAGE
      • ALTER LARGE OBJECT
      • ALTER MATERIALIZED VIEW
      • ALTER OPERATOR
      • ALTER OPERATOR CLASS
      • ALTER OPERATOR FAMILY
      • ALTER POLICY
      • ALTER PROCEDURE
      • ALTER PUBLICATION
      • ALTER RESOURCE QUEUE
      • ALTER ROLE
      • ALTER ROUTINE
      • ALTER RULE
      • ALTER SCHEMA
      • ALTER SEQUENCE
      • ALTER SERVER
      • ALTER STATISTICS
      • ALTER SUBSCRIPTION
      • ALTER SYSTEM
      • ALTER TABLE
      • ALTER TABLESPACE
      • ALTER TRIGGER
      • ALTER TYPE
      • ALTER USER
      • ALTER USER MAPPING
      • ALTER VIEW
      • ANALYZE
      • BEGIN
      • CALL
      • CHECKPOINT
      • CLOSE
      • COMMENT
      • COMMIT
      • COMPACT
      • COPY
      • CREATE AGGREGATE
      • CREATE CAST
      • CREATE COLLATION
      • CREATE CONVERSION
      • CREATE DATABASE
      • CREATE EVENT TRIGGER
      • CREATE EXTENSION
      • CREATE FOREIGN DATA WRAPPER
      • CREATE FOREIGN TABLE
      • CREATE FUNCTION
      • CREATE GROUP
      • CREATE INDEX
      • CREATE LANGUAGE
      • CREATE MATERIALIZED VIEW
      • CREATE OPERATOR
      • CREATE OPERATOR CLASS
      • CREATE OPERATOR FAMILY
      • CREATE POLICY
      • CREATE PROCEDURE
      • CREATE PUBLICATION
      • CREATE RESOURCE QUEUE
      • CREATE ROLE
      • CREATE RULE
      • CREATE SCHEMA
      • CREATE SEQUENCE
      • CREATE SERVER
      • CREATE STATISTICS
      • CREATE SUBSCRIPTION
      • CREATE TABLE
      • CREATE TABLE AS
      • CREATE TABLESPACE
      • CREATE TRANSFORM
      • CREATE TRIGGER
      • CREATE TYPE
      • CREATE USER
      • CREATE USER MAPPING
      • CREATE VIEW
      • DEALLOCATE
      • DECLARE
      • DELETE
      • DISCARD
      • DO
      • DROP ACCESS METHOD
      • DROP AGGREGATE
      • DROP CAST
      • DROP COLLATION
      • DROP CONVERSION
      • DROP DATABASE
      • DROP EVENT TRIGGER
      • DROP EXTENSION
      • DROP FOREIGN DATA WRAPPER
      • DROP FOREIGN TABLE
      • DROP FUNCTION
      • DROP GROUP
      • DROP INDEX
      • DROP LANGUAGE
      • DROP MATERIALIZED VIEW
      • DROP OPERATOR
      • DROP OPERATOR CLASS
      • DROP OPERATOR FAMILY
      • DROP OWNED
      • DROP POLICY
      • DROP PROCEDURE
      • DROP PUBLICATION
      • DROP RESOURCE QUEUE
      • DROP ROLE
      • DROP ROUTINE
      • DROP RULE
      • DROP SCHEMA
      • DROP SEQUENCE
      • DROP SERVER
      • DROP STATISTICS
      • DROP SUBSCRIPTION
      • DROP TABLE
      • DROP TABLESPACE
      • DROP TRANSFORM
      • DROP TRIGGER
      • DROP TYPE
      • DROP USER
      • DROP USER MAPPING
      • DROP VIEW
      • END
      • EXECUTE
      • EXPLAIN
      • FETCH
      • GRANT
      • IMPORT FOREIGN SCHEMA
      • INSERT
      • LOAD
      • LOCK
      • MOVE
      • PREPARE
      • REASSIGN OWNED
      • REFRESH MATERIALIZED VIEW
      • REINDEX
      • RELEASE SAVEPOINT
      • RESET
      • REVOKE
      • ROLLBACK
      • ROLLBACK TO SAVEPOINT
      • SAVEPOINT
      • SECURITY LABEL
      • SELECT
      • SELECT INTO
      • SET
      • SET ROLE
      • SET SESSION AUTHORIZATION
      • SHOW
      • START TRANSACTION
      • TRUNCATE
      • UPDATE
      • VALUES
    • Reference: parameters (GUC)
    • Reference:system catalog
      • System Tables
      • System Views
      • System Catalogs Definitions
    • Reference:PL/Java
    • Reference:extension tools
      • hornet
    • Reference:DBlink
    • Reference:PL/Python
当前版本: 2025-04-17
  • repository
  • suggest edit
  • .md
本页目录
  • 数据源DB中数据加载
  • 目标DB中创建dblink extension并赋权
  • 目标DB中通过dblink加载数据源DB的数据

dblink外部表导入数据

本页目录

  • 数据源DB中数据加载
  • 目标DB中创建dblink extension并赋权
  • 目标DB中通过dblink加载数据源DB的数据

dblink外部表导入数据#

本节通过一个简单的例子来说明如何通过dblink导入数据。 例如本集群有两个database,一个是source_db,一个local_db,我们的目的是用普通用户normal_user,在local_db中访问source_db中的数据,并加载到local_db中。

  • 数据源DB数据加载

  • 创建dblink extension并赋权

  • 目标DB通过dblink加载数据源DB的数据

数据源DB中数据加载#

用户source_user登陆source_db

source_db=# create schema myschema;
CREATE SCHEMA
source_db=# set search_path=myschema;
source_db=# create table foo(f1 int, f2 text,f3 text[]);
CREATE TABLE
source_db=# INSERT INTO foo (f1, f2, f3) VALUES  
source_db-# (1, 'a', ARRAY['aa', 'a1']),  
source_db-# (2, 'b', ARRAY['bb', 'b2']),  
source_db-# (3, 'c', ARRAY['cc', 'c3']);
INSERT 0 3

目标DB中创建dblink extension并赋权#

超级用户登录local_db,并使用如下命令创建dblink extension

create extension dblink;

超级用户登录local_db,赋权dblink相关的函数给普通用户normal_user

GRANT EXECUTE ON FUNCTION dblink(text, text, boolean) TO normal_user;
GRANT EXECUTE ON FUNCTION dblink_connect(text, text) TO normal_user;
GRANT EXECUTE ON FUNCTION dblink_connect_u(text, text) TO normal_user;

目标DB中通过dblink加载数据源DB的数据#

用户normal_user登录local_db,并创建目标表

local_db=# create table local_foo(c1 int, c2 text, c3 text[]);
CREATE TABLE

创建一个视图,视图中连接到目标db,并添加适当的连接参数和查询语句。

local_db=# create or replace view v1 as select  from dblink('hostaddr=127.0.0.1 port=7000 user=user_name password=123456 dbname=source_db connect_timeout=600 options=-csearch_path=myschema', 'select f1,f2,f3 from foo', true)
as t2(f1 int,f2 text,f3 text[]);
CREATE VIEW

通过视图来加载数据到本地表

local_db=# insert into local_foo select * from v1;
INSERT 0 3
local_db=# select * from local_foo;
 c1 | c2 |   c3    
----+----+---------
  1 | a  | {aa,a1}
  2 | b  | {bb,b2}
  3 | c  | {cc,c3}
(3 rows)

dblink使用限制

1. 目前仅支持两种dblink场景(1)同一集群内部database之间的dblink(2)不同集群之间database的dblink。
2. dblink仅在master进行远端的数据汇总,并没有任何并发和计算下推等优化,所以性能受限。
3. 使用dblink函数参与本地计算或者insert等操作时,请使用连接信息字符串作为首个参数,而不是已经存在的连接名。(方便起见,可以提前为dblink函数创建视图)。

上一页

格式化输入和输出文件

下一页

共享 Hive 元数据

By 北京偶数科技有限公司
© Copyright 2017 - 2025, Oushu Inc.