Bytebase 2.0 - 把 DevOps 带进数据库

数据工
• 阅读 1315

近期 AI 领域的突破让大家都很兴奋,但回到日常的工作中,开发者们还是需要处理许多的琐事。其中之一就是和数据库打交道,一件繁琐但又需要格外仔细的工作,不然就容易造成 #删库跑路 的事故。2 年前,我们启动了 Bytebase 来解决这个问题,并且把项目开源在了 GitHub 上。相比于全球范围内的友商 Liquibase,Flyway,还是国内的 Yearning,Archery,Bytebase 的增长速度也都是更快的。
Bytebase 2.0 - 把 DevOps 带进数据库
而在 2022 年整个开源领域,Bytebase 也是增长最快的项目之一,全球排名 24,中国区排名第 2。
Bytebase 2.0 - 把 DevOps 带进数据库
1 年前,Bytebase 开始商业化,这一年里我们积累了遍布全球,来自各行各业的客户。今天我们迎来了另一个里程碑,Bytebase 2.0

1 到 12

Bytebase 2.0 - 把 DevOps 带进数据库
Bytebase 最早的版本只支持 MySQL,Bytebase 2.0 中已经支持了 12 种数据库引擎:

  • OLTP: MySQL, PostgreSQL, Oracle, SQL Server, MariaDB
  • OLAP: ClickHouse, Snowflake
  • NewSQL: TiDB, OceanBase, Spanner
  • NoSQL: MongoDB, Redis
    你可以部署一套 Bytebase 管理起整个公司里所有的异构数据库系统。

Cloud 版本

像 Bytebase 这样访问数据库的服务,企业通常会部署在自己的私有网络里。Bytebase 从第一天开始就提供了简单的部署方式,整个 bytebase 前后端都被打包在一个二进制文件里,同时我们也提供了 Docker 镜像和 Helm Chart,5 秒完成部署。另一方面,我们也无法否认 Cloud 部署的简便性,所以在提供私有化部署的的基础之上,我们现在也推出了 Bytebase Cloud 版本。
Bytebase Cloud 提供了和私有化部署一样的功能,只是免去了需要用户自己运维的负担。
通过 Cloud 版本,用户也能更加快速地体验 Bytebase 的功能。只要访问官网,免费注册后,跟着我们的快速指引就行了。
Bytebase 2.0 - 把 DevOps 带进数据库

开拓数据库变更管理 (DCM)

创立 Bytebase 的初心,是因为我们本身作为开发者,在市面上找不到让人满意的数据库变更管理方案 (Database Change Management / DCM)。经过了 2 年多的研发,Bytebase 现在已经可以提供完整的 DCM 解决方案,通过一系列独有的功能来建立数据库变更的最佳实践:

  • 基于 Web 端,以 DBA 和开发者协同为核心的工作空间。
  • 面向终态的数据库变更方式。
  • 原生的 VCS 和 Terraform 集成,支持数据库代码化 (Database-as-Code),GitOps。
  • 针对多环境,多租户的批量一致性变更。
  • 超过 100 条的 SQL 审核规则自动检测,同时支持接入 GitLab, GitHub CI 流程。
  • 以风险视角为中心,全局管理数据库操作,配置自定义审批流程。
    Bytebase 2.0 - 把 DevOps 带进数据库

企业级

Bytebase 2.0 配备了一系列企业级的标准能力,RBAC,SSO 单点登录,2FA 多因素认证,审计日志,水印。除此之外,还有数据库领域的企业级特有功能:

  • DBA 工作流和环境分级
  • 数据脱敏
  • 数据库访问控制
  • 数据库异常检测,比如 schema 漂移检测
    Bytebase 是一款面向合规设计的产品(Compliance-By-Design / CBD),我们会和四大会计师事务所的审计团队定期沟通,理解诸如 SOC2,ISO 27001 这些数据合规方面的要求。采用了 Bytebase 管理数据库的客户,就可以直接满足在数据变更和访问控制上的合规审计要求。

拥抱 AI

Bytebase 也在积极地把 AI 能力接入到产品中。现在已经可以在 SQL Editor 中,通过自然语言查询数据库。
Bytebase 2.0 - 把 DevOps 带进数据库
在 2.0 中,我们还开始借助 AI 对慢查询进行索引建议。
Bytebase 2.0 - 把 DevOps 带进数据库
上个月,我们还发布了一款新的产品 SQL Chat,一个对话式的 SQL 客户端,可以使用自然语言来操作数据库。
Bytebase 2.0 - 把 DevOps 带进数据库

新网站和升级的免费版

