DB words

Credits: Wikipedia and the web.
Note: search the web for more detailed descriptions.

  • RDBMS (Relational Database Management System) is a database management system (DBMS) that is based on the relational model as invented by E. F. Codd.
  • A schema is a description of a particular collection of data, using the given data model.
  • The relational model of data is the most widely used model today.
    1. Main concept: relation, basically a table with rows and columns.
    2. Every relation has a schema, which describes the columns (fields).
  • OODBMS (Object-Oriented Database Management Systems) is a DBMS that combines database capabilities with object-oriented programming language capabilities. OODBs are designed to work well with object-oriented programming languages.
  • NoSQL (often interpreted as Not Only SQL) identifies a DBMS that provides a mechanism for storage and retrieval of data modeled in means other than the tabular relations used in relational databases. For example data can be stored and accessed by column rather than by row. This makes some operations significantly faster in NoSQL.
  • SQL (Structured Query Language) is a special-purpose programming language designed for managing data held in a RDBMS.
  • DDL (Data Definition Language), within SQL, is a syntax for defining data structures, especially database schemas.
  • DML (Data Manipulation Language), within SQL, is a family of syntax elements used for selecting, inserting, deleting and updating data in a database.
  • DCL (Data Control Language), within SQL, is a syntax used to create roles, permissions, and referential integrity as well as to control access to database by securing it. Examples: GRANT, REVOKE.
  • TCL (Transactional Control Language), within SQL, is a syntax used to manage different transactions occurring within a database. Examples: COMMIT, ROLLBACK.
  • A Data model is a collection of concepts for describing data: structure, constraints, operations.
  • OLTP (On-line Transaction Processing) is characterized by a large number of short on-line transactions (INSERT, UPDATE, DELETE). The main emphasis for OLTP systems is put on very fast query processing, maintaining data integrity in multi-access environments and an effectiveness measured by number of transactions per second. In OLTP database there is detailed and current data, and schema used to store transactional databases is the entity model (usually 3NF).
  • OLAP (On-line Analytical Processing) is characterized by a relatively low volume of transactions. Queries are often very complex and involve aggregations. For OLAP systems a response time is an effectiveness measure. OLAP applications are widely used by Data Mining techniques. In an OLAP database there is aggregated, historical data, stored in multi-dimensional schema (usually star schema).
  • Xact (brief for Transaction). A transaction comprises a unit of work performed within a RDBMS. Generally a transaction reads a value from the database or writes a value to the database. Every transaction, for whatever purpose it is being used, has the following four properties (taking the initial letters of these four properties we collectively call them the ACID Properties):
    1. Atomicity: This means that either all of the instructions within the transaction will be reflected in the database, or none of them will be reflected.
    2. Consistency: If we execute a particular transaction in isolation or together with other transaction, (i.e. presumably in a multi-programming environment), the transaction will yield the same expected result.
    3. Isolation: In case multiple transactions are executing concurrently and trying to access a sharable resource at the same time, the system should create an ordering in their execution so that they should not create any anomaly in the value stored at the sharable resource.
    4. Durability: It states that once a transaction has been complete the changes it has made should be permanent.
  • ODBC (Open Database Connectivity) is a standard programming language middleware API (application programming interface) for accessing a DBMS.
    The designers of ODBC aimed to make it independent of database systems and operating systems.
    An application written using ODBC can be ported to other platforms, both on the client and server side, with few changes to the data access code.
  • DBA (Database Administrator) is the person who, among other things:
    1. Designs logical / physical schemas.
    2. Handles security and authorization.
    3. Ensures data availability and crash recovery.
    4. Performs DB tuning as needs evolve.