[System Architecture] Chapter 6 - Basic knowledge of database design (database design)

Soft test-system architect knowledge points extraction-system architect tutorial (2nd edition)

  1. Chapter One Introduction
  2. Chapter 2 - Basic knowledge of computer systems (1)
  3. Chapter 2 - Basic knowledge of computer systems (2)
  4. Chapter 3 - Basic knowledge of information systems
  5. Chapter 4 - Basic Knowledge of Information Security Technology
  6. Chapter 5 - Basic knowledge of software engineering (1)
  7. Chapter 5 - Basic knowledge of software engineering (requirements engineering and system analysis and design)
  8. Chapter 5 - Basic knowledge of software engineering (software testing, clean room software engineering, component-based software engineering, software project management)
  9. Chapter 6 - Basic knowledge of database design (basic concepts of database, relational database)

Database Design

1. Database design steps
1. User needs analysis, use certain auxiliary tools to scientifically analyze the functions, performance, restrictions, etc. of application objects 2.
Conceptual structure design, which is the analysis and definition of information, such as view modeling and view analysis And summary, the ideal tool is ER diagram
3, logical structure design, transforming the abstract conceptual model into a logical model consistent with the data model supported by the selected DBMS product is the basis of physical structure design, including the initial design of the schema, sub- Schema design, application program design, schema evaluation, and schema refinement
4. Physical structure design, which is the concrete realization of the logical model in the computer
5. Database implementation stage
6. Database operation and maintenance stage

2. Data requirements analysis
The tasks in the requirements analysis stage: comprehensively analyze the application requirements of each user, conduct a detailed investigation of the objects (organizations, departments, enterprises, etc.) In the process, collect basic data and processing methods that support system goals

3. Conceptual structure design
ER diagram classifies, aggregates and summarizes the data obtained in the requirements analysis stage, and determines entities, attributes and connections. The design work steps include: select local applications, design sub-ER diagrams one by one, and merge ER diagrams

4. Logical structure design
Data model design is carried out on the basis of conceptual structure design, such as hierarchical model, network model and relational model. The main work of this stage includes determining the data model, converting the ER diagram into a specified data model, determining the integrity constraints and determining the user view

ER diagram connection: one-to-one, one-to-many, many-to-many (connection must be added)

V. Physical Design
Main working steps: determine data distribution, storage structure and access method

6. Database Implementation
The process of establishing the actual database structure on the computer, loading data, conducting trial operation and evaluation

7. Database operation and maintenance
The main content includes monitoring and improvement of database performance, fault recovery, database reorganization and reconstruction

Interaction between application and database

Library function level access interface: the lowest-level high-level programming language access data interface provided by the database, such as OCI
embedded SQL access interface: embedded SQL is a general
data interface standard that directly writes SQL statements into certain high-level programming languages: ODBC (
Open Database Connection) solves the data sharing ORM access interface between heterogeneous databases: Object-Relational Mapping (ORM) is used to realize the conversion between different types of system data in object-oriented programming languages . Data, mapping the objects in the program to the relational database, solving the heterogeneity between the database and the program

NoSQL database

NoSQL database classification:

  • Columnar storage database: organize and store data according to the columns of database records. Each table in the database is composed of a set of page chains, and each page chain corresponds to a storage column in the table. Products include: Cassandra, HBase, etc.
  • Key-value pair storage database: the typical data structure is an array linked list, and the products include Redis, etc.
  • Document database: This type of data model is a versioned document. Semi-structured documents are stored in a specific format. When processing complex data such as web pages, they are more efficient than traditional key-value databases. Products include CouchDB and MongoDB wait
  • Graph database: Using a flexible graph model, it can be extended to multiple servers. Products include Neo4J, InfoGrid, etc.

NoSQL features: easy to expand, large data volume, high performance, flexible data model, high availability


Other articles recommended by the author, welcome to learn:
Based on Spring Boot 3.1.0 series of articles

  1. Spring Boot source code reading initialization environment construction
  2. Detailed explanation of the overall startup process of the Spring Boot framework
  3. Detailed Explanation of Spring Boot System Initializer
  4. Detailed explanation of Spring Boot listener
  5. Detailed explanation of Spring Boot banner
  6. Spring Boot property configuration analysis
  7. Analysis of Spring Boot property loading principle
  8. Analysis of Spring Boot exception reporter
  9. Build Spring Boot 3.0 native executables with GraalVM
  10. Spring Boot 3.x microservice upgrade experience

Prometheus series of articles

  1. Introduction and installation of Prometheus
  2. Intuitive experience of PromQL and its data types
  3. PromQL selectors and operators
  4. Functions of PromQL
  5. Prometheus alarm mechanism introduction and command interpretation
  6. Prometheus alarm module configuration depth analysis
  7. Prometheus configuration authentication
  8. Prometheus dynamically pulls monitoring services
  9. Prometheus monitors cloud Mysql and self-built Mysql

Grafana series of articles, version: OOS v9.3.1

  1. Introduction and installation of Grafana
  2. Introduction to configuration parameters of Grafana monitoring large screen (1)
  3. Introduction to configuration parameters of Grafana monitoring large screen (2)
  4. Grafana monitors large-screen visualization charts
  5. Grafana query data and transform data
  6. Introduction to Grafana Alarm Module
  7. Grafana alarm access Feishu notification

Spring Boot Admin Series

  1. Spring Boot Admin Reference Guide
  2. The problem that the SpringBoot Admin service is offline and does not display health information
  3. Loading of Spring Boot Admin2 @EnableAdminServer
  4. Detailed Explanation of Spring Boot Admin2 AdminServerAutoConfiguration
  5. Detailed Explanation of Spring Boot Admin2 Instance Status Monitoring
  6. Spring Boot Admin2 custom JVM monitoring notification
  7. Spring Boot Admin2 custom exception monitoring
  8. Spring Boot Admin monitoring indicators connected to Grafana visualization

Guess you like

Origin blog.csdn.net/weixin_40972073/article/details/131431982