当前位置:网站首页>GBase 8s的多线程结构

GBase 8s的多线程结构

2022-08-11 05:21:00 蜻蜓队镸

GBase 8s高性能方面具有:DSA动态可伸缩架构、SMP对称多处理、支持高度并发访问、高度并行计算。

  • 多进程多线程架构

1、基于进程的数据库服务器,多个进程轮换使用CPU时间片,进程在服务不同的请求时,需要进行上下文切换,这需要耗费很多CPU资源。当数据库服务大量的用户请求时,上下文切换非常频繁,CPU有效利用率不高,可能浪费30%或更多的CPU资源。

2、GBase8s动态可扩展架构DSA, GBase 8s从架构上就是一个真正的多线程架构,GBase 8s在联机事冬外理系然(OLTP)上有先天的技术优势。GBase 8s提供了专为DSA架构设社独立的多线程类库,不依赖于具体的操作系统,跨平台能力强,资源利用率高,内部的并行机制使得GBase 8s的并行可以动态进行调整和扩展。GBase 8s支持在线模式下进行CPU VP的增加和减少,onmode -p +1 AIO动态增加了一个AIO VP,同时支持内存、存储资源的在线动态调整。
GBase 8s将每个数据库服务器进程定义为一个虚拟处理器VP进行管理。按照 VP的功能进行分类,不同的VP完成不同的任务。例如:写逻辑日志的VP 被称为LIO,为每个VP管理和运行属于它的线程。线程分为用户线程和内部线程,用户线程为客户端应用提供服务,内部线程完成GBase 8s内部任务,如数据库I/O等。一个线程可以运行在同类别的任意一个 VP上。 VP从线程就绪队列中获取线程的数据和环境,然后运行线程。

  • 高度并行机制

GBase8s提供了Fan-in(扇入)和Fan-out (扇出)的并行机制,在数据库服务器只有个物理 CPU的情况下,同时有多个客户端请求服务器时Fin-in 机制可以将多个客户端请求并行运行在一个VP上,这种机制让GBase 8s适用于成千上万并发的OLTP业务系统,而不需要太多的物理CPU,而且不会随着并发用户数出现性能下降的情况。在数据库服务器有多个物理CPU的情况下,此时如果有一个客户端发出一个大的业务请求,GBase 8s 提供的Fan-out机制则将大的业务请求拆分为多个子任务,并行运行在多个物理CPU上,重复利用多CPU、多磁盘的硬件资源,提供最快的处理速度。故GBase8s同时也适合处理OLAP大数据任务,GBase 8s支持几十亿记录的表,支持大数据量分析报表业务。
GBase 8s提供高度并行机制,利用Fan-out机制,可以将一个 SQL处理过程拆分为多个子任务,每个子任务可以同时运行在多个线程上,这种高度并行处理模式使得GBase 8s在大数据处理任务中具有先天的优势。

原网站

版权声明
本文为[蜻蜓队镸]所创,转载请带上原文链接,感谢
https://blog.csdn.net/qq_37004539/article/details/126049707