项目介绍和数据采集

1.了解行业背景知识

今日指数项目之项目介绍和数据采集【四】_java

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

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

2.介绍今日证券项目

1.项目介绍

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

2. UI产品原型

首页

今日指数项目之项目介绍和数据采集【四】_big data_02

涨跌幅:

今日指数项目之项目介绍和数据采集【四】_big data_03

个股:

今日指数项目之项目介绍和数据采集【四】_数据仓库_04

K线

今日指数项目之项目介绍和数据采集【四】_hadoop_05

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个用户查询请求;

类型

业务场景

业务场景特征

并发度

耗时

简单

秒级行情亿级数据查询

功能点查询

500

1s

中等

业务指标数据加工

亿级数据关联查询

50

10s

预警规则关联查询

复杂

大表关联大表

复杂历史数据查询

20

30s

实时报表

实时大屏报表生成

当日实时报表

50

2s

历史报表

历史报表生成

跨年历史报表生成

20

30s

实时行情

指标数据实时展示

页面实时查询

50

1s

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

产品

版本

zookeeper

3.4.5

kafka

1.0.0

hbase

1.2.0

hadoop

2.6.0

flink

1.7.0

flume

1.6.0

mysql

5.6

Redis

3.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应用做到实时大屏展示

今日指数项目之项目介绍和数据采集【四】_hive_06

3.5.5数据流程

今日指数项目之项目介绍和数据采集【四】_hadoop_07