当前位置:网站首页>[stonedb class] introductory lesson 1: popular science of database knowledge
[stonedb class] introductory lesson 1: popular science of database knowledge
2022-07-27 07:39:00 【StoneDB】

Before the database appeared , Data stored in text , This data storage method is not only management but also query , Efficiency is extremely low , There is no correlation between the data . here we are 1970 year ,IBM researcher E.F.Codd Published a paper "A Relational Model of Data for Large Shared Data Banks", In this paper, the concept of relational model is proposed for the first time , It lays a theoretical foundation for relational database , Only then did there emerge such as IBM Of DB2、 Oracle Oracle And other excellent relational databases . Until the last century 90 years , Databases are mainly relational databases . But as the amount of data grows , Relational databases can no longer meet more application scenarios , Non relational databases appear in the field of database .

Database classification
Database is used for data storage and access , Different types of databases meet the needs of different scenarios . If your database has no requirements for transactions , And reading and writing are highly concurrent , Then you can choose a non relational database . If your database mainly stores historical data , And the frequency of access is less , Then you can choose a high compression ratio , And read the optimized database . If your database has transaction business , There are also complex analysis businesses , Then you can choose a database with hybrid storage engine .

The database is divided according to the data model , It can be divided into relational database and non relational database . The data of relational database is highly organized and structured , You can use structured query language for complex queries . The data of non relational database is unstructured , There is no declarative query language , It means more than SQL. Relational databases pay attention to the strong consistency of transactions , Non relational databases focus on scalability . Relational databases widely used in the database market include Oracle 、 MySQL 、 SQL Server , The widely used non relational databases in the database market are Redis 、MongoDB .
Databases are divided according to data distribution , It can be divided into centralized database and distributed database . A centralized database is one or more database instances that manage one piece of data , Every database instance can see all the data , Belong to Shared-Everything framework . Distributed database is that each database instance manages its own data , Total data is the sum of data managed by all database instances , Belong to Shared-Nothing framework .

Databases are divided according to data processing , Can be divided into OLTP database 、OLAP Database and HTAP database ,StoneDB It is an integrated real-time HTAP database , The next few courses will give you an in-depth introduction .OLTP The database is suitable for trading systems , It is characterized by large concurrent small transaction processing , The amount of data processed in a single time is small .OLAP The database is suitable for analytical systems , It is characterized by small concurrency , High system throughput , The amount of data processed in a single time is large .HTAP Database is a new architecture , It refers to mixed transaction and analysis processing , appear HTAP The purpose of is to break OLTP and OLAP Barriers between the two .

Database bottleneck
Traditional databases have been developed for more than 50 years , Whether it is the stability of the database itself , Or the technical support of database manufacturers , Have been very mature . Rich learning materials provided by database manufacturers on the official website , It's easy for users to learn this database . But with the development of the times , Especially the emergence of Internet technology , The amount of data in the database is increasing exponentially , Then traditional databases not only have bottlenecks in concurrency and storage , Scalability is also limited .
When traditional relational databases appear, they cannot meet the needs of business scenarios , For example, when massive data storage with high concurrency occurs , Distributed databases have emerged . The distributed database is composed of multiple servers , Not only provide more connection access , It also provides more storage capacity , In terms of scalability, it is also linear . Distributed database solves the bottleneck of traditional database , However, distributed database is not perfect .
In terms of transaction consistency , Traditional databases are easy to guarantee ACID . The distributed database is composed of multiple database instances . These instances are distributed in a network environment . To ensure the consistency of transactions , Distributed database introduces two-phase commit 、 Three stage commit 、 Compensation Affairs . The management overhead of distributed transactions is large , For example, it is required to support pessimistic locks , This results in even consistent Reads without holding locks , But queries can also be blocked .
In terms of cost based implementation plan , Because the data is distributed in different nodes , Coupled with the complexity of distributed algorithms ,SQL Whether there is a stable implementation plan .
In terms of data consistency , When a distributed database is stored in multiple copies , The problem of data consistency becomes more complex . Suppose the database fails , A copy is being updated . How to ensure the consistency between replicas after fault recovery is a difficult problem .

