微服务?数据库?它们之间到底是啥关系?

  • 时间:
  • 浏览:4
  • 来源:简约博客 - 专注共享陌离博客资讯

过去几年来,“微服务架构”你是什么 术语持续火热,它描述了某种将软件进程运行运行设计为可独立部署的服务套件的特定最好的方式。尽管你是什么 架构风格那么确切的定义,但围绕业务能力,自动化部署,网点智能以及语言和数据的分散控制等方面地处着一些同时价值形式。

简而言之,微服务架构是某种将单进程运行运行作为一套小型服务开发的最好的方式,帕累托图进程运行运行都在其当时人的进程运行运行中运行,并与轻量级机制(通常是HTTP资源的API)进行通信。那此服务是围绕业务功能构建的,还可否通过全自动部署机制进行独立部署。那此微服务的将集中化管理帕累托图降到大概,同时,微服务还还可否用不同的编程语言编写,并使用不同的数据存储技术。

而涉及到数据存储技术,就不得不谈到数据库,而实际上,微服务和数据库有着微妙的关系,微服务对于数据库都在着和传统架构不尽相同的需求,那么,微服务和数据库究竟有着那此样的关系?数据库又对微服务有何影响?要怎样选泽适合微服务的数据库?巨杉数据库联合创始人兼CTO王涛向CSDN的记者分享了他的观点。

微服务架构催生分布式数据库

王涛认为,谈论数据库一定脱离不了应用。从进程运行运行开发来看,现在一些企业内控 的应用开发都在从传统里边件加数据库的“烟囱式”开发,向微服务架构转型。而在微服务体系架构中,几乎每个微服务都需要提供数据持久化的能力,而用户也希望每个微服务所承载的数据量不不还可否无限的弹性扩张。以后,在采用微服务架构的过程中,每个微服务使用自身独立的数据库存储又会使过去集中在一4个地方的数据分散到一些不同的设备中,造成整个IT架构的数据严重碎片化。举例来说,一些互联网公司仅仅在生产系统中就维护着两、三万个MySQL数据库,从前一句话,愿意进行企业内控 的数据整合是极为困难的。

实际上,此前,当企业用户采用微服务体系架构的完后 ,从数据管理的深层,业界有某种做法。

第某种做法,以后我对进程运行运行进行微服务改造,底层数据库使用传统集中式数据库进行存储。你是什么 做法对于进程运行运行的改造相对较小,对于DBA运维人员来说学习成本也较低,以后相应的,其地处数据紧耦合,无法弹性扩张,以及肯能地处单点故障等现象。

第二种做法,肯能也是现在业界使用比较多的最好的方式,以后我每一组微服务对应一4个独立的小数据库,往往使用MySQL或PostgreSQL。你是什么 机制不不还可否解决集中式存储的现象,以后也带来了新的挑战,包括数据极度碎片化,在微服务之间无法共享,运维成本极其高昂。

以后,某种最好的方式都在能很好的解决微服务下数据存储管理的现象,以后分布式数据库以后我要解决上述的4个现象。第一以后我针对每个微服务做到数据弹性扩张,第二以后我对整个企业IT做到数据的统一治理从而解决碎片化存储。

打造适合微服务的分布式数据库

要打造适合微服务架构的数据库,巨杉数据库采用了计算存储分离的架构。其中存储层采用自研的原生分布式数据库引擎,上层计算层则还可否创建成百上千个数据库实例,同时每个数据库实例对应用详细透明,不需感知。

以后,在你是什么 系统架构下,从单个应用来看,和传统标准数据库详细一致,不需关注数据被切分在那此不同物理设备上,做到弹性伸缩。同时,所有的物理设备从逻辑上进行统一管理,甚至不同实例里边的数据还可否在可配置的权限下进行共享。

那么,适合微服务的分布式数据库都应该具有那此价值形式呢?王涛认为这主要应该从两大维度、十个 方面来看。

两大维度一是对传统技术的兼容,二是技术和架构的创新。

在对传统技术的兼容方面来看,首先,需要支持ACID。肯能从数据库来看,尽管一些人说CAP不可兼得以后要牺牲一致性,但巨杉认为这是不可取的。对于大帕累托图公司来说,数据都在核心生命线,绝对非要为了上分布式牺牲数据的一致性和安全性,需要对用户的财产和信息负责。以后,新型面向联机交易的分布式数据库需要对传统ACID有完美的支持,与传统Oracle DB2的数据安全性一致性保持兼容。

其次,SQL的详细性。你是什么 主以后我从对传统应用的兼容与开发人员能力重用的深层看。一般来说,SQL语法兼容的详细性,以及对已有标准的兼容需要具备,这类对MySQL、Oracle、DB2、PostgreSQL你是什么 主流协议的兼容。

而从新技术的前瞻性来看,首先,未来是私有云和微服务应用的时代,那么作为分布式数据库,就不仅仅简单的将其定位成过去某一4个数据库的替代。分布式数据库的核心价值在于,不不还可否从数据库的层面以服务资源池的形式,向上层被从烟囱式架构向微服务架构拆散的成百上千个小服务提供数据库访问能力的平台。在你是什么 定位下,数据库资源池在保证与传统数据库1150%兼容的基础上,需要满足分布式弹性扩张,当资源池里边空间和计算能力缺乏时,需要通过动态增加计算存储节点的最好的方式进行扩容。

