MC - Unit 5 - 31-5-2022 - Final

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 28

UNIT V

Mobile Computing
Don Bosco College(Co-Ed),
Yelagiri Hills
Data Management issues in Mobile database
Here are some of the issues which arises in data management of the mobile databases:
• 1. Mobile database design –
Because of the frequent shutdown and for handling the queries, the global name resolution
problem is compounded.
• 2. Security –
The data which is left at the fixed location is more secure as compared to mobile data and
hence mobile data is less secure.
• 3. Data distribution and replication –
Uneven distribution of data among the mobile units and the base stations take place here.
Higher data availability and low cost of remote access is there in data distribution and
replication. The problem of Cache management is compounded by the consistency
constraints.
• 4. Replication issues –
There is increase of costs for updates and signalling due to increase in number of replicas.
Mobile hosts can move anywhere and anytime.
• 5. Division of labour –
There is a certain change in the division of labour in query processing because of certain
characteristics of the mobile environment. There are some of the cases in which the client
must function independently of the server.
• 6. Transaction models –
In mobile environment, the issues of correctness of transactions and fault tolerance are
aggravated. All transactions must satisfy the ACID properties, these are atomic, consistency,
isolation, and durability.
Depending upon the movement of the mobile unit, possibly on multiple data sets and through
several base station, a mobile transaction is executed sequentially.
Data Management issues in Mobile database
• 7. Recovery and fault tolerance –
Fault tolerance is the ability of a system to perform its function correctly
even in the presence of internal faults.
• 8. Location based service –
One of the most challenging tasks which must be undertaken is
determining the location of mobile users, which must be undertaken in
order to enable a location based service.
• Issues that arises in location and services are:
– User Privacy
– Diverse mobile mapping standards
– Interoperability
• 9. Query processing –
Query processing is affected when mobility is considered. There is a need
to return a query response to mobile units that may be in transit.
Client Server Computing with Adaptation

• Two adapters (adaptation software) at a mobile device


• An adapter for standard data format for synchronization at the mobile-device
• Another adapter for the backend database copy, which is in a different data
format for the API at the mobile-device
Adaptation:
Software to get data in one format or data governed by one protocol and convert
it to another format or to data governed by another protocol

· Used for interchange between standard data formats and data formats for
the API
· IBM WebSphere Everyplace Access (WEA) provides adapters for
synchronization objects (for example, XML format synchronization objects) and
the objects of API databases (for example, for the PIM APIs)
Client Server Computing with Adaptation
Database Hoarding Techniques
• Hoarding is the practice of preloading data into the cache in advance of
disconnection in order for the client to continue operating while
unconnected.
• Hoarding is comparable to prefetching, which is used to increase efficiency
in file and database systems.
• Caching, entails saving a copy of selected data or a part of a database from a
connected system with a large database.
• The cached data is hoarded in the mobile device database. Hoarding of the
cached data in the database ensures that even when the device is not
connected to the network, the data required from the database is available
for computing.
• Some examples of hoarding are downloaded ringtones, music etc. which can
be used offline also.
• When the server is connected to the Internet, hoarding occurs. As a result,
the client becomes aggressive and prefetches the data based on the user’s
access pattern. The caching on the other side is not connected to
connectivity, it is an operation that is performed locally on the frequently
used data.
The decision on which files to the cache can be either

(a) assisted by instructions explicitly given by the user or

(b) taken automatically by the system by utilizing implicit information, which is most
often based on the past history of file references.

Disconnected clients work only on the cache, i.e., applications


use only cached replicated files. Below figure shows the cache between an
application and the server. Coda is a transparent extension of the client’s cache
manager. This very general architecture is valid for most of today’s mobile
systems that utilise a cache.
Coda is an advanced networked filesystem
Coda offers two different types of replication: server replication and caching on
clients.
• To provide all the necessary files for disconnected work, Coda offers extensive
mechanisms for pre-fetching of files while still connected, called hoarding.
• If the client is connected to the server with a strong, hoarding transparently pre-
fetches files currently used.
• This automatic data collection is necessary for it is impossible for a standard user to
know all the files currently used.
• While standard programs and application data may be familiar to a user, he or she
typically does not know anything about the numerous small system files needed in
addition (e.g., profiles, shared libraries, drivers, fonts).
• Coda allows read and write access to all files. As soon as the client is disconnected,
applications work on the replicates (emulating)
Little Work
The distributed file system Little Work is, like Coda, an extension of AFS. Little Work
only requires changes to the cache manager
of the client and detects write conflicts during reintegration. Little Work has
no specific tools for reintegration and offers no transaction service.
Little work client states
• Connected: The operation of the client is normal, i.e., no special mechanisms
from Little Work are required. This mode needs a continuous high
bandwidth as available in typical office environments using, e.g., a WLAN.
• Partially connected: If a client has only a lower bandwidth connection,
but still has the possibility to communicate continuously, it is referred to as
partially connected. This client state allows to use
cache consistency protocols similar to the normal state, but with a delayed
write to the server to lower communication cost if the client changes the
file again. This helps to avoid consistency problems, although no high band width
connection is available.
• Fetch only: If the only network available offers connections on demand,
the client goes into the fetch only state. Networks of this type are cellular
networks such as GSM with costs per call. The client uses the replicates in
the cache in an optimistic way, but fetches files via the communication link
if they are not available in the cache.
• Disconnected: Without any network, the client is disconnected. Little
Work now aborts if a cache mis-occurs, otherwise replicates are used.
Caching Invalidation Mechanism

