• storm 简介


     一、storm中一些定义

           1.Topologies

          Storm topology类似于一个MapReduce job. 唯一不同的是MapReduce任务会结束而 topology一直运行。一个topology是由spouts,bolts组成的流分组图。

           2.Streams

        Stream由无序的tuples组成。tuple可以包含integers, longs, shorts, bytes, strings, doubles, floats, booleans, and byte arrays,也可以自己定义序列化使用自己定义的类型。

          Streams are defined with a schema that names the fields in the stream's tuples. By default, tuples can contain integers, longs, shorts, bytes, strings, doubles, floats, booleans, and byte arrays. You can also define your own serializers so that custom types can be used natively within tuples

           3.Spouts

           spouts是topology的源头, 一般spouts 会从外部读取tuples到topology.

          4.bolts

            所有的处理工作都是在bolts中完成的。Bolts可以做filtering, functions, aggregations, joins, talking to databases等等。

            定义一个bolt时候,需要从另一个组件中订阅流量。declarer.shuffleGrouping("1") 从 component "1"订阅流量。

          5.Stream groupings

          定义一个topology通常会为每个bolt指定stream输入。stream分组就是将stream分配给bolts。
          6.Tasks
         每个spout或bolt在cluster中执行很多任务。 每个任务对应一个执行线程,Stream groupings定义如何将元组从一组任务发送到另一组任务。
          7.works
          Topologies execute across one or more worker processes. Each worker process is a physical JVM and executes a subset of all the tasks for the topology. 
     二、storm配置对应的topology

     二、参考文献

    http://storm.apache.org/releases/2.0.0-SNAPSHOT/Concepts.html

    http://storm.apache.org/releases/2.0.0-SNAPSHOT/Understanding-the-parallelism-of-a-Storm-topology.html

  • 相关阅读:
    CentOS-Docker安装RabbitMQ集群(rabbitmq:3.7.16-management)
    Xcode Shortcuts
    In App Purchase
    CoreData
    Sandbox 文件存放规则
    在 mac os 上搭建 git server
    Git
    Git and Xcode
    心算技巧
    AppleScript
  • 原文地址:https://www.cnblogs.com/hzcxy/p/6644881.html
Copyright © 2020-2023  润新知