databases - taoualiw/My-Knowledge-Base GitHub Wiki

Database Systems

1. Relational Database Management Systems (RDBMS)

  • ERD : Entity-Relationship Model
  • Relational Database:
    • a collection of tables, each with a schema that represents the fixed attributes and data types that the items in the table will have. 
    • Relational Algebra
    • RDBMS all provide functionality for reading, creating, updating, and deleting data, typically by means of Structured Query Language (SQL, a.k.a Sequel ) statements.
    • SQL standards are well-defined and commonly accepted.
    • does not work with unstructured data
    • SQL can be written within other programming frameworks like Python, Scala, and HaDoop.
  • Popular databases:
    • oracle (commercial,limited free version available) not available for MacOS
    • mysql (open source)
    • microsoft sql server
    • postgreSQL (open source)
    • DB2
    • sqlite (without server)

2. Non-Relational (NoSQL) Database Systems

  • NoSQL = which stands for not only SQL , used mainly for web data
  • Types :
    • Key-Value Stores such as Redis and Amazon DynamoDB
    • Wide Column Stores such as Cassendra, Scylla, and HBase, 
    • Document Stores, including MongoDB and Couchbase, are schema-free systems that store data in the form of JSON documents.
    • Graph Databases, such as Neo4J and Datastax Enterprise Graph,
    • Search Engines, such as Elasticsearch, Splunk, and Solr, store data using schema-free JSON documents

3. Data Engineering

  • database design
  • write data pipeline
  • Covers data backup, security, disaster recovery
⚠️ **GitHub.com Fallback** ⚠️