Ut 1
Ut 1
Many applications require the ability to download information from an information repository and
operate on this information even when out of range or disconnected. An example of this is your
contacts and calendar on the phone. In this scenario, a user would require access to update
information from files in the home directories. The architecture of Mobile Database System (MDS)
is built on Personal Communication System (PCS) and Global System for Mobile communication
(GSM).
This architecture supports mobile users to initiate transactions from anywhere at any time with a
guarantee of consistency preserving execution. Recovery of data from the transaction, system and
media failures is taken care of by the MDS.
An MDS consists
1. Fixed Hosts (FHs)
2. Mobile Hosts (MHs)
3. Mobile Support Stations (MSSs)
4. Base Station Controller (BSC)
5. Mobile Switching Centre (MSC).
It provides all the features of relational model with minimum requirement of memory. On the
mobile device, the data can be managed and analyzed. SQL queries can be effectively executed.
Mobile databases can be customizes as per requirement of mobile applications.
1. Business
2. Information related to business like current trends, customers, competitors
3. Salesperson can update the customer transaction data from anywhere
4. Public sector
5. Health sectors
1. Query Parsing
Breaking down the Query: The system breaks down your SQL query into smaller parts (tokens) to
understand it.
Checking for Errors: It checks for syntax errors (like missing commas or keywords) and ensures
everything makes sense (like table and column names existing).
2. Query Optimization
Creating a Plan: The system creates a plan to execute your query efficiently. Think of it as creating a
recipe to get the best results with the least effort.
Improving the Plan: It looks for ways to make this plan better, such as rearranging steps to process
data faster or using indexes to find data quicker.
3. Query Execution
Executing the Plan: The system follows the optimized plan to actually run the query. It retrieves and
processes the data step by step as outlined in the plan.
Getting Results: The final data is collected and prepared as the query result.
4. Presenting the Results
Formatting: The results are formatted in a way you can easily understand (like a table).
2. In case of large database, the most important cost is the cost to access data from disk because the disc
access is slow as compare to in-memory operations.
3. To measure the query cost, it use the number of block transfers from disk and the count of disks seeks to
estimate the cost of a query - evaluation plan. Consider the disk subsystem takes an average of tT seconds
to transfer a block of data and the average block access time od tS seconds, then operations b blocks and
performs S seeks would take:
Time = b*tT+S*tS seconds.
Where, tT - Time to transfer one block. tS - Time for one seek
Cost for b blocks transfers plus S seeks. Here ignore CPU costs for simplicity. Real systems do take CPU cost
into account. We do not include cost to writing output to disk in our cost formulae.
4. In our cost estimation, the cost of writing the final result of an operation back to disk is not included. As per
requirements it can be added separately. In our case cost of all the algorithms is depending upon the size of
the buffer in main memory.
In best case the whole data is read into buffer and there is no need of access of the disc again. In worst case
it is assumed that the disc can store only few blocks of data approximately one block per relation. The worst
case is generally assumes while calculating the cost estimates.
Role-based access control (RBAC) emerged rapidly in the 1990s as a proven technology for managing
and enforcing security in large-scale enterprise-wide systems.
Its basic notion is that privileges and other permissions are associated with organizational roles,
rather than individual users. Individual users are then assigned to appropriate roles. Roles can be
created using the CREATE ROLE and DESTROY ROLE commands. The GRANT and REVOKE commands.
It is a method of regulating access to computer or network resources based on the roles of individual
users within an organization. Roles are defined according to job functions, and users are assigned
roles that grant them specific permissions and access rights.
Advanced database models are designed to handle complex data structures and relationships beyond what traditional
relational database models (like SQL) can efficiently manage. These models address the limitations of relational
databases, especially when dealing with large-scale, complex, or non-tabular data. Here are some key types of
advanced database models:
1. Object-Oriented Database Model (OODBMS)
Concept: Integrates object-oriented programming concepts with database technology. Data is represented as objects,
similar to how data is managed in object-oriented programming languages like Java, Python, or C++.
Features:
Encapsulation: Objects encapsulate data and methods that operate on data.
Inheritance: Objects can inherit properties and methods from other objects.
Polymorphism: Different objects can be accessed through the same interface.
2. NoSQL Database Models
Concept: A broad category of databases designed to handle unstructured, semi-structured, or large-scale data, which
doesn’t fit well into traditional relational databases. They are often used in Big Data and real-time web applications.
Types:
Document-Oriented Databases: Store data as documents (e.g., JSON, BSON). Example: MongoDB.
Key-Value Stores: Data is stored as key-value pairs. Example: Redis, DynamoDB.
Column-Family Stores: Data is stored in columns rather than rows, allowing for efficient querying of large datasets.
Example: Apache Cassandra.
Graph Databases: Focuses on relationships between data, using nodes, edges, and properties. Example: Neo4j.
3. Hierarchical Database Model
Concept: Organizes data in a tree-like structure, where each record has a single parent and possibly multiple children.
This model is efficient for representing data with a clear hierarchical relationship.
Features:
Parent-Child Relationships: Data is structured in a hierarchy, where each parent can have multiple children, but each
child has only one parent.
Navigational Access: Data is accessed by navigating the tree from parent to child.
Use Cases: Organizational structures, file systems, XML data representation.
4. Network Database Model
Concept: Extends the hierarchical model by allowing more complex relationships between entities, where a child can
have multiple parents (many-to-many relationships).
Features:
Many-to-Many Relationships: More flexible than hierarchical models, allowing more complex data relationships.
Data Access: Uses pointers or links to connect records, enabling navigation through the network.
Use Cases: Telecommunications, airline reservation systems, complex data with interrelated entities.
Distributed database is the type of database management system in which number of databases are stored at
various locations and interconnected through the computer networks. This can be necessary when
different users from all over the world need to access a specific database. For a user, it should be
handled in such a way that it seems like a single database.
Means that, "Distributed database is a collection of various interconnected databases which are
physically spread at various locations and communicate via a computer network. In distributed
database system each site may have its own memory and its own Database Server
Advantages of Distributed Database
1. Modular Development: If need to expand the same system at new locations, it can use distributed
databases, it simply requires to add new computers and local data to the new site and have to
connect them to the communication network. It does not interrupt the current functionality.
3. Improve performance: In distributed database system, large database is distributed among the
multiple sites. Due to this distribution a small database is exist at each site. The small database is easy
to handle which increases the performance.
4. Increase availability: In distributed database system data is scattered at various nodes. Therefore if
one node fails then data can be easily available from another node. It means that it have higher
availability.
5. Faster response: In this system most of the data is local. Due to this user request can be answered
quickly.
1. Cost: - The requirement of additional hardware to establish a network between sites causes
increment of cost. There are ongoing communication costs incurred with the use of this network.
There are also additional manpower costs to manage and maintain the local DBMSs and the
underlying network.
2. Security: - In distributed database system database has access from all the sites therefore security
becomes an issue for the distributed database system.