Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Overview PicoDBMS is a full-fledged DBMS (storage, indexation, query processing, access rights and transaction control) embedded in a smart card. The application domain of PicoDBMS is the management of shared secured portable folders (medical folder, user profile, agenda, etc.). Its indexation and query engines implement new strategies required to cope with the smart card hardware constraints. A first prototype written in JavaCard has been demonstrated at the VLDB’01 conference. Since then, a second prototype has been written in C and optimized. At the same time, Schlumberger provided us with an experimental smart card platform and modified part of its smart card OS, so that the current prototype exhibits two order of magnitude better performance than its JavaCard counterpart. Experimentations are still on going on this prototype. Description As smartcards become more and more versatile, multi-applications and powerful (32 bit processor, more than 1MB of stable storage), the need for database techniques arises. Let us consider a health card storing a complete medical folder including the holder’s doctors, blood type, allergies, prescriptions, etc. The volume of data can be important and the queries fairly complex (select, join, aggregate). Sophisticated access rights management using views and aggregate functions are required to preserve the holder’s data privacy. Transaction atomicity and durability are also needed to enforce data consistency. More generally, database management helps to separate data management code from application code, thereby simplifying and making application code smaller. Supporting database management on the card itself rather than on an external device is the only way to achieve very high security, high availability (anywhere, anytime, on any terminal) and acceptable performance. However, smartcards have severe hardware limitations which stem from the obvious constraints of small size (to fit on a flexible plastic card and to increase hardware security) and low cost (to be sold in large volumes). These limitations (tiny RAM, little stable storage, very costly write and lack of autonomy) make traditional database techniques irrelevant. Typically, traditional DBMS exploit significant amounts of RAM and use caching and asynchronous I/Os to reduce disk access overhead as much as possible. With the extreme constraints of the smartcard, the major problem is scaling down database techniques. PicoDBMS design has been made with smartcard applications in mind but its scope extends as well to any ultra-light computer device based on a secured monolithic chip. PicoDBMS conception was guided by a set of design rules derived from the smart card properties: 1. Compactness rule: minimize the size of the data, indexation structures and PicoDBMS footprint to cope with the limited stable storage area. 2. RAM rule: minimize the RAM consumption of all operators given its extremely limited size. 3. Write rule: minimize write operations given their dramatic cost (10 ms/word). 4. Read rule: take advantage of the fast read operations in stable storage (100 ns/word). 5. Access rule: take advantage of the low granularity and direct access capability of the stable memory for both read and write operations. 6. Security rule: never externalize private data from the chip and minimize the algorithms complexity to avoid security holes. 7. CPU rule: take advantage of the over-dimensioned CPU power, compared to the amount of embedded data. Following these rules, the technical solution relies on highly compact storage structures (attributes are stored in domains, acting as a compression by dictionary), on ad-hoc compact indexation techniques (attributes possibly engaged in selections and joins are linked by rings of pointers), and on a pure pipeline query execution model consuming a minimal (bounded) amount of RAM. Related papers (les reprendres du site web pour avoir les liens) N. Anciaux, L. Bouganim, P. Pucheral, ‘Data confidentiality: to which extent cryptography and secured hardware can help’, Annals of telecom, to appear in 2005. N. Anciaux, L. Bouganim, P. Pucheral, ‘Database Components on Chip’, ERCIM News, (54), 2003. (Article invité). pdf. P. Pucheral, L. Bouganim, P. Valduriez, C. Bobineau, 'PicoDBMS: Scaling down Database Techniques for the Smartcard', Very Large Data Bases Journal, VLDBJ, 10(2-3), 2001. Special issue on the best papers from VLDB’2000. pdf. N. Anciaux, L. Bouganim, P. Pucheral: ‘Memory Requirements for Query Execution in Highly Constrained Devices’. 29th International Conference on Very Large Data Bases, VLDB'03, September 2003.pdf. N. Anciaux, C. Bobineau, L. Bouganim, P. Pucheral, P. Valduriez, 'PicoDBMS: Validation and Experience'. 27th International Conference on Very Large Data Bases, VLDB'01, September 2001. (demo session). pdf. C. Bobineau, L. Bouganim, P. Pucheral, P. Valduriez, 'PicoDBMS: Scaling down Database Techniques for the Smartcard', 26th International Conference on Very Large Data Bases, VLDB'00, (10 pages), September 2000. (Best Paper Award). pdf.