zoukankan      html  css  js  c++  java
  • 使用spark 计算netflow数据初探

    spark是一个高性能的并发的计算平台,而netflow是一种一般来说数量级很大的数据。本文记录初步使用spark 计算netflow数据的大致过程。

    本文包括以下过程:

    1. spark环境的搭建

    2. netflow数据的生成与处理

    3. 通过spark 计算netflow数据

    spark环境的搭建

    spark环境的搭建主要分2部分。

    • hadoop的环境的搭建
    • spark的安装

    hadoop的安装

    hadoop的安装包括,hdfs的安装和yarn的安装。  读本部分之前要先去查阅hdfs和yarn的概念。hdfs是hadoop的分布式文件系统。hdfs的架构为master/slave架构。cluster中有一个唯一的NameNode(master节点),剩下的节点为DataNodes(slave 节点),通常有多个。 hdfs把文件分成多个block,这些block存储在不同的DataNode上。NameNode负责执行对文件进行open,close,rename file&&directory 操作,也负责维护block和DataNode之间的map关系。DataNode则负责block级别 create delete read replication 等操作。 整个架构如下图所示:

    YARN全称是yet another resource manager。 由于hadoop是一个分布式的架构,所以需要一个统一的资源管理器来调度分配各种资源。

    spark的安装

    如下

    netflow数据的生成与处理

    netflow是路由器设备在激活了netflow feature后生产的一些统计数据,这些数据会发给收集器如pmacct。 数据转换成csv格式大概如下:

    TAG,IN_IFACE,OUT_IFACE,SRC_IP,DST_IP,SRC_PORT,DST_PORT,PROTOCOL,ip_dscp,flow_direction,PACKETS,BYTES
    10001,1,1,42.120.83.100,42.120.85.157,12995,18193,ipv6-crypt,16,0,5,2042
    10001,1,1,42.120.83.246,42.120.87.145,12517,19733,ospf,10,1,6,2294
    10001,1,1,42.120.87.154,42.120.86.250,18757,11987,ipv6-auth,22,1,3,3236

    具体请了解netflow。

    这里说的处理是指做两件事:

    1. 去掉第一行的TAG

    2. 加入 timestamp 列

    3. 把文件放入HDFS

    通过spark 计算netflow数据

    这里用spark计算我们需要的数据。

  • 相关阅读:
    redis windows下安装
    Plupload 多实例上传 测试可用
    Plupload 上传详细讲解,Plupload 多实例上传,Plupload多个上传按钮--推荐使用
    Class 'AppHttpControllersDB' not found and I also cannot use a new Model
    laravel 控制器类DB类操作
    php-memcached详解
    PHP电商订单自动确认收货redis队列
    写一个PHP函数,实现扫描并打印出指定目录下(含子目录)的所有jpg文件名
    thinkphp5网站中集成使用支付宝手机支付接口
    Memcache服务搭建
  • 原文地址:https://www.cnblogs.com/kramer/p/4875744.html
Copyright © 2011-2022 走看看