220 likes | 237 Views
Explore the intricate process of selecting and implementing embedded database systems for diverse applications, considering design criteria, performance bottlenecks, and future research possibilities.
E N D
CS 689 Presentation By - Abraham George
Embedded Database Systems - ‘Selection and Implementation’
Contents Introduction Problem statement Background Selection and Design Procedure Future Research
Introduction Embedded systems appear in everything from telephones, pagers to systems for medical diagnostics, climate control and manufacturing. Its main task is to engage the physical world, interacting directly with sensors and actuators.
Embedded systems share many characteristics with the server and desktop counterparts, the limitations and requirements of the application they run demand careful selection process and tailored implementation. The extreme diversity of embedded applications makes generalizations difficult.
Embedded systems are usually developed for specific set of applications As an embedded system is most often dedicated to a single application or small set of tasks,the operating conditions of the system are better understood than those of general purpose computing environments.
Developers can choose from a wide variety of hardware, operating systems and tools for the embedded systems they develop. To arrive at the best embedded database system, the right blend of components is needed.
Problem Embedded systems have typically tight constraints on both functionality and implementation, they must satisfy reliability requirements and meet cost targets. Developers can choose from a variety of hardware, operating systems and tools, but finding the right combination of components is often difficult.
After choosing the operating system, database software and hardware, the system must be designed that runs reliably with little or no human intervention.
Unlike desktop and server systems, embedded systems cannot ask for operator help, when the application encounters a problem. Database configuration and maintenance are complex tasks, which add to the complexity of embedded database design.
Background • The Berkeley Database is an embedded transaction engine developed by Sleepy cat software( developed by Michael. A. Olson and Margo Seltzer) in 1996. • The features of the Berkeley Database are • Uses native O/S file system for storage. • Thread safe Implementation
Database Dump and load utilities • Keyed and Sequential traversal • Multi-user read write databases. • Partial record storage and retrieval. • Support for logical joins
The Berkeley design principles can be extended to design embedded database systems for more sophisticated applications. They can be extended to more constrained environments.
Selection and Design Procedure • The design requirements are • Real time/reactive operation • Small size, low weight • Safe and reliable • Harsh environment • Cost sensitivity
The design criterion are • Designing for speed • Data representation • Configuration • - Amount of memory used for secondary caches • - Data to be written to disk or stored in the memory. • Access patterns
Instances of failure • Insufficient storage space • Deadlocked transactions • Illegal duplicates • Memory leaks
Performance Bottlenecks The common causes for poor performances in database applications are two or more threads contending for frequently accessed. -Contention for hot data -Deadlocks
In this study, the selection parameters for an embedded database system are determined by analyzing the design parameters and criterion. The Berkeley Database model is extended for a more generalized environment. The Berkeley design procedure is also used to determine the selection parameters.
Future work and Research The Selection parameters should be used in designing an embedded database system. There is always scope for improvement as the customer requirements always vary.