Case Study: Synchroniztion Issues in Mobile Databases


Published on

Use of mobile technologies to mature the CRM of
Micro Innovations and Technologies Pvt. Ltd.
(Pakistan’s largest IT vendor).

Published in: Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • MIT is the largest IT vendor of Pakistan having sales/service/support franchises and labs in Karachi Lahore and Islamabad. Their business operations are obvious from the 3 departments I have just mentioned. MIT is running their customer support business on a web based portal that process their customer complains step by step in form of a workorder. The purpose of this study is to provide this same system, on a new operating channel i.e. mobile devices (PDA’s, Mobile Phone’s, etc.).
  • The arrangement of the slides has been kept in such a way that the audience will first get some idea of theory. Then I will move on to the Business Case and with this we will discuss what operations can be migrated to be done by mobile devices. Or we can say how to improve this system using the mobile technologies. Implementations hurdles or milestones will be the next right after the business cum technical case. Then, technologies to cope up with these implementation barriers will be discussed. By using these technologies I will deduce the solution to the above problems that will definitely lead to some process improvement.
  • Databases provides us away to store and manage data, whether we talk about Normal BBMS or Mobile/Embedded Databases. Mobile databases are for such application that needs the data on the move. For example doctors use to carry it on their round to the wards; and maintain patients’ information Or a mineral water distributor may use to carry a PDA equipped with Mobile Application and Mobile Database.
  • Customer lodge a complain on helpdesk It will then made visible to all the FT’s in service pool and anyone can fetch it depending on his availability. The FT may work on it to resolve / reject the complain depending on the technical activity.
  • In moving this business case on mobile devices we have number issues. Where to store data If everyone has their own copy with permissions to insert/update the records; then how to find out that what is the latest and the final version.
  • In the early ages of mobile devices the data has been transported to the central server as is without any pre-processing. Computation is performed by the Central Server.
  • Disconnected mode in the sense that the handheld/mobile device can be operated even if it is away from any network connectivity. This has been only made possible only due to the enhancements in memory technology. High memory and Ram made it easy to store and manipulate data in an isolated environment on the device.
  • If user wants to perform operations in the disconnected mode then their must be some mechanism to store the data and to retrieve it on demand by the mobile application. The challenges of the time are here.
  • Though semi-structured databases are widely used and portable too. But still there is an issue of their standardization. Any Semi-structured set of data is meant for a single application due to its non-standardization. If any other application needs to consume such datasets then they must have to share and follow the same data contract and this is quite a bit costly in terms of volume of unnecessary source code. So the solution is the Embedded databases. Having all the abilities of a standard DBMS
  • LDAP – Lightweight Directory Access Protocol
  • Any DDL update in shared entities must be reflected to the devices I order to synchronize successfully. Audit Attributes to check the integrity and validness of data. (InsertDTTM, InsertedBY, UpdateDTTM, UpdatedBY). Most of the embedded databases do not provide provision to execute compiled statements. As far as the synchronization is concerned the device must be kept free from complex logic, for scalability purpose.
  • At any time T1, multiple mobile user synchronize their devices to fetch the new data. Perform some calculations on their local set that is just received. Submit the changes at day end. Server will commit the changes after some pre-processing.
  • The comparisons among the 3 techniques is based on the connectivity, synchronization logic, multiple user provision Clique  A group of 3 or more users in which they are isolated from the outer world/ network.
  • I have deduce a generation table all the available technologies discussed inthe
  • Case Study: Synchroniztion Issues in Mobile Databases

    1. 1. MIT’s Case Study Synchronization Issues in Mobile Databases SZABIST Submitted by: G. Habib Uddin Khan SZABIST Mr. Kamran Abid PTCL 12 th National Research Conference
    2. 2. Theme <ul><li>Use of mobile technologies to mature the CRM of </li></ul><ul><li>Micro Innovations and Technologies Pvt. Ltd. </li></ul><ul><li>(Pakistan’s largest IT vendor). </li></ul>SZABIST
    3. 3. Agenda <ul><li>Introduction </li></ul><ul><ul><li>Mobile Databases </li></ul></ul><ul><ul><li>Business Case </li></ul></ul><ul><li>Implementation Hurdles </li></ul><ul><ul><li>Data Management </li></ul></ul><ul><ul><li>Data Synchronization </li></ul></ul><ul><li>Technologies </li></ul><ul><ul><li>Streaming </li></ul></ul><ul><ul><li>Disconnected Mode Computing </li></ul></ul><ul><ul><li>Databases </li></ul></ul><ul><li>Finding & Evaluations </li></ul><ul><li>Conclusion </li></ul><ul><li>References </li></ul>SZABIST
    4. 4. Mobile Databases SZABIST <ul><li>What </li></ul><ul><ul><li>Database : A structured way to organize information </li></ul></ul><ul><ul><li>Mobile Database : A database linked/connected by a mobile computing device over a mobile network (number of patients, sale, batsman/bowler stats) </li></ul></ul><ul><li>Why </li></ul><ul><ul><li>DB Applications have to fetch information from an information pool/repository & perform functions even when disconnected/out of range which is why there would be a large scale usage of Mobile DB Technology. </li></ul></ul>
    5. 5. Business Case SZABIST MIT: Workorder Processing [11]
    6. 6. Implementation Hurdles <ul><li>Data Management </li></ul><ul><ul><li>Where to keep the records? </li></ul></ul><ul><ul><li>How to deal with versioning issues? </li></ul></ul><ul><li>Data Synchronization </li></ul><ul><ul><li>How to manage data transfer b/w servers and mobile devices? </li></ul></ul><ul><ul><li>What would be the connectivity mechanism? </li></ul></ul>SZABIST
    7. 7. Technologies SZABIST
    8. 8. Streaming [3] <ul><li>What </li></ul><ul><ul><li>Relatively old concept </li></ul></ul><ul><ul><li>Data Dumping to/from servers </li></ul></ul><ul><ul><li>No persistent storage on mobile devices </li></ul></ul><ul><ul><li>Server-Side data manipulation only </li></ul></ul><ul><ul><li>Mobile Devices as Thin Client </li></ul></ul><ul><li>Why </li></ul><ul><ul><li>Less computation power of mobile devices </li></ul></ul><ul><ul><li>Mobile devices cannot afford intelligent applications </li></ul></ul><ul><ul><li>Less storage capacity </li></ul></ul>SZABIST
    9. 9. Disconnected Mode Computation <ul><li>Driving Forces [3] </li></ul><ul><ul><li>Advancements in memory technologies. </li></ul></ul><ul><ul><li>High power mobile processors </li></ul></ul><ul><ul><li>Fast RAM </li></ul></ul><ul><ul><li>Flash Storage </li></ul></ul><ul><li>Implications [8] </li></ul><ul><ul><li>Easy roaming </li></ul></ul><ul><ul><li>Episodic data transfer sessions </li></ul></ul><ul><ul><li>Preserving large volumes </li></ul></ul>SZABIST
    10. 10. Flat / Semi-Structured Databases <ul><li>Challenges </li></ul><ul><ul><li>Where to store transactional data during disconnected time? </li></ul></ul><ul><ul><li>Is there any mechanism to save data objects on a mobile device for a time being? </li></ul></ul><ul><ul><li>Problem adopting the flat file system: How to preserve computation power consumed just for the sake of parsing flat and semi-structured data files? </li></ul></ul><ul><li>Solution </li></ul><ul><ul><li>Custom defined flat files (Delimiter) </li></ul></ul><ul><ul><li>Application logic to parse such files </li></ul></ul><ul><ul><li>XML, to provide a format for describing structured data. This proved helpful in facilitating more precise declarations of content. </li></ul></ul>SZABIST
    11. 11. Embedded Databases [2] <ul><li>Shortcomings of Previous </li></ul><ul><ul><li>Compatibility issues due non standardization of flat files </li></ul></ul><ul><ul><li>Compromising efficiency due to wastage of computational resources </li></ul></ul><ul><ul><li>Huge overhead in error detection </li></ul></ul><ul><li>Features [2] </li></ul><ul><ul><li>Full fledge DBMS </li></ul></ul><ul><ul><li>FUEL (Flexible, Ultra-fast, Efficient, Lightweight) </li></ul></ul><ul><ul><li>Resides in appliances, e.g., smart-cards, telephones, personal digital assistants </li></ul></ul><ul><ul><li>Consumes less memory resources </li></ul></ul><ul><ul><li>Examples: Personal Folders or Phonebook on chips. </li></ul></ul><ul><ul><li>Vendors: Oracle Lite server, Sybase UltraLite, SQL CE etc </li></ul></ul>SZABIST
    12. 12. Embedded Databases <ul><li>Installation, maintenance and configuration of databases have historically been complex tasks, often requiring expert knowledge of database design and application behavior. In an embedded environment, it is not possible to require such expertise or to perform ongoing database maintenance. </li></ul><ul><li>Many applications perform simple to moderate manipulation of data. They need a way of storing, retrieving and manipulating the data within the application. Embedded systems are often dedicated to a single application or small set of tasks, once an embedded system is deployed, it must continue to function without interruption and without administrator intervention. </li></ul><ul><li>The key characteristics of these databases are that their functionality must be completely transparent to users, no explicit database operations or database maintenance is ever performed, the database may crash at any time and recover instantly. Such as Sleepy cat Berkeley DB used with LDAP </li></ul>SZABIST
    13. 13. Data Synchronization <ul><li>Technologies are designed to synchronize a single set of data between two or more devices </li></ul><ul><li>Automatically copying changes back and forth. </li></ul><ul><li>For example, a user's contact list on one mobile device can be synchronized with other mobile devices or computers. </li></ul><ul><li>Data synchronization can be local synchronization where the device and computer are side-by-side </li></ul><ul><li>Remote synchronization when a user is mobile and the data is synchronized over a mobile network. [ ] </li></ul>SZABIST
    14. 14. Data Synchronization (cont) <ul><li>Things to remember </li></ul><ul><ul><li>Exact schema of server at the device </li></ul></ul><ul><ul><li>Introducing Audit Attributes </li></ul></ul><ul><ul><li>Metadata Table </li></ul></ul><ul><ul><li>Inline queries </li></ul></ul><ul><ul><li>Sync. Logic always outside the device application for scalability. </li></ul></ul>SZABIST
    15. 15. Synchronization Algorithm [6] <ul><li>Checkout  Distribution of same data to all mobile users. </li></ul><ul><li>Chargeon  Collect data from all mobile users and performs manipulation if needed (pre-processing step for final commit on server.) </li></ul><ul><li>Checkin  Updates the master record </li></ul>SZABIST
    16. 16. Synchronization Techniques <ul><li>Interfaces (USB, parallel or serial ports) on the servers to connect through a wired medium. </li></ul><ul><li>A synchronization application is invoked to establish connection </li></ul><ul><li>The number of users is dependent upon available ports </li></ul><ul><li>The data is fetched from the device using the application embedded business logic </li></ul>SZABIST <ul><li>Mobile user remain connected to the network, irrespective to the technology used. </li></ul><ul><li>Mobiles nodes operate in an Ad-Hoc Network. (Clique) </li></ul><ul><li>Efficiency of network is dependent upon the number of nodes. </li></ul><ul><li>Large number of connections may result in conflicts (ID address space, versioning) </li></ul><ul><li>Web servers, accessed by mobile users using data carriers (WiFi, GPRS, CDMA) </li></ul><ul><li>Business Logic is encapsulated in the form of web service </li></ul><ul><li>Several Concurrent transparent connections </li></ul>Sync. Techniques Wired Wireless [6] Serverless [7]
    17. 17. Findings & Evaluations SZABIST
    18. 18. Generations SZABIST Gen 1 Gen 2 Gen 3 Gen 4 Architecture Streaming DC Computing DC Computing Peer 2 Peer Technology Data dumping Wired Sync. Wireless Sync. Server less Management Only on Servers Flat Filing & Semi -Structured DBs + Servers Embedded DBs + Global Services + Multiple Servers Embedded DBs + Mobile Apps Resources RAM (can hold only transient data) Flash Memory Memory on Smart Cards WLAN on Smart Cards Usage Low Mobility High Mobility High Mobility 100% Mobility
    19. 19. Graphical Representation SZABIST Gen1 Gen2 Gen3 Gen4 Usage Resources Management Technology Architecture Streaming DC Computing DC Computing DC Computing Data Dumping Serverless Wired Sync. Wireless Sync. Semi Structured Embedded DB’s + Global Services + Multiple Severs Embedded DB’s + Mobile Apps Only on Servers RAM Flash Memory Memory on Smart Cards WLAN on Smart Cards Low mobility High Mobility High Mobility 100% Mobility
    20. 20. Solution <ul><li>At a glance, generation 2 and generation 3 fit into our requirement domain. </li></ul><ul><li>The wired and wireless technique is purely dependent upon the market client whether they need any data carrier medium or they just sync the devices by physically connecting them to the servers. </li></ul><ul><li>In our case, once if the Workorder is assigned to the FT, it will be locked for all others; so the problem of same data availability has also been solved. </li></ul><ul><li>Our case deals with the customer centric CRM and even if we follow the wireless synchronization approach the customer will suffer in case of workorder rejection by any FT. The solution to this is the implementation of Serverless environment, in which FT’s will remain updated on the move. </li></ul><ul><li>To make efficient use of computation power, this CRM must have to prefer Embedded databases. </li></ul><ul><li>Embedded database vendor may be dependent upon the technology used at the server-side to provide better handshaking. </li></ul>SZABIST
    21. 21. Conclusion <ul><li>Data synchronization from mobile databases to the server is an issue that still persists with the researchers. </li></ul><ul><li>New technologies have come by to increase mobility for remote users. </li></ul><ul><li>In our case, mobility was the need of the hour. Since our main purpose is customer facilitation and CRM is there to fulfill this very purpose. </li></ul><ul><li>Adding mobility would result in an increased customer satisfaction experience, since we can provide the customers faster services. We found that wired and wireless synchronization with embedded databases works well with our requirements. </li></ul><ul><li>Server less is a relatively new technology and has some issues which need to be addressed. In future, with the maturity of newer technologies like server less, we can further enhance our project to cope up with the upcoming standards </li></ul>SZABIST
    22. 22. References <ul><li>[1] Weider D. & Yu Sunita Sharma, “Mobile Database Design Methodologies for Mobile Software Solutions” Computer Engineering Department, San Jose State University, San Jose (Silicon Valley), CA 95192-0180, USA </li></ul><ul><li>[2] Action members  1EPFL, 2U. Grenoble, 3INRIA-Nancy, 4INT-Evry, 5U. Montpellier 2, 6U. Paris 6, 7U. Versailles “Mobile Databases: a Selection of Open Issues and Research Directions” </li></ul><ul><li>[3] Anil Nori, Microsoft Corporation, “Mobile and Embedded Databases” SIGMOD’07, June 12–14, 2007, Beijing, China. ACM 978-1-59593-686-8/07/0006. </li></ul><ul><li>[4] Gary D. Walborn, Panos K. Chrysanthis “Pro-Motion: Management of Mobile Transactions” </li></ul><ul><li>[5] Margo I. Seltzer, Michael A. Olson “Challenges in Embedded Database System Administration” </li></ul>SZABIST
    23. 23. References (cont) <ul><li>[6] Mi-Seon Choi, Young-Kuk Kim, Juno Chang, Proceedings of the 2005 International Workshop on Data Engineering Issues in E-Commerce. &quot;Transaction-Centric Split Synchronization Mechanism for Mobile E-Business Applications&quot; </li></ul><ul><li>[7] Henry Larkin, 6th IEEE/ACIS International Conference on Computer and Information Science, &quot;Applying Concurrent Versioning to Serverless Mobile Device Synchronization&quot; </li></ul><ul><li>[8] Mariano Cravo Teixeira Neto and Ana Carolina Salgado, &quot;Hoarding and pre-fetching for mobile databases&quot; </li></ul><ul><li>[9] Takahiro Hara, 16th International Workshop on Database and Expert Systems Applications, &quot;Data Replication Issues in Mobile Ad Hoc Networks&quot; </li></ul><ul><li>[10] Patricia Seybold Group, “An Executive’s Guide to CRM&quot; How to Evaluate CRM Alternatives by Functionality, Architecture, & Analytics </li></ul><ul><li>[11] Technical Documentation, Fleet Manager . </li></ul>SZABIST
    24. 24. <ul><li>Q & A </li></ul>SZABIST