Data Loader
Funktion
Der Microservice konsumiert die Zeiträume aus der Work Package Queue und lädt alle relevanten Nachrichten innerhalb des Zeitraums aus der B2B-Datenbank.
Dabei werden alle zur Archivierung konfigurierten Informationen der Nachricht geladen.
Danach wird der Status (VS) an der Nachricht auf (“In Archivierung”) aktualisiert.
Zu jeder Nachricht wird dann ein Eintrag zur Archivierung in die Persistence Queue geschrieben.
Konfiguration
Die Konfiguration des Microservices geschieht über die im “docker-compose”-Datei angegebene “application.yml”.
Die Variablen darin werden üblicherweise im globalen docker environment File konfiguriert, siehe Installation.
Das Standard Docker Image enthält die folgenden Konfigurationsmöglichkeiten:
# Name of the service consuming message queue of archiving periods
consumer-queue: work_package_queue
# Name of the service producing message queue of extracted messages for archiving
production-queue: persistence_queue
# Maximum size of the production queue. The data-loader service pauses temporarily if this threshold is exceeded. Default is 1000
production-queue-max-size: 1000
# Configuration of the message archive state operations. Use defaults for production.
#message-archive-state:
# # only set false for development/testing in database 'read-only' mode
# doUpdateToPending: true
# # message archive pending state, B2B default: ARP
# pending: ARP
message:
# comma separated list of message state. By default the value are successful ("SUC") and manually finished ("MAN")
states: SUC,MAN
attribute:
# comma separated list of attribute ids to collect for archiving message information
ids: ${ATTRIBUTE_IDS}
spring:
# RabbitMQ access data
rabbitmq:
host: ${RABBITMQ_HOST}
port: ${RABBITMQ_PORT}
user: ${RABBITMQ_USER}
password: ${RABBITMQ_PASSWORD}
# B2B database access data
datasource:
driver-class-name: ${DATABASE_DRIVER_CLASS_NAME}
url: ${DATABASE_URL}
username: ${DATABASE_USER}
password: ${DATABASE_PASSWORD}
Zusätzlich muss die nötige .jar-Datei des Datenbanktreibers neben die “application.yml” gelegt werden.
Releases
Der Service wird in den folgenden Versionen als Docker Container über unsere Registry docker-nob-erp.next-level-apps.com/data-loader
bereitgestellt.
2024-09-06
Ticket |
Beschreibung |
BTOB-12678 |
Die RAM-Überlastung durch eine große Anzahl an Nachrichten wird verhindert, da die persistence_queue nun auf 1000 Nachrichten begrenzt ist. Der data-loader Service pausiert, solange dieser Schwellenwert überschritten wird. |
2024-02-28
Ticket |
Beschreibung |
BTOB-12126 |
Komprimierte Attribute werden in der B2B-Datenbank nicht mehr mit dem dekomprimierten Inhalt überschrieben |
2023-08-09
Ticket |
Beschreibung |
BTOB-11557 |
Nachrichten, die in derselben Zeitscheibe lagen, wurden mit gleichem Inhalt archiviert. Dies wurde nun behoben |
BTOB-11563 |
Archivierung als Service: Große Datenbank-Attribute-Werte werden nun so archiviert, dass sie lesbar angezeigt werden |
2023-03-16
Ticket |
Beschreibung |
BTOB-8617 |
Erweiterung des data-loaders um beliebige B2B Nachrichten. Zudem: Konfigurierbare Ausführung im “read-only” (doUpdateToPending) Modus. |
2022-11-23
Ticket |
Beschreibung |
BTOB-8713 |
Auch Nachrichten ohne Verarbeitungs-Ende Zeit können nun zur Archivierung geladen werden. |
2021-06-28
Ticket |
Beschreibung |
BTOB-7496 |
Initiale Entwicklung |
View Me
Edit Me