Protobase: It's About Time for Backend/Database Co-Design
Abstract
In this interactive demonstration, we show the current state of Protobase, our main-memory analytic document store that is designed from scratch to enable rapid prototyping of efficient microservices that perform analytics and explorations on (third-party) JSON-like documents stored in a novel columnar binary-encoded format, called the Cabin file format. In contrast to other solutions, our database system exposes neither a particular query language, nor a fixed REST API to its clients. Instead, the entire user-defined backend logic, whose user code is written in Python, is placed inside a sandbox that runs in the systems process. Protobase in turn exposes a user-defined REST API that the (frontend) application interacts with. Thus, our system acts as a backend server while at the same time avoids full exposure of its database to the clients. Consequently, a Protobase instance (database + user code + REST API) serves as (the entire) microservice -potentially minimizing the number of systems running in a typical analytic software stack. In terms of execution performance, Protobase therefore takes the inter-process communication overhead between backend and database system out of the picture and heavily utilizes columnar binary document storage to scale-up for analytic queries. Both features lead to a notable performance gain for non-trivial services, potentially minimizing the number of required nodes in a cloud setting, too. In our demo, we overview Protobases internals, spot major design decisions, and show how to prototype a scholarly search engine managing the Microsoft Academic Graph, a real-world scientific paper graph of roughly 154 mio. Documents.
- Citation
- BibTeX
Pinnecke, M., Campero, G., Zoun, R., Broneske, D. & Saake, G.,
(2019).
Protobase: It's About Time for Backend/Database Co-Design.
In:
Grust, T., Naumann, F., Böhm, A., Lehner, W., Härder, T., Rahm, E., Heuer, A., Klettke, M. & Meyer, H.
(Hrsg.),
BTW 2019.
Gesellschaft für Informatik, Bonn.
(S. 515-518).
DOI: 10.18420/btw2019-35
@inproceedings{mci/Pinnecke2019,
author = {Pinnecke, Marcus AND Campero, Gabriel AND Zoun, Roman AND Broneske, David AND Saake, Gunter},
title = {Protobase: It's About Time for Backend/Database Co-Design},
booktitle = {BTW 2019},
year = {2019},
editor = {Grust, Torsten AND Naumann, Felix AND Böhm, Alexander AND Lehner, Wolfgang AND Härder, Theo AND Rahm, Erhard AND Heuer, Andreas AND Klettke, Meike AND Meyer, Holger} ,
pages = { 515-518 } ,
doi = { 10.18420/btw2019-35 },
publisher = {Gesellschaft für Informatik, Bonn},
address = {}
}
author = {Pinnecke, Marcus AND Campero, Gabriel AND Zoun, Roman AND Broneske, David AND Saake, Gunter},
title = {Protobase: It's About Time for Backend/Database Co-Design},
booktitle = {BTW 2019},
year = {2019},
editor = {Grust, Torsten AND Naumann, Felix AND Böhm, Alexander AND Lehner, Wolfgang AND Härder, Theo AND Rahm, Erhard AND Heuer, Andreas AND Klettke, Meike AND Meyer, Holger} ,
pages = { 515-518 } ,
doi = { 10.18420/btw2019-35 },
publisher = {Gesellschaft für Informatik, Bonn},
address = {}
}
Sollte hier kein Volltext (PDF) verlinkt sein, dann kann es sein, dass dieser aus verschiedenen Gruenden (z.B. Lizenzen oder Copyright) nur in einer anderen Digital Library verfuegbar ist. Versuchen Sie in diesem Fall einen Zugriff ueber die verlinkte DOI: 10.18420/btw2019-35
Haben Sie fehlerhafte Angaben entdeckt? Sagen Sie uns Bescheid: Send Feedback
More Info
DOI: 10.18420/btw2019-35
ISBN: 978-3-88579-683-1
ISSN: 1617-5468
xmlui.MetaDataDisplay.field.date: 2019
Language:
(en)
