RAVI SHARMA (KCS-711) Mobile Computing
Data Management
RAVI SHARMA (KCS-711) Mobile Computing
For Mobile Computing
RAVI SHARMA (KCS-711) Mobile Computing
Recalling Data in Mobile Networking
RAVI SHARMA (KCS-711) Mobile Computing
R• A Cellular
V I S H A Planning
RMA (KCS-711) Mobile Computing
– Traffic information
– Spectrum Allocation
– HLR/VLR/EIR
R A V–I Command
S H A R M and
A ( Control
K C S - 7of1User
1 ) devices Mobile Computing
– Telephonic / Internet / Supplementary Services
• WLAN
RAVI SHARMA (KCS-711) Mobile Computing
– Topology / Mobility
– Routing
– Addressing
R A V–I Information
S H A R M Amanagement
( K C S - 7 1 at
1 )servers Mobile Computing
• Information
• Applications
2
Data Management Issues in Mobile Computing
RAVI SHARMA (KCS-711) Mobile Computing
• Data Availability
RAVI SHARMA (KCS-711) Mobile Computing
– Weak connectivity of mobile clients creates a new challenge for data
management:
• How to ensure high data availability in mobile computing environments where
frequent disconnections may occur because the clients and server may be
weakly connected?
RAVI SHARMA (KCS-711) Mobile Computing
• To allow access to critical data even during periods of disconnections, the
distributed file systems (e.g. CODA) uses data caching to improve availability at
the expense of transparency.
R• A Resource
V I S H A R Limitations
MA (KCS-711) Mobile Computing
– A typical node in mobile computing environment has limited power and
processing resources.
– This characteristic leads to another challenge for data management in
R A V I mobile
S H A R computing
M A ( K C Senvironments,
-711) specifically, M o b to
how i l eminimize
C o m presource
uting
consumption (e.g., energy and bandwidth) for data management while
ensuring a desirable level of data consistency. 3
Data Management Issues in Mobile Computing
RAVI SHARMA (KCS-711) Mobile Computing
• Asymmetric Communication
RAVI SHARMA (KCS-711) Mobile Computing
– In architecture-based wireless networks, the downstream (base station to
mobile nodes) communication link capacity is usually much higher than the
upstream (mobile to base station) capacity.
– To make matters worse, mobile nodes may have to compete with several
R A V I other
S H A mobile
R M A nodes
( K C Sto- 7get
1 1access
) to an upstreamMchannel
obile Computing
• Context (Location and Time) dependency of Data
– A mobile user may query various databases periodically to retrieve both
R A V I location
SHARM A ( K C Sand
dependent - 7 time-dependent
11) Mobile Computing
information.
– Caching and prefetching can be an effective technique to reduce the impact
of low-bandwidth and intermittent wireless links in a mobile environment.
– Another problem:
R A V I S• H Decision
A R M toA cache
( K CorSreplace
- 7 1 1a data
) item now also depends
M oonbthe
i l context
e Computing
4
Data Caching
RAVI SHARMA (KCS-711) Mobile Computing
• A cache is a small, fast memory for holding frequently used data.
RAVI SHARMA (KCS-711) Mobile Computing
• Cache management techniques try to predict which data items are
most likely to be used in the future and:
– Either copy them to a memory unit closer to the processor when they are
accessed for the first time (i.e., on a cache miss) or
– prefetch them well in advance so that they M
RAVI SHARMA (KCS-711)
areo bavailable in the cache
ile Computing
memory when they are needed.
• In Mobile Computing where access latency is high and/or
R A bandwidth
V I S H A R MisA not
( K Csufficient,
S - 7 1 1 ) data prefetching
M o in
b i lconjunction
e C o m p u t with
ing
data caching can be used to hide communication latency and to
cope with limited bandwidth.
R• A Ensuring
VI SHARM Data
A ( KConsistency
CS-711) among memory
M o b i lhierarchy
e C o m p uist i nan
g
important issue with caching in mobile computing databases.
5
Cache Consistency
RAVI SHARMA (KCS-711) Mobile Computing
R• A There
V I S Hare
A R three
M A ( basic
K C S - strategies
711) for maintaining
M o bcache
i l e Cconsistency:
omputing
– In a TTL based caching strategy, every cached data item is assigned a TTL
value, which can be estimated based on the data item’s update history.
– In a Polling-every-time approach, every time a M
RAVI SHARMA (KCS-711)
data item is requested, the
obile Computing
clients need to poll the server to verify if the cached data item has changed.
– In an Invalidation-based strategy, the server initiates the cache consistency
R A V I verification.
SHARMA (KCS-711) Mobile Computing
• Invalidation-based cache strategies are further classified into two approaches:
– Stateless: The server does not maintain information about the cache contents of the
clients; i.e., the server does not know what data are cached or how long they have
RAVI SHARMA (KCS-711) Mobile Computing
been cached by a particular client.
– Stateful : The server keeps track of the cache contents of its clients
6
Data Replication
RAVI SHARMA (KCS-711) Mobile Computing
• Data Replication is the process of storing data in more than one
RAVI SHARMA (KCS-711) Mobile Computing
site or node. It is useful in improving the availability of data in a
mobile computing system.
– It is about simply copying data from a database from one server to another
server so that all the users can share the same data without any
R A V I inconsistency.
SHARMA (KCS-711) Mobile Computing
• Types of Data Replication:
– Transactional Replication – In Transactional replication users receive full
R A V I initial
S H A copies
R M A of( the
K C Sdatabase
- 7 1 1 ) and then receive updates
M o b ias
l edata
C ochanges.
mputing
– Snapshot Replication – Snapshot replication distributes data exactly as it
appears at a specific moment in time does not monitor for updates to the
data. The entire snapshot is generated and sent to Users.
RAVI SHARMA (KCS-711) Mobile Computing
– Merge Replication – Data from two or more databases is combined into a
single database. 7
Data Replication
RAVI SHARMA (KCS-711) Mobile Computing
R• A Schemes
V I S H A Rof
M Data
A ( K Replication:
CS-711) Mobile Computing
– Full Replication – In this extreme situation, the replication of the whole
database is performed at every site in a mobile computing system.
RAVI SHARMA (KCS-711) Mobile Computing
– No Replication – This involves having no replication i.e. each fragment is
stored at only one site.
R A V–I Partial
S H A RReplication
M A ( K C S– -In7 this
1 1 ) type of replication M o b i l esome
scheme C o fragments
m p u t i n of
g
the database may be replicated whereas others may not.
• The number of copies of the fragment may range from one to the total number of sites in
R A V I S H the
A Rmobile
M A computing
( K C S -system.
711) Mobile Computing
• The description of replication of fragments is sometimes called the replication schema.
8
CODA File-System
RAVI SHARMA (KCS-711) Mobile Computing
• Coda is a distributed file-system with its origin in Andrew File System (AFS-2). It has
RAVI SHARMA (KCS-711) Mobile Computing
many features that are very desirable for network file-systems.
• CODA was introduced in 1987 and since maintained as a research project at Carnegie
Mellon University.
• Features of CODA file system:
RAVI SHARMA (KCS-711) Mobile Computing
– Disconnected operation for mobile computing.
– Is freely available under the GNU General Public License (GPL)
– High performance through client-side persistent caching
R A V–I Server
S H Areplication
RMA (KCS-711) Mobile Computing
– Security model for authentication, encryption and access control
– Continued operation during partial network failures in server network
– Network bandwidth adaptation
RAVI SHARMA (KCS-711) Mobile Computing
– Good scalability
– Well defined semantics of sharing, even in the presence of network failure
9
CODA File-System: Working
RAVI SHARMA (KCS-711) Mobile Computing
• The CODA file system provides support for disconnected operation, i.e. mode of
RAVI SHARMA (KCS-711) Mobile Computing
operation that enables a client to continue accessing data during temporary failures
of shared data.
• The CODA file system uses whole-file caching at clients to provide faster access at
R A clients.
VI SHARMA (KCS-711) Mobile Computing
• During normal operation, callbacks from server are used to invalidate multiple
cached copies when an update is performed.
R A V–I Whole-caching
S H A R M Aoffers
( Ka C S - 7failure
simpler 1 1 )model and a cache miss can
Moccur
o b only
i l eon Cfileoopen.
mputing
• The data in the cache is used by clients to service requests during disconnections.
• During disconnected operation an optimistic replica control algorithm provides
R A higher
V I S Havailability
A R M A at ( Kthe
C Scost
- 7 1of1potential
) M in
inconsistency o bdata
i l eandC conflicts
o m p u due
t i n to
g
simultaneous and asynchronous updates to data.
10