storm中的一些概念】的更多相关文章

1.topology 一个topolgy是spouts和bolts组成的图,通过stream groupings将图中的spout和bolts连接起来:如图所示: 一个topology会一直运行知道你手动kill掉,Storm自动重新分配执行失败的任务,并且Storm可以保证你不会有数据丢失(如果开启了高可靠性的话).如果一些机器意外停机它上面的所有任务会被转移到其他机器上: 运行一个toplogy很简单,首先,把你所有的代码以及所依赖的jar打进一个jar中.然后运行类似下面的命令: stor…
Storm是一个流计算框架,处理的数据是实时消息队列中的,所以需要我们写好一个topology逻辑放在那,接收进来的数据来处理,所以是通过移动数据平均分配到机器资源来获得高效率. Storm的优点是全内存计算,因为内存寻址速度是硬盘的百万倍以上,所以Storm的速度相比较Hadoop非常快(瓶颈是内存,cpu).其缺点就是不够灵活:必须要先写好topology结构来等数据进来分析. Storm 关注的是数据多次处理一次写入,而 Hadoop 关注的是数据一次写入,多次查询使用.Storm系统运行…
1.Tuple,Value,Field Tuple官方解释: "A tuple is a named of values where each value can be any type." tuple是一个类似于列表的东西,存储的每个元素叫做field(字段),可以是任何类型. Storm使用tuple作为它的数据模型, 每个tuple是一堆值,每个值都有一个名字, 一个Tuple代表数据流中的一个基本处理单元, 例如:一条cookie日志,它可以包含多个Field, 每个Field…
从图可以看出来:topology>supervisor>worker>excutor>task; 也就是说一个topology可以运行在多个supervisor上,一个supervisor可以运行多个worker(进程),一个worker里面可以有多个excutor(线程),一个excutor可以运行多个task: 关于task的大小差不多可以理解为一个task实例一个bolt.task数默认是不设置的,默认和excutor数相同,也就是说一个excutor运行一个task,可以通…
业务描述: 统计从kafka spout中读取的数据条数,以及写入redis的数据的条数,写入hdfs的数据条数,写入kafaka的数据条数.并且每过5秒将数据按照json文件的形式写入日志.其中保存为json数据的格式为:时间戳 + 进程名称 + 读kafka数据条数 + 写入redis数据条数 + 写入hbase条数 + 写入kafka条数.time_stamp + process_name + from_kafka + to_redis + to_hdfs + to_kafka 给出实现的…
[本篇文章主要是介绍Storm的特点.核心概念.以及Storm的生态现状:从总体上对storm有个基本的认识] Storm是Apache下的一个免费的.开源的.分布式流式计算框架,官方网址:https://storm.apache.org/ Storm的基本框架如下: nimbus:整个集群的主节点,用于接收用户提交的作业(拓扑),并向supervisor分发代码,监视作业/worker的状态:分配系统资源.它类似于Hadoop中的JobTracker. supervisor:真正的工作节点,根…
Storm中涉及到了很多组件,例如nimbus,supervisor等等,在参考了这两篇文章之后,对这个有了更好的理解. Understanding the parallelism of a Storm topology https://github.com/nathanmarz/storm/wiki/Understanding-the-parallelism-of-a-Storm-topology http://www.cnblogs.com/yufengof/p/storm-worker-e…
这里做一些补充: worker是一个进程,由supervisor启动,并只负责处理一个topology,所以不会同时处理多个topology. executor是一个线程,由worker启动,是运行task的物理容器,其和task是1 -> N关系. component是对spout/bolt/acker的抽象. task也是对spout/bolt/acker的抽象,不过是计算了并行度之后.component和task是1 -> N 的关系. supervisor会定时从zookeeper获取…
完全引用自: WebLogic 中的基本概念 WebLogic 中的基本概念 上周参加了单位组织的WebLogic培训,为了便于自己记忆,培训后,整理梳理了一些WebLogic的资料,会陆续的发出来,下面是一些基本概念. Domain : 域是作为单元进行管理的一组相关的 WebLogic Server 资源.一个域包含一个或多个 WebLogic Server 实例,这些实例可以是群集实例.非群集实例,或者是群集与非群集实例的组合.一个域可以包含多个群集.域还包含部署在域中的应用程序组件.此域…
Storm中Spout用于读取并向计算拓扑中发送数据源,最近在调试一个topology时遇到了系统qps低,处理速度达不到要求的问题,经过排查后发现是由于对Spout的使用模式不当导致的多线程同步等待.这里罗列几点个人觉得编写Spout代码时需要特别注意的地方: 1. 最常用的模式是使用一个线程安全的queue,如BlockingQueue,spout主线程从queue中读取数据:另外的一个或多个线程负责从数据源(如各种消息中间件.db等)读取数据并放入queue中. 2. 如果不关心数据是否丢…
一.Web开发中的主要概念1.静态资源:一成不变的.html.js.css2.动态资源:JavaWeb.输出或产生静态资源.(用户用浏览器看到的页面永远都是静态资源) 3.JavaEE:十三种技术的集合.JSP/Servlet属于其中的一种.容器:(服务器).支持什么技术的服务器,简称XX容器. 重量级和轻量级服务器:支持的服务多少来定. Tip:如何区分JavaSE和JavaEE的技术呢?java.***JavaSE javax.** JavaEE 二.服务器1.http://www.apac…
本文导读: 1 Worker.Executor.task详解 2 配置拓扑的并发度 3 拓扑示例 4 动态配置拓扑并发度 Worker.Executor.Task详解: Storm在集群上运行一个Topology时,主要通过以下3个实体来完成Topology的执行工作:1. Worker Process(工作进程)——Spout/Bolt中运行具体处理逻辑的进程2. Executor(线程.执行器)——物理线程3. Task(任务)——具体的处理逻辑对象 下图简要描述了这3者之间的关系: sto…
T-SQL查询进阶--理解SQL Server中索引的概念,原理以及其他   简介 在SQL Server中,索引是一种增强式的存在,这意味着,即使没有索引,SQL Server仍然可以实现应有的功能.但索引可以在大多数情况下大大提升查询性能,在OLAP中尤其明显.要完全理解索引的概念,需要了解大量原理性的知识,包括B树,堆,数据库页,区,填充因子,碎片,文件组等等一系列相关知识,这些知识写一本小书也不为过.所以本文并不会深入讨论这些主题. 索引是什么 索引是对数据库表中一列或多列的值进行排序的…
PowerShell_零基础自学课程_5_自定义PowerShell环境及Powershell中的基本概念 据我个人所知,windows下的cmd shell除了能够通过修改系统参数来对其中的环境变量进行改变外,其环境的可自定义性相对来说很困难,而在Linux环境中,可以通过修改/etc目录下的某些配置文件来达到配置shell环境的目的.也许这也是某些人诟病cmd shell功能不强的原因之一. 而目前这种状况在windows powershell中得到了改善,可以说PS中提供的自定义环境的功能…
OC中协议的概念以及用法,协议也是OC中的一个重点,Foundation框架以及我们后面在写代码都会用到. OC中的协议就是相当于Java中的接口(抽象类),只不过OC中的名字更形象点,因为我们在学习Java中的接口时候,看可以知道其实接口就相当于一种契约(协议),给他的实现类打上标记了,当然这个活在Java5.0之后,被注解替代了,因为注解就是为了此功能诞生的.协议就是定义了一组方法,然后让其他类去实现 下面来看代码:WithProtocol.h[objc]  view plaincopy …
Unity中的基本概念 本文我们介绍Unity中的基本概念,包括:场景.游戏对象.组件.预制件.资源等. 2.1.界面概览 打开Unity之后,我们大概可以看到以上画面,以上画面中即显示了我们最常用到的面板,下面介绍它们的用途.如果有些面板你没有找到,可以通过菜单Window->[面板名称]来打开,面板名称如下列英文介绍. 注意:我会在英文面板名称的下方,给出中文的翻译,不过我们在后续的章节中,尽可能还是沿用英文称呼,这样比较准确. ① Game 游戏面板 Game面板是一个画面显示区,这里显示…
2.2Unity中的基本概念 上述介绍提到了几个概念:游戏对象.场景.资源.相机,这个小节我们来深入了解,同时进行一些实践性操作.不过首先,我们需要大概了解一下Unity的工程文件夹. 2.2.1工程文件夹 在Unity工程目录下的文件夹,大致整理如下: 文件夹名称 介绍 Assets Assets文件夹是Unity中的工程资源文件夹,Unity编辑器寻找工程路径时的搜索目标.我们所有的资源都存在这个文件夹中,后续介绍的几个文件夹都由系统自动产生. Library Library文件夹是Unit…
  Mycat中的核心概念     Mycat中的核心概念 1.数据库中间件    Mycat 是一个开源的分布式数据库系统,但是由于真正的数据库需要存储引擎,而 Mycat 并没有 存储引擎,所以并不是完全意义的分布式数据库系统.Mycat 是数据库中间件,就是介于数据库与应用之间,进行数据处理与交互的中间服务.有了数据库中间件,应用只需要集中与业务处理,大量的通用的数据聚合,事务,数据源切换都由中间件来处理,中间件的性能与处理能力将直接决定应用的读写性能,所以一款好的数据库中间件至关重要.…
