首页 文章 精选 留言 我的

精选列表

搜索[文档处理],共10015篇文章
优秀的个人博客,低调大师

Apache Storm 官方文档 —— 配置

Storm 有大量配置项用于调整 nimbus、supervisors 和拓扑的行为。有些配置项是系统级的配置项,在拓扑中不能修改,另外一些配置项则是可以在拓扑中修改的。 每一个配置项都在 Storm 代码库的defaults.yaml中有一个默认值。可以通过在 Nimbus 和 Supervisors 的环境变量中定义一个 storm.yaml 来覆盖默认值。最后,在使用StormSubmitter提交拓扑时也可以定义基于具体拓扑的配置项。但是,基于拓扑的配置项仅仅能够覆盖那些以 “TOPOLOGY” 作为前缀的配置项。 Storm 0.7.0 以上版本支持覆写每个 Bolt/Spout 的配置信息。不过,使用这种方式只能修改以下几个配置项: “topology.debug” “topology.max.spout.pending” “topology.max.task.parallelism” “topology.kryo.register”:由于序列化对拓扑中的所有组件都是可见的,这一项与其他几项稍微有一些不同,详细信息可以参考Storm 的序列化 Storm 的 Java API 支持两种自定义组件配置信息的方式: 内置型:在需要配置的 Spout/Bolt 中覆写getComponentConfiguration方法,使其返回特定组件的配置表; 外置型:TopologyBuilder中的setSpout与setBolt方法会返回一个带有addConfiguration方法的ComponentConfigurationDeclarer对象,通过addConfiguration方法就可以覆写对应组件的配置项(同时也可以添加自定义的配置信息——译者注)。 配置信息的优先级依次为:defaults.yaml < storm.yaml < 拓扑配置 < 内置型组件信息配置 < 外置型组件信息配置。 相关资料 Config:此类包含所有可配置项的列表,对于创建拓扑配置信息很有帮助 defaults.yaml:所有配置项的默认值 配置 Storm 集群:说明了如何创建、配置一个 Storm 集群 在生产环境中运行拓扑:列出了在集群中运行拓扑的一些有用的配置项 本地模式:列出了使用本地模式时比较有用的配置项 转载自并发编程网 - ifeve.com

优秀的个人博客,低调大师

《Spark 官方文档》硬件配置

硬件配置 Spark开发者们常常被问到的一个问题就是:如何为Spark配置硬件。我们通常会给出以下的建议,但具体的硬件配置还依赖于实际的使用情况。 存储系统 因为绝大多数Spark作业都很可能是从外部存储系统加载输入数据(如:HDFS或者HBase),所以最好把Spark部署在离这些存储比较近的地方。建议如下: 只要有可能,就尽量在HDFS相同的节点上部署Spark。最简单的方式就是,在HDFS相同的节点上独立部署Spark(standalone mode cluster),并配置好Spark和Hadoop的内存和CPU占用,以避免互相干扰(对Hadoop来说,相关的选项有 mapred.child.java.opts – 配置单个任务的内存,mapred.tasktracker.map.tasks.maximun和mapred.tasktracker.reduce.tasks.maximum – 配置任务个数)。当然,你也可以在一些通用的集群管理器上同时运行Hadoop和Spark,如:Mesos或Hadoop YARN。 如果不能将Spark和HDFS放在一起,那么至少要将它们部署到同一局域网的节点中。 对于像HBase这类低延迟数据存储来说,比起一味地避免存储系统的互相干扰,更需要关注的是将计算分布到不同节点上去。 本地磁盘 虽然大部分情况下,Spark都是在内存里做计算,但它仍会使用本地磁盘存储数据,如:存储无法装载进内存的RDD数据,存储各个阶段(stage)输出的临时文件。因此,我们建议每个节点上用4~8块磁盘,非磁盘阵列方式挂载(只需分开使用单独挂载点即可)。在Linux中,挂载磁盘时使用noatimeoption可以减少不必要的写操作。在Spark中,配置(configure)spark.local.dir 属性可指定Spark使用的本地磁盘目录,其值可以是逗号分隔的列表以指定多个磁盘目录。如果该节点上也有HDFS目录,可以和HDFS共用同一个块磁盘。 内存 一般来说,Spark可以在8GB~几百GB内存的机器上运行得很好。不过,我们还是建议最多给Spark分配75%的内存,剩下的内存留给操作系统和系统缓存。 每次计算具体需要多少内存,取决于你的应用程序。如需评估你的应用程序在使用某个数据集时会占用多少内存,可以尝试先加载一部分数据集,然后在Spark的监控UI(http://<driver-node>:4040)上查看其占用内存大小。需要注意的是,内存占用很大程度受存储级别和序列化格式影响 – 更多内存优化建议,请参考调优指南(tuning guide)。 最后,还需要注意的是,Java虚拟机在200GB以上内存的机器上并非总是表现良好。如果你的单机内存大于200GB,建议在单个节点上启动多个worker JVM。在Spark独立部署模式下(standalone mode),你可在conf/spark-env.sh 中设置 SPARK_WORKER_INSTANCES 来配置单节点上worker个数,而且在该文件中你还可以通过 SPARK_WORKER_CORES 设置单个worker占用的CPU core个数。 网络 以我们的经验来说,如果数据能加载进内存,那么多数Spark应用的瓶颈都是网络带宽。对这类应用,使用万兆网(10 Gigabit)或者更强的网络是最好的优化方式。对于一些包含有分布式归约相关算子(distributed reduce相关算子,如:group-by系列,reduce-by系列以及SQL join系列)的应用尤其是如此。对于任何一个应用,你可以在监控UI(http://<driver-node>:4040)上查看Spark混洗跨网络传输了多少数据量。 CPU Cores Spark在单机几十个CPU的机器上也能表现良好,因为Spark尽量减少了线程间共享的数据。但一般你至少需要单机8~16个CPU cores。当然,根据具体的计算量你可能需要更多的CPU,但是:一旦数据加载进内存,绝大多数应用的瓶颈要么是CPU,要么是网络。 转载自并发编程网 - ifeve.com

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册