Presentation on theme: "Query Processing in Mobile Databases"— Presentation transcript:
1 Query Processing in Mobile Databases Sowjanya Alaparthi
2 IntroductionWith the cutting edge technology advancements in wireless and mobile computers, the query processing in a mobile environment has become the major research area.A mobile database is the one which can be connected to a mobile computing device over a mobile network. The mobile client and the back-end database server communicate over wireless connections. Thus enabling the access to data at anytime and from anyplaceThe aim of this paper is to describe the basic query processing mechanism in any database and show how data is synchronized between the mobile and backend databases
4 Sybase SQL AnywhereSQL Anywhere offers a wide range of options for exchanging data with existing enterprise systems and mobile devices.MobiLink offers session-based, bi-directional synchronization. It is designed for exchanging data between a consolidated database and remote SQL Anywhere databases.MobiLink file transfer functionality lets you transfer files to remote applications on the same connection you use to synchronize data, which is useful when populating new remote databases or upgrading software
6 Synchronization Using Mobilink The mobilink clients communicate with the consolidated database over a network through mobilink server.The consolidated database can be Oracle, SQL Server, DB2 and adaptive server enterprise.Communication can occur by using either TCP/IP or HTTP or HTTPS.A mobilink server acts as an interface between the mobilink clients and the consolidated database.clients initiate the synchronization process and after the connection is established Mobilink client can upload the changes to synchronizing server.Synchronization logic is written in SQL, JAVA or .NET for upload and download purposes.
7 SQL Server 2005 Compact Edition It is a mobile relational database produced by Microsoft for applications that run on mobile devices and desktops.The latest release is the SQL Server 2005 Compact Edition (version 3.5) supports Exchange of data between Microsoft SQL server 2005 Compact edition (SQLCE) and SQL server in two ways.1. Remote data access and2. Merge replication
8 Merge ReplicationMerge replication in SQLCE is ideally suited to remote clients and devices as it enables autonomous data updates in the client application and on the server.In this the data is distributed among publisher (one who posts) and subscriber (one who receives). In this process publisher and subscriber can make any changes to the data, irrespective of the connection statusMerging of updated data takes place when publisher and subscriber connect. The data is published inside a folder called snapshot folder, which now is the central location from which the mobile clients access the data. The publisher, will keep the data updated at scheduled intervals or when a request is made.
10 Four components of Replication SQL server mobile database engine is used to keep track of updates, insertions, deletions made to records.SQL server mobile client agent is a main replication component that implements replication object interfaceSQL server mobile server agent is used for communication between publisher and subscriber. Whenever a client agent makes a HTTP request, SQL server mobile client agent residing in IIS takes care of the request.SQL server mobile replication provider and reconciler, when we initiate SQL server reconciler, Merge agent comes in contact with subscription.
11 Remote Data Access (RDA) We perform Pull/Push on the back end database.In this method an application accesses the data from remote SQL server database and stores it in local SQL server mobile database and it is called pulling.Any changes made to Local SQL server database are updated by application, back to the SQL server database later, and this is called pushing.
13 Components of RDAThe SQL Server Mobile Database Engine manages the SQL Server data on the device for each record.The SQL Server Mobile Client Agent is the component responsible for implementing the RDA object interface. Applications call this interface to programmatically control RDA.SQL Server Mobile Server Agent resides on computer running IIS and handles the HTTP requests made by the SQL Server Mobile Client Agent.
14 Comparing RDA and Replication Replication is better than RDA in providing the conflict reporting mechanism for rows that cannot be updated on the computer that is running SQL Server during a push operation. Conflicting rows in RDA are strictly defined as insert, update, or delete operations that fail because of an error when pushed from SQL Server Mobile to the SQL Server tableWhen the data is published by the publisher the mobile clients access data from the snapshot folder which in turn reduces the number of connections which are made to the central database.
15 ConclusionThe advantage of using SQL Anywhere is that, a consolidated database can be one of the ODBC-compliant databases like Adaptive Server Anywhere, Adaptive Server Enterprise, Oracle, IBM DB2, and Microsoft SQL Server. But in SQLCE, it should only be a SQL server.SQLCE works well in environments where all the applications and databases are Microsoft products. SQL Anywhere can work in mixed environments where the applications and databases can be from different vendors.SQL Anywhere synchronization scripts can be written in SQL, Java, or .NET programming languages, but in SQL CE scripts can be written only in TSQL and .NET.Role based security and permissions at a table level were not included in SQLCE.
16 My PositionAfter considering all the previously stated issues, I would support SQL anywhere database as it has better synchronization process then SQLCE and supports multiple consolidated databases
17 References1. Agustinus Borgy Waluyo et al., Research in mobile database query optimization and processing, Mobile Information Systems, Volume 1 Issue 4, Dec 20052.3. Microsoft,188.8.131.52.