仿真配置中SEED的概念:仿真随机种子,是产生随机数的种子值,反应随机数的状态.只要选定一个种子值,整个随机事件系统就固定了,复杂仿真的随机过程就成了一次实现.目的是测试仿真系统的稳健性,具体来说,针对不同的Seed 值进行一系列仿真,每次不同Seed 值对应的仿真结果相近,则表明建立的模型有较高的稳健性(Scalability).一般在发布仿真结果之前都要改变仿真种子进行多次测试,如果结果完全改变,则说明模块有疏漏,所得的结果只是一个特例,而不能完全反映系统的性能. 版权声明:本文为博主原创文…
Web开发是比较费神的,需要掌握很多很多的东西,特别是从事前端开发的朋友,需要通十行才行.今天,本文向初学者介绍一些Web开发中的基本概念和用到的技术,从A到Z总共26项,每项对应一个概念或者技术. 初学者Web:介绍一些前端开发中的基本概念和用到的技术 A - AJAX AJAX 全称为"Asynchronous JavaScript and XML"(异步JavaScript和XML),是一种创建交互式网页应用的网页开发技术.根据Ajax提出者Jesse James Garrett…
一.前述 Drpc(分布式远程过程调用)是一种同步服务实现的机制,在Storm中客户端提交数据请求之后,立刻取得计算结果并返回给客户端.同时充分利用Storm的计算能力实现高密度的并行实时计算. 二.具体原理 DRPC 是通过一个 DRPC 服务端(DRPC server)来实现分布式 RPC 功能的.DRPC Server 负责接收 RPC 请求,并将该请求发送到 Storm中运行的 Topology,等待接收 Topology 发送的处理结果,并将该结果返回给发送请求的客户端.(其实,从客户…
时序分析中的基本概念和术语 Basic concept and Terminology of Timing Analysis 原文标题及网址: [时序约束学习笔记1]Vivado入门与提高--第12讲 时序分析中的基本概念和术语-七夜浮生-电子技术应用-AET-北大中文核心期刊-最丰富的电子设计资源平台http://blog.chinaaet.com/yuwoo/p/5100017294 最近正在学习Vivado时序约束这块的东西,上周六Xilinx的官方培训老师讲了一天,听的是云里雾里的,发现…
一.Elasticsearch中的基本概念 以下概念基于这个例子:存储员工数据,每个文档代表一个员工 1)索引(index)  在Elasticsearch中存储数据的行为就叫做索引(indexing). 2)类型(type) 在Elasticsearch中,文档归属于一种类型(type),而这些类型存在于索引(index)中 3)文档(documents) Elasticsearch是面向文档(document oriented)的,这意味着它可以存储整个对象或文档(document).然而它…
最近在学习Java Web,发现Java Web的概念很多,而且各个概念之间的关系也挺复杂,本篇博客把这些关系总结于此,主要参考的博客附在文章末尾. 概念 服务器 服务器,硬件角度上说就是一台高性能的计算机.我们通常指的服务器其实应该是装有能够处理具体请求事务的服务器软件的计算机.比如最常见的www服务器.mail服务器.计费服务器.ftp服务器等等.很多时候人们常把诸如Tomcat.IIS.Weblogic 也称之为web服务器,其实这些只是用于开发.集成.部署和管理Web应用.网络应用和数据…
完全引用自: WebLogic 中的基本概念 WebLogic 中的基本概念 上周参加了单位组织的WebLogic培训,为了便于自己记忆,培训后,整理梳理了一些WebLogic的资料,会陆续的发出来,下面是一些基本概念. Domain : 域是作为单元进行管理的一组相关的 WebLogic Server 资源.一个域包含一个或多个 WebLogic Server 实例,这些实例可以是群集实例.非群集实例,或者是群集与非群集实例的组合.一个域可以包含多个群集.域还包含部署在域中的应用程序组件.此域…
原文 域和作用空间 本地域,函数域(nonlocal)和 全局域(global) def scope_test(): def do_local(): spam = "local spam" def do_nonlocal(): nonlocal spam spam = "nonlocal spam" def do_global(): global spam spam = "global spam" spam = "test spam&q…
DOM:浏览器中提供的概念: 虚拟DOM:框架中的概念:需要开发框架的程序员手动用JS对象来模拟DOM元素和嵌套关系: 本质:用JS对象,模拟DOM树: 目的:实现页面的按需更新: 要求:点击列头,实现按需排序: 1. 数据从哪儿来:从数据库查询而来 2. 数据存放在哪:浏览器内存中以对象数组形式表示 3. 如何渲染到页面: 方案1:手动for循环整个数组.str+='<tr></tr>' 方案2: 使用模板引擎.atr-template;(与方案1没有本质的区别,只是方便) 上述…
函数中闭包的概念说明 闭包: 内层函数对外层函数非全局变量的引用,就叫做闭包 判断闭包方法 ._closure_ : 执行后返回有效信息就是闭包,返回none就不是闭包 举例1: 是闭包 def wrapper(): name = 'alex' def inner(): print(name) inner() print(inner.__closure__) #(<cell at 0x006121D0: str object at 0x00227380>,) wrapper() 结果: ale…
## 『Python题库 - 简答题』 Python中的基本概念 1. Python和Java.PHP.C.C#.C++等其他语言的对比? 2. 简述解释型和编译型编程语言? 3. 代码中要修改不可变数据会出现什么问题? 抛出什么异 4. print 调用 Python 中底层的什么方法? 5. 简述你对 input()函数的理解? 6. Python解释器种类以及特点? 7. Python2 中 range 和 xrange 的区别? 8. 位和字节的关系? 9. b.B.KB.MB.GB 的…
在k8s中的基本概念 一.Pod1. podk8s下最重要也最基本的概念,由一个根容器Pause和许多用户业务容器组成,是容器的载体. 2. pod的yaml定义格式及字段 apiVersion: v1 //版本 kind: pod //类型,pod metadata: //元数据 name: String //元数据,pod的名字 namespace: String //元数据,pod的命名空间 labels: //元数据,标签列表 - name: String //元数据,标签的名字 ann…