UNIT-5
Distributed Multimedia & Database System
Parallel DBMS
• A DBMS running across multiple processors and disks designed to
execute operations in parallel whenever possible, to improve
performance.
• Based on premise that single processor systems can no longer meet
requirements for cost-effective scalability, reliability, and performance.
• Parallel DBMSs link multiple, smaller machines to achieve same
throughput as single, larger machine with greater scalability and
reliability.
PARALLEL DBMSs
WHY DO WE NEED THEM?
• More and More Data!
We have databases that hold a high amount of
data, in the order of 1012 bytes:
10,000,000,000,000 bytes!
• Faster and Faster Access!
We have data applications that need to process
data at very high speeds:
10,000s transactions per second!
PARALLEL DBMSs
BENEFITS OF A PARALLEL DBMS
• Improves Response Time.
INTERQUERY PARALLELISM
It is possible to process a number of transactions in
parallel with each other.
• Improves Throughput.
INTRAQUERY PARALLELISM
It is possible to process ‘sub-tasks’ of a transaction in
parallel with each other.
PARALLEL DBMSs
HOW TO MEASURE THE BENEFITS
• Speed-Up.
As you multiply resources by a certain factor, the time taken
to execute a transaction should be reduced by the same factor:
10 seconds to scan a DB of 10,000 records using 1 CPU
1 second to scan a DB of 10,000 records using 10 CPUs
• Scale-up.
As you multiply resources the size of a task that can be executed
in a given time should be increased by the same factor.
1 second to scan a DB of 1,000 records using 1 CPU
1 second to scan a DB of 10,000 records using 10 CPUs
Parallel DBMS
PARALLEL DBMSs
• Main architectures for parallel DBMSs are:
– a: Shared memory.
– b: Shared disk.
– c: Shared nothing.
PARALLEL vs. DISTRIBUTED TECHNOLOGY
Parallel system architectures:
• Shared Memory Architecture
Multiple processors that share both secondary disk storage and primary
memory
Tightly coupled architecture
Shared everything architecture
• Shared Disk Architecture
Multiple processors that share secondary disk storage but have their own
primary memory
Loosely coupled architecture
• Shared Nothing Architecture
Multiple processors that have their own secondary disk storage and
primary memory
Processes communicate over a high speed interconnection network
Symmetry or homogeneity of nodes
• Distributed Technology (Shared Architecture)
Heterogeneity of hardware and operating system at every node
Shared Memory – Parallel Database Architecture
CPU MEMORY
CPU
CPU
CPU
CPU
CPU
Shared Disk – Parallel Database Architecture
M CPU
M CPU
M CPU
M CPU
M CPU
M CPU
Shared Nothing – Parallel Database Architecture
M CPU
CPU M
M CPU
CPU M
M CPU
MAINFRAME DATABASE SYSTEM
TERMINALS
SPECIALISED NETWORK CONNECTION
MAINFRAME COMPUTER
DUMB
DUMB
DUMB PRESENTATION LOGIC
A PPLICATION LOGIC
DATA LOGIC
CLIENT/SERVER DATABASE SYSTEM
CLIENT/SERVER DBMS
CLIENT PROCESS
Þ Manages user interface
Þ Accepts user data
Þ Processes application/business logic
Þ Generates database requests (SQL)
Þ Transmits database requests to server
Þ Receives results from server
Þ Formats results according to application logic
Þ Present results to the user
CLIENT/SERVER DBMS
SERVER PROCESS
Þ Accepts database requests
Þ Processes database requests
Performs integrity checks
Handles concurrent access
Optimises queries
Performs security checks
Enacts recovery routines
Þ Transmits result of database request to client
CLIENT CLIENT/SERVER
#1
DBMS ARCHITECTURE
SERVER
CLIENT
#2
D/BASE
CLIENT
#3
DATA LOGIC
PRESENTATION LOGIC
BUSINESS LOGIC Data Request
(FAT CLIENT) Data Response
CLIENT CLIENT/SERVER
#1
DBMS ARCHITECTURE
SERVER
CLIENT
#2
D/BASE
PL/SQL
CLIENT
#3
BUSINESS LOGIC
DATA LOGIC
PRESENTATION LOGIC
(THIN CLIENT) Data Request
Data Response
DISTRIBUTED PROCESSING ARCHITECTURE
CLIENT CLIENT
CLIENT CLIENT
WIDE AREA NETWORK
LAN
LAN
CLIENT CLIENT
CLIENT CLIENT
Stratford Leyton
CLIENT CLIENT
CLIENT CLIENT
DBMS
LAN LAN
CLIENT CLIENT
CLIENT CLIENT
Barking Leytonstone
DISTRIBUTED DATABASE SYSTEM
DISTRIBUTED DATABASE
Distributed Computing System
Consists of a number of processing elements
interconnected by a computer network that cooperate in
processing certain tasks
Distributed Database
Collection of logically interrelated databases over a
computer network
Distributed DBMS
Software system that manages a distributed DB
DISTRIBUTED DATABASES
A distributed database system is a collection of logically
related databases that co-operate in a transparent manner.
Transparent implies that each user within the system may
access all of the data within all of the databases as if they were
a single database
There should be ‘location independence’ i.e.- as the user is
unaware of where the data is located it is possible to move the
data from one physical location to another without affecting
the user.
DISTRIBUTED DATABASES
DISTRIBUTED DATABASE ARCHITECTURE
WIDE AREA NETWORK
CLIENT CLIENT CLIENT CLIENT
DBMS
DBMS
LAN
CLIENT CLIENT CLIENT CLIENT
Stratford Leyton
CLIENT
CLIENT CLIENT CLIENT CLIENT
DBMS
DBMS
LAN
CLIENT CLIENT CLIENT CLIENT
Barking Leytonstone
M:N CLIENT/SERVER DBMS ARCHITECTURE
SERVER #1
CLIENT
#1
D/BASE
CLIENT
#2
SERVER #2
D/BASE
CLIENT
#3
NOT TRANSPARENT!
COMPONENTS OF A DDBMS
Site 1
DDBMS
DC LDBMS
GSC
Computer DB
Network
GSC
DDBMS
LDBMS = Local DBMS
DC DC = Data Communications
GSC = Global Systems Catalog
Site 2 DDBMS = Distributed DBMS
ADVANTAGE OF DISTRIBUTED DATABASES
Management of distributed data with different levels of transparency
(This refers to the physical placement of data (files, relations, etc.)
which is not known to the user (distribution transparency).
Distribution or network transparency- Users do not have to worry
about operational details of the network.
Location transparency (refers to freedom of issuing command
from any location without affecting its working).
Naming transparency (allows access to any names object
(files, relations, etc.) from any location).
Replication transparency- allows to store copies of a data at
multiple sites. This is done to minimize access time to the
required data.
User is unaware of the existence of multiple copies
Fragmentation transparency-Allows to fragment a relation
horizontally (create a subset of tuples of a relation) or vertically
(create a subset of columns of a relation).
Horizontal fragmentation
Vertical fragmentation
ADVANTAGE OF DISTRIBUTED DATABASES
Increased Reliability and Availability
Reliability – Probability that a system is running at a given time.
Availability – Probability that a system is continuously available
during a time interval .When the data and the DBMS software are
distributed over several sites ,one site may fail other sites continue
to operate. Only the data and the software that exist at the failed
site cannot be accessed. This improves both reliability and
availability.
Improved Performance
Data Localization – A Distributed database management system
fragments the database by keeping the data closer to where it is
needed. Data Localization reduces the contention for CPU and I/O
services and simultaneously reduces access delays involved in
wide area networks.
Easier Expansion- In a Distributed environment , expansion of the
system in terms of adding more data, increasing the database sizes or
adding more processors is much more easier.
DISADVANTAGES OF DDBMSs
1. Architectural complexity.
2. Cost.
3. Security.
4. Integrity control more difficult.
5. Lack of standards.
6. Lack of experience.
7. Database design more complex.
FUNCTIONS OF DDBs
Keeping track of data
Ability to keep track of data distribution
Distributed query processing
Ability to access remote sites and transmit queries
Distributed transaction management
Ability to devise execution strategies for queries and transactions that
access data from more than one site
Synchronize access to distributed data
Maintain integrity of the overall database
Replicated data management
Ability to decide which copy of the replicated data item to access
Maintain the consistency of copies of a replicated data item
Distributed database recovery
Ability to recover from individual site crashes and failure of
communication links
ADDITIONAL FUNCTIONS OF DDBs
Security
Proper management of security of the data
Proper authorization/access privileges of users
Distributed directory (catalog) management
Directory contains information about data in the database
Directory may be global for the entire DDB or local for each site
DDBMS vs. CENTRALIZED SYSTEM
Multiple computers called sites and nodes
Sites connected by some type of communication network
to transmit data and commands
Sites located in physical proximity connected via LANs
Sites geographically distributed over large distances
connected via WANs
Distributed Database Design
DATA FRAGMENTATION, REPLICATION, AND ALLOCATION
TECHNIQUES FOR DISTRIBUTED DATABASE DESIGN
• Fragmentation
– Relation may be divided into a number of sub-relations,
which are then distributed.
• Allocation
– Each fragment is stored at site with "optimal"
distribution.
• Replication
– Copy of fragment may be maintained at several sites.
WHY FRAGMENT DATA?
Þ Usage
Applications are usually interested in ‘views’ not whole relations.
Þ Efficiency
It’s more efficient if data is close to where it is frequently used.
Þ Parallelism
It is possible to run several ‘sub-queries’ in random.
Þ Security
If data not required by local applications, is not stored at the local
site.
DATA FRAGMENTATION
Breaking up the database into logical units called
fragments and assigned for storage at various sites.
Types of Fragmentation
Horizontal Fragmentation
Vertical Fragmentation
Mixed (Hybrid) Fragmentation
Fragmentation Schema
A set of fragments that include all attributes and tuples
in the database
The whole database can be reconstructed from the
fragments
Horizontal fragmentation:
It is a horizontal subset of a relation which contain those tuples which
satisfy selection conditions.
Consider the Employee relation with selection condition (DNO = 5). All
tuples satisfy this condition will create a subset which will be a horizontal
fragment of Employee relation.
Horizontal fragmentation divides a relation horizontally by grouping rows
to create subsets of tuples where each subset has a certain logical meaning.
Horizontal fragment is a subset of tuples in that relation
Tuples are specified by a condition on one or more attributes of the
relation
Divides a relation horizontally by grouping rows to create subset of
tuples
Derived Horizontal Fragmentation – partitioning a primary relation into
secondary relations related to primary through a foreign key
DISTRIBUTED DATABASES
HORIZONTAL DATA FRAGMENTATION
ACCOUNT CUSTOMER BRANCH BALANCE
200 JONES STRATFORD 1000.00
324 GRAY BARKING 200.00
345 SMITH STRATFORD 23.17
350 GREEN BARKING 340.14
400 ONO BARKING 500.00
456 KHAN STRATFORD 333.00
Horizontal Fragmentation: Consists of a Restriction on a Relation.
e.g., ( branch = ‘Stratford’ Account)
DISTRIBUTED DATABASES
HORIZONTAL DATA FRAGMENTATION
STRATFORD BRANCH
ACCT NO. CUSTOMER BRANCH BALANCE
200 JONES STRATFORD 1000.00
345 SMITH STRATFORD 23.17
456 KHAN STRATFORD 333.00
BARKING BRANCH
ACCT NO. CUSTOMER BRANCH BALANCE
324 GRAY BARKING 200.00
350 GREEN BARKING 340.14
400 ONO BARKING 500.00
Vertical Fragmentation
It is a subset of a relation which is created by a subset of columns. Thus a
vertical fragment of a relation will contain values of selected columns.
There is no selection condition used in vertical fragmentation.
Consider the Employee relation. A vertical fragment can be created by
keeping the values of Name, Bdate, Sex, and Address.
Because there is no condition for creating a vertical fragment, each fragment
must include the primary key attribute of the parent relation Employee. In
this way all vertical fragments of a relation are connected.
A vertical fragment keeps only certain attributes of that relation
Divides a relation vertically by columns
It is necessary to include primary key or some candidate key attribute
The full relation can be reconstructed from the fragments
DISTRIBUTED DATABASES
VERTICAL DATA FRAGMENTATION
S# NAME SITE PHONE NO LOGIN PASSWORD
200 JONES STRATFORD 0208-500-9000 JON200T XXYY22
324 GRAY BARKING 0208-545-7528 GRA324S ZZEE56
456 KHAN STRATFORD 0208-500-5821 KHA456T KJTR78
Vertical Fragmentation: Consists of a Projection on a Relation.
e.g., ( S#, NAME, SITE, PHONE NO Student)
DISTRIBUTED DATABASES
VERTICAL DATA FRAGMENTATION
STUDENT ADMINISTRATION
S# NAME SITE PHONE NO.
200 JONES STRATFORD 0208-500-9000
324 GRAY BARKING 0208-545-7528
456 KHAN STRATFORD 0208-500-5821
NETWORK ADMINISTRATION
S# LOGIN-ID PASSWORD
200 JON200T XXYY22
324 GRA324S ZZEE56
456 KHA456T KJTR78
MIXED FRAGMENTATION
Intermixing the two types of fragmentation
Original relation can be reconstructed by applying UNION
and OUTER JOIN operations in the appropriate order
DATA ALLOCATION
Each fragment or each copy of the fragment must be assigned to a
particular site
Also called Data Distribution
Choice of sites and degree of replication depend on
Performance of the system
Availability goals of the system
Types of transactions
Frequencies of transactions submitted at any site
Allocation Schema
Describes the allocation of fragments to sites of the DDBs
DATA REPLICATION
Process of storing data in more than one site
Replication Schema
Description of the replication of fragments
Fully replicated distributed database
Replicating the whole database at every site
Improves availability
Improves performance of retrieval
Can slow down update operations drastically
Expensive concurrency control and recovery techniques
No replication distributed database
Each fragment is stored exactly at one site
All fragments must be disjoint except primary keys
Also called Non-redundant allocation
Partial Replication
Some fragments may be replicated while others may not
Number of copies range from one to total number of sites in a
distributed system
TYPES OF DISTRIBUTED DATABASE
SYSTEM
Homogeneous: All sites of the Window
database system have identical Site 5 Unix
Oracle Site 1
setup, i.e., same database system Oracle
software. The underlying Window
Site 4 Communications
operating system may be neteork
different. For example, all sites
run Oracle or DB2, or Sybase or Oracle
some other database system. The Site 3 Site 2
Linux Oracle Linux Oracle
underlying operating systems can
be a mixture of Linux, Window,
Unix, etc. The clients thus have
to use identical client software.
TYPES OF DISTRIBUTED DATABASE SYSTEM
Heterogeneous:: Each site may Object Unix Relational
Oriented Site 5 Unix
run different database system Site 1
Hierarchical
but the data access is Window
Site 4 Communications
managed through a single network
conceptual schema. This
Network
implies that the degree of Object DBMS
Oriented Relational
local autonomy is minimum. Site 3 Site 2
Linux Linux
Each site must adhere to a
centralized access policy.
There may be a global
schema.
DISTRIBUTED DATABASES
DATE’S TWELVE RULES FOR A DDBMS
A distributed system looks exactly like
a non-distributed system to the user!
1. Local autonomy
2. No reliance on a central site
3. Continuous operation
4. Location independence
5. Fragmentation independence
6. Replication independence
7. Distributed query independence
8. Distributed transaction processing
9. Hardware independence
10. Operating system independence
11. Network independence
12. Database independence
What is Multimedia?
• Multimedia means that computer information can be
represented through audio, video, and animation in
addition to traditional media (i.e., text, graphics/drawings,
images).
OR
• Multimedia is the field concerned with the computer
controlled integration of text, graphics, drawings, still
and moving images (Video), animation, audio, and any
other media where every type of information can be
represented, stored, transmitted and processed digitally.
Characteristics of a Multimedia System
A Multimedia system has four basic characteristics:
• Multimedia systems must be computer controlled.
• Multimedia systems are integrated.
• The information they handle must be represented
digitally.
• The interface to the final presentation of media is usually
interactive.
Quality of Service(QOS)
Management
Challenges for Multimedia Systems
• Distributed Networks
• Temporal relationship between data – Render different
data at same time — continuously.
• – Sequencing within the media playing frames in
correct order/time frame in video
• – Synchronisation — inter-media scheduling E.g. Video
and Audio — Lip synchronisation is clearly important
for humans to watch playback of video and audio and even
animation and audio
Desirable Features for a Multimedia System
• Given the above challenges the following feature a desirable (if not a
prerequisite) for a Multimedia System:
• Very High Processing Power — needed to deal with large data
processing and real time delivery of media.
• Multimedia Capable File System —needed to deliver real-time
media — e.g. Video/Audio Streaming.
• Special Hardware/Software needed – e.g. RAID ( Redundant Array
of Independent Disks) technology.
• Data Representations — File Formats that support multimedia
should be easy to handle yet allow for compression/decompression
in real-time
Desirable Features for a Multimedia System
• Efficient and High I/O —input and output to the file subsystem
needs to be efficient and fast. Needs to allow for real-time
recording as well as playback of data. e.g. Direct to Disk recording
systems.
• Special Operating System —to allow access to file system and
process data efficiently and quickly. Needs to support direct
transfers to disk, real-time scheduling, fast interrupt processing, I/O
streaming etc.
• Storage and Memory — large storage units (of the order of
hundreds of Tb if not more) and large memory (several Gb or more).
Large Caches also required and high speed buses for efficient
management.
• Network Support — Client-server systems common as distributed
systems common.
• Software Tools — user friendly tools needed to handle media,
design and develop applications, deliver media.
Components of a Multimedia System
• Now let us consider the Components (Hardware and Software)
required for a multimedia system:
• Capture devices — Video Camera, Video Recorder, Audio
Microphone, Keyboards, mice, graphics tablets, 3D input devices,
tactile sensors, VR devices. Digitising Hardware Storage Devices —
Hard disks, CD-ROMs, DVD-ROM, etc
• Communication Networks — Local Networks, Intranets, Internet,
Multimedia or other special high speed networks.
• Computer Systems — Multimedia Desktop machines,
Workstations, MPEG/VIDEO/DSP (Digital Signal Processor)
Hardware
• Display Devices — CD-quality speakers, HDTV,SVGA, Hi-Res
monitors, Colour printers etc.
Multimedia Applications
Examples of Multimedia Applications include:
• World Wide Web
• Multimedia Authoring, e.g. Adobe/Macromedia Director
• Hypermedia courseware ( includes graphics, audio, video,
plain text and hyperlinks)
• Video-on-demand
• Interactive TV
• Computer Games
• Virtual reality
• Digital video editing and production systems
• Multimedia Database systems
Internet multimedia: streaming approach
browser GETs metafile (Metafiles contain the addresses of RealAudio (.ra),
RealVideo (.rm) and RealFlash (.swf) files. These addresses are in the form of URLs. The URLs used
to establish a direct connection between a RealPlayer and your RealServer begin with "pnm://"
(RealNetworks Metafile).
browser launches player, passing metafile
player contacts server
server streams audio/video to player