Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Difference between a Database & a Storage Engine

I have small doubt, can anyone help me to clear it.. My doubt is that, what is the difference between a normal DB (what we see as a DB user) & a Storage Engine. While searching about it I seen a point,

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.

I just need a simple explanation... hope I get it soon.

like image 868
Sinto Avatar asked Jan 25 '16 05:01

Sinto


1 Answers

When you submit a query to SQL Server, a number of processes on the server go to work on that query. The purpose of all these processes is to manage the system such that it will SELECT, INSERT, UPDATE or DELETE the data.These processes kick into action every time we submit a query to the system. The processes for meeting the requirements of queries break down roughly into two stages:

1-Processes that occur in the relational engine.

2-Processes that occur in the storage engine. In the relational engine, the query is parsed and then processed by the query optimizer, which generates an execution plan. The plan is sent (in a binary format) to the storage engine, which then uses that plan as a basis to retrieve or modify the underlying data. The storage engine is where processes such as locking, index maintenance, and transactions occur.

like image 134
ms.khosravani Avatar answered Oct 01 '22 14:10

ms.khosravani