Cargando…

Integrating row level security in i2b2: segregation of medical records into data marts without data replication and synchronization

OBJECTIVE: i2b2 offers the possibility to store biomedical data of different projects in subject oriented data marts of the data warehouse, which potentially requires data replication between different projects and also data synchronization in case of data changes. We present an approach that can sa...

Descripción completa

Detalles Bibliográficos
Autores principales: Scheible, Raphael, Thomczyk, Fabian, Blum, Marco, Rautenberg, Micha, Prunotto, Andrea, Yazijy, Suhail, Boeker, Martin
Formato: Online Artículo Texto
Lenguaje:English
Publicado: Oxford University Press 2023
Materias:
Acceso en línea:https://www.ncbi.nlm.nih.gov/pmc/articles/PMC10425194/
https://www.ncbi.nlm.nih.gov/pubmed/37583654
http://dx.doi.org/10.1093/jamiaopen/ooad068
_version_ 1785089784810569728
author Scheible, Raphael
Thomczyk, Fabian
Blum, Marco
Rautenberg, Micha
Prunotto, Andrea
Yazijy, Suhail
Boeker, Martin
author_facet Scheible, Raphael
Thomczyk, Fabian
Blum, Marco
Rautenberg, Micha
Prunotto, Andrea
Yazijy, Suhail
Boeker, Martin
author_sort Scheible, Raphael
collection PubMed
description OBJECTIVE: i2b2 offers the possibility to store biomedical data of different projects in subject oriented data marts of the data warehouse, which potentially requires data replication between different projects and also data synchronization in case of data changes. We present an approach that can save this effort and assess its query performance in a case study that reflects real-world scenarios. MATERIAL AND METHODS: For data segregation, we used PostgreSQL’s row level security (RLS) feature, the unit test framework pgTAP for validation and testing as well as the i2b2 application. No change of the i2b2 code was required. Instead, to leverage orchestration and deployment, we additionally implemented a command line interface (CLI). We evaluated performance using 3 different queries generated by i2b2, which we performed on an enlarged Harvard demo dataset. RESULTS: We introduce the open source Python CLI i2b2rls, which orchestrates and manages security roles to implement data marts so that they do not need to be replicated and synchronized as different i2b2 projects. Our evaluation showed that our approach is on average 3.55 and on median 2.71 times slower compared to classic i2b2 data marts, but has more flexibility and easier setup. CONCLUSION: The RLS-based approach is particularly useful in a scenario with many projects, where data is constantly updated, user and group requirements change frequently or complex user authorization requirements have to be defined. The approach applies to both the i2b2 interface and direct database access.
format Online
Article
Text
id pubmed-10425194
institution National Center for Biotechnology Information
language English
publishDate 2023
publisher Oxford University Press
record_format MEDLINE/PubMed
spelling pubmed-104251942023-08-15 Integrating row level security in i2b2: segregation of medical records into data marts without data replication and synchronization Scheible, Raphael Thomczyk, Fabian Blum, Marco Rautenberg, Micha Prunotto, Andrea Yazijy, Suhail Boeker, Martin JAMIA Open Research and Applications OBJECTIVE: i2b2 offers the possibility to store biomedical data of different projects in subject oriented data marts of the data warehouse, which potentially requires data replication between different projects and also data synchronization in case of data changes. We present an approach that can save this effort and assess its query performance in a case study that reflects real-world scenarios. MATERIAL AND METHODS: For data segregation, we used PostgreSQL’s row level security (RLS) feature, the unit test framework pgTAP for validation and testing as well as the i2b2 application. No change of the i2b2 code was required. Instead, to leverage orchestration and deployment, we additionally implemented a command line interface (CLI). We evaluated performance using 3 different queries generated by i2b2, which we performed on an enlarged Harvard demo dataset. RESULTS: We introduce the open source Python CLI i2b2rls, which orchestrates and manages security roles to implement data marts so that they do not need to be replicated and synchronized as different i2b2 projects. Our evaluation showed that our approach is on average 3.55 and on median 2.71 times slower compared to classic i2b2 data marts, but has more flexibility and easier setup. CONCLUSION: The RLS-based approach is particularly useful in a scenario with many projects, where data is constantly updated, user and group requirements change frequently or complex user authorization requirements have to be defined. The approach applies to both the i2b2 interface and direct database access. Oxford University Press 2023-08-14 /pmc/articles/PMC10425194/ /pubmed/37583654 http://dx.doi.org/10.1093/jamiaopen/ooad068 Text en © The Author(s) 2023. Published by Oxford University Press on behalf of the American Medical Informatics Association. https://creativecommons.org/licenses/by/4.0/This is an Open Access article distributed under the terms of the Creative Commons Attribution License (https://creativecommons.org/licenses/by/4.0/), which permits unrestricted reuse, distribution, and reproduction in any medium, provided the original work is properly cited.
spellingShingle Research and Applications
Scheible, Raphael
Thomczyk, Fabian
Blum, Marco
Rautenberg, Micha
Prunotto, Andrea
Yazijy, Suhail
Boeker, Martin
Integrating row level security in i2b2: segregation of medical records into data marts without data replication and synchronization
title Integrating row level security in i2b2: segregation of medical records into data marts without data replication and synchronization
title_full Integrating row level security in i2b2: segregation of medical records into data marts without data replication and synchronization
title_fullStr Integrating row level security in i2b2: segregation of medical records into data marts without data replication and synchronization
title_full_unstemmed Integrating row level security in i2b2: segregation of medical records into data marts without data replication and synchronization
title_short Integrating row level security in i2b2: segregation of medical records into data marts without data replication and synchronization
title_sort integrating row level security in i2b2: segregation of medical records into data marts without data replication and synchronization
topic Research and Applications
url https://www.ncbi.nlm.nih.gov/pmc/articles/PMC10425194/
https://www.ncbi.nlm.nih.gov/pubmed/37583654
http://dx.doi.org/10.1093/jamiaopen/ooad068
work_keys_str_mv AT scheibleraphael integratingrowlevelsecurityini2b2segregationofmedicalrecordsintodatamartswithoutdatareplicationandsynchronization
AT thomczykfabian integratingrowlevelsecurityini2b2segregationofmedicalrecordsintodatamartswithoutdatareplicationandsynchronization
AT blummarco integratingrowlevelsecurityini2b2segregationofmedicalrecordsintodatamartswithoutdatareplicationandsynchronization
AT rautenbergmicha integratingrowlevelsecurityini2b2segregationofmedicalrecordsintodatamartswithoutdatareplicationandsynchronization
AT prunottoandrea integratingrowlevelsecurityini2b2segregationofmedicalrecordsintodatamartswithoutdatareplicationandsynchronization
AT yazijysuhail integratingrowlevelsecurityini2b2segregationofmedicalrecordsintodatamartswithoutdatareplicationandsynchronization
AT boekermartin integratingrowlevelsecurityini2b2segregationofmedicalrecordsintodatamartswithoutdatareplicationandsynchronization