当前位置:网站首页>MySQL advanced part 2: MySQL architecture
MySQL advanced part 2: MySQL architecture
2022-07-05 06:13:00 【Dawnlighttt】
List of articles
Whole MySQL Server It consists of
- Connection Pool : Connection pool components
- Management Services & Utilities : Manage service and tool components
- SQL Interface : SQL Interface component
- Parser : Query analyzer component
- Optimizer : Optimizer components
- Caches & Buffers : Buffer pool components
- Pluggable Storage Engines : Storage engine
- File System : file system
1) adjoining course
At the top are some clients and link services , Contains the local sock Communication and most are client based / The implementation of server-side tools is similar to TCP/IP Communication for . Mainly completes some similar to the connection processing 、 Authorized certification 、 And related safety programs . The concept of thread pool is introduced in this layer , Provide threads for clients accessing through authentication security . Also on this layer, we can implement the system based on SSL Security links for
. The server will also verify the operation permissions it has for each client of secure access .
2) Service layer
The second layer architecture mainly completes most of the core service functions , Such as SQL Interface , And complete the cache query ,SQL Analysis and optimization of , Execution of some built-in functions
. All the cross storage engine functions are also implemented in this layer , Such as The process 、 Functions, etc . On this floor , The server parses the query and creates the corresponding internal parse tree , And it completes the corresponding optimization, such as determining the query order of the table , Whether to use index, etc , Finally, the corresponding execution operation is generated . If it is select sentence , The server also queries the internal cache , If the cache space is large enough , In this way, it can improve the performance of the system in the environment of solving a large number of read operations .
3) Engine layer
Storage engine layer , The storage engine is really responsible for MySQL The storage and extraction of data in , Server pass API Communicating with the storage engine
. Different storage engines have different functions , So that we can according to our own needs , To choose the right storage engine .
4) Storage layer
Data storage layer , Mainly store the data on the file system , And complete the interaction with the storage engine .
Compared with other databases ,MySQL It's a little different , Its architecture can be applied in many different scenarios and play a good role . Mainly in the storage engine , Plug in storage engine architecture , Separate query processing from other system tasks and data storage and extraction . This architecture can choose the right storage engine according to the needs of the business and the actual needs .
边栏推荐
- 【Rust 笔记】15-字符串与文本(上)
- Leetcode-6111: spiral matrix IV
- [cloud native] record of feign custom configuration of microservices
- Introduction to LVS [unfinished (semi-finished products)]
- Daily question 1688 Number of matches in the competition
- [rust notes] 17 concurrent (Part 2)
- [rust notes] 16 input and output (Part 1)
- Golang uses context gracefully
- Scope of inline symbol
- Currently clicked button and current mouse coordinates in QT judgment interface
猜你喜欢
开源存储这么香,为何我们还要坚持自研?
Implement a fixed capacity stack
Time of process
1.15 - 输入输出系统
SQLMAP使用教程(一)
[practical skills] how to do a good job in technical training?
leetcode-6110:网格图中递增路径的数目
Network security skills competition in Secondary Vocational Schools -- a tutorial article on middleware penetration testing in Guangxi regional competition
Navicat连接Oracle数据库报错ORA-28547或ORA-03135
Doing SQL performance optimization is really eye-catching
随机推荐
Records of some tools 2022
leetcode-556:下一个更大元素 III
2022 pole technology communication arm virtual hardware accelerates the development of Internet of things software
6. Logistic model
Network security skills competition in Secondary Vocational Schools -- a tutorial article on middleware penetration testing in Guangxi regional competition
数据可视化图表总结(一)
Overview of variable resistors - structure, operation and different applications
Leetcode-1200: minimum absolute difference
Erreur de connexion Navicat à la base de données Oracle Ora - 28547 ou Ora - 03135
leetcode-1200:最小绝对差
In depth analysis of for (VaR I = 0; I < 5; i++) {settimeout (() => console.log (I), 1000)}
【Rust 笔记】15-字符串与文本(下)
leetcode-3:无重复字符的最长子串
剑指 Offer II 058:日程表
One question per day 1020 Number of enclaves
Brief introduction to tcp/ip protocol stack
Real time clock (RTC)
Typical use cases for knapsacks, queues, and stacks
CPU内核和逻辑处理器的区别
LeetCode 1200.最小绝对差