Installation Guide
(Last updated: 2025-08-18, Created: 2025-08-18)
Prerequisites
- Install Microsoft SQL Server ODBC Driver 18: learn.microsoft.com/en-us/sql/connect/odbc/download-odbc-driver-for-sql-server
 - Might need to install Microsoft Visual C++ Redistributable in order to install Microsoft SQL Server ODBC Driver: learn.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist
 - The Bliksund Analytics Data Processing artifacts are downloaded for deployment
 
Installation
- 
If you already have a Data Processing service running, make sure to stop this by following Stopping the service.
 - 
Store the exe-file that you downloaded at the place where you want the installation to take place.
 - 
Open a terminal (for example powershell) in administrator mode.
 - 
Navigate to the folder where the exe-file is stored:
cd <PATH_TO_EXE_FILE> - 
Add and update needed configurations
Create a file named .env in the same folder as the exe-file using
New-Item -Path ".env" -ItemType Fileand add the following infromation to it:BLIKSUND_RUN_SCHEDULED = false
BLIKSUND_RUN_SCHEDULED_FREQUENCY_MIN = 1
BLIKSUND_LOAD_BATCH_SIZE = 50000
BLIKSUND_LOAD_BATCH_WAIT_TIME = 1
BLIKSUND_LOAD_FULL_ON_SCHEDULE = false
BLIKSUND_LOAD_FULL_ON_START = false
BLIKSUND_TRANSFORM_FULL_ON_SCHEDULE = false
BLIKSUND_TRANSFORM_FULL_ON_START = false
BLIKSUND_RUN_TAG = false
# Source database connection details (Operational database)
SOURCE__DATABASE__TYPE=mssql
SOURCE__DATABASE__USERNAME=
SOURCE__DATABASE__PASSWORD=
SOURCE__DATABASE__HOST=
SOURCE__DATABASE__PORT=
SOURCE__DATABASE__NAME=
# Target database connection details (Analytics database)
TARGET__DATABASE__TYPE=mssql
TARGET__DATABASE__USERNAME=
TARGET__DATABASE__PASSWORD=
TARGET__DATABASE__HOST=
TARGET__DATABASE__PORT=
TARGET__DATABASE__NAME= - 
Install the service:
.\AnalyticsDataProcessingService.exe installNote: A log folder (Logging) will be created and placed at the same location as the .exe file during the installation
 - 
Start the service:
.\AnalyticsDataProcessingService.exe start 
Configuration options
The service can be configured with the following options:
| Setting Name | Description | default value | 
|---|---|---|
| BLIKSUND_RUN_SCHEDULED | true if running the service on a schedule, false if running once | false | 
| BLIKSUND_RUN_SCHEDULED_FREQUENCY_MIN | Minutes between each run | 1 | 
| BLIKSUND_LOAD_BATCH_SIZE | Number of rows fetched in each batch from the EWA Database | 50000 | 
| BLIKSUND_LOAD_BATCH_WAIT_TIME | Seconds to wait between each batch of data | 1 | 
| BLIKSUND_LOAD_FULL_ON_SCHEDULE | true for full load on schedule, false for incremental | false | 
| BLIKSUND_LOAD_FULL_ON_START | true for full load on service start, false for incremental | false | 
| BLIKSUND_TRANSFORM_FULL_ON_SCHEDULE | true for full transform on schedule, false for incremental | false | 
| BLIKSUND_TRANSFORM_FULL_ON_START | true for full transform on service start, false for incremental | false | 
| BLIKSUND_RUN_TAG | false if no run tag is used; otherwise, schemas are prefixed with the tag | false | 
| SOURCE__DATABASE__TYPE | Type of source database | mssql | 
| SOURCE__DATABASE__USERNAME | Username for source database | (empty) | 
| SOURCE__DATABASE__PASSWORD | Password for source database | (empty) | 
| SOURCE__DATABASE__HOST | Host for source database | (empty) | 
| SOURCE__DATABASE__PORT | Port for source database | (empty) | 
| SOURCE__DATABASE__NAME | Name of source database | (empty) | 
| TARGET__DATABASE__TYPE | Type of target database | mssql | 
| TARGET__DATABASE__USERNAME | Username for target database | (empty) | 
| TARGET__DATABASE__PASSWORD | Password for target database | (empty) | 
| TARGET__DATABASE__HOST | Host for target database | (empty) | 
| TARGET__DATABASE__PORT | Port for target database | (empty) | 
| TARGET__DATABASE__NAME | Name of target database | (empty) | 
Note: If it is a Major version update you normally have to use the setting BLIKSUND_TRANSFORM_FULL_ON_START=True, but then you will be informed in the release notes.
Logging
Logs are placed under logs/service.log, and if you are running the code as a windows service, the log file will be placed in the same folder as AnalyticsDataProcessingService.exe.
Stopping the service
Follow this guide if you want to stop an already running service
- 
Open a terminal (for example powershell) in administrator mode
 - 
Navigate to the folder where the old exe-file is stored:
cd <PATH_TO_EXE_FILE> - 
Stop the service:
.\AnalyticsDataProcessingService.exe stop 
Removing old tables
We have some table name changes from v1 to v2. This can leave behind outdated tables that are no longer used, creating clutter and making the database harder to navigate.
These old tables are inactive and contain no new data, but keeping them can cause confusion. We recommend running the script below to remove them and keep your database clean and organized:
DROP TABLE IF EXISTS ewa_clean.billable_information;
DROP TABLE IF EXISTS ewa_clean.codes_status;
DROP TABLE IF EXISTS ewa_clean.contagion;
DROP TABLE IF EXISTS ewa_clean.drugs;
DROP TABLE IF EXISTS ewa_clean.gcs;
DROP TABLE IF EXISTS ewa_clean.history_of_presenting_complaint_legacy;
DROP TABLE IF EXISTS ewa_clean.infusions;
DROP TABLE IF EXISTS ewa_clean.interventions;
DROP TABLE IF EXISTS ewa_clean.miscellaneous_information;
DROP TABLE IF EXISTS ewa_clean.miscellaneous_medical;
DROP TABLE IF EXISTS ewa_clean.missions;
DROP TABLE IF EXISTS ewa_clean.news2;
DROP TABLE IF EXISTS ewa_clean.oxygen;
DROP TABLE IF EXISTS ewa_clean.patients;
DROP TABLE IF EXISTS ewa_clean.personnel;
DROP TABLE IF EXISTS ewa_clean.records_forms;
DROP TABLE IF EXISTS ewa_clean.record_urgency_levels;
DROP TABLE IF EXISTS ewa_clean.retts;
DROP TABLE IF EXISTS ewa_clean.sats;
DROP TABLE IF EXISTS ewa_clean.sepsis;
DROP TABLE IF EXISTS ewa_clean.time;
DROP TABLE IF EXISTS stage.records;