当前位置:网站首页>About sql+nosql: newsql database
About sql+nosql: newsql database
2022-06-29 15:23:00 【Game programming】
One 、 What is a database ?
Generally a database system (Database System) It can be divided into two parts :
- database (Database)
data management system (Database Management System,DBMS)
A Database is an organized collection of data. —— Wikipedia database Namely Organized data sets , Stored in one or more disk files , Be commonly called 「 Warehouse of data 」. Broadly speaking , Anything that can store data can be counted as a database ( Such as txt file 、Excel Forms, etc ).
Database Management Systems (DBMS) data management system Namely Application software for operating and managing database , For building 、 Use and maintain database ( Persistent storage 、 Optimize reading and writing 、 Ensure the effectiveness of data, etc ).
In a narrow sense , What we say “ database ”, Usually it means 「 Database management system (DBMS)」.
Two 、 Why use a database ?
1. If the data is saved in memory :advantage : Very fast reading and writing
shortcoming : Data loss due to program shutdown 2. If the data is saved to the file system :
advantage : Data can be stored permanently
shortcoming :1. Frequently IO operation , The efficiency is not high ;2. Data management is not convenient , If you want to query a certain data, you need to read it all , Match again . 3. If the data is saved in the database :
Persistent storage of underlying data
Ensure the consistency and stability of the underlying data
It provides an interface to operate and retrieve data
Support SQL sentence , Can be used for complex queries
Facilitate the daily maintenance and management of data
Finer grained control and rendering than ordinary file systems
You can use the read-write interface of the database in the program
It provides concurrency control access and data fault tolerance mechanism
.... A thousand words a word : convenient 、 efficiency 、 Security
3、 ... and 、 What databases are there on earth ?
Database popularity ranking :
Database layout

