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

OSCHINA-MIRROR/wux-labs-DataService-Framework

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
README.md 7.7 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 25.11.2024 19:51 aeea620

DataService-Framework

Проект представляет собой:

Основанный на платформе больших данных, сервис обработки данных.
На основе сценариев реального использования проектов с большими данными были выделены некоторые общие функции, которые сформировали структуру обработки данных для платформы больших данных.

В настоящее время реализованы следующие основные функции:

  1. Модуль конфигурации параметров информации, который может быть настроен с использованием базы данных или файла свойств.
  2. Интеграция с Kafka, включая реализацию функций производителя и потребителя.
  3. Интеграция с MongoDB, включая чтение и запись данных, а также взаимодействие со SparkSQL через DataFrame и MongoDB. Также реализована функция постраничного чтения и потокового чтения.
  4. Интеграция с Redis, включая операции чтения и записи данных, а также взаимодействие со SparkSQL через DataFrame и Redis.
  5. Обработка потоков данных Kafka и MongoDB с помощью SparkStreaming.
  6. Ручная регистрация смещения Kafka, реализованная как на основе базы данных, так и на основе Zookeeper.
  7. Интеграция с механизмом правил, позволяющим реализовать такие функции, как клиентские метки, клиентские изображения и т. д.

Архитектура программного обеспечения:

Программное обеспечение имеет следующую структуру:

DataService-Framework      проектный корневой каталог
├── commons             公共功能模块,提供配置文件读取、数据库连接、日志打印、工具类等公共功能,以供其他模块调用。  
├── examples            样例模块,提供各个功能点的样例代码。  
├── kafka-clients       KafkaClients相关功能,比如生产者、消费者等。
├── kafka-streams       主题数据过滤模块,Kafka自带的流处理功能,业务系统记录的日志如果包含了大量的:程序异常日志、数据库操作日志、调试日志等日志信息,而采集的数据只需要日志文件中的特定数据的日志记录,那么对于我们采集到的日志来说,可能会有90%以上的日志都是垃圾数据,但是Flume组件没有提供日志过滤功能,而Spark程序又不应该消费这些数据。这时就需要提供一个中间层,将Flume采集到的Topic1的日志中满足条件的数据筛选出来放到Topic2中,Spark程序只需要消费Topic2的数据即可,过滤条件按照正则表达式进行配置。这样Spark消费Topic2的数据都是我们需要的数据,并且我们可以及时的清理掉Topic1的数据以释放空间。
├── rule-engine         规则引擎功能。
├── spark-sql           SparkSQL相关功能,扩展了Dataset/DataFrame的方法,集成Redis数据的读写、MongoDB数据的读写。  
├── spark-streaming     SparkStreaming实时数据处理模块,通过SparkStreaming程序,准实时消费Kafka中的数据,流式方式处理MongoDB中的数据.
└── third-party         第三方源码
      ├── hammurabi     Scala规则引擎
      ├── mongodb       Spark操作MongoDB
      └── redislabs     Spark操作Redis

Расширение функциональности:

В настоящий момент программное обеспечение реализует сбор данных с Flume, фильтрацию данных по темам Kafka и обработку данных в реальном времени с помощью SparkStreaming. Однако обработка данных в SparkStreaming ограничивается базовыми функциями, такими как стандартизация значений кода.
Расширение функциональности возможно в двух направлениях:

  1. Расширение программы SparkStreaming для добавления более сложных функций обработки данных, таких как обработка показателей, анализ поведения клиентов, создание изображений клиентов и т.д.
  2. Расширение поддержки форматов журналов путём создания пользовательских классов, реализующих интерфейс com.service.data.spark.streaming.process.TopicValueProcess. После создания класса необходимо добавить его имя в файл resources/META-INF/services/com.service.data.spark.streaming.process.TopicValueProcess и настроить его в базе данных при использовании.

Использование:

Инструмент настройки данных: данные инструмент настройки.xlsx
Документация по настройке и развёртыванию среды: документация по настройке и развертыванию среды.docx
Документация по разработке и упаковке программного обеспечения: документация по разработке и упаковке программного обеспечения.docx

Инструкция по установке:

  1. xxxx
  2. xxxx
  3. xxxx

Вклад участников:

  1. Fork этого проекта.
  2. Создать ветку Feat_xxx.
  3. Отправить код.
  4. Создать запрос на вытягивание.

Навыки работы с кодом Cloud:

  1. Использование Readme_XXX.md для поддержки различных языков, например Readme_en.md, Readme_zh.md.
  2. Официальный блог Code Cloud blog.gitee.com.
  3. Вы можете посетить этот адрес https://gitee.com/explore, чтобы узнать о выдающихся проектах с открытым исходным кодом на Code Cloud.
  4. GVP (GVP) — это коллекция самых ценных проектов с открытым исходным кодом на Code Cloud, отобранных на основе всесторонней оценки.
  5. Code Cloud предоставляет руководство пользователя https://gitee.com/help.
  6. Лица, представляющие Code Cloud, — это серия, демонстрирующая элегантность членов Code Cloud https://gitee.com/gitee-stars/.

Опубликовать ( 0 )

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

1
https://api.gitlife.ru/oschina-mirror/wux-labs-DataService-Framework.git
git@api.gitlife.ru:oschina-mirror/wux-labs-DataService-Framework.git
oschina-mirror
wux-labs-DataService-Framework
wux-labs-DataService-Framework
master