
Identify
and process all files in a specified folder.
Extract
DICOM study metadata using DCMTK and generate a JSON metadata
file
Upload
DICOM and non-DICOM files to AWS S3, ensuring encryption in transit.
Store
study metadata and S3 file locations in AWS DynamoDB.
Delete successfully
uploaded files from the local disk.
Written in C++
and compilable on Ubuntu 20.04 LTS or 24.04 LTS.
Multi-threaded for maximum transfer speed.
Self-profiling to log transfer speed,
total bytes transferred, and performance stats.
Secure
transfer
(TLS encryption for S3 uploads/downloads).
Must
be able to handle folders with mixed file types (DICOM and non-DICOM).
Should
handle DICOM files with or without extensions.
•
Use
thread pools or asynchronous I/O to parallelize file uploads/downloads.
• Optimize the number of concurrent uploads based on network bandwidth and CPU cores.
Batch metadata operations to minimize DynamoDB write costs
Develop a command-line tool in C++ that transfers DICOM files from a local folder to an AWS S3 bucket while storing metadata in DynamoDB. The tool should be capable of retrieving studies back from S3 to a local folder. Transfers must be secure, efficient, and multi-threaded
Comments