“云数据库”和“云原生数据库”的区别是什么
Pigsty 是云数据库——Pigsty 提供了自建企业级 PostgreSQL 云数据库服务所需的一切,让您无需数据库专家,即可在几分钟内以 RDS 1/10 不到的成本,拉起本地的 Postgres 服务。
CloudNativePG 是云原生数据库——CloudNativePG 是一个 Kubernetes Operator ,它覆盖了具有主/备架构的高可用 PostgreSQL 数据库集群的完整生命周期,使用原生流式复制。
它俩都是“云”,那么二者的相同点和不同点是什么。
云原生数据库的概念产物 ×
这个产品的名字叫云原生 PG 数据库 √
pigsty 是管理软件,CNPG 是一个云服务。
云原生数据库一般是指对 k8s 环境进行了优化的数据库,比如自带 operator ,全生命周期管理有全套的 k8s 工具链,常见的备份还原、集群扩缩容、主备切换、配置管理都可以利用 operator 通过运维人员简单操作完成。
云原生针对的是 k8s ,你可以尝试在 k8s 上部署一个 mysql ,你会发现格格不入
我的理解是前者是本来就有,被云厂商托管在他们的基础设施里,用户直接买。
后者是,一开始没有,第一天就是活在云厂商里的。
那 Aurora 这种只能跑在云上的数据库算什么
算是典型的云数据库么
大部分普通的托管数据库,比如 aurora 这种,如果没宣称成云原生,是否是没有跑在 k8s 上的?直接跑在物理机上的?🤔
我个人的理解:
- 云对应的是本地。比如云集群,指的是使用云端资源搭建的一个服务器集群。这个集群可以搭建在 k8s 上,也可以是一群 VPS 裸金属
云原生,指的是是否能利用 k8s 的环境特性。例如通过 k8s 完成自动的重启、扩缩容、升级等等运维操作
你把传统数据库比如 mysql 放在云上,就是云数据库。云原生稍微不同,有自己的开发理念,比如存算分离、湖仓一体等。snowflake, bigtable 之类就是云原生数据库。开源的有 iceberg ,它的存是对象存储比如 s3 ,算是 spark 这种分布式 ETL ,联邦查询是 trino ,它自己只起到一个开放表管理作用,这就是云原生。
#7 那这么说的话 pigsty 只能算 k8s 数据库吧
我官网看了下 pigsty ,好像没有提到 k8s ,他的架构里面没有用到 k8s
油改电和纯电的区别
这些都是云厂商自己搞的概念
如果是企业客户, 可以直接找专属技术支持, 让他们给提供后端技术方案的陈述 就清晰了
小客户也没啥必要了解那么多 能跑就行
这俩都是给 IDC 自建用户设计的…… “云数据库”至少也应该是 RDS / Aurora / PolarDB / Neon 这样的线上服务吧
那给自建用户设计的云数据库,云原生数据库,和云厂商的 RDS 和云原生数据库之间又有什么核心的区别吗
云数据库 参考 RDS
云原生数据库 参考 PolarDB
云数据库主要指将数据库以服务方式提供给用户(内部也算),云原生主要是指架构层面,主要是在以容器为核心的 K8s 平台基础上构建的数据库,这里的 CloudNativePG (通常叫 CNPG ),主要是用来解决 PG 在 K8s 上的 HA 问题,顺便看了下 Pigsty 官网,首先那八大价值主张就给我看乐了,另外全家桶的架构设计更是颇具国人风格,不推荐用。
云原生数据库: 可以随意扩缩容. 比如 snowflake, neon
一个不严谨的比喻
云 ≈ saas
云数据 ≈ 别人部署好的数据库,你直接用
云原生 ≈ k8s
云原生数据库 ≈ 支持 k8s 特性的数据,存算分离的数据库
个人比较喜欢简洁的框架,最近看了下 go 的 web 框架 Echo,非常喜欢它的设计,看上去挺像 koa2 的。 支持分组中间件,路由中间件,这个很棒。 最近才开始学习了下 …
目前,我们公司正在使用青云的 KES ,不过尚未购买存储服务。目前采用 NFS 方案,但其性能似乎已不能满足我们的需求。因此,我们考虑进行更换,选择了 Ceph 。然而,根据一…
从北京辞职回邯郸半年了,已经有一些客户了,这周刚刚租了办公室,也在和本地的大学计算机系联系招实习同学。 目标就是为企业快速搭建在线设计工具,期待越来越好。 开源项目: git…
合速度