过去几个月,我们也一直在制作新的官网,这次也随着 2.0 一起上线。除了别具一格的动效外,我们还重制了整个网站的内容,提升了整个网站,尤其是文档页的阅读体验。
Bytebase 2.0 - 把 DevOps 带进数据库
我们也希望更多的团队,无论大小,都可以采用数据库变更管理的最佳实践。所以为了达成这个目的,Bytebase 2.0 也升级了免费版的能力,把之前只存在于付费版的几个关键功能也迁移到了免费版:

  • RBAC 权限体系
  • 开放所有 100+ SQL 审核规则(之前只开放了 2 条)
  • 移除了 10 个账号的限制
  • 把实例数限制从 10 提升到了 20

生态

Bytebase 一直专注于数据库开发领域,同时我们也要依赖于上下游生态,组装在一起给客户交付整体的解决方案。
在国内,我们就有很多的生态伙伴。在 Bytebase 所支持的三款 NewSQL 数据库中,国产的 TiDB 和 OceanBase 就独占二席;此外和 Zadig, KubeVela 一起完成应用的流水线发布;在 Sealos,Rainbond 上接管云原生应用的数据库开发;和 Pigsty 一同为 PostgreSQL 数据库保驾护航。
Bytebase 2.0 - 把 DevOps 带进数据库
Bytebase 本身也使用了国内同行的开源组件,比如用 TiDB Parser 来实现 TiDB 和 MySQL 的 SQL 自动审核,库表同步等功能,用 casbin 来实现权限管理。

不止于数据库变更管理

Bytebase 起初针对的是一个长久以来存在的特定问题:如何妥善地管理数据库 Schema 变更。而 Bytebase 2.0 已经进化为了一个 Database DevOps 平台,管理整个数据库的开发生命周期,一站式覆盖各种数据库的变更,查询,安全,治理场景。
Bytebase 2.0 - 把 DevOps 带进数据库

我们的目标还是和两年多前写下 Bytebase 的第一行代码一样,把 GitLab / GitHub 的开发体验也带到数据库开发中来。

💡 你可以访问 Bytebase 官网,免费注册云账号,立即体验 Bytebase。也可以和我们的产品专家预约演示

点赞
收藏
评论区
推荐文章
blmius blmius
4年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
美凌格栋栋酱 美凌格栋栋酱
7个月前
Oracle 分组与拼接字符串同时使用
SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(
皕杰报表(关于日期时间时分秒显示不出来)
在使用皕杰报表设计器时,数据据里面是日期型,但当你web预览时候,发现有日期时间类型的数据时分秒显示不出来,只有年月日能显示出来,时分秒显示为0:00:00。1.可以使用tochar解决,数据集用selecttochar(flowdate,"yyyyMMddHH:mm:ss")fromtablename2.也可以把数据库日期类型date改成timestamp
Stella981 Stella981
3年前
Python3:sqlalchemy对mysql数据库操作,非sql语句
Python3:sqlalchemy对mysql数据库操作,非sql语句python3authorlizmdatetime2018020110:00:00coding:utf8'''
Wesley13 Wesley13
3年前
MySQL 子查询及其优化
使用过oracle或者其他关系数据库的DBA或者开发人员都有这样的经验,在子查询上都认为数据库已经做过优化,能够很好的选择驱动表执行,然后在把该经验移植到mysql数据库上,但是不幸的是,mysql在子查询的处理上有可能会让你大失所望,在我们的生产系统上就碰到过一些案例,例如:SELECTi_id,sum(i_sell)
Stella981 Stella981
3年前
Django之Django模板
1、问:html页面从数据库中读出DateTimeField字段时,显示的时间格式和数据库中存放的格式不一致,比如数据库字段内容为2012082616:00:00,但是页面显示的却是Aug.26,2012,4p.m.答:为了页面和数据库中显示一致,需要在页面格式化时间,需要添加<td{{dayrecord.p\_time|date:
Stella981 Stella981
3年前
KVM调整cpu和内存
一.修改kvm虚拟机的配置1、virsheditcentos7找到“memory”和“vcpu”标签,将<namecentos7</name<uuid2220a6d1a36a4fbb8523e078b3dfe795</uuid
Easter79 Easter79
3年前
Twitter的分布式自增ID算法snowflake (Java版)
概述分布式系统中,有一些需要使用全局唯一ID的场景,这种时候为了防止ID冲突可以使用36位的UUID,但是UUID有一些缺点,首先他相对比较长,另外UUID一般是无序的。有些时候我们希望能使用一种简单一些的ID,并且希望ID能够按照时间有序生成。而twitter的snowflake解决了这种需求,最初Twitter把存储系统从MySQL迁移
Vitess全局唯一ID生成的实现方案 | 京东云技术团队
为了标识一段数据,通常我们会为其指定一个唯一id,比如利用MySQL数据库中的自增主键。但是当数据量非常大时,仅靠数据库的自增主键是远远不够的,并且对于分布式数据库只依赖MySQL的自增id无法满足全局唯一的需求。因此,产生了多种解决方案,如UUID,Sn
Python进阶者 Python进阶者
1年前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这
数据工
数据工
Lv1
所有的快乐,都来源于生活的心动。
文章
3
粉丝
0
获赞
0