大数据实战之Spark-Flume-Kafka-idea-Mysql实时处理数据并存储

该项目通过Python模拟实时数据,利用Flume、Kafka、Spark Streaming和Idea实现实时处理,并将结果存储到MySQL。同时,涉及离线批处理,使用Flume、Kafka、HDFS和Spark Shell。主要目标是统计游戏平台使用量,流程包括数据源监听、实时处理、存储和离线处理。
摘要由CSDN通过智能技术生成

数据流的处理

1、使用工具:
数据模拟工具:pychame,Python编译脚本
链接,监听工具:flume,kafka
数据存储工具:mysql(实时),hdfs(离线),本地(离线)
代码编写工具:idea(实时),sparkshell(离线)

2、项目要求:
利用模拟或者爬取等方式获取相应的数据,然后使用Flume、Kafka、Spark、数据存储、HDFS、MySQL等组件来实时处理和离线批处理模块,最后将处理好的数据存储至分布式文件系统或者数据库当中。

3、项目目标:
统计完成离线与实时部分并成功存储。

实时数据的模拟

实时数据,可以通过编写网络爬虫、采集网页数据、实时模拟等方式来实现。本次,即将采用的是通过Python代码来模拟实时产生。这种数据模拟代码,网上有很多,不会的可以去借鉴一下。在linux系统中,Python的编译环境是已经提前准备好的。

import random
import time
iplist=[101,198,65,177,98,21,34,61,19,11,112,114]
urllist=['WeGame','Steam','Blizzard','origin','Uplay','EPIC']
mobile=['lol','CF','Yuansheng','CSGO','PUBG','Data2']
def get_ip():
    return '.'.join(str(x) for x in random.sample(iplist,4))
def get_time():
    return time.strftime('%Y%m%d%H%M%S',time.localtime())
def get_url():
    return random.sample(urllist,1)[0]
def get_mobile():
    return random.sample(mobile,1)[0]



def get_log(count):
    while count>0:
        log='{},{},{},{}\n'.format
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值