Skip to content

Research Data Management Platform (RDMP) is an open source application for the loading,linking,anonymisation and extraction of datasets stored in relational databases.

License

Notifications You must be signed in to change notification settings

bpeacock001/RDMP-BPEACOCK

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

logoResearch Data Management Platform

Build status Total alerts NuGet Badge Coverage Status

RDMP is a free, open source software application for cohort building, loading, linking, anonymisation and extraction of datasets stored in relational databases (SQL Server, MySQL, Postgres and Oracle). It was designed from the bottom up to support with data provenance, preserving domain knowledge and configuration management workflows.

RDMP does not require your data be moved or transformed prior to processing and is integrates into existing SQL based extraction practices.

image

Install

Signed release binaries for the RDMP client and Command Line Interface (CLI) are in the available in the GitHub releases section.

Windows Install Guide

Download and unzip rdmp-client.zip from the GitHub releases section and run ResearchDataManagementPlatform.exe. This will take you to an installation/setup screen which will guide you through the rest of the initial setup process.

Linux CLI Install Guide

The following steps can be used to install the RDMP CLI and start an SqlServer docker container to install into. Make sure to set the version (e.g. 7.0.14) to the latest and set a custom password if desired.

wget https://github.com/HicServices/RDMP/releases/download/v7.0.14/rdmp-cli-linux-x64.zip

unzip -d rdmp-cli ./rdmp-cli-linux-x64.zip

sudo docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=<YourStrong@Passw0rd>" \
   -p 1433:1433 --name sql1 --hostname sql1 \
   -d mcr.microsoft.com/mssql/server:2019-latest

cd rdmp-cli

cat > Databases.yaml << EOF
CatalogueConnectionString: Server=localhost;Database=RDMP_Catalogue;User ID=SA;Password=<YourStrong@Passw0rd>;Trust Server Certificate=true;
DataExportConnectionString: Server=localhost;Database=RDMP_DataExport;User ID=SA;Password=<YourStrong@Passw0rd>;Trust Server Certificate=true;
EOF

chmod +x ./rdmp

./rdmp install localhost RDMP_ -e -D -u SA -p "<YourStrong@Passw0rd>"
./rdmp gui

Build

Building on Windows

You can build RDMP from the command line using dotnet build or through an IDE e.g. Visual Studio or Visual Studio Code (Requires latest dotnet SDK).

The Windows client:

dotnet build
cd Application\ResearchDataManagementPlatform\bin\Debug\net6.0-windows\win-x64
./ResearchDataManagementPlatform.exe

The console client:

dotnet build
cd Tools\rdmp\bin\Debug\net6.0\
./rdmp.exe --help

Building on Linux

Only the console client can be built/run in Linux

cd Tools/rdmp
dotnet build
cd bin/Debug/net6.0
./rdmp --help

Tests

To run tests you will need an instance of SQL Server. These instructions use localdb which is included in visual studio.

If using a docker container or alternate sql server instance then substitute your host name in place of (localdb)\MSSQLLocalDB

dotnet build
./Tools/rdmp/bin/Debug/net6.0/rdmp.exe install "(localdb)\MSSQLLocalDB" TEST_ -d

echo "ServerName: (localdb)\MSSQLLocalDB" > ./Tests.Common/TestDatabases.txt
echo "Prefix: TEST_" >> ./Tests.Common/TestDatabases.txt

dotnet build

dotnet test ./scripts/run-all-tests.proj -c Release -p:BuildInParallel=false

For a more indepth guide to CI testing see How to set up your test environment in Tests.md.

Contributing

We welcome all contributions including:

About

Research Data Management Platform (RDMP) is an open source application for the loading,linking,anonymisation and extraction of datasets stored in relational databases.

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C# 97.5%
  • TSQL 2.5%