当前位置: 首页 > 科技观察

未来已来!分布式数据库的“星海”,绝不仅限于替换!

时间:2023-03-16 22:33:56 科技观察

记得两三年前,人们在谈论分布式数据库等技术时,经常会用“未来”这样的词来形容这种新技术的应用前景。刚刚过去的2020年,新一代数据库龙头Snowflake成功上市,成为史上最大的软件公司IPO。当我们回头看时,我们发现未来已经到来!然而,如何在企业中正确实施分布式数据库一直是业界讨论的焦点。在国内,大多数读者第一次了解分布式数据库时,第一个问题就是:分布式数据库能否替代Oracle?但从全球数据量的发展方向来看,其爆发式增长主要集中在基于数字化创新的多元化业务场景。因此,简单地取代传统Oracle占据核心优势的固有领域,并不是数据库未来的增长方向。以雪花为例。其业务并没有取代甲骨文的核心应用领域,但用4亿美元的收入换来了700亿美元的市值。它正在动摇甲骨文在数据市场的领先地位。背后的原因值得深思。基于“替代”的思考,永远无法“超越”事实上,对于替代Oracle,“能”还是“不能”的问题没有一刀切的答案。设计分布式数据库的初衷是为了解决新的实际业务问题。在甲骨文无法满足的场景中,我们将与企业客户一起迎接数字化转型的机遇,而不是简单地更换现有系统。传统关系型数据库在核心交易等领域深耕40余年。到目前为止,大部分纯交易场景在数据量或业务模型上都没有发生本质变化,其业务扩展空间也非常有限。在企业数字化转型过程中,数据量会随着业务的发展而快速膨胀,形成新的业务需求和数据增量,为数据库带来新的市场机遇。与传统关系型数据库相比,分布式数据库不仅提供了ACID事务一致性能力,还具有更灵活的扩展能力和多数据模型处理能力。在面对海量数据弹性扩展的新兴业务需求时,“选择分布式数据库而不是Oracle”是我们应用分布式架构的业界最佳实践。也就是说,利用分布式数据库逐步迭代,随着新的数字化业务逐渐向传统业务渗透,成为新的数据核心场景,是分布式数据库技术在企业中的最佳落地方案。因此,分布式数据库的星海不仅仅是对传统关系型数据库的简单替代。如果只是为了新技术的使用和推广而更换固有结构,将面临很大的技术风险和挑战。只有从企业客户的角度出发,与客户共同挖掘数字化转型中的新数据价值,才能突破固有框架,建立新的分布式技术赛道,超越传统架构的边界。如何选择最佳实施场景从业务场景来看,自20世纪70年代后期关系数据库诞生以来,Oracle、DB2等数据库已经经历了40多年的发展历程。对于他们固有的业务场景,他们基本上已经做到了业界的极致。然而,传统的事务型数据库显然无法应对新型数据中心在线湖仓、微服务数据融合管理、海量数据的实时访问、非结构化在线处理等。企业客户在选择分布式数据库实施场景时,应选择合适的应用场景,真正发挥优势,并不断打磨技术团队的运维能力,逐步推向核心。1)数据中台在线湖仓在众多企业IT架构规划中,数据中台已经成为整个IT战略的一部分,包括历史数据平台乃至非结构化数据处理等多个数据模型领域,几乎涵盖了企业所有数据除业务应用系统外的处理和服务能力。在这种场景下,Oracle无法满足可扩展性需求,Hadoop无法支持实时并发服务。国际上还没有直接对标它的技术体系,最接近的是Lakehouse(湖仓一体化)。Lakehouse行业的主要参与者包括分布式数据库供应商,例如Snowflake和Databricks。他们的产品可以分为两个核心模块:数据湖和计算引擎。2020年,Gartner进一步引入了AugmentedTransactionsProcessing处理场景,强调事务一致性,要求数据库在分析处理过程中保持低延迟,提高实时在线处理能力。可以预见,支持AugmentedTransactionsProcessing能力的在线湖仓,将提升数据中心的实时在线处理能力,实现同时使用多业务、多数据模型同时进行数据存储,加速数据处理效率,减少数据冗余,提供更绿色的Green数据基础设施。2)微服务数据融合管理微服务应用开发架构逐渐成为当今的主流。传统的一个应用对接一个数据库的架构,被拆成几十个、上百个微服务。每个微服务可能需要使用一个独立的数据库实例。因此,近年来企业内部数据库实例数量呈井喷趋势。分布式数据库的出现,可以很好的解决数据库实例批量管理扩展难、维护难的问题。同时,基于引擎级多模技术,分布式数据库可以支持基于同一数据的多个数据库引擎的在线事务,并通过跨引擎的事务一致性能力,为客户提供ACID一致性微服务架构下的异构数据源。.因此,与Oracle等传统数据库相比,分布式数据库技术更有利于微服务化,为企业打通底层数据,降低数据存储和管理成本。帮助研发团队进行DevOps持续交付,提升产品研发效率。3)海量数据的实时访问海量数据的存储和计算通常由数据仓库(MPP数据库)或大数据平台(Hadoop)完成,数据量往往达到千亿级(甚至万亿级)).在传统应用中,数据仓库和大数据平台由于需要提前完成数据清洗和入库,无法支持实时并发数据访问,且受限于现有平台的处理模型,难以创新在线服务.然而,在数字化转型过程中,在线客户交易、历史数据服务平台或物联网系统中都会出现需要在线实时处理海量数据的解决方案。分布式数据库可以帮助企业客户在这种场景下获得更好的体验。首先,分布式数据库与Hadoop、数据仓库一样具有弹性扩展能力。其次,分布式数据库可以提供与传统关系型数据库一样的ACID支持,保证其关键业务的事务一致性。最重要的是,分布式数据库可以更好地支持高并发的业务访问,可以像使用单机数据库一样,在千亿甚至万亿记录的表中实现毫秒级的数据检索。4)非结构化数据治理非结构化数据包括图片、文档、音视频等对象文件,过去只是简单地存储在存储系统中,提供单一的存储和检索功能。因此,除了直接操作这些文件的业务系统之外,非结构化数据对于企业中的其他系统来说都是黑盒子,无法发挥数据的潜在价值。今天的业务系统通常开始大规模在线使用这种类型的非结构化数据。例如,在业务中的各种文件采集,交易过程中头像、指纹、声纹等监管要求的原始文件保留,以及各种业务的360客户画像系统,处理过程需要与非结构化数据的高频比较。并发处理和采样校正,这些场景需要对非结构化数据进行在线实时管理。单纯使用NAS或网盘来存储海量的非结构化数据,早已无法满足这种实时在线处理能力的需求。同时,数字化转型中的非结构化数据不再是静态文件。通过AI机器学习和对比分析,非结构化数据将包含更多样化的业务属性,为各种业务系统提供信息输入。因此,有必要进行有效的分类治理,盘活非结构化数据资产的潜在价值。分布式数据库能有效提升非结构化数据的实时处理能力,结合引擎级多模能力,统一存储结构化数据和对象数据,并能有效实现基于标签特征数据的分类治理,成为为企业“非结构化数据治理”打下坚实基础。分布式技术演进趋势从技术角度来看,在各行业对海量数据和互联网应用快速发展的需求中,弹性扩展、多模式等功能是传统Oracle数据库难以满足的,也是分布式数据库最大的价值所在。目的。在这种技术背景下,“选择分布式数据库而不是Oracle”是最正确的答案。分布式数据库的最佳实现和使用方式是从海量数据业务到核心的逐步迭代过程。从海量数据弹性扩展的新兴业务需求入手,随着业务创新不断深入,逐步向传统业务和应用渗透。1)弹性:存储和计算分离,弹性扩展。作为分布式数据库,弹性扩展能力是其存在的核心意义和价值。与传统的MPP数据仓库相比,新型分布式数据库基于存储计算分离的部署模型,可以实现存储和计算资源的独立扩展,实现应用层无感知的按需弹性扩展。2)事务:原生分布式强一致性在分布式技术逐渐向业务核心靠拢的过程中,客户对ACID事务一致性的要求不断提高。例如,在在线交易服务中,往往需要具备“RR级交易隔离”的能力。在这类需求中,基于分库分表技术的解决方案无法提供这种支持,因为数据库本身(有些产品甚至不提供事务支持或通过1PC提交削弱)。从而需要依赖大量的外围应用逻辑协同才能达到最终一致性的效果,消耗了开发者大量的设计精力。对于原生的分布式数据库,得益于内核衍生的分布式设计,客户可以放心地将事务一致性逻辑交给数据库层处理,让开发者回归纯业务设计,为客户提供直接有效的研发业务产出,提高企业研发效率。3)Fusion:引擎级多模,开辟湖仓融合新赛道。经过40多年的发展,关系型数据库已经从最初的纯结构化模型衍生出支持XML、JSON、地理信息、图等的能力。由于传统数据库在同一个物理设备上使用同构引擎,因此很难真正发挥其多模能力。在分布式数据库架构中,用户可以使用不同的物理设备和底层数据结构承载不同数据模型的计算和存储引擎,真正实现原生引擎级的多模技术。这提供了跨不同数据模型甚至不同数据库语言和引擎之间的数据共享,避免了不同模型之间在线处理时由于频繁的数据拷贝而造成的传输延迟和存储空间的浪费。基于多模式能力,构建同时满足结构化、半结构化、非结构化数据的数据湖,同时赋予跨引擎数据一致性能力和实时数据分析能力,真正做到全球化数据实时可见。开发者因此可以弥合不同数据引擎之间的开发差距,提高开发效率和系统性能,开辟分布式技术的新赛道。总结经过40多年的发展,传统的关系数据库在其主要的核心事务领域几乎达到了极致。仅以核心事务场景对标新型分布式数据库,就像是用传统的马车标准来衡量新兴的汽车技术,无法对新技术做出合理的评估。分布式数据库的诞生就是为了解决传统数据库不擅长的场景。在关系数据库领域也需要很长时间才能完善。得益于高灵活性、事务一致性强、多模式融合等特点,近年来很多企业在:数据中心在线湖仓、微服务数据融合管理、海量实时接入数据、非结构化在线处理等。实现原生分布式数据库的规模化生产。我们欣喜地看到,分布式数据库的应用领域几乎每年都在大幅度拓展,成为支撑企业数字化转型升级不可或缺的弹性数据基础设施。红杉数据库早在2014年就发布了基于多模引擎的支持,为客户提供了一个可以同时管理多种数据结构的分布式数据基础设施。已协助100多家金融银行客户和1000多家企业用户提供分布式数据库技术。借助自主专利的STP分布式串行时钟协议,实现RR级事务隔离和跨引擎事务一致性能力,为数据中心提供在线湖仓生产的最佳实践。已成功协助客户在高达1.2万亿数据量的生产环境中,提供安全、稳定、灵活、可扩展、高性能、高并发的数据库。回顾过去10年,分布式数据库经历了行业质疑、小规模试水,到如今在部分行业大规模应用。我们坚信,我国分布式数据库行业在新的一年里将发展得更加蓬勃。未来三到五年,分布式数据库的应用规模有望超越Oracle,成为核心交易业务的重要组成部分。未来,巨杉数据库将借助100%自研原生分布式数据库引擎和引擎级多模型特性,秉承以客户为中心的价值观,携手客户及上下游合作伙伴,服务金融、能源、、运营商和政企客户提供优质的产品、技术服务和生态支持,推动全球数字化进程。分布式数据库:未来就在这里。