One of the major DBMS jobs-B + tree

Source: Internet
Author: User

I spent almost all my energy in this semester, and finally finished my first assignment.

Pair programming with the big data is very pleasant and really a good partner.
Once again, I witnessed the superficial aspects of my c ++, pointer, and code writing. I lost my confidence in programming in this process.
Fortunately, there are new advances and improvements.
It not only deepens the understanding of the database theory, but also enhances its programming capability. At the same time, it realizes its own shortcomings in many aspects.

My goal is
Every day, there are new advances, and every day we are doing meaningful things.
This is enough.

In addition, you should always feel satisfied, because you have everything that many people do not have.
Then, you should strive for a new goal.

April October 25:
Pair programming is indeed a good thing.
1. helps overcome inertia. When you don't want to write, you will think that you can't disappoint another person.
2. helpful for rest. When you are tired, you can replace one person to knock on the code.
3. It is helpful for thinking. When you are not coding, it will force you to think.
4. It helps to generate new ideas. The discussion not only avoids the inertia errors that a person can easily make during programming, but also brings together the spark of ideas and makes programming more fun.
5. Facilitate the dissemination of knowledge and experience. For the threesome, you must have a teacher. We can share experiences with each other to make progress together.
6. Helps cultivate team awareness.

Okay, I will not talk about it anymore. Good things should be publicized properly, but do not overdo them.
If you want to know the benefits, you can try it.

April October 30:
Use STL to rewrite most implementations
STL is really a good thing, easy to use and don't worry too much about errors
So excited.

April November 5:
Memory leakage is serious. The longer the machine runs, the longer the machine runs. When you look at the task manager, the memory only increases and decreases.
I think this is what people do. If you don't suffer, you will never reflect on it.
At this time, I remembered how effective the <strong tive C ++> suggestions were.
Or, you don't know the importance of it, just because you're far from that level.

At this point, I am determined that no pointer is needed if I can.

April November 6:
The program runs slowly and is determined to improve efficiency.
I used to think that the machine speed was fast enough. In fact, it was just because the program you wrote was too simple.
When writing programs that process large amounts of data, you will feel the importance of algorithm and program efficiency.

This big job gave me another opportunity for reflection, and I am very grateful.
In many cases, we always think that we are right in a wishful thinking. In fact, it is just a frog at the bottom, because you cannot see the broader sky. All your thoughts are superficial and stubborn.
So what we have to do is try to jump out of the world we are used.

April November 7:
To completely solve the memory leakage problem, we will learn to use _ crtdumpmemoryleak to output Memory leakage.
Cancel all new operations and finally solve the problem.

April November 8:
Finally, I tasted the sweetness of optimization. I changed the search operation from linear search to half-fold search, and the efficiency immediately increased by 100%.
Deeply aware of previous blindness
A programmer who does not understand optimization is not a good programmer.
Learning optimization allows you to learn a lot.
1. algorithms and data structures. This is the best Optimization
2. language features. It is absolutely impossible to understand the characteristics of a language to make the program run fast.
3. assembly language. Many optimizations must be performed at the Assembly level.
4. operating system, database, I/O, computer composition, computer system structure. Real experts have a global grasp of these, because only those who know about them
You can make things better at the underlying level.
Float cloud to hide your eyes, you need to find the light through it
When learning, you should note that in-depth, and then simple, then jump out, and then look at the problem at multiple levels. This is an excellent realm.
Software development also requires so many basic knowledge, so it is time to review the knowledge you think is useless.

April November 9:
After suffering, I decided to start standardization.
The occurrence of broken windows cannot be tolerated when doing anything.
In many cases, for temporary laziness, the cost is long-lasting. It takes a long time for you to experience it. You may regret it, but it is very expensive.
Although I know this exactly, the same error still occurs again and again. I am trying to correct it and hope it is an iterative process.
I found that it is not difficult to do one thing well. One is interest, the other is seriousness, the other is seriousness.

April November 10:
Worker uses profile.exe to measure program overhead.
We also found that there was a serious performance problem in the buffer management, that is, a replacement queue occupies most of the running time of the program during insertion and deletion.
As a result, the speed of running the program in the buffer zone decreases.
After adjustment, the buffer management is changed to the clock algorithm implementation to solve the problem successfully.
Work is ready to do things well, and first benefit its devices
Many good tools can greatly improve our efficiency. Unfortunately, we do not want to learn to use them many times.
Make up your mind to study Emacs and latex.

April November 12:
I am a book lover. I am more persistent and enthusiastic about computer books.
Every time I go to the library, I find a new good book. I always feel happy and then feel deeply at my own shortcomings. Then I must borrow or buy a book.
Project-driven learning is a good method. I think the concept of extreme programming can also be applied to extreme learning.
The books related to this assignment are as follows:
<C ++ University tutorial>, <C ++ standard template library>, <C ++ programming specifications>, and <tive C ++>
<C expert programming>
<Code optimization-effective use of memory> and <code Daquan>
<Introduction to algorithms>, <algorithm I-IV C ++ implementation>
<Database system implementation> and <Database Management System>

April November 15:
Inspired by the boss, you can enable I/O writing and I/O reading in the task manager to monitor the actual usage of I/O.
Haha, sometimes it's a good time.
I have been thinking about a question. Whether it is a book or a person can give you a better way to learn. The answer may be both.
Unfortunately, our problem is mainly caused by memory processing.

April November 23:
Inspired by <programmer's path of practice>, we decided to measure the actual input and running time ratio of the program. I don't think it's linear. Otherwise, how can it run so slowly?
The results once again disappointed me. On the one hand, I was excited. This seemingly slow program showed a linear growth in its insert operations.

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.