{"resolved":true,"match_type":"uuid","source_type":"original_book","book_id":"cd4f7678-cd9b-4971-bde0-e9ad46a6cc71","title":"人工智能与大数据技术导论","author":null,"edition":null,"publisher":null,"year":null,"isbn":"9787302517986","requested_by":"printed_page","book":{"source_type":"original_book","book_id":"cd4f7678-cd9b-4971-bde0-e9ad46a6cc71","id":"cd4f7678-cd9b-4971-bde0-e9ad46a6cc71","uuid":"cd4f7678-cd9b-4971-bde0-e9ad46a6cc71","title":"人工智能与大数据技术导论","normalized_title":"人工智能与大数据技术导论","author":null,"edition":null,"publisher":null,"year":null,"isbn":"9787302517986","isbns":["9787302517986"],"parsed":true,"ai_readable":true,"document_type":"book","page_count":490,"navigation_url":"https://workshop.closeclaw.top/ai/book/cd4f7678-cd9b-4971-bde0-e9ad46a6cc71","title_url":"https://workshop.closeclaw.top/ai/title/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD%E4%B8%8E%E5%A4%A7%E6%95%B0%E6%8D%AE%E6%8A%80%E6%9C%AF%E5%AF%BC%E8%AE%BA","fixed_page_url_template":"https://workshop.closeclaw.top/ai/book/cd4f7678-cd9b-4971-bde0-e9ad46a6cc71/page/{printed_page}","path_api_url_template":"https://workshop.closeclaw.top/api/ai/book/cd4f7678-cd9b-4971-bde0-e9ad46a6cc71/page/{printed_page}","read_url":"https://workshop.closeclaw.top/api/ai/read/cd4f7678-cd9b-4971-bde0-e9ad46a6cc71","page_url":"https://workshop.closeclaw.top/api/ai/books/cd4f7678-cd9b-4971-bde0-e9ad46a6cc71/page","search_url":"https://workshop.closeclaw.top/api/ai/books/cd4f7678-cd9b-4971-bde0-e9ad46a6cc71/search"},"page":{"printed_page":82,"pdf_page":98,"physical_index":98,"physical_index_base":0,"printed_page_status":"recognized","page_sha256":"c7c7bda0f4cd20b6a63baa2d71ff8a34bfbd0a9caddafa667f64e61896de03ce"},"chapter":"第3章","content":"3.4.5 Storm 系统\n\nStorm是Twitter支持开发的一款分布式的、开源的、实时的、主从式的大数据流式计算系统，使用的协议为EclipsePublicLicense1.0，其核心部分使用高效流式计算的函数式语言Clojure编写，极大地提高了系统性能。但为了方便用户使用，支持用户使用任意编程语言进行项目的开发。\n\n1. 任务拓扑\n\n任务拓扑（Task Topology）是 Storm 的逻辑单元，一个实时应用的计算任务将被打包为任务拓扑后发布，任务拓扑一旦提交将会一直运行，除非显式地去中止。一个任务拓扑是由一系列 Spout 和 Bolt 构成的有向无环图，通过数据流（stream）实现 Spout 和 Bolt之间的关联，如图3-11左图所示。其中，Spout负责从外部数据源不间断地读取数据，并以元组（Tuple）的形式发送给相应的Bolt。Bolt负责对接收到的数据流进行计算，实现过滤、聚合、查询等具体功能，可以级联，也可以向外发送数据流。\n\n数据流是Storm对数据的抽象，它是时间上无穷的元组序列。如图3-11右图所示，数据流通过流分组（streamgrouping）所提供的不同策略实现在任务拓扑中的流动。此外，为了确保消息能且仅能被计算1次，Storm还提供了事务任务拓扑。\n\n2. 总体架构\n\n如图3-12所示，Storm采用主从系统架构，在一个Storm系统中有两类节点（一个主节点Nimbus、多个从节点Supervisor）及3种运行环境（Master、Cluster和Slaves）。\n\n人工智能与大数据技术导论\n\n82","previous_page":81,"next_page":83}