Designing a persistent-memory-native storage engine for SQL database systems

Author(s):  
Shohei Matsuura
2020 ◽  
Vol 29 (6) ◽  
pp. 1223-1241
Author(s):  
Alexander van Renen ◽  
Lukas Vogel ◽  
Viktor Leis ◽  
Thomas Neumann ◽  
Alfons Kemper

AbstractI/O latency and throughput are two of the major performance bottlenecks for disk-based database systems. Persistent memory (PMem) technologies, like Intel’s Optane DC persistent memory modules, promise to bridge the gap between NAND-based flash (SSD) and DRAM, and thus eliminate the I/O bottleneck. In this paper, we provide the first comprehensive performance evaluation of PMem on real hardware in terms of bandwidth and latency. Based on the results, we develop guidelines for efficient PMem usage and four optimized low-level building blocks for PMem applications: log writing, block flushing, in-place updates, and coroutines for write latency hiding.


2021 ◽  
Vol 5 (OOPSLA) ◽  
pp. 1-30
Author(s):  
Haoran Xu ◽  
Fredrik Kjolstad

Fast compilation is important when compilation occurs at runtime, such as query compilers in modern database systems and WebAssembly virtual machines in modern browsers. We present copy-and-patch, an extremely fast compilation technique that also produces good quality code. It is capable of lowering both high-level languages and low-level bytecode programs to binary code, by stitching together code from a large library of binary implementation variants. We call these binary implementations stencils because they have holes where missing values must be inserted during code generation. We show how to construct a stencil library and describe the copy-and-patch algorithm that generates optimized binary code. We demonstrate two use cases of copy-and-patch: a compiler for a high-level C-like language intended for metaprogramming and a compiler for WebAssembly. Our high-level language compiler has negligible compilation cost: it produces code from an AST in less time than it takes to construct the AST. We have implemented an SQL database query compiler on top of this metaprogramming system and show that on TPC-H database benchmarks, copy-and-patch generates code two orders of magnitude faster than LLVM -O0 and three orders of magnitude faster than higher optimization levels. The generated code runs an order of magnitude faster than interpretation and 14% faster than LLVM -O0. Our WebAssembly compiler generates code 4.9X-6.5X faster than Liftoff, the WebAssembly baseline compiler in Google Chrome. The generated code also outperforms Liftoff's by 39%-63% on the Coremark and PolyBenchC WebAssembly benchmarks.


2021 ◽  
Vol 54 (7) ◽  
pp. 1-37
Author(s):  
Alexandro Baldassin ◽  
João Barreto ◽  
Daniel Castro ◽  
Paolo Romano

The recent rise of byte-addressable non-volatile memory technologies is blurring the dichotomy between memory and storage. In particular, they allow programmers to have direct access to persistent data instead of relying on traditional interfaces, such as file and database systems. However, they also bring new challenges, as a failure may render the program in an unrecoverable and inconsistent state. Consequently, a lot of effort has been put by both industry and academia into making the task of programming with such memories easier while, at the same time, efficient from the runtime perspective. This survey summarizes such a body of research, from the abstractions to the implementation level. As persistent memory is starting to appear commercially, the state-of-the-art research condensed here will help investigators to quickly stay up to date while also motivating others to pursue research in the field.


1998 ◽  
Vol 4 (3) ◽  
pp. 229-276 ◽  
Author(s):  
ION ANDROUTSOPOULOS ◽  
GRAEME RITCHIE ◽  
PETER THANISCH

Most existing Natural Language Database Interfaces (NLDB) were designed to be used with database systems that provide very limited facilities for manipulating time-dependent data, and they do not support adequately temporal linguistic mechanisms (verb tenses, temporal adverbials, temporal subordinate clauses, etc.). The database community is becoming increasingly interested in temporal database systems, which are intended to store and manipulate in a principled manner information not only about the present, but also about the past and future. When interfacing to temporal databases, supporting temporal linguistic mechanisms becomes crucial.We present a framework for constructing Natural Language Interfaces for Temporal Databases (NLTDB), which draws on research in tense and aspect theories, temporal logics and temporal databases. The framework consists of a temporal intermediate representation language, called TOP, an HPSG grammar that maps a wide range of questions involving temporal mechanisms to appropriate TOP expressions, and a provably correct method for translating from TOP to TSQL2, TSQL2 being a recently proposed temporal extension of the SQL database language. This framework was employed to implement a prototype NLTDB.


2021 ◽  
Author(s):  
Kagiso Ndlovu ◽  
Richard E. Scott ◽  
Maurice Mars

