Цель

Приложение реализует внешнюю сортировку с использованием java8

Структура приложения

В папке misc находится тестовый несортированный файл. Для запуска надо выполнить команду

git clone https://github.com/ks-zealot/external-sort.git
cd external-sort/
 mvn clean compile exec:java -Dexec.mainClass="com.java.sort.Sorter" -Dexec.args="-file './misc/inputfile'"

Настройки

Для управление приложением использутся флаги командной строки

  • file - несортированный файл. Опция обязательна
  • dir - директория для хранения временных файлов. По умолчанию ./tmp
  • threadpool - цельночисленное число, количество тредов которые будут использованы в сортировке. По умолчанию 50
  • sizeofslice - цельночисленное число, указаывает на какие части будет нарезать файл. По умолчанию 150.
  • output - путь к отсортированному файлу. По умочланию ./output

Зависимости

  • log4j - логирование
  • slf4j - обертка логирования
  • commons-cl - парсинг параметров командной строки