今日指数项目之项目介绍和数据采集

Posted Maynor学长

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了今日指数项目之项目介绍和数据采集相关的知识,希望对你有一定的参考价值。

项目介绍和数据采集

1.了解行业背景知识

个股、指数、板块,涨跌幅、振幅,换手率,成交占比

成交时间:9:30-11:30 13:00-15:00

2.介绍今日证券项目

1.项目介绍

基于flink实时流计算的,金融证券项目,实时大屏展示,预警模块和离线模块的处理。

2. UI产品原型

首页

涨跌幅:

个股:

K线

3.业务功能

3.1业务模块

1、数据采集

2、离线数据处理

3、实时数据处理

4、实时预警监控

5、离线预警

6、应用大屏展示

3.2业务文档

Web项目:《大数据平台需求规格说明书-今日指数(前端应用).docx》

流处理项目:《今日指数数据模型.xlsx》

数据采集:《数据源接口规格说明书.docx》

3.3性能指标

l 批处理部分指标:

Ø 支持批处理集群批量总写入速度2GB/秒,批量读取速度300MB/秒;

Ø 平台支持并发执行300个查询和200个加载任务;

Ø 应用查询时间对于数据库的简单数据读取将不超过1~2秒,三个月统计计算查询时间将不超过15秒,复杂查询时间将不超过1分钟;

Ø 复杂批处理任务,ETL的处理时间将不超过2个小时;

l 实时流处理指标:

Ø 平台支持接收峰值为每秒100万条+的流数据;

Ø 平台能够在峰值条件下,完成2秒内的实时预警,2秒内完成针对当日数据的查询;

Ø 平台每日实时处理模块能够累积处理144亿笔(按4小时交易日保持峰值流速计)订单流数据;

Ø 平台支持至少50个并发访问/查询当日数据。

l 应用响应指标:

Ø 数仓应用项目离线报表30秒内完成数据响应查询;

Ø 实时大屏数据展示5秒内完成数据响应查询;

应用平台支持并发执行500个用户查询请求;

类型业务场景业务场景特征并发度耗时
简单秒级行情亿级数据查询功能点查询5001s
中等业务指标数据加工亿级数据关联查询5010s
预警规则关联查询
复杂大表关联大表复杂历史数据查询2030s
实时报表实时大屏报表生成当日实时报表502s
历史报表历史报表生成跨年历史报表生成2030s
实时行情指标数据实时展示页面实时查询501s

3.4数据存储规模

秒级行情(Hbase):存储5日内秒级行情,数据量为2.88亿条

分时行情(Druid):存储半年内分时行情数据,数据量为8.64亿条;

历史数据(Hive数仓):以沪深市场2万只证券,存储时间按1年统计:

​ 秒级行情: 210亿条以上

​ 分时行情: 20亿条以上

​ K线: 1500万条以上

日数据采集总量统计 :

20000(只)* 3600(秒)*4(小时)= 2.88(亿)≈ 85(GB)

3.5.架构设计

3.5.1、技术选型

数据采集:flume、socket、ftp、sqoop

数据存储:HDFS、HBase、mysql、Kafka、Redis

数据计算:Hive SQL、Flink

任务调度:oozie

数据分析:Druid、Kylin

产品版本
zookeeper3.4.5
kafka1.0.0
hbase1.2.0
hadoop2.6.0
flink1.7.0
flume1.6.0
mysql5.6
Redis3.0
3.5.2平台选择

apache

cdh,hdp, => cdp

华为,星环

云平台

3.5.3平台规划
  1. 消息队列日数据吞吐量:20000只证券1条/秒60604 = 2.88亿条

  2. 每条行情数据1kb左右,每天日志量: 2.88亿kb/1024/1024 ≈ 275G

  3. 一年磁盘存储量: 275G * 360天/1024 ≈ 97T

  4. 保存3个副本需占用磁盘总量 :97T * 3 = 291T

  5. 预留30%的磁盘空间 = 291T/70% ≈ 416T

  6. 机器数量:

​ (1) 机器一方案:416T/(1.2T * 10)≈ 35台

​ (2) 机器二方案:416T/(1.2T * 15)≈ 23台

7.再加上元数据,主节点服务器,还需再加上一定数量的机器

3.5.4、技术结构

1.原始数据采集采用的是flume收集文本数据和实时流数据,使用sqoop采用RDBMS中的交易数据

2.数据存储根据不同的业务需求采用不同的存储介质,这里我们采用的存储资源包含:Hbase、Mysql、Redis、HDFS等

3.采用Hadoop Yarn统一资源管理

4.计算框架采用MapReduce、Spark SQL、Flink

5.数据处理包含批处理和实时数据处理,其中批处理数仓处理采用Hive,再根据主题建立模型和业务数据分层

6.数据应用采用Kylin和web应用做到监控预警;前端页面对接web应用做到实时大屏展示

3.5.5数据流程

以上是关于今日指数项目之项目介绍和数据采集的主要内容,如果未能解决你的问题,请参考以下文章

今日指数项目之证券业务知识介绍

今日指数项目之FlinkCEP介绍

今日指数项目之数据实时业务开发(功能实现)

今日指数项目之板块任务开发

今日指数项目之ETL数据业务开发

今日指数项目之数据分时行情数据备份和个股涨跌幅开发