Talking about the technique of database design

Source: Internet
Author: User
Tags abstract data structures new features

When it comes to databases, I don't think we can talk about data structures first. In 1996, when I first entered the university to study computer programming, then the teacher told us that: computer program = data structure + algorithm. Although the current process development has been oriented towards the main object-oriented, but I strongly agree with 8 years ago the teacher told us the formula: computer program = data structure + algorithm. The first thing to do in object-oriented program development is, first, we analyze the data to be processed in the whole program, extract the abstract template, design the class with this abstract template, then add the function (that is, the algorithm) to process its data, and finally, the data members and functions in the class are divided into access rights, so as to realize encapsulation.

The initial prototype of the database is said to originate from a dairy farm in the United States Books Book Thin (paper, this shows that the database is not necessarily stored in the computer data ^_^), which records the dairy farm's income and expenditure accounts, programmers in their collation, input to the computer in which the inspiration. When the amount of data collected in accordance with the stipulated good data structure is large to a certain extent, due to the efficiency of the program implementation, the programmer will be the search, update maintenance and other functions to separate, to make a separate call module, the module later slowly developed, evolved into the now we have access to the database management system (DBMS)-- An important branch of program development.

The following to get to the point, first of all, according to my personal contact with the program to the database design staff of the foundation of the class:

1, no system to learn the data structure of the programmer. This type of programmer's work is often just their impromptu toys, they are often accustomed to only design a limited number of tables, the implementation of a certain type of functionality of the data are all stuffed in a table, the tables are almost unrelated. A lot of free management software on the Internet are such things, when the program function is limited, the amount of data is not much, its program runs no problem, but if the use of its management more important data, the risk is very large.

2, the system has studied the data structure, but has not developed to the program efficiency requirements higher management software programmer. Most of these people have just graduated from school, they are in the design of database table structure, in strict accordance with the provisions of the textbook, merely e-R diagram and 3NF (Don't lose heart, all database Design Master is from this step started). Their work, for general access-style lightweight management software, is sufficient. But once the system needs to add new features, the original database table is almost a big exchange.

3, the second category of programmers, experienced several procedures to improve the efficiency, as well as upgrade the function of the toss, and finally upgraded to become a database design veteran, the first category of programmers in the eyes of the expert. This type of programmer is capable of developing more than 20-meter business data management systems. They know what kind of situation to keep a certain amount of redundant data to improve the efficiency of the program, and its design of the database can be extended better, when users need to add new features, the original database table only to do a small number of changes can be.

4, after the experience of the 10 similar database management software of the repeated design, the third type of programmers insist on not a career change, but hope to find out the "lazy" tips of the conscientious will slowly awakening, thus completing the transformation of quantitative to qualitative changes. They designed a database table structure with a certain foresight, can predict the future function upgrades required data, thus leaving the foreshadowing beforehand. Most of these programmers now qualify as senior software developers in data mining.

5, the third class of programmers or the fourth class of programmers, in the existing database management system of the principle and development of a certain degree of research, or on its basis for two development, or to develop a set of independent copyright of the general database management system.

I am personally at the end of the third category, so some of the design techniques listed below are suitable for the second and third class database designers. At the same time, because I rarely encountered interest in this area to drill down the peer, so the article will inevitably appear errors and omissions, in this first statement, welcome everyone to correct, do not hide the private Oh 8

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.