What exactly is a database engine?
-
I have gone through the definition on http://en.wikipedia.org/wiki/Database_engine several times: A database engine (or "storage engine") is the underlying software component that a database management system (DBMS) uses to create, read, update and delete (CRUD) data from a database. What I do not understand is what is left to do, isn't CRUD all that the databases do? If the database engine performs these functions, what does the rest of the database do?
-
Answer:
CRUD is meant to define the characteristics necessary for a database as it relates to persistent storage. It is not meant to describe everything that could be done by a database engine. To make a comparison, fundamentally a vehicle is a device used for transport. While true, this definition certainly doesn't include all the detail entailed in a modern automobile. A database engine might handle multiple users, http://en.wikipedia.org/wiki/Database_transaction, http://en.wikipedia.org/wiki/Multi-Version_Concurrency_Control, buffers and caches, http://en.wikipedia.org/wiki/ACID, as well as different http://en.wikipedia.org/wiki/Isolation_level. A read may pull data from memory, remote databases, and multiple tables on disk processing it using SQL through multiple explicit and/or implicit code paths in order to present it to the requesting application. A create may allocate storage, provision structures, assign values, and do it's own processing before storing data. Etc.
Lazer at Database Administrators Visit the source
Other answers
Some databases can run many engines, depending on the best fit for the job. For example, many of my applications use InnoDB for most data (key constraints and row level locking), MyISAM for session data (fast, less processing) and ArchiveDB for audit trail (compressed and insert/select only, no update/delete). The "rest" of the database software provides a common interface for use through APIs or terminals, allows complex actions (like joins, subqueries, etc.) and manages the health/status and configuration of the included engines. There is a lot to the feeding and care of an engine, and the database software hides all of that complexity.
Bryan Agee
Related Q & A:
- What exactly is a sales and marketing job?Best solution by Yahoo! Answers
- What exactly does a (back) Medical Assistant do? How much do they get paid?Best solution by Yahoo! Answers
- What exactly does a hedge fund manager do?Best solution by Yahoo! Answers
- What exactly is a fault bucket and what causes it?Best solution by Stack Overflow
- What does make a car engine technically a six pack?Best solution by Yahoo! Answers
Just Added Q & A:
- How many active mobile subscribers are there in China?Best solution by Quora
- How to find the right vacation?Best solution by bookit.com
- How To Make Your Own Primer?Best solution by thekrazycouponlady.com
- How do you get the domain & range?Best solution by ChaCha
- How do you open pop up blockers?Best solution by Yahoo! Answers
For every problem there is a solution! Proved by Solucija.
-
Got an issue and looking for advice?
-
Ask Solucija to search every corner of the Web for help.
-
Get workable solutions and helpful tips in a moment.
Just ask Solucija about an issue you face and immediately get a list of ready solutions, answers and tips from other Internet users. We always provide the most suitable and complete answer to your question at the top, along with a few good alternatives below.