Automated database design for document stores with multicriteria optimization

Document stores have gained popularity among NoSQL systems mainly due to the semi-structured data storage structure and the enhanced query capabilities. The database design in document stores expands beyond the first normal form by encouraging de-normalization through nesting. This hinders the proce...

ver descrição completa

Detalhes bibliográficos
Autores: Hewasinghage, Moditha Lakshan Dharmasir, Nadal Francesch, Sergi|||0000-0002-8565-952X, Abelló Gamazo, Alberto|||0000-0002-3223-2186, Zimányi, Esteban
Formato: artículo
Fecha de publicación:2023
País:España
Recursos:Universitat Politècnica de Catalunya (UPC)
Repositorio:UPCommons. Portal del coneixement obert de la UPC
Idioma:inglés
OAI Identifier:oai:upcommons.upc.edu:2117/387548
Acesso em linha:https://hdl.handle.net/2117/387548
https://dx.doi.org/10.1007/s10115-023-01828-3
Access Level:acceso abierto
Palavra-chave:Database design
Document store
Optimization
Bases de dades -- Disseny
Àrees temàtiques de la UPC::Informàtica::Sistemes d'informació::Bases de dades
Descrição
Resumo:Document stores have gained popularity among NoSQL systems mainly due to the semi-structured data storage structure and the enhanced query capabilities. The database design in document stores expands beyond the first normal form by encouraging de-normalization through nesting. This hinders the process, as the number of alternatives grows exponentially with multiple choices in nesting (including different levels) and referencing (including the direction of the reference). Due to this complexity, document store data design is mostly carried out in trial-and-error or ad-hoc rule-based approaches. However, the choices affect multiple, often conflicting, aspects such as query performance, storage space, and complexity of the documents. To overcome these issues, in this paper, we apply multicriteria optimization. Our approach is driven by a query workload and a set of optimization objectives. First, we formalize a canonical model to represent alternative designs and introduce an algebra of transformations that can systematically modify a design. Then, using these transformations, we implement a local search algorithm driven by a loss function that can propose near-optimal designs with high probability. Finally, we compare our prototype against an existing document store data design solution purely driven by query cost, where our proposed designs have better performance and are more compact with less redundancy.