Advanced database development using Oracle-COMP375Week 1
Introduction
Introduction to Database ConceptIn our information society, record keeping and data processing using database has become an
important aspect of every organization, and much of the world's computing power is dedicated
to doing this. You probably use databases all the time, often without knowing it. For examples,
withdrawing money from the ATM or selecting courses from University of Nizwa online system.
DatabaseData are unprocessed raw facts that include text, number, images, audio, and video.
Information is processed data that is organized, meaningful, and useful.
Data & Information
Data Information
1 Data is collection of facts and figures. Processed form of data is information.
2 No conclusions can be drawn on data. Used to draw conclusions.
3 Data is raw material for processing. It is
processed further.
Information can also be further utilized to
produce high quality information.
Eg. Student’s marks in course are a data.
This data is further used for calculating Students grade and CGPA etc. when such processing is
done on data, it is called as information. So information is processed form of data.
Database, in simple terms, can be stated to be storage of information in a systematic manner
— usually records, from which data can be easily (relatively speaking) retrieved or to which
modifications can be made or new data can be added.
Formally, a database is a collection of organized data and a means to allow you to manipulate
it in a useful way.
1 Department of Computer Science, College of Art and Sciences, University of NIZWA
Advanced database development using Oracle-COMP375Week 1
Database & database system are essential component of everyday life.
Traditional database application - bank database, student database, airline/hotel
reservation, college library, supermarket database. Information stored in text and
numeric format. This is also called conventional database.
Multimedia database - New media technology made it possible to store images, audio
clips, video streams along with text and numeric data.
Geographic information system (GIS) – It can store & analyze maps, weather data,
satellite images.
Data warehouse - It is used in many companies to extract and analyze useful
information from very large database to support decision making.
Real Time database - It is used to control industrial and manufacturing processes.
What is a Database?Database is an organized collection of inter related information.
It contains conventional & non-conventional information.
Conventional information - facts about persons, things, events etc. eg. data in form of text
and numbers.
Non-conventional information - photographs, fingerprints, videos etc. eg. graphical data.
Need of Database ManagementAny organization has to maintain the records of all its activities, which are interdependent.
To specify information requirements of user.
To provide a natural and easy way of structuring, storage of data.
To support the processing requirements like computation and comparison.
To design data structure this will remain robust over time. (eg. new information can be
easily added to database).
Effective & efficient reports at time.
Smooth running of an organization.
2 Department of Computer Science, College of Art and Sciences, University of NIZWA
Advanced database development using Oracle-COMP375Week 1
Database Applications: Banking: all money transactions.
Airlines: reservations, schedules.
Universities: registration of students, results of students.
Sales: customers information, products info., purchases info.
Online retailers: order tracking, customized recommendations.
Manufacturing: production, inventory, orders, supply chain.
Human resources: employee records, salaries, tax deductions.
Databases touch all aspects of our lives.
Database Management System (DBMS)Database is an organized collection of interrelated information.
When we perform some operation on the data and organize in some meaningful format, it is
called as database system.
The software which allows user to create (table creation) maintain (insert, delete, change), and
share database is called DBMS.
Example: On PCs, Microsoft Access is a popular example of a single or small-group user
DBMS.
Relational Database management systemA Relational Database management system (RDBMS) is a program that lets you create,
update, and administer a relational database.(DBMS that is based on the Relational Model).
3 Department of Computer Science, College of Art and Sciences, University of NIZWA
Student
Department
CoursesTeachers
Finance
Advanced database development using Oracle-COMP375Week 1
Example:Most commercial RDBMS’s use the Structured Query language,(SQL), to access the database.
The leading RDBMS products are Oracle Corporation's Oracle, IBM's DB2and Microsoft’s SQL
Server.
Properties of a databasePersistent - Data reside on permanent storage such as magnetic disk and available for ever.
Shared - Database can have multiple uses and users.
Interrelated - Data stored as separate units can be connected to provide a whole picture.
Components(Resources) of a Database SystemData - (Data / Information)
Hardware - (Computer, Secondary Storage Devices, Processor, Input/Output Devices etc.,)
Software - Set of programs. (DBMS)
Users - (Application Programmers, End-Users, DBA)
UsersDatabase Administrator (DBA) - Who is responsible for creating & maintaining the data in the
database stable & safe.
Application programmer - Who is responsible for writing programs that use the information
stored in database.
End users - Who is responsible for retrieving/ using information available in the database.
4 Department of Computer Science, College of Art and Sciences, University of NIZWA
Advanced database development using Oracle-COMP375Week 1
Features of DBMS/RDBMSDBMS provides the following facility to develop and operate database system:
Database Definitions - It has language and graphical tools to define entities,
relationships, integrity, constraints and authorization rights.
Non procedural access - It allows to access data without writing complex programs.
Fast application development - It has graphical tools to develop Menu, Forms, reports,
queries.
Procedural language interface - It has facility that allows non procedural access to be
combined with programming language.
Transaction processing - a mechanism that prevents interference from many
simultaneous user.
Database Tuning - allows improving the database performance and maintenance of
database.
Provides a virtual table creation - in which sensitive data can be stored and simplified
query can be applied.(views)
Sharing a common column - in two or more tables(primary key and foreign key)
Provides multi user accessibility - that can be controlled by individual users.
There are two approaches for storing and maintaining the data on persistent storage - FILE - BASED SYSTEM and DATABASE SYSTEM.
File Processing versus DatabaseUsually there are two approaches to store and manage data: file processing or database.
In a typical file processing system, each department or area within an organization has its
own set of files. These files are often are designed specifically for their particular applications.
The records in one file may not relate to the records in any other files.
By using the database approach, all data is centralized in one place such that many programs
and users share the data in the database.
5 Department of Computer Science, College of Art and Sciences, University of NIZWA
Advanced database development using Oracle-COMP375Week 1
FILE-BASED SYSTEM They are independent systems (stand alone)
Each programmer has their own set of data without having any link to the other.
Application programs cannot exchange information.
Own set of data
No link / sharing
Works independently
Changing is be done separately
DATABASE SYSTEM
6 Department of Computer Science, College of Art and Sciences, University of NIZWA
PROGRAMMER (Application Program)
FILE-BASED SYSTEM
DATA BASE SYSTEM
TEACHERS
STUDENTS AFFAIRS
ADVISOR
Students
Registration
Details
Student Information
Attendance Report
Advanced database development using Oracle-COMP375Week 1
Centralized data
Sharing (many users)
Works together
Elements of a database Database consists of three major elements.
Example – Entities, Relationships, Procedures.
Entity - an entity can denote a person, place, thing or event.
Example - Employees, Departments, Students, Course, Registration etc.,
Relationship - it represents a link or a relationship between the entities.
Example - Employees working in a department, Students registered for a course.
Procedures - An ordered set of tasks for performing some action on the database.
Example : Teachers assignment, Course Scheduling, Registering students.
Find the entities, relationships and procedures in the following problem.Computer Department wants to create a database which will store information about all the
students those who are studying the department, all the teachers working in the department,
list of courses offered, the information about the courses allotted for a teacher, students registered for a particular course, and teacher for a particular course, using the above
information, Students registration, add course and drop course should be done successfully.
7 Department of Computer Science, College of Art and Sciences, University of NIZWA
Students Personal InformationStudents AttendanceStudents Result
DATABASE
ADVISOR
STUDENT AFFAIRS
LECTURES
Advanced database development using Oracle-COMP375Week 1
Eg. COLLEGE DATABASE
Find the entities, relationships and procedures in the following problem In a Hypermarket a database is maintained to store the information about all the products that
are available in that shop, all the employees working, the shopping carts available and the
details of the customers.
Whenever any customer comes to the shop, the customer should collect all the products he
need in a shopping cart, if he needs any help, he can contact any employee of the shop and
finally a bill should be generated by an employee and stock should be updated for all the
products.
Eg. HYPERMARKET DATABASE
DATABASE SYSTEM It is a computerized record keeping system.
Its purpose is to maintain information and make that information available to all users anytime they are required.
8 Department of Computer Science, College of Art and Sciences, University of NIZWA
Entities:
StudentsTeachersCoursesDepartment
Relationships:
Course - TeacherStudent – CourseTeacher - Course
Add course
Drop Course
Registering students
Entities:
CustomersProductsEmployeesShopping-cart
Relationships:
Products - CustomerCustomer – Shopping CartShopping Cart - Products
Billing
Stock Updating
Advanced database development using Oracle-COMP375Week 1
The information kept in a database can be anything that is important to the company or organization.
In a database system, data kept in the computer will be integrated and shared by users.
Integrated - means that the database can be thought as a collection of information where
repeated data are removed from the system.
Shared - means that individual pieces of data in a database can be shared among different users.
DATA SHARING
Data is easily available to all users in database system as it is shared.
The database approach provides following advantages:1. Reduce data redundancy: Since all data is centralized in one place, all the programs and
users share the same data in the database. So that it reduces the data replication.
2. Improve data integrity: DBMS performs validity check to help ensure the entered data
is correct. Also, the database approach reduces the possibility of introducing inconsistencies.
3. Share data: The data in a database environment belongs to and is shared, usually over a
network, by the entire organization.
4. Easier access: The database approach allows non-technical users to access and
maintaining data.
9 Department of Computer Science, College of Art and Sciences, University of NIZWA
Students Personal InformationStudents AttendanceStudents Result
STUDENTS AFFAIRS
HEAD OF THE DEPT
LECTURES
Advanced database development using Oracle-COMP375Week 1
5. Reduce development time: It is often easier and faster to develop programs that use the
database approach.
6. More secure: When the companies use databases, they typically have security settings to
define who can access, add, change, and delete the data in a database
REDUNDANCY OF DATA CAN BE REDUCED
Here, College_Id, Student_name, Specialization is repeated in PERSONAL INFORMATION,
STUDENT RESUL AND STUDENT ATTENDANCE. That is redundancy (repetition of
information).
INCONSISTENCY CAN BE AVOIDEDPERSONAL INFORMATION
College-ID Student-Name Specialization Address
1001 SALIM IT Nizwa
STUDENTS RESULT
College-ID Student-Name Specialization Result
1001 SALIM ENG PASS
STUDENTS ATTENDENCE
College-ID Student-Name Specialization Attendance %
1001 SALIM IT 79
Inconsistency means incorrect information or confusing information.
10 Department of Computer Science, College of Art and Sciences, University of NIZWA
Advanced database development using Oracle-COMP375Week 1
SECURITY RESTRICTIONSDBA - Database Administrators
USERS
Permissions to access, modify or delete data.
DBA creates users and give rights (permissions) to them to access, modify or deletion of
information from table.
Data is more secure in database system than file based system.
DATA INTEGRITY Data that we are storing in database must satisfy some condition is called data integrity.
Eg. age > 0. Such conditions are easily given in database.
The user can rely on the data given by the system because of Security restrictions and
elimination of Data
DATA INDEPENDENCEData Structures (Table Design) can be changed without changing the application programs.
Physical Data Independence - the ability to modify the physical schema without changing the
application programs.
Logical Data Independence - the ability to modify the logical schema without changing the
application programs.
DATABASE MANAGEMENT SYSTEMDatabase + Application Programs = DBMSDB - Collection of data.
11 Department of Computer Science, College of Art and Sciences, University of NIZWA
USERS
APPLICATION PROGRAMS
DATA
Advanced database development using Oracle-COMP375Week 1
AP - Collection of Programs (Software) to maintain database.
Database Operations (Maintenance) Insert new information
Retrieve existing information
Delete existing information
Modify existing information
Store the information
Distribute the information
Format the information
Advantages of DBMS Sharing of data and common interface is provided by DBMS.
Less redundancy.
Efficient and easy data access.
Data integrity is maintained.
Provides security for data.
Data administration is easy.
Standards can be enforced.
User need not require knowing about location of data on the disk.
Reduced application development time.
Disadvantages (Drawbacks) of DBMS Use of expensive hardware and software. Eg. It is costly. High initial investment in
hardware, software & training.
Difficult and costly to develop, because it needs trained professionals, persons.
Centralized data.
Because they are operational they often subject to failure.
Data Abstraction
12 Department of Computer Science, College of Art and Sciences, University of NIZWA
Advanced database development using Oracle-COMP375Week 1
Data is stored and manipulated using DBMS. However, all the users of database don’t
need all the data stored.
Each one need some/part of data.
Hiding the data and providing only required data is called data abstraction.
The complexity of data storage & overall structure is hidden from users
Schema - the logical structure of the database.
E.g. The database consists of information about a set of customers and accounts and the
relationship between them.
Physical schema - database design at the physical level. (What is storage device? Hard disk,
floppy, CD etc)
Logical schema - database design at the logical level. (Name of table, primary key, foreign
key, data type etc)
Views - User can see only some information from database.
Instance - the actual records in table of the database at a particular point in time.
Types of Database Design (Data Models)Data Model is a design of database. Data model defines how data is organized, stored and
retrieved in database. It shows data and their relationship.
There are three main models. Hierarchical Model
Network Model
Relational Model
13 Department of Computer Science, College of Art and Sciences, University of NIZWA
DatabaseHard disk
Advanced database development using Oracle-COMP375Week 1
Hierarchical Model - It is a database management system that link records together like
ordered tree.
Data is shown by rectangles.
Relationship is shown by lines.
Hierarchical Model (Like Tree structure)Disadvantages
Slow in processing.
Difficulty in getting data.
Difficult programs are required to write to get data.
Network Model Used in early days
Data is shown by rectangles
Relationship is shown by lines
It is shown like arbitrary graph
Network model (Like graph)
Disadvantages14 Department of Computer Science, College of Art and Sciences, University of NIZWA
A
B C C
D E F G
Parent
Childs
A
B
C
D
E
F
G
Advanced database development using Oracle-COMP375Week 1
Slow in processing than relational model.
Difficulty in getting data.
Difficult programs are required to write to get data.
Relational Database Collection of tables are used to show data and their relationship.
Data is stored in 2 dimensional tables.
Table is collection of rows and columns.
In relational database Rows are called tuples.
Columns are called attributes.
Relational model using 2 tables
STUDENT table
Stud_id Name Course
1 Ali IT
2 Mohammad ENG
STUDENT-MARKS
TableA table is a set of (Vertical) rows and (Horizontal) columns. Each row (record) is a set of
columns (fields) with only.
one value for each cell. All rows from the same table have the same set of columns, although
some columns may have NULL values, i.e. the values for that rows was not initialized.
15 Department of Computer Science, College of Art and Sciences, University of NIZWA
Stud_id Marks
1 78
2 67
1 80
Advanced database development using Oracle-COMP375Week 1
The Hierarchy of DataTo manage, a database is organized in a hierarchy which consists of several levels such as
character, field, record and file. Each higher level of data consists of one or more items from
the lower level.
CharacterA bit is the smallest data unit in a computer. Eight bits grouped together in a unit comprise a
byte. Each byte represents a single character, which can be number, letter, punctuation mark,
or other symbol.
FieldA field is a combination of one or more related characters. A field is a column in a table.
It is the smallest unit of data a user accesses. There are three parameters associate with each
field.
A field name uniquely identifies each field.
A field size defines the maximum number of characters a field can contain.
A data type specifies the kind of data a field can contain. The common data types are:
o Text/VarChar2: Letters, numbers or special characters.
o Numeric: Numbers only.
o Currency: Dollar and cent amount.
o Date: Month, day, year, and time information.
o Memo: Lengthy text entries.
o Boolean: 0 or 1 (two states).
o Hyperlink: Web address that links to a document or a Web page.
o Object: This data type can be photograph, audio, video, or a document created
by other programs.
Record
16 Department of Computer Science, College of Art and Sciences, University of NIZWA
Advanced database development using Oracle-COMP375Week 1
A record is a group of related fields. Each row in a table is called a record. A table is a collection of records. Each record represents or describes a unique item in the database.
Each record must consists of a special field called a primary key that uniquely identifies each record. Primary Keys are often used to linked tables.
FileA data file (table) is a collection of related records stored on a disk. A database includes a group of related data files or tables.
RelationshipsThe power of relational DBMS, though, is in the ability to create tables that conceptually link
various tables together.
Relational database is based on the idea that objects (tables) of a database are connected or related so they can exchange information. This exchange of information is made possible
by creating relationships among objects (tables) of a database.
There are three general cardinality constraints:
one-to-one
one-to-many
many-to-many
These cardinality constraints help the database designer convey the details of a relationship.
Query and Operations on TableQueriesA query is a question or a request for specific data in a database. A DBMS provides a tool
called Query Language which consists of simple, English like statements that allow users to
manage, update and retrieve the data in a database. A query language provides the following
common functions:
Select records: Users can retrieve all or partial records from the database.
17 Department of Computer Science, College of Art and Sciences, University of NIZWA
Advanced database development using Oracle-COMP375Week 1
Insert records: Users will add records in the database when they obtain new data.
Update records: Users can update the records when the records have any changes.
Delete records: When a record no longer is needed, a user can delete it from a file.
Validating DataValidation is the process of comparing data with a set of rules or values to find out if the data is
correct. DBMS performs validity check to help ensure the integrity of entered data, where the
data integrity is measured by:
Correctness and completenessAlphabetic/Numeric Check: Ensure that users enter only alphabetic/numeric data into afield.
Range Check: Determine whether the input number is within a specific range
Consistency Check: Test the data in two or more associated fields to ensure that relationship
is logical.
Completeness Check: Verify that a required field contains data.
Check Digit: A check digit is a number(s) or character(s) that is appended to or inserted into
specific data value. It is used to check the accuracy of the value.
SQLThe Structured Query Language (SQL) is a comprehensive database language for managing relational databases. It includes statements to specify database schemas as well
as statements that add, modify, and delete database contents. It also includes, as its name
implies, the ability to query the database to retrieve specific data.
The original version of SQL was Sequal, developed by IBM in the early 1970s. In 1986, the
American National Standards Institute (ANSI) published the SQL standard, the basis for
commercial database languages for accessing relational databases.
PL-SQLProcedural language / Structured Query Language (PL-SQL)is procedural extension language for sql. Pl-sql expands sql by adding constructs found in procedural languages.
Basic unit in Pl-sql is a block format.
18 Department of Computer Science, College of Art and Sciences, University of NIZWA
Advanced database development using Oracle-COMP375Week 1
QueriesThe select statement is the primary tool for this purpose. The basic select statement includes a
select clause, a from clause, and a where clause:
SELCET attribute-list FROM table-list WHERE condition
The select clause determines what attributes are returned. The from clause determines what
tables are used in the query. The where clause restricts the data that is returned.
Modifying Database ContentThe insert, update, and delete statements in SQL allow the data in a table to be changed. The
insert statement adds a new record into a table. Each insert statement specifies the values of
the attributes for the new record.
What is the data base?A database is a collection of information that is organized so that it can easily be accessed,
managed, and updated. In one view, databases can be classified according to types of content:
bibliographic, full-text, numeric, and images.
What is a database and what is it used for?Sometimes referred to as database management systems (DBMS), database software tools are
primarily used for storing, modifying, extracting, and searching for information within
a database.
What is a database management system?
19 Department of Computer Science, College of Art and Sciences, University of NIZWA
Advanced database development using Oracle-COMP375Week 1
A database management system (DBMS) is system software for creating and managing
databases. The DBMS provides users and programmers with a systematic way to create,
retrieve, update and manage data.
What is the structure of a database?Instead of having all the data in a list with a random order, a database provides a structure to
organize the data. One of the most common data structures is a database table.
A database table consists of rows and columns. A database table is also called a two-
dimensional array.
What is the data design?Database design is the process of producing a detailed data model of a database.
This data model contains all the needed logical and physical design choices and physical
storage parameters needed to generate a design in a data definition language, which can then
be used to create a database.
A data model is an overall design of a database.
It shows a data and relationship between them.
It is a conceptual tool to represent the database.
The data model focuses on what data is required and how it should be organized.
It is defined as “design the logical and physical structure of one or more database to
accommodate the information needs of the users in an organization for defined set of
application”.
Database design is step-by-step procedure.
Divided into 3 Phases.1. Conceptual Data Modeling.
2. Logical Schema Construction.
20 Department of Computer Science, College of Art and Sciences, University of NIZWA
Advanced database development using Oracle-COMP375Week 1
3. Physical Database Design.
For small project, these stages are handled by one person.
For big project, each stage is handled by separate person.
Data modeling is plan for building database.
Phases of Database Design
21 Department of Computer Science, College of Art and Sciences, University of NIZWA
Conceptual Data Modeling
Logical Schema Construction
Physical Database Design
Database Requirements
E R Diagram (on papers)
Relational Database Tables (on papers)
Schema and Instances
(Inside computer)
Advanced database development using Oracle-COMP375Week 1
Feature Conceptual Logical Physical
Entity Names ✓ ✓ Entity Relationships ✓ ✓ Attributes ✓ Primary Keys ✓ ✓Foreign Keys ✓ ✓Table Names ✓Column Names ✓Column Data Types ✓
Below we show the conceptual, logical, and physical versions of a single data model.
Conceptual Model Design
Logical Model Design Physical Model Design
22 Department of Computer Science, College of Art and Sciences, University of NIZWA
Advanced database development using Oracle-COMP375Week 1
Conceptual Data Models: High-level, static business structures and concepts
Logical Data Models (LDMs): Entity types, data attributes and relationships between
entities
Physical Data Models (PDMs): The internal schema database design
What is the conceptual design of a database?This phase is called conceptual design. The result of this phase is an Entity-Relationship (ER)
diagram or UML class diagram. It is a high-level data model of the specific application area. It
describes how different entities (objects, items) are related to each other.
It includes Objects ( i.e. documents ) of an interest to an organization.
What is the Logical design of a database?Logical data models (LDMs). LDMs are used to explore the domain concepts, and their
relationships, of your problem domain. This could be done for the scope of a single project or
for your entire enterprise.
23 Department of Computer Science, College of Art and Sciences, University of NIZWA
Advanced database development using Oracle-COMP375Week 1
Based on data provided by conceptual model, the database structure is designed on paper.
This is known as logical schema construction.
What is the physical design of a database?Physical database design translates the logical data model into a set of SQL statements that
define the database. For relational database systems, it is relatively easy to translate from a
logical data model into a physical database. Rules for translation: Entities become tables in
the physical database.
It refers to the actual structures created inside the computer/system. Based on data structure
designed on paper in the logical schema construction stage, actual structures are created
inside computer/system.
DB2Short for Database 2, a family of relational database products offered by IBM.
DB2 provides an open database environment that runs on a wide variety of computing
platforms. A DB2 database can grow from a small single-user application to a large multi-user
system. Using SQL, users can obtain data simultaneously from DB2 and other databases. DB2
includes a range of application development and management tools.
OLE DBOLE DB (pronounced as separate letters) is a set of COM-based interfaces that expose data
from a variety of sources, such as spreadsheets, project plans, SQL, legacy databases and
more. OLE DB interfaces provide applications with uniform access to data stored in diverse
information sources, or data stores. These interfaces support the amount of database
management system (DBMS) functionality appropriate to the data store, enabling it to share its
data.
OLEAbbreviation of Object Linking and Embedding. OLE is a compound document standard
developed by Microsoft Corporation. It enables you to create objects with one application and
then link or embed them in a second application.
24 Department of Computer Science, College of Art and Sciences, University of NIZWA
Advanced database development using Oracle-COMP375Week 1
Embedded objects retain their original format and links to the application that created them.
Support for OLE is built into the Windows and Macintosh operating systems. A competing
compound document standard developed jointly by IBM, Apple Computer, and other computer
firms is called OpenDoc.
Examples of Database ApplicationsThe following are examples of database applications:
Computerized library systems
Automated teller machines
Flight reservation systems
Computerized parts inventory systems
Database server Database server is the term used to refer to the back-end system of a database application
using client/server architecture. The back-end, sometimes called a database server, performs
tasks such as data analysis, storage, data manipulation, archiving, and other non-user specific
tasks.
Cloud databasesA database accessible to clients from the cloud and delivered to users on demand via the
Internet from a cloud database provider's servers. Also referred to as Database-as-a-Service
(DBaaS), cloud databases can use cloud computing to achieve optimized scaling, high
availability, multi-tenancy and effective resource allocation.
While a cloud database can be a traditional database such as a MySQL or SQL Server
database that has been adopted for cloud use, a native cloud database such as Xeround's
MySQL Cloud database tends to better equipped to optimally use cloud resources and to
guarantee scalability as well as availability and stability.
Cloud databases can offer significant advantages over their traditional counterparts, including
increased accessibility, automatic failover and fast automated recovery from failures, automated
on-the-go scaling, minimal investment and maintenance of in-house hardware, and potentially
better performance.
25 Department of Computer Science, College of Art and Sciences, University of NIZWA
Advanced database development using Oracle-COMP375Week 1
At the same time, cloud databases have their share of potential drawbacks, including security
and privacy issues as well as the potential loss of or inability to access critical data in the event
of a disaster or bankruptcy of the cloud database service provider.
ODBC - Open DataBase Connectivity(pronounced as separate letters) Short for Open DataBase Connectivity, a standard database
access method developed by the SQL Access group in 1992.
The goal of ODBC is to make it possible to access any data from any application, regardless of
which database management system (DBMS) is handling the data. ODBC manages this by
inserting a middle layer, called a database driver, between an application and the DBMS.
The purpose of this layer is to translate the application's data queries into commands that the
DBMS understands. For this to work, both the application and the DBMS must be ODBC-
compliant -- that is, the application must be capable of issuing ODBC commands and the
DBMS must be capable of responding to them. Since version 2.0, the standard supports SAG
SQL.
Database engineThe part of a database management system (DBMS) that actually stores and retrieves data.
Most DBMS's include an Application Programming Interface (API) that enables you to directly
control the engine without going through the DBMS's user interface.
Database shard (sharding)A database shard ("sharding") is the phrase used to describe a horizontal partition in a
database or search engine. The idea behind sharding is to split data among multiple machines
while ensuring that the data is always accessed from the correct place.
Since sharding spreads the database across multiple machines, the database programmer
specifies explicit sharding rules to determine which machines any piece of data will be stored
on. Sharding may also be referred to as horizontal scaling or horizontal partitioning.
Database server
26 Department of Computer Science, College of Art and Sciences, University of NIZWA
Advanced database development using Oracle-COMP375Week 1
Database server is the term used to refer to the back-end system of a database application
using client/server architecture.
The back-end, sometimes called a database server, performs tasks such as data analysis,
storage, data manipulation, archiving, and other non-user specific tasks.
Hybrid databases A relational database system that supports both in-memory and on-disk storage.
Hybrid databases are typically deployed to retain the high performance and small database
footprint advantages of in-memory databases while leveraging the durability and potential cost
savings of on-disk databases
JDBC - Java Database ConnectivityShort for Java Database Connectivity, a Java API that enables Java programs to execute SQL
statements. This allows Java programs to interact with any SQL-compliant database. Since
nearly all relational database management systems (DBMSs) support SQL, and because Java
itself runs on most platforms, JDBC makes it possible to write a single database application that
can run on different platforms and interact with different DBMSs.
JDBC is similar to ODBC, but is designed specifically for Java programs, whereas ODBC is
language-independent.
JDBC was developed by JavaSoft, a subsidiary of Sun Microsystems.
Multidimensional DBMSA database management system (DBMS) organized around groups of records that share a
common field value. Multidimensional databases are often generated from relational databases.
Whereas relational databases make it easy to work with individual records, multidimensional
databases are designed for analyzing large groups of records.
The term OLAP (On-Line Analytical Processing) has become almost synonymous with
multidimensional databases, whereas OLTP (On-Line Transaction Processing) generally refers
to relational DBMSs.
27 Department of Computer Science, College of Art and Sciences, University of NIZWA
Advanced database development using Oracle-COMP375Week 1
Schemas Pronounce skee-ma, the structure of a database system, described in a formal language
supported by the database management system (DBMS).
In a relational database, the schema defines the tables, the fields in each table, and the
relationships between fields and tables.
Schemas are generally stored in a data dictionary. Although a schema is defined in text
database language, the term is often used to refer to a graphical depiction of the database
structure.
Big Data Big Data is a phrase used to mean a massive volume of both structured and unstructured data
that is so large it is difficult to process using traditional database and software techniques. In
most enterprise scenarios the volume of data is too big or it moves too fast or it exceeds current
processing capacity.
Big Data has the potential to help companies improve operations and make faster, more
intelligent decisions. This data, when captured, formatted, manipulated, stored, and analyzed
can help a company to gain useful insight to increase revenues, get or retain customers, and
improve operations.
Big Data: Volume or a Technology?While the term may seem to reference the volume of data, that isn't always the case.
The term Big Data, especially when used by vendors, may refer to the technology (which
includes tools and processes) that an organization requires to handle the large amounts of data
and storage facilities. The term is believed to have originated with Web search companies who
needed to query very large distributed aggregations of loosely-structured data.
28 Department of Computer Science, College of Art and Sciences, University of NIZWA
Advanced database development using Oracle-COMP375Week 1
An Example of Big DataAn example of Big Data might be petabytes (1,024 terabytes) or exabytes (1,024 petabytes) of
data consisting of billions to trillions of records of millions of people—all from different sources
(e.g. Web, sales, customer contact center, social media, mobile data and so on). The data is
typically loosely structured data that is often incomplete and inaccessible.
Big Data and Types of Business DatasetsWhen dealing with larger datasets, organizations face difficulties in being able to create,
manipulate, and manage big data. Big Data is particularly a problem in business analytics
because standard tools and procedures are not designed to search and analyze massive
datasets.
Big Data analytics. Big data analytics is the process of collecting, organizing and analyzing large sets of data
(called big data) to discover patterns and other useful information.
Big data analytics can help organizations to better understand the information contained within
the data and will also help identify the data that is most important to the business and future
business decisions. Analysts working with big data basically want the knowledge that comes
from analyzing the data.
Big Data Requires High-Performance AnalyticsTo analyze such a large volume of data, big data analytics is typically performed using
specialized software tools and applications for predictive analytics, data mining, text mining,
forecasting and data optimization.
29 Department of Computer Science, College of Art and Sciences, University of NIZWA
Advanced database development using Oracle-COMP375Week 1
The Challenges of Big Data AnalyticsThe first challenge is in breaking down data to access all data an organization stores in different
places and often in different systems.
A second big data challenge is in creating platforms that can pull in unstructured data as easily
as structured data.
This massive volume of data is typically so large that it's difficult to process using traditional
database and software methods.
How Big Data Analytics is Used TodayAs the technology that helps an organization to break down data silos and analyze data
improves, business can be transformed in all sorts of ways.
According to Datamation, today's advances in analyzing big data allow researchers to decode
human DNA in minutes, predict where terrorists plan to attack, determine which gene is mostly
likely to be responsible for certain diseases and, of course, which ads you are most likely to
respond to on Facebook.
Online data storageOnline data storage refers to the practice of storing electronic data with a third party service
accessed via the Internet. It is an alternative to traditional local storage (such as disk or tape
drives) and portable storage (such as optical media or flash drives). It can also be called
"hosted storage," "Internet storage" or "cloud storage."
In recent years, the number of vendors offering online data storage for both consumers and
businesses has increased dramatically.
Some services store only a particular kind of data, such as photos, music or backup data, while
others will allow users to store any type of file. Most of these vendors offer a small amount of
storage for free with additional storage capacity available for a fee, usually paid on a monthly or
annual basis.
Benefits of Online StorageOne of the biggest benefits of online storage is the ability to access data from anywhere. As the
number of devices the average person uses continues to grow, syncing or transferring data
30 Department of Computer Science, College of Art and Sciences, University of NIZWA
Advanced database development using Oracle-COMP375Week 1
among devices has become more important. Not only does it help transfer data between
devices, online data storage also provides the ability to share files among different users. This
is particularly helpful for business users, although it's also popular with consumers who want to
share photos, videos and similar materials with their friends and family.
Online data storage also offers distinct advantages for backup and disaster recovery situations
because it's located off site.
In a fire, flood, earthquake or similar situation, on-site backups could be damaged, but online
backups won't be affected unless the disaster is very widespread.
However, online data storage does have some potential downsides. Some people worry about
the security of cloud storage services, and some vendors have experienced significant outages
from time to time, leading to concerns about reliability.
Online Storage Enhances Data Protection and AvailabilityBefore the development of the Internet, computer systems were limited to local storage or
portable storage, first in the form of tapes and floppy disks, then CDs, DVDs and USB thumb
drives.
Generally, using on-site storage is faster than using Internet storage, because you don't have to
wait for files to upload or download. However, on-site storage is more susceptible to loss due to
theft, natural disasters or device failure.
By contrast, most online data storage facilities offer enhanced physical security and automated
backup capabilities to ensure that data is not lost. Online data storage also enables easier data
transfer and sharing.
Like local storage, portable storage devices offer fast data transfer along with some data
transfer and sharing capabilities. However, portable storage isn't quite as convenient as online
data storage, particularly if you want to share files with a large number of users.
Portable storage devices are also easy to lose or damage, and they offer limited storage
capacity.
Recently, the term cloud storage has become increasingly common. Although many people use
the terms "cloud storage" and "online storage" interchangeably, technically, cloud storage is a
particular kind of online data storage.
31 Department of Computer Science, College of Art and Sciences, University of NIZWA
Advanced database development using Oracle-COMP375Week 1
In order to be considered cloud storage, a service must be sold on demand, provide elasticity
(the user can have as much or as little as desired) and offer self-service capabilities.
Many individuals and organizations use a mix of on-site and online storage capabilities.
For example, they might use local storage for files they use frequently and online storage for
backup or archive data. Or they might use local storage for personal data and online storage for
files that they wish to share with others.
Online Storage ImplementationIn most cases, setting up online data storage is incredibly easy, but the exact process will
depend on the vendor.
For most consumer online storage services, the process entails nothing more than setting up an
account with a user name and password, although in some cases users will also need to
download and install some software.
Using these online data storage services is also very simple, and many offer intuitive drag-and-
drop interfaces. Again, the exact details vary by vendor.
For business-oriented online storage services, the set up and use procedures can be slightly
more complex because they generally offer more options for configuration, security and
reliability. However, because they want to appeal to as many customers as possible, enterprise
vendors generally make their services as easy to use and maintain as possible.
32 Department of Computer Science, College of Art and Sciences, University of NIZWA
Top Related