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...
Autores principales: | , , , , , , |
---|---|
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 |