Database & Database Applications Notes

Types of Databases and Database Applications

  • Traditional Applications:
    • Numeric and Textual Databases
  • More Recent Applications:
    • Multimedia Databases
    • Geographic Information Systems (GIS)
    • Biological and Genome Databases
    • Data Warehouses
    • Mobile databases
    • Real-time and Active Databases

Recent Developments (1)

  • Social Networks: Capture information about people and communications.
    • Examples: Facebook, Twitter, LinkedIn
    • Data types: posts, tweets, photos, videos
  • Search Engines: Collect web pages for searching.
    • Examples: Google, Bing, Yahoo

Recent Developments (2)

  • Emerging Technologies: Non-database software vendors managing vast amounts of web-generated data.
    • Big Data storage systems: Large clusters of distributed computers (Chapter 25).
    • NOSQL (Not Only SQL) systems (Chapter 24).
  • Cloud: Data residing in huge data centers with thousands of machines.

Basic Definitions

  • Database:
    • A collection of related data.
  • Data:
    • Known facts that can be recorded and have an implicit meaning.
  • Mini-world:
    • Some part of the real world about which data is stored in a database.
      • Example: student grades and transcripts at a university.
  • Database Management System (DBMS):
    • A software package/system to facilitate the creation and maintenance of a computerized database.
  • Database System:
    • The DBMS software together with the data itself.
    • Sometimes, the applications are also included.

Impact of Databases and Database Technology

  • Businesses: Banking, Insurance, Retail, Transportation, Healthcare, Manufacturing
  • Service Industries: Financial, Real-estate, Legal, Electronic Commerce, Small businesses
  • Education: Resources for content and Delivery
  • More recently: Social Networks, Environmental and Scientific Applications, Medicine and Genetics
  • Personalized Applications: based on smart mobile devices

Simplified database system environment

  • Components:
    • Users/Programmers
    • Application Programs/Queries
    • DBMS Software
    • Software to Process Queries/Programs
    • Software to Access Stored Data
    • Stored Database Definition (Meta-Data)
    • Figure 1.1 illustrates this environment.

Typical DBMS Functionality

  • Define: Define a database in terms of its data types, structures, and constraints.
  • Construct/Load: Load initial database contents onto a secondary storage medium.
  • Manipulating the database:
    • Retrieval: Querying, generating reports.
    • Modification: Insertions, deletions, and updates to its content.
    • Accessing the database through Web applications
  • Processing and Sharing: Concurrent users and application programs processing and sharing data while maintaining data validity and consistency.

Application Activities Against a Database

  • Applications interact with a database by generating:
    • Queries: Access different parts of data and formulate the result of a request.
    • Transactions: Read some data and "update" certain values or generate new data and store it in the database.
  • Security: Applications must not allow unauthorized users to access data.
  • Adaptability: Applications must keep up with changing user requirements against the database.

Additional DBMS Functionality

  • DBMS may additionally provide:
    • Protection/Security: Measures to prevent unauthorized access.
    • "Active" processing: To take internal actions on data.
    • Presentation and Visualization: Of data.
    • Maintenance: Of the database and associated programs over the lifetime of the database application.
      • Called database, software, and system maintenance.