1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/starblues-rope

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

Введение

Rope — это лёгкий инструмент ETL (Extract-Transform-Load). Он используется для получения и приёма данных из различных источников, их унифицированной обработки и записи в различные целевые источники. Система использует многоуровневое буферирование и кэширование данных, способна обрабатывать более десяти тысяч записей в секунду. Кроме того, система использует модульную архитектуру с возможностью расширения компонентов для удовлетворения различных потребностей.

Характеристики

  1. Лёгкий, быстрый и простой, с низким порогом входа.
  2. Разработан на основе Springboot.
  3. Обладает высокой расширяемостью благодаря модульной архитектуре. Можно разрабатывать модули для чтения данных, обработки данных и записи данных в зависимости от конкретных требований.
  4. Позволяет создавать процессы как через пользовательский интерфейс, так и с помощью файлов JSON или YAML.
  5. Использует буферизацию на основе Disruptor и добавляет кэширование (в памяти, Redis, RocksDB), что ускоряет обработку данных.

Архитектура

Архитектура

Основные модули

Входной модуль

Контролирует действия по вводу данных. Включает два типа: активный ввод данных и пассивный приём данных.

Модуль чтения данных

Отвечает за чтение данных. Может быть расширен. Не может работать самостоятельно, должен быть связан с активным вводом данных для работы.

Модуль передачи данных

Передаёт данные между другими модулями. В системе есть два вида передачи данных: один передаёт данные от входного модуля к модулю обработки данных, другой передаёт обработанные данные от модуля обработки данных к выходному модулю. Поддерживает стандартный передатчик данных и передатчик с буферизацией на основе Disruptor. Рекомендуется использовать последний в реальных условиях.

Модуль обработки данных

Обрабатывает данные, такие как преобразование типов данных, удаление определённых данных или добавление новых полей данных. Может быть расширен и не является обязательным компонентом.

Выходной модуль

Отвечает за вывод системных данных. Не заботится о том, куда выводятся данные, а только о способе вывода.

Писатель данных

Реализует конкретный способ записи данных. Заботится о том, куда записываются данные, и является реализацией вывода данных. Должен быть связан с выходным модулем для работы.

Конвертер данных

Преобразует типы данных. Обычно используется вместе с модулями чтения и записи данных. Основная идея заключается в том, чтобы позволить модулям чтения и записи сосредоточиться на чтении и записи данных, а конвертеру — на деталях преобразования типов данных. Это обеспечивает высокую расширяемость.

Подробная документация

Смотрите документацию

Конфигурация среды разработки

См. документацию: Документация по запуску и конфигурации среды разработки

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Лёгкий, высокопроизводительный и расширяемый ETL-инструмент с помощью плагинов. Развернуть Свернуть
Apache-2.0
Отмена

Обновления (2)

все

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/starblues-rope.git
git@api.gitlife.ru:oschina-mirror/starblues-rope.git
oschina-mirror
starblues-rope
starblues-rope
master