• A cached record at the client device may be


invalidated. This may be due to expiry or
modification of the record at the database
server.
• Cache invalidation mechanisms in mobile
devices are triggered or initiated by the server.
• There are four possible invalidation mechanisms
• Stateless asynchronous,
• stateless synchronous,
• stateful asynchronous and
• stateful synchronous.
Stateless Asynchronous
• A stateless mechanism entails broadcasting of the
invalidation of the cache to all the clients of the
server. The server does not keep track of the
records stored at the device caches. It just
uniformly broadcasts invalidation reports to all
clients.
Stateless Synchronous
• Unlike the asynchronous mechanism, here the
server advertises invalidation information at
periodic intervals as well as whenever the
corresponding data-record at server is invalidated
or modified.
Stateful Asynchronous
• The term 'stateful' indicates that the cache
invalidation reports are sent only to the
affected client devices and not broadcasted to
all.
• Stateful Synchronous
• The server transmits the invalidation
information at periodic intervals to the clients
and whenever the data-record relevant to the
client is invalidated or modified (deleted or
replaced) at the server.
Power Aware Computing

• The main goal of power aware computing is to conserve


energy for routing messages from source to destination.
• When nodes communicate with each other in multi-hop
fashion, Different routing methods will consume more
battery power. Power aware routing metrics has
provided important role in power aware computing.
• Two types of traffic considered under power aware
computing are
- Unicast: Data packets are travels towards single
receiver.
- Broadcast: Data packets are travels towards several
network nodes
Power aware computing
• In unicast, with respect to power consumption
there are five Different Routing metrics defined.
Energy Consumed By one packet.
Time for Network partition.
Variance in power level across mobiles
Cost for one packet
Maximum mobile cost
To save energy, it is important to minimize all
metrics except the time parameter and it has to
maximize.
Power aware computing
• - Power Aware Computing Methods.
- Data caching: Data are cached at mobile device.
- Cache invalidation mechanism: If the data is
invalid due to expiry date or modification, then
server notify to all the client devices about data
invalidation.
- Normalization of records: Before transmitting
the data, the records should be normalized as
example Duplicate records should be suppressed and
not transmitted.
- Protocol optimization
Context aware computing
• Context-aware computing or pervasive computing is a
mobile computing mechanism in which software
applications can discover and take advantage of
contextual information such as user location, time of
day, nearby users, devices, and user activity.
Classification of context
- Identity (Who)
- Activity (What)
- Time (When)
- Location (Where)
Context aware computing
• Application of context

Three basic functions that should be implemented by any context-aware


application.

1. Presentation of information and services.
Presentation of information and services means that either it present context
information to the user, or use context help the user for selections of actions.
Examples: According to the context, it provides the user’s location on the map
and nearby sites of interest.

2. Automatic execution of services.


Examples: A navigation system that provides you direction when the user misses
a turn.

3. Storage (and retrieval) of context information.

Example: A context aware system that provides the data related to meeting as
who was there, when the meeting occurred and where it was located.
Context aware computing
• Context-aware applications
-Context-aware browser (CAB)
-Context-based workplace awareness
-ConaMSN: A context-aware messenger
-InCarMusic: Context-aware music recommendations
-HEP: Context-aware communication service provision
• Security and privacy issues
There are two main security concerns with context-
aware systems.
- Ensuring privacy of location and identity
information.
- Ensuring secure communications.
Transaction Models

• Mobile Transaction Models


• 1. Clustering Model

• 2. Two-Tier Replication
3. HiCoMo Replication Model Architecture

4. PRO-MOTION Replication Model Architecture


Query Processing
Query Processing

Query processing means making a correct as well as efficient


execution strategy by query decomposition and query-
optimization. A relational-algebraic equation defines a set of
operations needed during query processing. Either of the two
equivalent relational-algebraic equations given below can be used.
Efficient processing of queries needs optimization of steps for query processing.
Optimization
can be based on cost (number of micro-operations in processing) by evaluating the
costs of sets
of equivalent expressions. Optimization can also be based on a heuristic approach
consisting of the following steps: perform the selection steps and projection steps as
early as possible and
eliminate duplicate operations.
The query optimizer employs (a) query processing plan generator and (b) query
processing cost
estimator to provide an efficient plan for query processing.
Recovery

You might also like