《国产数据库选型需求分析及难点探讨.docx》由会员分享,可在线阅读,更多相关《国产数据库选型需求分析及难点探讨.docx(3页珍藏版)》请在第一文库网上搜索。
1、国产数据库选型需求分析及难点探讨在现今云计算、大数据等新型技术推动下,金融科技迎来了新一轮创新浪潮,业界主流的应用架构,正由松耦合、集中式的SOA架构向解耦合、分布式的微服务架构发展。在去I0E、自主可控”的技术和政策双重背景下,传统金融行业的业务系统所采用的数据库,正在从老牌传统数据库(DB2、OraCIe等)逐渐过渡至开源数据库或国产数据库。作为一家传统金融企业,各业务系统仍然是纵向隔离的状态,在烟囱式系统架构中,每个业务系统都有其独立的数据库,随着业务系统数量越来越多、数据规模越来越大、交易复杂度不断提升,数据库的数量也越来越多,对于管理成本和人力成本提出了很大挑战。并且,由于数据库各自
2、独立,无法对全部数据库的运行状况形成全局视图,缺乏统一的“数据库管理大脑“,无法进行统一的数据库分析和辅助决策,出现问题时往往各自为政,存在数据孤岛,管理时效性难以保证。同时当前多数业务系统采用典型的SOA系统架构,其数据库多为主备部署模式,在应用方面存在并发能力不强、弹性不足、系统资源利用不均衡、更新迭代发布周期长等问题,难以适应业务高并发、负载波动大、新功能上线频繁等需求。近年来,为满足业务发展需求,顺应技术发展潮流,以微服务的理念,进行线上交易系统的微服务化设计。但现有的传统数据库架构,尚不能以平台化形式提供分布式数据库服务,难以满足业务系统未来的发展需求。基于以上原因,我司开展了分布式
3、数据库的探索和应用。根据国内某著名社区统计,当前国产数据库数量已经高达240个以上,现在国内数据库市场蓬勃发展,正处于百花齐放的阶段,琳琅满目的数据库,让人眼花缭乱。如何选择一个适合自己企业的数据库显得尤为重要。目标与需求:我们在进行数据库设计时,主要考虑达成几个目标,一是提高系统扩展能力,应对高并发访问;二是提高资源利用率,降低运营成本;三是提高系统可靠性,降低运行风险。结合数据库设计目标,以及国产数据库应用和运维场景,我们进一步梳理了需求,主要包括以下方面:(1)通用需求:如支持标准SQ1语法,支持国产芯片、国产操作系统,支持各种数据类型、数据库对象、约束、字符集等。(2)分布式功能需求:
4、如支持分布式事务、MVCC多版本控制,支持高并发情况下的完善锁机制,具备不同隔离级别,支持分表分区分片,支持读写分离,支持在线弹性伸缩与平滑扩容,支持SQ1优化器等。(3)性能需求:要求系统集群采用高可用架构,性能满足QPS支持10w+、TPS支持5w+,以及连接数和并发数要求,且具备良好的数据副本同步性能。(4)高可用需求:要求集群架构无任何服务单点,服务稳定可靠,具备各种层级的高可用能力等。(5)备份与恢复需求:如支持在线全量备份、增量备份、差量备份等功能,支持任意时间点的备份恢复等。(6)架构要求:支持多数据中心多活架构,例如三地五中心架构。(7)安全需求:如支持加密存储,支持多租户资源隔离,支持权限管理,支持黑白名单,支持防注入攻击等。(8)运管监控需求:如具备可视化运维管理工具,支持数据库实时监控和历史回溯,支持数据库审计、SQ1执行计划及优化提醒,支持统计分析等。(9)运维需求:如支持不停业务的版本升级,支持灰度发布、滚动升级等,支持在线配置,支持在线扩缩容等。(10)可移植性需求:如支持基于原数据库的开发内容,实现平滑过渡,降低移植改造成本。(11)数据同步:支持主流数据库之间迁移数据,支持数据准实时同步到大数据平台。-全文完一