案例:股票交易实时仪表盘程序
下面通过一个示例“为证券公司建立股票仪表盘程序”,来说明编写Spark结构化流应用程序的步骤。
在这个示例中,数据源是证券公司实时发布的市场交易数据,比如证券、股票等的买卖。我们现在需要构建一个实时仪表板应用程序,用来实现回答以下问题:
- 计算每10秒钟的销售和购买订单数量;
- 根据购买或出售的总金额来统计前5个客户;
- 找出过去一个小时内前5个交易量最多的股票。
数据集说明
在PBLP平台的~/data/spark/stream/目录下,我们准备了一个文件orders.txt,它包含500,000行股票交易数据,每行代表一个买/卖订单。每一行包含如下用逗号分隔的元素:
- ■ Order时间戳 — 格式为yyyy-mm-dd hh:MM:ss
- ■ Order ID — 连续递增的整数
- ■ Client ID — 从1到100的范围的整数
- ■ Stock代码 — 共80个股票代码
- ■ 股票买卖的数量 — 从1到1000
- ■ 股票买卖的价格 — 从1到100
- ■ 字符B 或 S — 代表一个订单的买(B)/卖(S)事件
可以使用如下命令查看文件的前5行内容:
$ head -n 5 ~/data/spark/stream/orders.txt
内容如下所示:
2016- ............
抱歉,只有登录会员才可浏览!会员登录