# leaf-pipeline **Repository Path**: fancybrain/leaf-pipeline ## Basic Information - **Project Name**: leaf-pipeline - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2020-03-30 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # leaf-pipeline ### 介绍 1. 对接各种数据源,kafka,mysql,elasticsearch,excel,txt。 2. 方便各种数据源之间数据的转换。 3. 统计计算引擎使用elasticsearch,复杂的统计工作和搜索工作,可以使用组件将数据导入的一个新的索引,在进行统计。 4. 类似于shell命令的数据流处理。 ### 软件架构 1. sh run.sh PipelineCli "InputFromExcelExecutor(-i result_1576983605549.xls)|PrintExecutor()" 2. 每个executor是一个组件,不同组件之间构成一个数据处理流。 #### 组件类型 ##### elasticsearch统计组件 对elasticearch做term,sum,date等统计组件 ###### TermAggExecutor ###### SumAggExecutor ###### DateAggExecutor ###### TermTermAggExecutor ###### TermSumAggExecutor ###### DateTermAggExecutor ###### DateSumAggExecutor ##### 通用类型组件 分隔符解析,json解析,grep,sed,uniq,print等组件 ###### BlackExecutor ###### GrepExecutor ###### Json2MapExecutor ###### LineToMapExecutor ###### MapToListExecutor ###### MapToMapExecutor ###### PrintExecutor ###### SedExecutor ###### UniqExecutor ##### 输入类型组件 支持kafka,mysql,txt,excel,elasticsearch等数据源输入 ###### InputFromEsExecutor ###### InputFromExcelExecutor ###### InputFromKafkaExecutor ###### InputFromMysqlExecutor ###### InputFromTextExecutor ###### ##### 输出类型组件 支持txt,excel,打印,elasticsearch等输出 ###### OutputToEsExecutor ###### OutputToExcelExecutor ###### OutputToTxtExecutor #### 技术栈 1. spring-data-elasticsearch 2. 实例化使用spring包扫描 3. 克隆模式,责任链模式 ps:elasticsearch的版本是6.x,注意版本问题 #### 使用: 1. 修改spring-elasticsearch.xml配置 2. mvn clean package 打包 3. demo:sh run.sh PipelineCli "InputFromExcelExecutor(-i result_1576983605549.xls)|PrintExecutor()" 4. 自己添加组件,继承executor,实现对应的方法,修改spring-pipeline.xml的扫描路径。 ps: 具体每个组件的参数请详细了解