Kettle项目实战:比赛信息自动流转方案

本文介绍了使用Kettle实现比赛数据管理的解决方案,包括数据库设计、假数据生成、工作流构建和数据流转分析。通过ETL技术,自动化完成了报名、参赛、打分等信息的录入和流转,实现了比赛信息的高效管理和统计分析,如参赛率、得分排名等。同时,项目还涉及邮件服务的准备和测试,展示了Kettle在数据处理中的应用。

Kettle项目实战

比赛信息自动流转方案

1. 项目背景与介绍

众多的比赛都可以为抽象成以下的流程:
在这里插入图片描述
传统的报名工作需要赛事组工作人员以表格或是邮件等方式采集选手的信息,并归档处理。选参赛过程中的种种行为,诸如签到、比赛、得分都得不到高效的记录,往往由纸张的表格记录,再录入excel进行整理。在处理比赛结果时,需要重复地完成结算流程,并进行检查,非常消耗人工,且易产生错误。

在此番背景下,一个整合比赛从发起、开启报名、比赛到结算的工作流可以被搭建起来,以更高效地筹办与组织赛事。

简单来看,工作流需要解决的问题包括且不局限于:

  • 完成比赛信息录入
  • 完成选手信息录入
  • 完成报名信息录入
  • 完成参赛信息录入
  • 完成打分信息录入
  • 完成信息间的流转与分析

本文将使用ETL技术,在数据已有的前提下,实现数据的流转与不同维度的分析。

2. 准备工作

2.1 构建数据库

数据库型号:TDSQL-C for MySQL MySQL 5.7

在拆解完需求后,可以得到以下几个实体类(类之间的关系见3.1 项目架构 ):

表1 参赛选手信息表

库名 表名 字段名 数据类型 默认值 是否允许为空 字段说明
ETL player player_id varchar(12) NULL 选手学号
ETL player player_name varchar(10) NULL 选手姓名
ETL player player_academy varchar(15) NULL 选手学院
ETL player player_class varchar(15) NULL 选手班级
ETL player player_tele varchar(11) NULL 选手电话
ETL player player_avatar varchar(255) NULL 选手头像
ETL player player_qq varchar(20) NULL 选手qq
ETL player player_email varchar(50) NULL 选手邮箱

表2 比赛信息表

库名 表名 字段名 数据类型 默认值 是否允许为空 字段说明
ETL competition comp_id varchar(255) NULL 比赛id
ETL competition comp_name varchar(255) NULL 比赛名称
ETL competition comp_ddl datetime NULL 比赛报名截至日期
ETL competition comp_start_date datetime NULL 正式比赛日期
ETL competition comp_end_date datetime NULL 比赛结算日期

表3 场地信息表

库名 表名 字段名 数据类型 默认值 是否允许为空 字段说明
ETL venue venue_id varchar(255) NULL 场地id
ETL venue venue_name varchar(255) NULL 场地名称
ETL venue venue_capacity int(11) NULL 场地容量

表4 报名信息表

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

GUAPOchen

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值