Fundamentals of Information Systems: Database Systems and Big Data

Introduction to Databases and Database Management Systems

  • Database Definition: An organized collection of data.
  • Database Management System (DBMS): A group of programs that perform the following functions:
      - Manipulate the database.
      - Provide a critical interface between the database and its users, as well as other application programs.

Data Fundamentals

  • Business Necessity: Without data and the functional ability to process it, an organization could not successfully complete the majority of its business activities.
  • Definition of Data: Consists of raw facts.
  • Organization: Data must be organized in a meaningful way to transform it from raw facts into useful information.

Hierarchy of Data

  • Bit (Binary Digit): Represents a circuit that is either on or off.
  • Byte: Made up of eight bits. Each byte represents a single character.
  • Character: Represented by a byte.
  • Field: A name, number, or combination of characters that describes an aspect of a business object (such as a person, place, or thing) or activity.
  • Record: A collection of related data fields.
  • File: A collection of related records.
  • Database: A collection of integrated and related files.
  • The Full Hierarchy: Summarized as bits, characters, fields, records, files, and databases.

Data Entities, Attributes, and Keys

  • Entity: A person, place, or thing for which data is collected, stored, and maintained.
  • Attribute: A specific characteristic of an entity.
  • Data Item: The specific value of an attribute.
  • Primary Key: A field or set of fields that uniquely identifies a record within a database table.

The Database Approach to Data Management

  • Traditional Approach: Each distinct operational system used data files dedicated specifically to that system, leading to data redundancy and isolation.
  • Database Approach: Information systems share a pool of related data. Key characteristics include:
      - The ability to share data and information resources across the organization.
      - The requirement of a DBMS to manage the shared pool.

Data Modeling and Database Characteristics

  • Critical Considerations for Building a Database:
      - Content: Determining what data should be collected and evaluating the cost of collection.
      - Access: Deciding what data should be provided to which users and the timing of that access.
      - Logical Structure: Determining how data should be arranged so that it makes sense to users.
      - Physical Organization: Determining where data should be physically located.
      - Archiving: Establishing how long data should be stored.
      - Security: Determining how data can be protected from unauthorized access or damage.
  • Data Model: A diagram of data entities and their relationships.
  • Enterprise Data Modeling: Data modeling performed at the level of the entire enterprise.
  • Entity-Relationship (ER) Diagrams: Data models that use basic graphical symbols to show the organization of and relationships between data.

The Relational Database Model

  • Relational Model Definition: A simple but highly useful way to organize data into collections of two-dimensional tables called relations.
  • Table Structure:
      - Each row in the table represents a specific entity.
      - Each column represents an attribute of that entity.
  • Domain: The range of allowable values for a specific data attribute.

Manipulating Data in Relational Databases

  • Selecting: The process of eliminating rows according to certain criteria.
  • Projecting: The process of eliminating columns in a table.
  • Joining: The process of combining two or more tables.
  • Linking: Combining two or more tables through common data attributes to form a new table containing only the unique data attributes.

Data Cleansing and Quality

  • Data Cleansing (Data Cleaning/Scrubbing): The process of detecting and then correcting or deleting incomplete, incorrect, inaccurate, or irrelevant records residing in a database.
  • Cost: The cost of performing data cleansing can be quite high.
  • Data Validation: Distinct from data cleansing, this involves the identification of "bad data" and its rejection at the time of initial data entry.

SQL and ACID Properties

  • SQL (Structured Query Language): A special-purpose programming language for accessing and manipulating data stored in a relational database.
  • Standardization: In 1986, SQL was adopted by ANSI (American National Standards Institute) as the standard query language for relational databases.
  • ACID Properties: SQL databases conform to ACID properties to ensure reliability:
      - Atomicity
      - Consistency
      - Isolation
      - Durability

Core DBMS Activities

  • Provide a user view of the database.
  • Create and modify the database.
  • Store and retrieve data.
  • Manipulate data and generate reports.

Creating and Modifying Databases

  • Schema: A description of the entire database. It can be part of the database or a separate schema file. The DBMS references the schema to find data locations.
  • Data Definition Language (DDL): A collection of instructions and commands used to define and describe data and relationships in a specific database. It allows the creator to describe data and relationships contained in the schema.
  • Data Dictionary: A detailed description of all data used in the database. It can include:
      - Descriptions of data flows.
      - Information about record organization.
      - Data-processing requirements.

