Skip to content

Latest commit

 

History

History
163 lines (106 loc) · 12.2 KB

README-zh-CN.md

File metadata and controls

163 lines (106 loc) · 12.2 KB

image.png

中文 | English

OceanBase 开发者中心 (ODC)

OceanBase 开发者中心(以下简称 ODC)是开源的全场景数据库开发和数据管理协同工具,通过协同开发解决数据库的变更风险管控、数据管理和数据安全问题。 image

🤔 选择 ODC 的理由

随时随地高效 SQL 开发

  • ODC 基于现代 WEB 架构,随时随地,只要有浏览器就可以访问您的数据库。
  • ODC SQL 开发功能全面且易用,桌面开发工具有的功能 ODC 也有,甚至支持 PL 调试。 image

守护 SQL 开发过程的每一次变更

  • 在 SQL 开发过程的全部场景,包括可视化对象管理、SQL 查询、数据编辑、数据导入和导出、... ,ODC 都内置了风险控制。
  • ODC 提供基于项目的协同和变更审批流程,并且内置了 SQL 检查规则、SQL 窗口规范、风险等级识别。 image

自动数据生命周期管理

  • ODC 支持数据按照保留时长清理或归档,5 分钟构建你的冷热数据分离系统。
  • ODC 不仅支持按照数据的时间标记处理,也支持按照分区批量处理。
  • 还可以通过 ODC SQL 计划任务完成计算任务,为什么还要继续使用你的 CRONTAB ? image

全场景敏感数据保护

  • ODC 数据脱敏支持静态场景也支持动态场景,结构变更、SQL 查询、结果集导出、数据导出 全部开发场景都会脱敏。
  • 安全管理员配置敏感数据规则和脱敏算法,DBA 和 开发 都无法接触敏感数据。 image

无需改变已有系统就可以集成 ODC 到当前工作流程

  • 无需改变您的系统就可以把 ODC 集成到您当前的数据库开发协同工作流程中.
  • SSO、审批集成、SQL 审核集成、堡垒机集成、审计集成,企业管控集成需要的能力全都有。 image

🚀 安装部署

ODC 有 2 个产品形态,分别是 WEB 版和桌面版。

  • 桌面版:适用于个人开发场景,是一款高效易用的 SQL 开发工具,桌面版支持的操作系统包括 Windows、MacOS。
  • WEB 版:适用于多人协同开发场景,包含协同开发、风险控制、数据安全等全部功能,是数据库开发管控协同一体化平台,WEB 版提供 rpm、docker 镜像等安装介质,支持 x86、arm 架构,WEB 版也包含桌面版 SQL 开发的全部功能。

WEB 版部署

本章节描述的部署步骤仅适用于功能体验,生产环境部署请参考 部署指南

环境要求

ODC WEB 版的安装介质为 docker 镜像,依赖一个 OceanBase MySQL 租户作为 MetaDB。如果您没有 MetaDB,请根据下面的步骤 1:创建一个元数据库 指引来创建一个元数据库。

在部署 ODC WEB 版之前,请准备以下环境,确保环境资源和规格满足要求,具体检查项包括:

  • 部署的机器有至少 2 个空闲 CPU core、4GB 内存。
  • 已经安装 docker 并启动服务,推荐使用 docker 最新版。
  • MetaDB 租户规格为 1C4G 或以上。

(可选)步骤 1:创建一个 MetaDB

使用下面的简单脚本就可以创建一个 MetaDB。为了创建 MetaDB,需要您使用下面的脚本创建一个 OceanBase 集群以及一个测试租户,这将花费您大约 2 分钟时间。

请注意:您用于部署 OceanBase 集群的机器应至少含有 4 vCPU 以及 8 GB 空闲内存。

以下脚本仅用于演示用。如果您已经拥有一个 MetaDB,请略过此步骤。

# 启动一个 OceanBase 集群的同时会自动创建出一个测试租户
docker run -p 2881:2881 --name oceanbase-ce -d oceanbase/oceanbase-ce

# 连接位于该集群的测试租户
docker exec -it oceanbase-ce ob-mysql root

# 在该租户中创建一个名为 'odc' 的数据库用户以及一个名为 'odc_metadb' 的数据库。将 <password> 替换为您的真实密码
CREATE USER odc IDENTIFIED BY '<password>';
CREATE DATABASE odc_metadb;
GRANT ALL ON odc_metadb.* TO odc;

步骤 2:启动 ODC Server

启动 ODC docker 容器的参考脚本如下。

# 启动 ODC。下面例子将限制容器最大占用 2 CPU 核以及 4GB 内存

# 将 <your_metadb_password> 替换为您的 MetaDB 的真实密码。如果您按照步骤 1 创建出一个 MetaDB,那么将 <your_metadb_password> 替换为您在步骤 1 中设置的密码

