A database engine is a program that is installed on a server and run automatically when server is started. This is known as a service or daemon. Once loaded in the memory it will perform input-output operations on a set of files and will listen to requests on a specific TCP-IP port. Applications are connecting to this app engine and request data or data modifications.
Database Engines:
Next is list of databases and the most important features. In my opinion these are the top 12 database engines. One database engine can support: SQL Language, JSON Data, Triggers, Stoded Procedures, Spatial Functionality, Multi-User access or Replication. The more features a database engine has the more valuable it is.
# | DB / Feature | SQL | JSON | Triggers | Procedures | Spatial | Multi User | Replication |
---|---|---|---|---|---|---|---|---|
1 | Oracle | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
2 | PostgreSQL | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
3 | SQL Server | Yes | Limited | Yes | Yes | Yes | Yes | Yes |
4 | SQLite | Yes | No | No | No | Yes | No | No |
5 | MySQL | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
6 | MongoDB | No | Yes | No | Yes | Yes | Yes | Yes |
7 | Casandra | No | Yes | Yes | No | Yes | Yes | Yes |
8 | CouchDB | No | Yes | Yes | No | Yes | Yes | Yes |
9 | Neo4j | No | Limited | Limited | No | Yes | Yes | No |
10 | RethinkDB | No | Yes | Limited | No | Yes | Yes | Yes |
11 | IBM DB2 | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
12 | Redis | No | No | No | Yes | No | No | Yes |
Note: In this list not all databases are relational databases. Some databases have main language SQL and some other do not. Non relational databases are also called No SQL databases and have the purpose to be document oriented databases or graph oriented databases.
Read next: relational databases