Abstract Background Significant investments have been made towards the implementation of mHealth applications and eRecord systems globally. However, fragmentation of these technologies remains a big challenge, often unresolved in developing countries. In particular, evidence shows little consideration for linking mHealth applications and eRecord systems. Botswana is a typical developing country that has adopted mHealth applications, but the solutions are not interoperable with existing eRecord systems. This paper describes Botswana’s eRecord systems interoperability landscape and provides guidance for linking mHealth applications to eRecord systems, both for Botswana and for developing countries using Botswana as an exemplar. Methods A survey and interviews of health ICT workers and a review of the Botswana National eHealth Strategy were completed. Perceived interoperability benefits, opportunities and challenges were charted and analysed, and future guidance derived. Results Survey and interview responses showed the need for interoperable mHealth applications and eRecord systems within the health sector of Botswana and within the context of the National eHealth Strategy. However, the current Strategy does not address linking mHealth applications to eRecord systems. Across Botswana’s health sectors, global interoperability standards and Application Programming Interfaces are widely used, with some level of interoperability within, but not between, public and private facilities. Further, a mix of open source and commercial eRecord systems utilising SQL database systems and similar data formats are supported. Challenges for linking mHealth applications and eRecord systems in Botswana were identified and categorised into themes which led to development of guidance to enhance the National eHealth Strategy. Conclusion Interoperability between mHealth applications and eRecord systems is needed and is feasible. Opportunities and challenges for linking mHealth applications to eRecord systems were identified, and future guidance stemming from this insight presented. Findings will aid Botswana, and other developing countries, in resolving the pervasive disconnect between mHealth applications and eRecord systems.


10.29007/3drl ◽  
2018 ◽  
Author(s):  
Gabriel Aranda ◽  
Susana Nieva ◽  
Fernando Saenz-Perez ◽  
Jaime Sánchez-Hernández

Current database systems supporting recursive SQL imposerestrictions on queries such as linearity, and do not implement mutualrecursion. In a previous work we presented the language and prototypeR-SQL to overcome those drawbacks. Now we introduce a formalizationand an implementation of the database system HR-SQL that, in addition to extended recursion, incorporates hypothetical reasoning in a novelway which cannot be found in any other SQL system, allowing both positive and negative assumptions. The formalization extends the fixpointsemantics of R-SQL. The implementation improves the eciency of theprevious prototype and is integrated in a commercial DBMS.


2012 ◽  
Vol 4 (2) ◽  
pp. 37-48
Author(s):  
Hamsir Hamsir ◽  
Gunadi W Nurcahyo ◽  
Sarjon Defit

This article is designed for an information system in the form of expert system applications to present information on Batam Directory. The purpose of this system is to help provide information about the city of Batam as a whole to the residents of Batam city in particular and thelocal and foreign tourists as well as prospective investors in general. The system presents information in the form of public service to the residents of Batam city government and other newcomers as well as products and services are made ​​and offered by the business and government. The analysis was done by determining the first goal, then do these arching to obtain the desired information. The design system uses backward chaining inference method to the implementation ofthe system using My-SQL database systems and programming languages​​ of PHP and JQuery. The system is based on mobile, so it can be accessed using a mobile device.


1993 ◽  
Vol 32 (04) ◽  
pp. 265-268 ◽  
Author(s):  
D. J. Essin

AbstractLoosely structured documents can capture more relevant information about medical events than is possible using today’s popular databases. In order to realize the full potential of this increased information content, techniques will be required that go beyond the static mapping of stored data into a single, rigid data model. Through intelligent processing, loosely structured documents can become a rich source of detailed data about actual events that can support the wide variety of applications needed to run a health-care organization, document medical care or conduct research. Abstraction and indirection are the means by which dynamic data models and intelligent processing are introduced into database systems. A system designed around loosely structured documents can evolve gracefully while preserving the integrity of the stored data. The ability to identify and locate the information contained within documents offers new opportunities to exchange data that can replace more rigid standards of data interchange.


1979 ◽  
Vol 18 (04) ◽  
pp. 214-222
Author(s):  
K. Sauter

The problems encountered in achieving data security within computer-supported information systems increased with the development of modern computer systems. The threats are manifold and have to be met by an appropriate set of hardware precautions, organizational procedures and software measures which are the topic of this paper. Design principles and software construction rules are treated first, since the security power of a system is considerably determined by its proper design. A number of software techniques presented may support security mechanisms ranging from user identification and authentication to access control, auditing and threat monitoring. Encryption is a powerful tool for protecting data during physical storage and transmission as well.Since an increasing number of health information systems with information-integrating functions are database-supported, the main issues and terms of database systems and their specific security aspects are summarized in the appendix.


Sign in / Sign up

Export Citation Format

Share Document