1. Relational database (RDBMS)
Relational Database Management Systems (RDBMS) Relational database (RDBMS) It's a database based on a relational model , With the help of set algebra and other mathematical concepts and methods to deal with the data in the database , It is the most widely used database management system at present .
「 Father of relational database 」 Edgar · frank · Codd (Edgar Frank Codd, 1923-2003) brief introductionIn a relational database , There are mainly the following nouns :
database : Set of tables
Data sheet : A collection of data
data row : A row of data is an object
Data columns : Also called field , Represents the properties of an object
A relational database is like a Excel file , In the document sheet It's like a watch ,sheet The logical definition of each column in the table is the field of the table ,sheet The middle row is the data row of the table .
Representative products of relational database :
| database | brief introduction | Application scenarios |
|---|---|---|
| Oracle | Because it was born early 、 Rigorous structure 、 High availability 、 High performance 、 High safety and other characteristics , Make it almost monopolized in traditional database applications , Finance 、 signal communication 、 energy 、 logistics 、 retail 、 Large companies in various traditional industries such as manufacturing are using , Even the early world 500 Strong enterprises are almost all Oracle Users of . | Mainly in the data-based business of traditional industries , such as : signal communication 、 Bank 、 The availability of such finance 、 Robustness, 、 Security 、 Business with high real-time requirements ; Or retail 、 logistics 、 Energy is a business with high requirements for massive data storage and analysis . Usually with Oracle Large servers and disk arrays use , The price is very expensive . |
| MySQL | Web The most widely used relational database in the era ,MySQL The main application scenario of early positioning is Internet development . so to speak , It is the explosion of the Internet that has made MySQL,LAMP Architecture is popular all over the world . And because the MySQL More pursuit of light weight 、 Easy to use , In the traditional database application scenario , Very little share . | Most of its application examples also focus on the Internet ,MySQL The high concurrent access capability of is no worse than that of large databases , At the same time, the price is cheap , Easy to install and use , Deeply loved by the majority of Internet companies . And because of MySQL Open source features of , For some applications with special requirements for database , Directional optimization can be achieved by modifying the code , For example, Taobao . |
| Microsoft SQL Server | yes Microsoft An important part of the company's software integration program , Because only in Windows Upper use , Not as popular as the first two . General configuration ASP.Net Development , Also for the Windows The popularity of the system in enterprise applications has made a great contribution . | Microsoft SQL Server Mainly for small and medium-sized enterprises . Its biggest advantage is that it integrates MS All kinds of products and resources of the company , Provides a powerful visual interface 、 Highly integrated management development tools . It also provides a complete set of software solutions , Basically a set Windows The system will live after it is installed . therefore , Not so short of money , But it's scarce IT Small and medium-sized enterprises with talents , Will prefer Microsoft SQL Server . |
Show details
- The era of big data is coming , Disadvantages of relational databases :
The processing data format is single : The two-dimensional tabular data model used in relational database can not effectively deal with multi-dimensional data , Can not effectively deal with semi-structured and unstructured massive data in Internet applications , Such as Web page 、 E-mail 、 Audio 、 Video etc. .
High concurrent read / write performance is low :Web2.0 The concurrent load of the website database is very high , Often tens of thousands of read and write requests per second . Relational databases can barely cope with tens of thousands of times SQL Inquire about , But hard disk I/O Often can not afford tens of thousands of times SQL Write data request .
Low scalability : When the number of users and visits of an application system increases day by day , The traditional relational database has no way like Web Servers simply add more hardware and service nodes to expand performance and load capacity . For many systems that need to provide uninterrupted service , Upgrading and expanding the database system often requires downtime maintenance and data migration . According to this situation ,NoSQL Technology came into being .
2. Non relational database (NoSQL)
Originally referring to "non SQL", "non relational" or "not only SQL" (NoSQL)NoSQL It generally refers to non relational databases . Is different from the traditional relational database database management system .NoSQL The production of database is to solve the problem of large-scale Data sets The challenge of combining multiple data types , Especially big data application problem .
NoSQL Main advantages over relational databases :
Low latency reading and writing speed : Rapid application response can greatly improve the speed of user interaction ;
High performance and scalability : Based on key value pair , The data is not coupled , Easy for distributed expansion ;
Unstructured and unpredictable data :NoSQL The storage format is Key-Value form 、 Document form 、 Picture form and so on , Relational databases only support basic types .
- NoSQL It is very popular in recent years , Divided into four categories :
Key value type (Key-Value)
Redis、 Riak Content caching , It is mainly used to deal with intensive processing of large amounts of data IO High load access .
The key value database is the simplest form NoSQL, Every value in the data (value) There are special keys (key) To match , It can achieve ultra fast application performance for relatively simple data sets , Search speed is very fast .Document type (Document)
MongoDB、 CouchDBWeb application , Collect and process data from web pages and mobile applications .
Document databases store data in a document like structure , It can take the form of modeless , Data structure requirements are not strict , Variable table structure .Column store (Big tables)
HBase、 Cassandra Usually used in Internet search 、 Other large-scale web applications and PB Analysis and application of level data .
Store as a column cluster , Store the same column of data together , When dealing with large data sets , You can have higher performance and scalability ( Such as HBase+Hadoop framework ).graphics (Graph)
Neo4J、 GraphDB Social networks , Recommendation system, etc , Focus on building a relationship map .
A structure similar to a graph stores data , You can use graph structure related algorithms , Easy to explore the connection between data .
- NoSQL The shortcomings of :
I won't support it SQL sentence : Does not provide SQL Support , The cost of learning and using is high ;
The functionality provided is limited : No transactions , The complete solutions and reports are not well supported ;
stability : The perfection and stability of the product , It cannot be compared with the relational database with decades of history . 3. SQL+NoSQL : NewSQL
NewSQL Database is an open source software product , Compared with traditional relational database and NoSQL, It can use SQL Statement to query data , At the same time, it has modern , Distributed , High fault tolerance , Cloud based cluster architecture .
NewSQL Combined with the RDBMS Rich and flexible data interaction ability and stability and management mechanism , It can also provide NoSQL Real time expansion capability for big data and fast data .
About SQL+NoSQL : NewSQL database _weixin_33754065 The blog of -CSDN Blog
author : Zhishou
Game programming , A game development favorite ~
If the picture is not displayed for a long time , Please use Chrome Kernel browser .
边栏推荐
- Bash summary online log
- 微信公众号—菜单
- render后续来了,封装一个表单往表格中添加数据
- LeetCode-1188. Designing finite blocking queues
- Unity C basic review 27 - delegation example (p448)
- 材质 动态自发光
- Informatics Olympiad all in one 2062: movie tickets
- 打造一个 API 快速开发平台,牛逼!
- Unity C basic review 29 - Generic delegation (p451)
- .NET程序配置文件操作(ini,cfg,config)
猜你喜欢

MCS: multivariate random variable polynomial distribution

Northwestern Polytechnic University attacked by overseas e-mail

明德扬XILINX-K7-325T/410T核心板数据手册

PyTorch 二维多通道卷积运算方式

Lumiprobe reactive dye - amino dye: cyanine 5 amine

Chapter IX app project test (4) test tools

Pytorch two-dimensional multi-channel convolution operation method

Unity C # basic review 26 - first acquaintance Commission (p447)

What is the relationship between synchronized and multithreading

Lumiprobe reactive dye carboxylic acid: sulfo cyanine7.5 carboxylic acid
随机推荐
深度学习遥感数据集
Implementing redis distributed locks using custom annotations
File常用工具类, 流相关运用 (记录)
Unity C# 基础复习27——委托示例(P448)
获取Text组件内容的宽度
目前股票开户安全吗?可以直接网上开户吗
NFS configuring file mapping between two hosts
Classe d'outils commune de fichier, application liée au flux (enregistrement)
Northwestern Polytechnic University attacked by overseas e-mail
BioVendor遊離輕鏈(κ和λ)Elisa 試劑盒的化學性質
动态监听DOM元素高度变化
使用自定义注解实现Redis分布式锁
深度学习网络的训练方式
Lumiprobe reactive dye - amino dye: cyanine 5 amine
Take another picture of cloud redis' improvement path
Lumiprobe deoxyribonucleic acid phosphate CpG 1000 solid carrier
Scroll,你玩明白了嘛?
MCS: discrete random variable - Hyper geometric distribution
LeetCode-1188. Designing finite blocking queues
Pytorch two-dimensional multi-channel convolution operation method