Database Engines part 1 — Introduction

Database engines or storage engines or sometimes even called embedded databases are software libraries that a database management software uses to store data on disk and do CRUD

hemalbuha
5 min readApr 3, 2022
Photo by Kelvin Ang on Unsplash

Embedded means moving everything in one software no network client-server.

in this blog series, I want to go with a few popular database engines and explain the difference between them.

before starting let’s go through with the agenda here and talk through the thing that we're gonna do in the database series.

Agenda

  1. What is a Database Engine (Introduction)
  2. MyISAM
  3. Aria
  4. InnoDB
  5. XtraDB
  6. LevelDB
  7. RocksDB
  8. SQLite
  9. BerkeleyDB

So, Let’s Get Start

Database Engine

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. Most database management systems include their own application programming interface (API) that allows the user to interact with their underlying engine without going through the user interface of the DBMS.

The term “database engine” is frequently used interchangeably with “database server” or “database management system”. A “database instance” refers to the processes and memory structures of the running database engine.

Design considerations
The information on the website is stored as bits that are stored as data structures in storage that are readable and encrypted with hardware. The storage itself is generally designed to meet the needs of a wide range of storage facilities, including websites. Active DBMS always uses several types of storage simultaneously (e.g., memory, and external storage), with different editing methods.

Virtual storage can actually be viewed as a linear address, where all data has its own unique address in this address space. In fact, a very small percentage of addresses are retained as the first point of reference (which also needs to be maintained); most data is accessed indirectly using subtraction statistics (distance by bits from reference locations) and data frames that define access methods (using pointers) for all the required data in an efficient, optimized way to access the required data.

Application storage sequence
The website, while operational, simultaneously resides in a few types of storage, creating a storage component. By the nature of the current computer, the internal storage component of the hosted DBMS resides (slightly duplicated) in a flexible storage area. Processed/decrypted data (data fragments) reside within the processor, possibly in processor archives. This data is read from / written in memory, usually by computer bus (so far most flexible storage components). Computer memory transfers data (transferred/transferred) to external storage, usually through standard storage or networks (e.g., fibre channel, SCSI). The storage array, a standard external storage unit, usually has its own storage system, from a fast repository, usually including (flexible and fast) DRAM, connected (also via standard visual connectors) to the drive, which may be at different speeds, such as flash drives and magnetic disk drives ( ). The drives may be connected to magnetic tapes, where often the less active parts of the main site can be occupied, or generations that maintain the site.

There is usually a current relationship between storage speed and value, while faster storage is often variable.

Data structures
A data structure is a complex structure that embedded data in a well-defined way. An efficient data structure allows data manipulation in effective ways. Data manipulation may include data entry, deletion, renewal and retrieval of various modes. Some types of data structure may be more effective in certain tasks, and may not be as effective in others. The data structure type is selected in the development of the DBMS to better meet the functions required for the data types contained. The type of data structure selected for a particular function usually also takes into account the type of storage it occupies (e.g., access speed, the minimum size of the portion of the storage accessed, etc.). Some DBMS site administrators have the flexibility to choose between data structure options to contain user data for operational reasons. Sometimes data structures have special limits for tuning site operations.

Databases may store data for many types of data structures. Typical examples are the following:

  1. flat files ordered / non-ordered
  2. hash tables
  3. B + trees
  4. ISAM
  5. heaps

Data structure and integration
Contrary to popular lines, a related website may be column-based or related to the way it stores data in any particular format.

In general, visual performance enhancement is achieved when different types of site objects that are commonly used together are placed in a nearby storage area, “integrated”. This usually allows retrieving the necessary related items in storage for a small number of installation tasks (each of which is sometimes very time consuming). Even in-memory sites integration provides performance advantages due to the common use of large memory archives for memory output, with the same behavioural effect.

For example, it may be helpful to combine the “item” record in stock with all relevant “order” records. The decision as to whether certain items should be included depends on material usage statistics, item sizes, warehouse sizes, storage types, etc.

Website index
Indexing is a method used by other search engines to improve website performance. Many types of indicators share common assets that reduce the need to check all inputs when using the query. For larger archives, this may reduce the query/cost of query for size orders. A simple index method is a list of values ​​that can be searched using a binary search with the nearest reference point, such as the index on the back of the book. The same data can have multiple references (job site can be identified by surname and date of employment).

Indications affect performance, but no results. Website designers can add or remove references without changing the mindset of the application, reducing the cost of editing as the site grows and the use of the website changes. Indicators can speed up data access, but they use up space on the website and should be updated each time the data is changed. Indicators can therefore speed up data access but data retention is slow. These two properties determine whether the given index is worth the cost.

--

--

hemalbuha

Aim for the moon . If you miss, you may hit a star 🌟.