Data storage, retrieval and querying is a central piece in most of systems. Database choice clearly becomes a crucial decision while designing a system in terms of scalability, consistency etc.
Blog
Following are the types of databases:
🔸Relational:
- It is a type of database that organizes data into tables.
- Multiple entries with relational constraints and are typically designed to be ACID compliant.
- Examples: MySQL, PostgreSQL.
🔸NoSQL:
- Designed to handle large volumes of structured, semi-structured, or unstructured data, and offer features such as high availability, horizontal scalability, and flexible data models.
🔹Key Value stores:
- In this model, each piece of data (a value) is associated with a unique identifier (a key).
- Key-value stores are designed for high-speed retrieval and storage of data, making them suitable for use cases where fast access to data is crucial.
- Examples: Redis, Memcached etc.
🔹Column-family stores:
- stores data in columns rather than rows, enabling efficient retrieval of data subsets.
- Used to perform scan on entire key space, filtering etc.
- Examples: Apache Cassandra, HBase, Amazon DynamoDB.
🔹Document-oriented databases:
- These databases store data in flexible, semi-structured document formats like JSON or BSON.
- Schema definition is not required, addition of new fields is easier.
- Used in inventory, content management etc. - Examples: MongoDB, Amazon DocumentDB.
🔹Graph Database:
- designed to represent and store data as graphs, consisting of nodes and edges. Nodes represent entities or data points, while edges represent the relationships between these entities.
- Used in applications that involve complex relationships such as social networks, recommendation systems, fraud detection etc.
- Examples: AWS Neptune, Neo4J etc.
🔹Search-Extensive:
- Several databases are specifically designed for search-related tasks, ranging from basic full-text search to more advanced search capabilities.
- Amazon CloudSearch: It offers features such as full-text search and real-time indexing. It is fully managed and scalable, making it easy to set up and operate for a variety of search applications.
- Elasticsearch: It's widely used for full-text search, log analytics, and real-time analytics. It supports complex search queries and distributed indexing, making it suitable for search engines, e-commerce platforms etc.
🔹Event-streaming:
- Type of database system designed to handle and process continuous streams of data in real-time.
- Optimized for handling high-throughput, time-sensitive data streams generated by various sources, such as devices, sensors etc.
- Examples: Apache Kafka, Kinesis etc.
Copyright ©2024 Preplaced.in
Preplaced Education Private Limited
Ibblur Village, Bangalore - 560103
GSTIN- 29AAKCP9555E1ZV