当前位置: 首页 > news >正文

OceanBase原生分布式数据库

1.历史背景

在Java Web项目中,常常使用免费开源的MySQL数据库存储业务数据,按业界经验MySQL单库超过多大数据体量,或单表超过几百万条数据后就会出现查询变慢的情况,单实例数据库只能扩展物理资源(CPU、内存),来提升查询速度,但物理资源也有上线,而且成本高昂,业务在大数据量时往往考虑分库分表方案,让数据分散到多服务器上,用多服务器资源来提升查询速度,此方案需要手动部署分库分表中间件,需要手动在多台服务器上部署数据库实例,为提升可用性和吞吐量往往还要配置读写分离,扩容缩容困难,分片数后期很难扩展(数据难自动迁移),这些情况对运维有很高的要求,来对比一下常用的MySQL方案:

  • 单库:一个数据库实例,只能提升服务器硬件资源来提高数据库性能
  • 读写分离:一主多备,提升了可用性和吞吐量,但表数量大时无法提升单个请求的查询速度,且备库数据可能存在延迟或不一致情况,常用中间件:ShardingSphere-JDBC。
  • 分库分表:多主多备,需部署分库分表中间件,设置分片规则,如把一张大表按(hash、范围)规则水平分割成多个表,以减少单表数量,来提升查询速度,逻辑上是一个表,物理上是多库多表,把查询sql分发到不同分片的数据库实例上,最后中间件聚合多个分配结果,常用中间件:ShardingSphere-Proxy。
  • 原生分布式:原生支持分库分表,当成一个数据库实例使用,对使用者透明,可自动均衡和迁移数据,具有高可用,水平扩展、容灾、方便扩缩容、运维简单、一些指标可视化监控等

tips:https://shardingsphere.apache.org/

2.那有没有一种分布式关系型数据库能解决单表数据量大、水平扩展、容灾-容忍少量节点故障,且自动迁移数据、部署运维简单、扩缩容方便,安全可靠,背靠大厂?

考察了多个分布式数据库,最终选择OceanBase作为技术储备,原因是:因其生态强大、文档丰富、银行和大厂在使用(有安装部署工具、云平台运维监控、开发工具、导入导出工具、SQL诊断工具、数据迁移服务等)

  • OceanBase:https://www.oceanbase.com,https://github.com/oceanbase/oceanbase
  • PolarDB-X:是阿里云自主研发的高性能云原生分布式数据库产品,网址:https://polardbx.com,https://polardbx.com/document?type=PolarDB-X
  • TiDB:是 PingCAP 公司自主设计、研发的开源分布式关系型数据库,网址:https://cn.pingcap.com
  • TenDB Cluster:是腾讯游戏CROS DBA团队提供的MySQL分布式关系型数据库解决方案,网址:https://tendbcluster.com/book-cn/
  • Greenplum:PostgreSQL的分布式版本,https://cn.greenplum.org/
3.OceanBase简介

OceanBase 数据库是一款阿里完全自研的企业级原生分布式数据库,连续多年支撑双十一活动,创新推出“三地五中心”城市级容灾新标准,自研一体化架构,兼顾分布式架构的扩展性与集中式架构的性能优势,用一套引擎同时支持 OLTP 和 OLAP 的混合负载,具备数据强一致、高扩展、高可用、高性价比、高度兼容 Oracle/MySQL、稳定可靠等特征。

核心特性
  • 高可用:“三地五中心” 容灾架构方案,支持同城/异地容灾,可实现多地多活,满足金融行业 6 级容灾标准(RPO=0,RTO< 8s),数据零丢失。
  • 兼容性:高度兼容 Oracle 和 MySQL,社区版只兼容MySQL,提供自动迁移工具
  • 水平扩展:实现透明水平扩展,支持业务快速的扩容缩容,同时通过准内存处理架构实现高性能。支持集群节点超过数千个,单集群最大数据量超过 3PB,最大单表行数达万亿级。
  • 低成本:基于 LSM-Tree 的高压缩引擎,存储成本降低;原生支持多租户架构,集群可创建多个租户,租户间独立业务提供服务,租户间数据隔离。
  • 安全可靠:完全自主研发,代码级可控,自研单机分布式一体化架构,大规模金融核心场景 9 年可靠性验证;完备的角色权限管理体系,数据存储和通信全链路透明加密,支持国密算法,通过等保三级专项合规检测。
  • HTAP:提供一站式 OLTP (Online Transactional Processing)、OLAP (Online Analytical Processing),可当轻量级数仓使用,参考:https://open.oceanbase.com/blog/7499489568

详细介绍请看官网

官网地址
  • 官网地址:https://www.oceanbase.com
  • 文档地址V4.2.1:https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000000217921
  • 软件下载:https://www.oceanbase.com/softwarecenter
  • 软件下载(镜像仓库):https://mirrors.aliyun.com/oceanbase/community/stable/el/7/x86_64/?spm=a2c6h.25603864.0.0.34a0130dfVJgW5
  • GitHub开源:https://github.com/oceanbase/oceanbase
  • 版本发布记录:https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000000247670
OceanBase 数据库提供企业版和社区版
  • 企业版:高度兼容 Oracle/MySQL,要付费。
  • 社区版:只兼容 MySQL,开源、免费。

4.哪些公司在用OceanBase?

支付宝、银行(交通银行、北京银行、中国太平洋保险)、中国移动、中国联通、携程、快手等都在使用
在这里插入图片描述

http://www.lryc.cn/news/277410.html

相关文章:

  • 首次使用go-admin
  • 软件工程概论---内聚性和耦合性
  • 纯血鸿蒙「扩圈」100天,酝酿已久的突围
  • UICollection Compositional Layout全详解
  • 单例模式的模板
  • C#基础-空处理
  • 测试平台开发vue组件化重构前端代码
  • 龍运当头--html做一个中国火龙祝大家龙年大吉
  • Dockerfile语法和简单镜像构建
  • uniapp使用wxml-to-canvas开发小程序保存canvas图片
  • 关于数据库切换的麻烦
  • Qt/QML编程学习之心得:Linux下读写文件File(24)
  • 【Vue2+3入门到实战】(22)VUE3之组合式API - setup、reactive和ref函数、computed、watch、生命周期函数详细讲解
  • 如何在互联网上找到你想要的数据?
  • 揭秘淘宝商品详情API如何助力电商创新发展
  • vue element plus Space 间距
  • 【驱动序列】C#获取电脑硬件之CPU信息,以及它都有那些品牌
  • 目标检测-One Stage-YOLO v3
  • 安泰ATA-4014高压功率放大器在传感器脉冲涡流检测中的应用
  • Axure全面指南:正确打开并高效使用的步骤!
  • ts axios 指定返回值类型,返回数据类型不确定该怎么办 typescript
  • 判断是否是json字符串
  • SpringBoot集成Minio(接上文)
  • 更新 torchtext 造成的torch版本不匹配的问题
  • flutter资源
  • C++经典程序
  • Java多线程-Thread类的run方法
  • java基础之Java8新特性-方法引入
  • K8S中的hostPort、NodePort 、targetPort、port、containerPort 的区别
  • SpringBoot整合FreeMarker模板引擎