yuanjunxi
发布于

#ODCP第三期OushuDB课程学习笔记

OushuDB 的主要产品特性:

1.存储与计算分离架构
多个主节点处理用户对数据库的连接请求 (JDBC/ODBC),处理用户认证及协调分布式执行计划引擎、数千个计算/存储节点分布式调度服务来完成后续 SQL 查询的处理流程。

2.分布式执行计划引擎
负责用户端标准 SQL 语句的解析、语意检查、基于代价的查询优化到最终产生分布式的查询任务规划工作。

3.分布式任务调度引擎 QD
负责执行计划的分发与执行状态跟踪,同时也负责节点间的数据分发。

4.支持 SIMD 的极速执行引擎
负责将分布式调度引擎转发的逻辑计划转换成物理计划并完成资源配置,启动并控制整个查询计划的执行并将执行结果透过分布式调度引擎传回上层执行节点。

5.分布式可插拔存储引擎
提供支持 HDFS/S3/本地表存储等多种存储引擎及数据格式(行存、列存)数据的编码、压缩、存储与读写等机制。

6.分布式事务管理
提供全局的数据库读写 ACID 机制,支持分布式锁, 支持并发读写能力。

7.数据库元数据管理
提供数据对象管理与存储,支持基于 MVCC 的事务处理机制。

8.全局资源管理
提供支持多租户的基于多级资源队列的全局任务资源统一分配。

数据库备份
1.通过 gpfdist 外部表导入数据

2.通过 gpfdist 外部表导出数据

3.hdfs 外部表导入数据

4.hdfs 外部表导出数据

5.使用 COPY 命令导入导出数据(COPY TO 表内容至文件,COPY FROM 文件至表内容)

6.使用 pg_dump 和 pg_restore

--认证方式
以口令为基础的认证方法包括 md5,crypt 和 password

--用户和角色
create role db_role1; /--创建角色/
drop role db_role1; /--删除角色/
select rolename from pg_roles; /--查看所有角色/
/du --在命令格式下查看所有角色的命令

create role db_role1 LOGIN; --创建具有登录权限的角色 db_role1
create role db_role2 SUPERUSER; --创建具有超级用户权限的角色

create role db_role3 CREATEDB; --创建具有创建数据库权限的角色

create role db_role4 CREATEROLE --创建具有创建角色权限的角色

alter role db_role1 nologin nocreatedb; --修改角色取消登录和创建数据库权限

create user db_user1 password '123'; --创建用户

create role db_user1 password '123' LOGIN; --同上一句等价

drop user db_user1; --删除用户

alter user db_user1 password '123456'; --修改密码

alter user db_user1 createdb createrole; --对用户授权

create user db_user1; --创建用户 1
create user db_user2; --创建用户 2
create role db_role1 createdb createrole; --创建角色 1
grant db_role1 to db_user1,db_user2; --给用户 1,2 赋予角色 1,两个用户就拥有了创建数据库和创建角色的权限
revoke db_role1 from db_user1; --从用户 1 移除角色 1,用户不在拥有角色 1 的权限

评论
    test