# 使用参数 <your_admin_password> 为 ODC 的 admin 账户设置一个初始密码。这个密码在您登录 ODC 时将会被用到。密码必须满足以下条件:
# - 至少 2 个数字
# - 至少 2 个小写字母
# - 至少 2 个大写字母
# - 至少 2 个特殊字符,允许的特殊字符的范围是 ._+@#$% 
# - 不包含空格和其他特殊字符
# - 长度为 8-32

# 启动 ODC 将花费大约 2 分钟

docker run -d -it --name odc --network host \
--cpu-period 100000 --cpu-quota 200000 --memory=4G \
-e "DATABASE_HOST=127.0.0.1" -e "DATABASE_PORT=2881" -e "DATABASE_NAME=odc_metadb" \
-e "DATABASE_USERNAME=odc@test" -e 'DATABASE_PASSWORD=<your_metadb_password>' \
-e 'ODC_ADMIN_INITIAL_PASSWORD=<your_admin_password>' -e "ODC_SERVER_PORT=8989" \
oceanbase/odc:latest

更多

部署完成 ODC 后,您可以根据 快速指南 的指引开始您的 ODC 之旅。

桌面版安装

ODC 使用 Electron 技术把 WEB 应用构建为桌面应用,支持多个桌面操作系统。安装桌面应用程序的方式比较简单,下载对应版本的安装包双击安装即可。 ODC 桌面版使用 h2database 嵌入式数据库作为 MetaDB,所以您不需要配置 MetaDB 数据库。

ODC 桌面版安装包下载地址

更多

部署完成桌面版 ODC 后,您可以根据 快速指南 的指引开始您的 ODC 之旅。

🤝 参与贡献

ODC 期望构建一个开放的社区,一起打造数据库开发管控协同工具,我们欢迎任何形式的贡献,您可以:

  • 通过 Issues 提交 bug。
  • 通过 Discussion 参与或发起讨论。
  • 通过 Pull requests 提交问题修复或者功能特性。
  • 将 ODC 介绍给您的朋友和同事,分享 ODC 的功能和优势,帮助 ODC 社区扩大影响力。

关于参与贡献的更多指南请参阅 贡献指南 , 对于代码变更类型的 Pull requests 的详细指南请参阅 开发指南

🛤️ 路线图

ODC 2024 年路线图如下:

方向 Q1 Q2 Q3 Q4
HTAP 协同开发
  • 支持 Doris 数据源
  • 支持 Oracle 数据源
  • 支持同构数据库结构比对/同步
  • 内置常用代码片段
  • 支持自然语言转化为 SQL
  • 支持实时查询剖析
  • 支持结果集转化为图表
  • 支持全局数据库对象检索与定位
  • 提供 dbt-oceanbase 插件
  • 支持 Git 仓库集成
  • 支持 dbt 开发集成
  • 支持自然语言转化为图表
  • 支持项目内脚本与代码片段共享
  • 支持 AI 任务编排
  • 支持 DAG 任务编排
  • 支持轻量报表管理
  • 支持异构数据库结构比对/同步
变更更风险管控
  • 支持库级权限访问控制
  • 支持任务异常发送告警
  • 支持自动识别 offline DDL 变更
  • 支持逻辑库 DDL 变更;
  • 支持无锁数据变更
  • 支持多库(pipeline)变更
  • 支持配置库管理员
  • 支持表级权限访问控制
  • 新增全局项目管理员
  • 支持逻辑库 DML/DQL
  • 支持模版化配置 SQL-check
  • 支持敏感列权限申请
  • 提供基于行级回收站的变更回滚能力
  • 支持自动识别敏感数据
  • 支持基于状态的结构变更
  • 命令行窗口行为纳入操作审计
数据生命周期管理
  • 数据归档/清理支持 SQL 预览
  • 数据归档/清理支持唯一索引表
  • 数据归档支持源表目标表同库
  • 分区计划支持 OB Oracle 数据源
  • 数据归档源端查询性能优化
  • 支持从 OB 归档到文件/OSS/S3
  • 同构数据归档支持 DDL 增量变更同步
  • 支持从 OB 归档到 COS/OBS
  • 支持异构数据库归档表结构同步
  • 支持关联(外键)表场景进行归档
  • 数据归档/清理风险提示
  • 数据归档/清理支持逻辑库
  • 数据归档/清理支持 Oracle 数据源
易用性
  • 优化 SQL 开发页面交互
  • 优化数据库搜索能力
  • 桌面版支持自定义 JVM 参数
  • 支持自定义配置项(含快捷键等)
  • UI 主题焕新
  • 新增项目管控概念引导
  • 优化工单管理页面交互
  • 加强代码自动补全能力
  • 优化 PL 开发体验
  • 优化宽表场景页面交互
  • 桌面版启动速度优化至 20s 内
  • 提供模版化 SQL 格式化能力
  • 优化操作记录页面交互

许可证

ODC 采用 Apache-2.0 许可证.

帮助和支持

我们欢迎您通过 GitHub 缺陷提出您的问题或给出反馈。如果您使用 GitHub 存在困难,您可以加入我们的钉钉群来寻求帮助。