Flink证券项目(五) 实时流数据采集

举报
Maynor学长 发表于 2022/11/25 15:31:29 2022/11/25
【摘要】 1.1. 实时流数据采集 1.1.1. 创建数据采集工程 1.1.1.1. 1.创建子工程此阶段采集的数据为深市实时行情数据,深市行情是已socket的方式对外广播行情数据。新建数据采集工程,在父类下新建子工程-producer: 1.1.1.2. 2.创建项目包目录结构包名说明cn.itcast.util工具类cn.itcast.avroavro对象cn.itcast.sse沪市数据采集...

1.1. 实时流数据采集

1.1.1. 创建数据采集工程

1.1.1.1. 1.创建子工程

此阶段采集的数据为深市实时行情数据,深市行情是已socket的方式对外广播行情数据。

新建数据采集工程,在父类下新建子工程-producer:

img

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. 深市数据采集流程

img

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文件

  1. 新建文件夹目录src/main/avro

  2. 文件名:szse.avsc

1.1.1.1. 编译

1.1.1.1.1. 方式一:maven编译

img

1.1.1.1.2. 方式二:命令行实现
  1. 在“4.资料avrojars”中,编译avsc文件

  2. 在当前目录下放入avro-tools-1.9.1.jar

  3. 在此目录下打开cmd窗口,输入命令

java -jar avro-tools-1.9.1.jar compile schema szse.avsc ./

  1. 在当前目录下会生成bean对象
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。