• 解读华为云原生数据库设计原则,打破传统数据库上云瓶颈


    摘要:一个优秀的自研数据库产品应该要具备哪些特性呢?

    在云计算技术不断成熟的背景之下,云数据库开始崛起,并因为按需扩展、按需付费等优异特性获得中小企业及互联网客户的青睐。

    虽然数据库上云是必然,但并不是万能的。

    相较于自建数据库,云数据库无需购买和安装任何软硬件,只需支付服务费用,随取随用,减少了DBA的投入和成本。

    但在实际应用中,开源数据库上云仅仅只能解决中小企业的简化部署、运维、调优,极致性价比等诉求,无法满足金融、政企等对数据安全、响应速度、可靠、可用有严苛要求的大型企业。

    当传统数据库系统难以应对大数据时代下的存储需求,企业客户迫切需要新的数据库产品,具备动态扩缩容、高吞吐量、低成本等。

    在这样的背景下,云服务厂商自研云数据库产品势在必行。

    那么,一个优秀的自研数据库产品应该要具备哪些特性呢?

    云数据库那么多,如何判断优劣?

    一款优秀的数据库产品,或者说一款能够解决企业级用户核心业务场景的数据库产品必须具备以下特性:

    1、能够支撑长期海量的研发投入,保障它的先进性,同时能够快速响应,帮助用户解决核心问题;

    2、有强大的技术支持团队,满足业务连续性要求;

    3、拥有丰富的原生支撑工具,能够满足日常开发,监控,运维,优化等基本诉求;

    4、拥有长期的发展规划,有完善的技术资料与培训认证体系,跟国内重点ISV厂商与高校合作,打造长期生态策略;

    5、在极端环境下,拥有全栈的软硬件一体化解决方案,以保障用户的业务连续性;

    6、有标杆客户联合创新孵化以及强大的生态构建能力。

    如果要做到上述提到的这几点,考验的不仅仅是技术能力,更多的是技术之上的生态建设以及服务能力。

    综合上述特性,基于华为内部IT与云底座深耕十几年的数据库内核研发优化能力,以及对客户高可靠高性能诉求的理解,华为云推出了企业级分布式数据库GaussDB。

    技术突破,产品设计取胜

    先来看看华为云原生数据库的设计原则,大体包括以下五个方面:

    1、计算与存储分离,主从解耦;

    2、IO密集型负载下推到存储节点完成,比如redo处理,页重构;

    3、充分利用云存储的能力,存储层实现独立容错和自愈服务,共享访问(单写多读);

    4、发挥SSD的优势,避免随机写带来的写放大,减少磨损、降低时延;充分利用SSD的随机读性能;

    5、当性能瓶颈从计算存储转到网络时,采用新的网络技术和硬件,比如RDMA。

    基于此,华为云GaussDB从技术层面就做出了不少的突破。

    华为云GaussDB数据库基于华为最新一代DFV分布式存储,采用计算存储分离架构,支持海量数据存储,无论是计算力还是存储容量均可以做到分钟级弹性扩缩容;同时支持跨AZ部署,数据自动备份本地和OBS,做到数据0丢失,即可满足金融等大型企业对数据库的高性能、高可靠、高可用诉求。

    也就是说,GaussDB数据库既解决了开源数据库上云存在的一些瓶颈难题,同时又从技术层面对一些特殊业务做了优化。

    其中,需要强调的是,华为GaussDB数据库全面支持包含鲲鹏和x86在内的多样化算力,具备从芯片到服务器、存储、操作系统、数据库的E2E研发能力,因此具备了数据库软硬性能调优的独特优势,比如GaussDB数据库DB算子下推存储进而实现性能相比数据库友商提升30%,就得益于华为的存储能力。

    GaussDB数据库独有的软硬件协同优势,以及诸如工行这样的头部标杆客户的支撑,让华为云自研数据库快速在行业内站稳了脚跟。

    技术优势之外,华为云的数据库产品在设计上也做了一些细节创新。

    比如在产品设计上普适大众,走寻常路,让用户看着简单,用的明白。尤其是在一些严苛复杂的场景上,更是要求对专业性技能进行极端简化,让一个非专业人员通过华为云的产品完成专家也难以完成的业务场景。

    例如:当前华为云的DRS 在线迁移场景,就可以让一般的开发人员通过DRS在线迁移工具完成MySQL数据库端到端的在线迁移工作。

    最后通过打造集开发,运维,智能优化为一体的开发平台DAS,极大的减少因数据库产品多样性带来的适应与学习成本,玩转所有的线上数据库产品。

    号外!!!华为云官方开发者推广招募计划正在火热进行中,点击立即了解详情

    点击关注,第一时间了解华为云新鲜技术~

  • 相关阅读:
    扩展中国剩余定理学习笔记
    寻找宝藏
    卢卡斯定理学习笔记
    [国家集训]矩阵乘法
    中国剩余定理学习笔记
    [CTSC2018]混合果汁
    数据结构(C语言版)第二章2.82.11 动态链表
    数据结构(C语言版)第二章2.12.7
    C语言中换行符和回车符的区别(转)
    C的xml编程libxml2(转摘)
  • 原文地址:https://www.cnblogs.com/huaweiyun/p/13744816.html
Copyright © 2020-2023  润新知