Transformer et harmoniser les données de santé pour BigQuery

Ce document décrit les processus et les points à prendre en compte pour harmoniser les données de santé sur Google Cloud. Il est destiné aux chercheurs, aux data scientists et aux équipes informatiques qui souhaitent créer un lac de données d'analyse dans BigQuery.

En harmonisant les données, vous rassemblez des données de normes et de formats de fichiers variables, puis transformez ces données en un ensemble de données cohérent et standardisé prêt pour une analyse approfondie. Pour harmoniser les données, vous devez valider les sources de données, puis créer une série de pipelines pour modifier les données via une transformation de structure, une conversion, une résolution des identités et une anonymisation.

Valider les données sources

Les données cliniques peuvent être inexactes et incomplètes sous leur forme brute. Vous devez donc évaluer la qualité des données entrantes avant leur transformation. Un contrôle de validation comprend les processus suivants :

  • Il s'assure que les éléments de données nécessaires sont présents.
  • Il confirme les décomptes de données afin que le système source et le lac de données d'ingestion aient le même nombre de décomptes de données.
  • Il confirme que les plages de valeurs sont raisonnables avant d'investir des ressources de calcul.

Google Cloud propose les méthodes suivantes pour valider les données sources :

  • Cloud Data Fusion prépare les données de sorte que vous puissiez afficher et explorer un petit sous-ensemble de données (1 000 lignes ou moins).
  • BigQuery vous permet d'effectuer de nombreuses validations avec SQL. En cas d'écarts dans les données, vous pouvez créer une vue pour autoriser les utilisateurs identifiés à les valider ou exporter les lignes sélectionnées vers Google Sheets pour les annoter et collaborer avec une équipe.
  • Pour les contrôles automatiques de la qualité des données, vous pouvez créer des directives définies par l'utilisateur (UDD, User-Defined Directive) à l'aide de Cloud Data Fusion. Les UDD vous permettent de spécifier un traitement personnalisé, des contrôles de données et des fonctions dans Cloud Data Fusion. La création d'UDD permet également de signaler automatiquement des anomalies.

Transformer des données et créer un pipeline

La transformation structurelle est une étape importante dans la création d'un pipeline de transformation de données. Elle inclut le mappage de champ, l'analyse et la mise en forme des données.

Si vous utilisez l'API Cloud Healthcare comme méthode d'ingestion, il n'est pas nécessaire d'analyser ni d'indexer les données. L'API Cloud Healthcare offre une grande flexibilité concernant les formats des données entrantes, en acceptant les ressources et les groupes aux formats JSON multilignes et aux formats JSON délimités par des retours à la ligne. Par exemple, si vous utilisez le type de données FHIR (Fast Healthcare Interoperability Resources), vous n'avez pas besoin de développer un analyseur JSON personnalisé. À la place, vous pouvez utiliser les fonctionnalités intégrées de l'API Cloud Healthcare pour ingérer les données.

Vous pouvez également effectuer une transformation structurelle pour les conversions, par exemple convertir un type de données HL7v2 en type de données FHIR ou convertir le type de données FHIR en schéma SQL sur FHIR.

Cloud Data Fusion dispose d'un large éventail de plug-ins prédéfinis pour analyser, mettre en forme, compresser et convertir des données. Cloud Data Fusion inclut également Wrangler, un outil de visualisation qui filtre, nettoie, met en forme et projette les données de manière interactive sur un petit échantillon (1 000 lignes) de l'ensemble de données. Une fois la transformation définie, Wrangler génère automatiquement un pipeline Dataproc qui applique les modifications à l'ensemble de données complet.

Pour des transformations plus avancées, vous pouvez utiliser un langage de mappage basé sur la configuration pour la définition, la gestion et la portabilité des mappages structurels.

Résolution des identités des patients

Une étape importante de la transformation des données consiste à mettre en correspondance les dossiers avec les identifiants patient uniques correspondants. En effectuant une mise en correspondance des dossiers, vous pouvez créer un dossier longitudinal permettant d'identifier les incohérences et les doublons dans les données, et d'assurer la cohérence des transformations de données dans les dossiers de patients individuels. Vous pouvez mettre en correspondance les dossiers des patients en appelant un index patients maître (MPI, Master Patient Index) avec des pipelines ou des modèles personnalisés. Si vous regroupez les données via FHIR, vous pouvez également utiliser un paramètre de recherche d'identifiants patient pour joindre des dossiers.

