- Learning Neo4j 3.x(Second Edition)
- Jér?me Baton Rik Van Bruggen
- 479字
- 2021-07-08 09:37:32
Background
It's not very clear when the first real database management system was formally conceived and implemented. Ever since Babbage invented the first complete Turing computing system (the Analytical Engine, which Babbage never really managed to get built), we have known that computers will always need to have some kind of memory. This will be responsible for dealing with the data on which operations and calculations will be executed. However, when did this memory evolve into a proper database? What do we mean by a database, anyway?
Let's tackle the latter question first. A database can be described as any kind of organized collection of data. Not all databases require a management system--think of the many spreadsheets and other file-based storage approaches that don't really have any kind of real material oversight imposed on it, let alone true management systems. A database management system (or DBMS for short), then, can technically be referred to as a set of computer programs that manage (in the broadest sense of the word) the database. It is a system that sits between the user-facing hardware and software components and the data. It can be described as any system that is responsible for and able to manage the structure of the data, is able to store and retrieve that data, and provides access to this data in a correct, trustable, performant, secure fashion.
Databases as we know them, however, did not exist from the get-go of computing. At first, most computers used memory, and this memory used a special-purpose, custom-made storage format that often relied on very manual, labor-intensive, and hardware-based storage operations. Many systems relied on things like punch cards for its instructions and datasets. It's not that long ago that computer systems evolved from these seemingly ancient, special-purpose technologies.
Having read many different articles on this subject, I believe the need for general-purpose database management systems, similar to the ones we know today, started to increase due to the following:
- The number of computerized systems increased significantly.
- A number of breakthroughs in terms of computer memory were realized. Direct Access memory--memory that would not have to rely on lots of winding of tapes or punched cards--became available in the middle of the 1960s.
Both of these elements were necessary preconditions for any kind of multipurpose database management system to make sense. The first real database management systems seem to have cropped up in the 1960s, and I believe it would be useful to quickly run through the different phases in the development of database management systems.
We can establish the following three major phases over the half century that database management systems have been under development:
- Navigational databases
- Relational databases
- NoSQL databases
Let's look at these three system types so that we can then more accurately position graph databases such as Neo4j--the real subject of this book.
- iOS Game Programming Cookbook
- 計算思維與算法入門
- OpenShift開發指南(原書第2版)
- PyQt從入門到精通
- Java Web及其框架技術
- HTML5+CSS3+JavaScript Web開發案例教程(在線實訓版)
- ASP.NET 3.5程序設計與項目實踐
- 碼上行動:用ChatGPT學會Python編程
- Raspberry Pi Robotic Projects(Third Edition)
- Java7程序設計入門經典
- JQuery風暴:完美用戶體驗
- Practical Predictive Analytics
- Roslyn Cookbook
- Effective Python:編寫高質量Python代碼的90個有效方法(原書第2版)
- Android Application Programming with OpenCV 3