对大部分使用k8s服务的人来说都会有一个探讨的问题是,到底DB是否适合上k8s,其实我个人是觉得不适合,db需要因需求调整底层设定,也需要快速的储存空间,而且DB较难轻量化,所以我并不推荐k8s上运行DB服务,但是像是redis etcd 这些DB又能运行自如,所以今天就来介绍一套混合应用的DB。
TIDB是一套NewSQL DB,他的特点有几个
所以TIDB其实也是元件非常的多,架构会像下图
而其中本次会主要着重於TIDB、TIKV、PD,这三个最基本元件上。
那麽这三个元件分别做什麽呢?
TIDB是一个提供SQL查询的端口,运算後去跟PD询问资料分片在哪个TIKV上,然後再进行存取,本身是可以无状态运行的,所以非常适合横向扩展。
PD为管理资料储存的集群,同时他会侦测TIKV的资料储存状态进行适当的重新分配,可以自动化的完成资料可用性和一致性。
TIKV是一过key-value的储存库,本身的储存单位为region,并兼容多副本储存。
知道了这些基本元件的关系,就可以开始来尝试部署了,因为TIDB有提供两种建置方法,分别是透过vm或是实体机的方式建置的TIUP工具,以及k8s上自动管理的TiDB Operator ,因为我认为TIDB的自动扩展非常适合运行在k8s上,所以我会使用deployment的方式布建,如果有想要完全应用在k8s上也可以使用TiDB Operator 配置,但是如同开头讲的DB需要调教底层设定运行较为顺利,所以也会透过TIUP的方式布建PD和TIKV,那麽这样就可以组成一套兼容自动扩展的TIDB以及运行效能较佳的TIKV罗。
<<: Day05【Web】Websocket、Polling 与 SSE
>>: DAY9: setImmediate 与 nextTick的比较
前言 为了解决 Vue.js 2x 元件之间无法重复使用逻辑和程序码,而出现了 Compositio...
D23. C++介绍 C++是一种被广泛使用的电脑程序设计语言。它是一种通用程序设计语言,支援多重程...
今天会对 Feedback 的部分做讲解,因为都比较简单的应用就会一起讲。 Progress 进度指...
我们昨天成功拿到资料了,今天就要开始训练模型了 那由於我们当初在介绍 CNN 结构时的 code ...
这系列主要就是讲Amazon ECS Anywhere 所以先来看看阳春版怎麽建立出来 基础运行元件...