其次,过去的数据库肯能仅针对某一4个特定应用,采用里边件和数据库一对一绑定的最好的方式,以后只需要提供自身某种模式的访问就够了。以后当进行数据库资源池化的完后 ,上层应用自然面对来自不同开发商、不同业务类型、不同SLA级别的服务,亲戚其他同学采用的开发流程、SQL标准、以及安全策略各不相同,以后分布式数据库需要不不还可否支持多种模式的访问接口。

最后,HTAP,即交易分析混合解决能力。譬如一些账务数据,肯能最核心的关键应用来自于联机交易业务实时使用那此数据,以后同时一些后台的实时报表,肯能安全审计机构需要进行统计分析的完后 ,来自不同微服务的业务肯能需要对同一份数据同时以交易和分析的最好的方式进行访问。你是什么 具体情况下,还可否在资源池内对交易与分析业务进行物理资源隔离,及时对同一份数据同时访问并还可否做到互不干扰尤为关键,以后,适合微服务的数据库需要具有较强的交易分析混合解决能力。

巨杉数据库,适合微服务的分布式数据库

正如同巨杉对于分布式数据库的技术定位和目标,巨杉数据库SequoiaDB某种以后我以分布式存储底座与上层的数据库实例两层来进行构建的。底层的分布式存储作为资源池,自身负责数据的存储、分布式事务控制、记录和表锁等,都在底层原生分布式存储实现。

数据库实例层则提供对上层进程运行运行的SQL服务,用户还可否创建MySQL、PostgreSQL、Spark SQL等价值形式化实例,也还可否创建JSON或S3文件系统的非价值形式化实例。每个实例中的数据对上层应用来说详细透明。以后,在SequoiaDB中,一4个MySQL表还可否轻易存储十亿甚至百亿级别的数据,开发者在写SQL的完后 详细需要关注底层表到底被分散在十多少 台物理设备中。

作为业界原生分布式数据库以及新一代分布式数据库的代表,SequoiaDB对于分布式交易与ACID与传统技术详细兼容,架构与功能价值形式与传统数据库详细兼容。同时,SequoiaDB还积极拥抱新一代微服务与云计算框架,在面向微服务应用开发与云计算基础架构时,支持弹性扩张、资源隔离、多租户、可配置一致性、多模式(支持各类SQL协议)、集群内可配置容灾策略等一系列功能。

事实上,传统单点数据库的容量瓶颈,仅仅是分布式数据库所解决的现象之一。更重要的是在未来微服务化应用开发以及云化平台的趋势下,应用不再以“烟囱式”的里边件加数据库模式进行构建,以后我采用数千甚至上万的微服务进程运行构建成的复杂网状模型。以后,分布式数据库需要不不还可否满足上层应用的弹性扩展、高并发、高吞吐量、与灵活敏捷的需求。而SequoiaDB在那此方面都在着出色的表现,包括:

详细的ACID支持,事务和一致性保证;SQL的详细支持,传统数据库MySQL/PostgreSQL的语法详细兼容。分布式与扩展性,应对数据量的变化,实现存储层和计算层的弹性扩展;多模式访问接口,支持多类型数据管理和多种模式的访问接口; HTAP交易/分析混合解决能力,复杂业务需求下,实现数据的物理隔离,互不干扰。

而在此次大会最新发布的 3.2版本中,巨杉通对SequoiaDB进行大幅度性能优化与提升,使得其在分布式的交易型业务下,整体性能提升2~3倍,CPU消耗节省超过150%,从而大大提升了对微服务的支持力度。

SequoiaDB ,不仅仅是支持微服务而已

实际上,SequoiaDB 无须仅仅是微服务的“良师益友”,其更大维度下的定位是一款真正的金融级分布式关系型数据库。

巨杉数据库目前在企业级应用场景主要包括分布式在线交易、数据中台以及分布式内容管理。

在线交易是数据库最广泛应用的场景之一,通常用来支撑核心业务运营。分布式在线交易数据库核心业务价值包括,分布式架构转型,高并发、高解决能力,业务持续扩展能力以及自主可控与数据安全要求。SequoiaDB存储引擎采用原生分布式架构,扩展便捷;详细支持分布式事务、强一致多副本高可用;无单点故障,数据库引擎原生支持多中心容灾。

数据中台是当前十分火热的概念,数据中台在企业微服务架构中的角色十分重要,像齿轮一样连通上层快速迭代的微服务应用和下层基础架构,同时还还可否提供全量数据的实时在线服务,泛指传统核心交易以外的所有对外服务业务,基于SequoiaDB构建的数据中台核心业务价值包括:数据高性能实时访问,海量数据全生命周期在线,业务持续扩展能力。

内容管理平台为企业提供存储、管理和使用海量非价值形式化数据能力。常见应用包括影像平台、文档管理平台、音视频双录系统等。基于SequoiaDB搭建的内容管理平台的核心业务价值包括,海量非价值形式化数据管理和实时访问,充沛的内容管理功能,海量非价值形式化数据全生命周期在线以及业务持续扩展能力。

据悉,目前巨杉数据库已在近百家大型商业银行核心生产业务上线,并广泛应用于金融、电信、政府、互联网、交通等领域,企业用户总数超过11150家。同时,巨杉也是中国首家连续两年入选Gartner 数据库报告的数据库厂商。

本文由

转载

发布在

ITPUB

,转载此文请保持文章详细性,并请附上文章来源(ITPUB)及本页链接。

原文链接:http://www.itpub.net/2019/05/17/1906/