zoukankan      html  css  js  c++  java
  • 【Storm】学习笔记

    Storm
    1 基本概念
    1.1 分布式、可扩展、高容错、实时流处理、跨语言
    1.2 应用场景
    1.2.1 实时分析
    1.2.2 在线机器学习
    1.2.3 分布式RPC
    1.2.4 ETL数据抽取
    1.3 一般需要结合数据库、消息队列等使用,自己本身不存储数据,数据的来源、输出都在消息队列或者数据库
    1.4 概念
    1.4.1 Topo拓扑,集群,任务,有向图
    1.4.2 Spout获取数据,消息队列、文件、Socket等
    1.4.3 Bolt单元处理节点,可以多个环节组合处理,自定义级联关系,MR是比较固定的
    1.4.4 Tuple消息元组,Spout、Bolt之间数据传递的封装形式
    1.4.4.1 若干个字段、元素
    1.4.4.2 根据业务逻辑事先定义好
    1.4.4.2.1 字段名称不用再发送了
    1.4.4.2.2 提高性能
    1.4.5 Sreams不同的消息走不通的路径,路径就是流,分流可以有不同的策略,随机、广播、ID等形式
    1.4.6 业务类会分发提交到集群,并发的在很多supervisor机器上面执行
    1.4.7 supervisor会启动Worker进程,进程里面启动多个Executor线程,线程中可以运行多个Task实例,进程、线程、实例数量都可以自定义
    1.4.8 nimbus是集群的协调管理节点, supervisor负责具体的计算
    1.4.9
    1.4.10
    1.4.11
    2 开发
    2.1 见demo示例
    3 高级话题
    3.1 分布式锁实现,并发任务同步控制
    3.1.1 通过ZK获取锁
    3.2 事务型topo实现机制。开发
    3.3 与其他框架整合,如消息组件flume/kafka、数据库mysql/redis/hbase等
    3.4 滑动窗口实现监控告警,如最近5min的TopN、PV、UV等数据
    3.4.1 实时数据流+Bolt少量缓存
    3.4.2 存量数据使用Hive、Presto、Spark等实现分析
    3.5
     
     
     
     
  • 相关阅读:
    XMU1349 xmu_1349
    字符串排序
    linux磁盘文件与目录管理系统(2)
    poj 3667 Hotel
    poj 3468 A Simple Problem with Integers
    linux文与目录管理
    Linux的磁盘与文件管理系统(1)
    hdu 1698 Just a Hook
    poj3225 Help with Intervals
    poj 2886Who Gets the Most Candies?
  • 原文地址:https://www.cnblogs.com/junneyang/p/7723718.html
Copyright © 2011-2022 走看看