Flink证券项目(五) 实时流数据采集
1.1. 实时流数据采集
1.1.1. 创建数据采集工程
1.1.1.1. 1.创建子工程
此阶段采集的数据为深市实时行情数据,深市行情是已socket的方式对外广播行情数据。
新建数据采集工程,在父类下新建子工程-producer:
1.1.1.2. 2.创建项目包目录结构
包名 | 说明 |
---|---|
cn.itcast.util | 工具类 |
cn.itcast.avro | avro对象 |
cn.itcast.sse | 沪市数据采集 |
cn.itcast.szse | 深市数据采集 |
cn.itcast.kafka | Kafka生产者对象 |
1.1.1.3. 3.导入依赖
代码略
1.1.1. 深市数据采集流程
1.1.2. 服务端
服务端负责对外实时广播行情数据源,本项目中,服务端是模拟沪深股市实时交易产生的一些个股和指数的行情数据,具体包含成交量、成交金额、最高价、最低价、开盘价、收盘价、前收盘价、证券代码、证券名称等行情数据。基础数据来源于金融证券网站上发布的实时交易行情数据,包含两部分内容,分别是沪市实时交易行情数据和深市实时交易行情数据。
造数程序是整个项目的初始环节,为实时流处理项目提供数据源。
运行服务端程序,实时产生深市行情数据:
在“第1章4.资料深市行情服务端程序”文件目录,拷贝SocketServer.java进入工程cn.itcast.szse,并运行main方法。
注意:代码运行需要加载外部数据源基础文件,拷贝”4.资料需求文档数据源接口文档数据源文件“中的szse-index.txt和szse-stock.txt到自定义本地磁盘文件目录下:E:exportserverstmpsocket
1.1.3. 创建Avro对象
有两种实现方法:
方法一:通过maven编译实现
方法二:通过命令行实现
1.1.3.1. 新建avsc文件
-
新建文件夹目录src/main/avro
-
文件名:szse.avsc
1.1.1.1. 编译
1.1.1.1.1. 方式一:maven编译
1.1.1.1.2. 方式二:命令行实现
-
在“4.资料avrojars”中,编译avsc文件
-
在当前目录下放入avro-tools-1.9.1.jar
-
在此目录下打开cmd窗口,输入命令
java -jar avro-tools-1.9.1.jar compile schema szse.avsc ./
- 在当前目录下会生成bean对象
- 点赞
- 收藏
- 关注作者
评论(0)