Convertir la terminologie

Les environnements de terminologie clinique changent souvent en raison des systèmes de codage, des instances dirigeantes et des besoins organisationnels. Lorsque vous combinez des dossiers historiques avec des ressources nouvellement créées, des incohérences peuvent apparaître entre l'ancienne terminologie et la terminologie actuelle. La conversion et l'harmonisation des termes cliniques permettent d'assurer la cohérence et la continuité entre les anciennes et les nouvelles normes terminologiques.

Convertir les unités de mesure

Les unités de mesure peuvent varier considérablement selon les sources d'ingestion, les organisations effectuant les mesures et la région géographique. Aux États-Unis, par exemple, le poids d'un bébé est souvent mesuré en grammes, tandis que le poids d'un adulte est généralement mesuré en livres. La conversion et l'harmonisation des unités de mesure permettent de garantir que l'analyse capture toutes les unités de mesure et inclut toutes les populations de patients.

Anonymiser les données

L'anonymisation est la dernière étape du processus de transformation, car elle peut interférer avec la capacité à harmoniser les données, en particulier dans la résolution des identités et l'extraction des entités cliniques. Par exemple, si vous procédez à l'anonymisation trop tôt dans le pipeline, vous ne pourrez peut-être pas effectuer la résolution précise des identités nécessaire à l'harmonisation. Google Cloud propose de nombreuses options (y compris des personnalisations) pour vous aider à anonymiser et à pseudonymiser des données de santé.

Pour les données textuelles non structurées ou les données structurées traditionnelles telles que les fichiers CSV, vous pouvez utiliser la protection des données sensibles pour classer et masquer les éléments de données sensibles. La protection des données sensibles vous permet également de personnaliser l'anonymisation en fonction de vos cas d'utilisation et de vos besoins de sécurité, au moyen de techniques telles que le masquage, le hachage sécurisé, la tokenisation, le binning et le chiffrement préservant le format.

L'API Cloud Healthcare comporte également des fonctionnalités d'anonymisation intégrées, disponibles pour les ensembles de données Digital Imaging and Communications in Medicine (DICOM) et FHIR. Cette option est utile lorsque vous souhaitez conserver le modèle de données initial.

Si vous gérez des données de séries temporelles au format FHIR, vous pouvez conserver la séquence de ressources basée sur les identifiants patient uniques. Cela signifie que lorsque vous utilisez la fonctionnalité de décalage de date, vous pouvez être sûr que l'ordre des ressources est conservé.

Utiliser un espace de stockage intermédiaire

Il est recommandé de stocker les résultats de chaque transformation dans un espace de stockage intermédiaire (éphémère) afin de résoudre les problèmes ou de revenir à un état de transformation de données précédent en cas de reprise après sinistre. Vous pouvez réécrire l'espace de stockage intermédiaire à chaque exécution du pipeline, sous la forme d'une exportation brute vers Cloud Storage dans BigQuery.

Comprendre l'architecture des pipelines

Le schéma suivant montre les pipelines de transformation et d'harmonisation des données.

Pipelines pour la transformation et l'harmonisation des données.

Le schéma ci-dessus illustre le processus complet de déplacement des données via les pipelines, y compris toutes les étapes liées à la transformation et à l'harmonisation. Les données sont d'abord ingérées en tant que données brutes, puis elles passent par le pipeline de transformation structurelle et le pipeline de résolution des identités. Les données subissent ensuite des transformations supplémentaires (par exemple, conversion terminologique et anonymisation) et passent par le pipeline de sortie en direction de BigQuery, où elles sont stockées sous forme de données harmonisées prêtes à être analysées. De plus, les métadonnées stockées dans l'espace de stockage intermédiaire sont automatiquement écrites au moment de l'exécution et stockées dans BigQuery en tant que données de provenance et de traçabilité.

Le schéma montre également deux étapes de stockage intermédiaire dans lesquelles il est recommandé de stocker chaque ensemble de données entre les étapes de pipeline.

Étape suivante