Storing, Retrieving, and Manipulating Data

  • Data Requests: Application programs request data through the DBMS.
  • Concurrency Control: A function that handles situations where two or more users or applications need to access the same record simultaneously.
  • Query by Example (QBE): A visual approach to developing database queries or requests.
  • Data Manipulation Language (DML): A specific language provided with a DBMS that allows users to access and modify data, perform queries, and generate reports.
  • Output: A DBMS can produce documents, reports, and other outputs to help organizations achieve goals.

Database Administration Roles

  • Database Administrators (DBAs): Skilled and trained IS professionals who:
      - Work with users to define data needs.
      - Apply database programming languages to craft databases.
      - Test and evaluate databases.
      - Implement changes to improve performance.
      - Assure data security from unauthorized access.
  • Data Administrator: A nontechnical position responsible for defining and implementing consistent principles for data issues. Tasks include:
      - Setting data standards and definitions across all organizational databases.
      - This can be a high-level position reporting to top-level managers.

Modern Database Services and Software Interaction

  • Database as a Service (DaaS):
      - The database is stored on a service provider’s servers.
      - Accessed by the client over a network, typically the Internet.
      - Database administration is handled by the service provider.
      - Example: Amazon Relational Database Service (Amazon RDS).
  • Interface Roles:
      - Front-end Applications: Interact directly with people.
      - Back-end Applications: Interact with other programs or applications.
      - Example: The Library of Congress (LOC) uses a back-end application to allow Web access to its databases of books and digital media.

Big Data Concepts

  • Big Data Definition: Extremely large and complex data collections that traditional data management software, hardware, and analysis processes are incapable of handling.
  • Three Characteristics of Big Data (The 3 Vs):
      - Volume
      - Velocity
      - Variety
  • Industries and Uses:
      - Retail: Monitoring social networks to engage brand advocates and identify adversaries.
      - Advertising/Marketing: Tracking social media comments.
      - Hospitals: Analyzing medical data and patient records.
      - Consumer Products: Gaining insight into consumer behavior via social networks.
      - Financial Services: Identifying customers for targeted and sophisticated offers.

Challenges of Big Data

  • Choosing which subset of data to store.
  • Determining where and how to store the data.
  • Finding relevant "nuggets" of data for decision-making.
  • Deriving value from relevant data.
  • Identifying which data requires protection from unauthorized access.

Data Management and Governance

  • Data Management: An integrated set of functions defining processes to obtain, certify as fit for use, store, secure, and process data to ensure accessibility, reliability, and timeliness.
  • Data Governance: Defines roles, responsibilities, and processes to ensure data can be trusted and used by the entire organization.
  • Drivers for Data Management:
      - Meeting external regulations to manage risk (e.g., financial misstatement).
      - Avoiding inadvertent release of sensitive data.
      - Ensuring high data quality for key decisions.
  • The Governance Team: Recommended to include executives, project managers, line-of-business managers, and data stewards.
  • Data Steward: An individual responsible for the management of critical data elements.
  • Data Lifecycle Management (DLM): A policy-based approach to managing the flow of an enterprise’s data.

Data Warehouses, Data Marts, and Data Lakes

  • Data Warehouse: A large database that collects business information from many sources in the enterprise to support management decision-making.
  • ETL Process: Consists of three steps:
      - Extract
      - Transform
      - Load
  • Data Mart: A subset of a data warehouse used by small-to-medium businesses or specific departments. It may contain more detailed data for a specific area than the main warehouse.
  • Data Lake (Enterprise Data Hub): A "store everything" approach saving data in its raw, unaltered form. Data is only extracted and structured when accessed for a specific analysis.

NoSQL Databases and Distributed Frameworks

  • NoSQL Database: Stores and retrieves data modeled using means other than two-dimensional tabular relations.
      - Advantages: Ability to spread data over multiple servers (sharding), no predefined schema requirement, flexible data structures, and improved access speed/redundancy.
  • Hadoop: An open-source software framework for storing and processing extremely large data sets. It has two components:
      - MapReduce: The data processing component.
      - Hadoop Distributed File System (HDFS): The distributed file system component.

In-Memory Databases

  • In-Memory Database (IMDB): A DBMS that stores the entire database in random access memory (RAM).
  • Benefits: Accesses data much faster than secondary storage; enables analysis of big data.
  • Performance: Performs best on multiple multicore CPUs.