• 云数据库OceanBase,分布式数据库较好的解决方案


    以往数据库如果数据量多了,单表超过500万,性能就急剧下降,这时候如果需要扩展要怎么样呢?常规来说就是分库分表,进行各种横向拆分,纵向拆分,来进行数据分流处理,这需要就技术开发者技术能力要求较高,也会进行系统重构等。

    各个厂商尝试过数据库中间件,什么是数据库中间件,其实就是各个数据库服务器,数据库中的一个调度处理,程序连接数据库时直接连接这个中间件,而不直接连接数据库,由这个中间进行中间调配,例如插入一条数据,中间件自行决定插入到那台数据库服务器,并且进行归纳整理,便于后续查询。

    最终从数据库中间件演化成了云数据库,这就是OceanBase的理念的由来。

    OceanBase 云服务(OceanBase Cloud Services)是构建在云基础设施上的公有云数据库服务,可基于公共云环 境进行部署,提供PB 级存储容量、万亿级单表记录、主流数据库兼容、极致弹性、异地容灾等金融级核心能力。 支持一站式部署、扩容、监控运维管理、开发工具、数据迁移、备份恢复等端到端数据库服务化解决方案。

    OceanBase 最初是为了处理淘宝网的大规模数据而产生的。传统的 Oracle 单机数据库无法支撑数百 TB 的数据存储、数十万的 QPS,通过硬件扩展的方式成本又太高。

    淘宝网曾使用 MySQL 取代 Oracle,但是需要进行分库分表来存储,也有很多弊端。通过分库分表添加节点比较复杂,查询时有可能需要访问所有的分区数据库,性能很差。

    淘宝网甚至考虑过HBase,但是 HBase 只能支持单行事务查询,且不支持 ACID 特性,只支持最终一致性。而淘宝网的业务必须支持跨行跨表业务,且一些订单信息需要支持强一致性。

    基于以上原因,这就需要开发一个新的数据库,既要有良好的可扩展性,又能支持跨行跨表事务,OceanBase 就应运而生了。

    有些小伙伴对云数据库的概念可能还是有点模糊,可能还以为是一个数据库集群开出来的一个数据库,从外来看是这样,但内部截然不同。

  • 相关阅读:
    sourceinsight问题
    mysql函数调用过程
    visual studio 中sstrcpy报错的问题
    mysql基本操作
    c/c++程序连接mysql
    mysql 在visual studio中的配置
    va_start
    c do{}while(0)
    .NET 通用权限设计
    https://zhidao.baidu.com/question/362784520674844572.html
  • 原文地址:https://www.cnblogs.com/phpyangbo/p/15829287.html
Copyright © 2020-2023  润新知