Domestic database
In the database market , Foreign database manufacturers have always been in an absolutely dominant position . But in recent years IT The proposal of localization strategy , Many excellent database manufacturers have emerged in China , Gradually, a hundred schools of thought are contending . There are relational databases that have been developed for many years , Ruda dream 、 Renmin Jincang 、 NTU GM, etc ; Distributed transactional databases with momentum , Such as TiDB 、 OceanBase etc. ; There are also stable distributed analytical databases GaussDB; And, of course, there are things like StoneDB Such a focus on providing TP and AP Unified solution HTAP Database Nova manufacturer .

( Overview of domestic databases )
StoneDB As an independent design 、 The first domestic product developed is based on MySQL Open source created by kernel HTAP database , In the same database instance, adopt the scheme of row column mixed storage , It's solved TP and AP Between data Synchronization is a troublesome problem , At the same time, it can realize MySQL Seamless switching .100% compatible MySQL Of StoneDB Make the operation and maintenance work simpler , The user experience is also more silky .
The above is the whole content of this course , Next class we will take you in-depth understanding StoneDB System architecture and functional features . If you are right about StoneDB Interested in , You can view it through the link below StoneDB Source code 、 Read the document , We look forward to your contribution !
StoneDB Open source warehouse
https://github.com/stoneatom/stonedb



Can scan code to add a small assistant
Join in StoneDB Open source community user base
Discussion and exchange , Common progress

This article is from WeChat official account. - StoneDB(StoneDB2021).
If there is any infringement , Please contact the [email protected] Delete .
Participation of this paper “OSC Source creation plan ”, You are welcome to join us , share .
边栏推荐
- Plato Farm有望通过Elephant Swap,进一步向外拓展生态
- STM32_ Find the cause of entering hardfault_ Handler's function
- ADC噪声全面分析 -01- ADC噪声的类型以及ADC特性
- glGetUniformLocation,glUniform4f
- (2022 Hangdian multi school III) 1011.taxi (Manhattan maximum + 2 points)
- 小程序消息推送配置 Token校验失败,请检查确认
- Compiling and using log4cxx in rhel7.3
- Gossip: Recently, many friends talk about going abroad
- 我是不是被代码给耽误了……不幸沦为一名程序员……
- 次轮Okaleido Tiger即将登录Binance NFT,引发社区热议
猜你喜欢

User unlock sm04 sm12

杂谈:跟女儿聊为啥要学好文化课

Leetcode54. 螺旋矩阵

Properties类和properties配置文件的理解学习

RPC 远程过程调用

SQLite common function integration

(2022牛客多校三)A-Ancestor(LCA)

Help send a recruitment, base all over the country. If you are interested, you can come and have a look

杂谈:高考

Haikang H9 camera cannot be connected with xshell (SSH is not enabled)
随机推荐
小程序支付管理-新版支付对接流程
The DrawImage method calls the solution of not displaying pictures for the first time
RPC 远程过程调用
MySQL backup strategy
An open source OA office automation system
vlan间路由(讲解+验证)
(2022 Niuke multi school III) j-journey (Dijkstra)
(2022杭电多校三)1009.Package Delivery(贪心)
(2022 Niuke multi school III) a-ancestor (LCA)
JS regular expression implementation adds a comma to every three digits
【pytorch】ResNet18、ResNet20、ResNet34、ResNet50网络结构与实现
Temperature and humidity measurement and display device based on Arduino
Simple rotation chart
Routing between VLANs (explanation + verification)
单片机多级菜单
flink原理(一) 状态的TTL管理、容错机制
正则 和 sed 练习
Multi condition query of when
Docker install MySQL 8.0.28
[golang learning notes 2.0] arrays and slices in golang


