Databases - Lesson #1, Introduction
Tags: sql, database, programming
Published: 2021-01-18 22:20:07

# 🤓 INTRODUCTION

Welcome, everybody! This is the first of totally ten lessons about the databases paradigm in computer science. In this article, we will explore the very basics of the databases paradigm in computer science. So, let's dive into it.

# ☝ BASIC TERMS

- What is data?
- What is information?
- What are database management systems?
- Database application?
- Database systems?

## 📝 DATA

Data *(Latin - datum - a part of the information* - Data represents a single, simple, unprocessed, isolated fact that has some meaning and that is being processed and stored on the computer.

Data processing - the process of transforming data into information

Information *(Latin - informare)* - is the result of data organization and analysis. Data is organized in a way that gives or generates new knowledge.


## CONVENTIONAL SYSTEMS

The conventional system is the traditional approach or the so-called File-based system.
The conventional File-based system has an embedded data definition within the application program, but, it is necessary for data definition to be separated from an application program. There is no control over data access, except the control that is performed by the application programs.

**PROS**                                

- Fairly easy to design and implement

**CONS**

- Unrelated application
- Data repetition
- Data inconsistency
- Firm connection between program and data
- Limited ability of data sharing options
- Limited data availability
- Inadequate realization of system failure recovery
- **Expensive data processing**


# 💻 DATABASE SYSTEMS

The database system should provide data structure independence from the program that is used to process that data. It should also provide minimal data repetition, data shouldn't be dependant on any programming language. The database system should be a shared system among many users.

**Database** represents the collection of interconnected data, organized into the 
logical wholes represented by tables.

**Tables** are two-dimensional data table representations that are also known as **relations**.

**Relation** or **Table** can have multiple columns or **atributes**.
Table rows are specific data, specific values of objects' attributes. 


![BB.png](https://cdn.hashnode.com/res/hashnode/image/upload/v1611001628399/8z0D-Az_-.png)

**Data order is irrelevant!**
**There are no duplicates!**

**WHAT IS NOT A DATABASE?**
An accidental set of data is not a database.
A database is built and managed with a specific purpose, for specific users and their needs.

# DATABASE MANAGEMENT SYSTEM

The database management system is the system that is used to:

- Define specific data types, data structures and data limitations
- Create, perform data storing process on the specific medium that is controlled by the Database Management System (DBMS)
- Manipulation, sending specific queries in order to find specific data or to update the database

# DATABASE APPLICATION

A database application is a program that interacts with a database. Interaction between the database application and the database is managed by DBMS.

# DATABASE SYSTEM

A database system represents a collection of database applications, which interact with a database.

Representation of the simplified database system


![dasdf.png](https://cdn.hashnode.com/res/hashnode/image/upload/v1611004359282/fW5cWXyKM.png)

# 👷‍♂️ DATABASE ENVIRONMENT ROLES


1.  Data administrator and database administrator
     Data Administrator - DA
     Database Administrator - DBA

2.  Database Designer
     Database logic designer
     Database designer of the physical part

3.  Application Developer
4.  End-Users

# 🖥 Database system types

## Classification by the number of users

1.  Single-user
2.  Desktop
3.  Multi-user
4.  Workgroup
5.  Enterprise 

## Classification by location

1.  Centralized - Data stored on a single location
2.  Distributed - Data stored in multiple locations

## Classification by usage

1.  Transactional - day-to-day operations support
2.  Data warehouse - data is stored in order to generate information needed that will have an impact on strategic decisions 


# 💡 INTERESTING FACTS

The first database system (early phases - "primitive") - project Appolo - during the sixties, started on president Kennedy's initiative. The result of the project was GUAM or Generalized Update Access Method.

Mid-sixties - IBM accepts GUAM as an idea and develops IMS (Information Management System) - hierarchical DBMS.

The first Database Management system was designed by Charles Bachman, an American computer scientist and winner of the 1973 A.M.Turing Award.

In 1970. E.F.Codd, an English computer scientist, proposes the relational model. The first commercial DBMS was produced in the late seventies and at the beginning of the eighties during the twentieth century: Project System R (IBM), DB2 and SQL/DS (IBM), Oracle (Oracle Corporation).

#💭 PRACTICAL WISDOM MOMENT

I committed myself to write this blog. I know that for beginners computer science can be a little bit intimidating, I will try to keep blogs as short as possible while informing you about the subject as much as I can, but I will also need you to be patient, and maybe to put an extra effort to understand and learn the subject. On the topic of being motivated, I would quote a poem by John Greenleaf Whittier


>  When things go wrong as they sometimes will,
When the road you're trudging seems all uphill,
When the funds are low and the debts are high
And you want to smile, but you have to sigh,
When care is pressing you down a bit,
Rest if you must, but don't you quit.

# 🙏 THANK YOU FOR READING!
Please leave the comment, tell me about you, about your work, comment your thoughts, connect with me via  [Twitter](https://twitter.com/lazar_dev) or  [LinkedIn](https://www.linkedin.com/in/lazar-stankovic-44a199177/). 

Let this year be your year, let this year be our year. Until the next typing...

Have a nice time! 😊