FileArchiver is a robust tool designed to safely archive outdated data from very large datasets (Terabyte size) and efficiently filter geo-data for mapping purposes. Developed for Deutsche Bahn AG, it addresses the challenges of managing and processing extensive geographical data.
- Safe Archiving: Securely archives outdated data from massive datasets to optimize storage and improve system performance.
- Efficient Geo-Data Filtering: Filters geo-data based on location codes and kilometer markers for precise mapping and analysis.
- User-Friendly GUI: Intuitive graphical user interface built with JavaFX for ease of use.
- Progress Monitoring: Real-time progress bars and log messages to monitor ongoing processes.
- Multi-threading: Uses multi-threading to perform operations without freezing the user interface.
- Customizable Parameters: Users can specify search paths, save directories, and filtering criteria to suit their needs.
Follow these instructions to set up FileArchiver on your local machine.
- Java Development Kit (JDK) 8 or higher
- JavaFX SDK: Required for building and running the JavaFX application.
- Git: To clone the repository.
- IDE (Optional but recommended): Such as IntelliJ IDEA or Eclipse, with JavaFX support.
-
Clone the Repository
git clone https://github.com/yourusername/FileArchiver.git
-
Import the Project
Open your IDE and import the project as a Maven or Gradle project if build scripts are provided. Ensure that JavaFX libraries are properly configured.
-
Configure JavaFX
-
For IntelliJ IDEA:
- Go to Project Structure -> Libraries and add the JavaFX SDK.
- Update the VM options to include the JavaFX modules.
-
For Eclipse:
- Install the e(fx)clipse plugin.
- Configure the build path to include JavaFX libraries.
-
-
Build the Project
Build the project to resolve all dependencies and ensure everything is set up correctly.
Run the main class, typically Main.java
or the class containing the public static void main(String[] args)
method.
-
Open the Archiver Section
Upon launching the application, navigate to the Archiver tab.
-
Specify Data Path
Enter the path to the dataset you wish to archive in the provided text field.
-
Start Archiving
Click on the Archive button to initiate the archiving process.
-
Monitor Progress
- The progress bar will indicate the completion percentage.
- Log messages will display the current status and any errors.
-
Select Data Type
- Choose between DGN (Digital Ground Network) and KM (Kilometer markers) data.
- Click on the appropriate button to proceed.
-
Load Data (If Required)
If you haven't loaded the data before, you'll be prompted to select the directories containing the DGN or KM data files.
-
Set Filtering Criteria
- Location Codes:
- Enter the starting and ending location codes (e.g.,
0000AA
to9999ZZ
for DGN data).
- Enter the starting and ending location codes (e.g.,
- Kilometer Markers (KM data only):
- Enter the starting and ending kilometer markers (e.g.,
-100
to100
).
- Enter the starting and ending kilometer markers (e.g.,
- Location Codes:
-
Specify Paths
- Search Path: Directory where the application will search for data files.
- Save Folder: Directory where the filtered data will be saved.
-
Start Filtering
Click on the Find Data button to begin the filtering process.
-
Monitor Progress
- The progress bar will show the filtering progress.
- Log messages will display detailed information about the process.
FileArchiver utilizes Java's powerful I/O and multi-threading capabilities to handle large datasets efficiently.
- Archiver Module: Scans the specified dataset directory, identifies outdated data, and archives it to optimize storage.
- Data Loader: Loads DGN and KM data files into memory for faster access during filtering operations.
- Data Filter: Applies user-defined criteria to filter out specific geo-data, which can then be used for mapping and analysis.
- User Interface: Built with JavaFX, the GUI provides an intuitive way to interact with the application, monitor progress, and receive feedback.
If you find FileArchiver useful and would like to support its development:
- Bitcoin Donation:
- Address:
bc1qr8emdvwmqjl3zvrxc5v05d8sguc8vypre3ujhq
- You can copy the address directly from the application by clicking the Copy BTC Address button in the Credits section.
- Address:
Your support is greatly appreciated!
Contributions are welcome! Here's how you can help:
-
Report Bugs
- Open an issue describing the bug with steps to reproduce it.
-
Suggest Features
- Open an issue with the enhancement label to suggest new features.
-
Submit Pull Requests
- Fork the repository.
- Create a new branch for your feature or bug fix.
- Commit your changes with clear commit messages.
- Push to your fork and submit a pull request.
This project is licensed under the MIT License - see the LICENSE file for details.
- Deutsche Bahn AG: For the opportunity to develop and utilize FileArchiver.
- Open Source Community: For providing the tools and libraries that make this project possible.
For any inquiries or support:
- Developer: Legoshi
- GitHub: github.com/legoshi