草庐IT

外扩RAM

全部标签

hadoop - 为什么cloudera建议选择他们在Spark中做的executors、cores和RAM的数量

在博文中:http://blog.cloudera.com/blog/2015/03/how-to-tune-your-apache-spark-jobs-part-2/我用天真的方式来解决它:给定16个内核、64个RAM、8个线程-使用15个内核、63个RAM、6个执行程序。相反,他们推荐17个执行程序、5个内核和19个RAM。我看到他们有一个RAM方程式,但我不知道发生了什么。如果您只在一台机器上运行它(而不是通过HDFS),这是否仍然适用?感谢帮助 最佳答案 我认为他们很好地解释了为什么here:(查看从幻灯片5开始的幻灯片)

hadoop - 在 HADOOP 中洗牌时交换 RAM

我使用hadoop1.1.1。我的项目正在处理6000多个文档。我的集群包含2个节点:master(CPU:COREi7,RAM:6G)和slave(CPU:COREi3,RAM:12G)。MAPPER的数量是16。当我在洗牌阶段分配REDUCER的数量超过1(即2,...,16)时,RAM开始交换,这会导致我的系统速度显着降低。如何阻止RAM交换?在MAP和REDUCE之间的过程中RAM中保存了什么?有引用吗?非常感谢。 最佳答案 关于大师:6G物理内存;每个进程分配2G;8个映射器和8个缩减器可以同时运行;8x2+8x2,如果所

hadoop - 名称节点驻留在 RAM 或硬盘中的什么位置?

名称节点驻留在RAM或硬盘中的什么位置-Hadoop1.2.1?Namenodedaemon放置在RAM或Secondarymemory中。任何人都可以帮助了解这一点吗? 最佳答案 Namenode是运行在hadoop集群中的java进程之一。它负责管理与文件系统关联的元数据。所以这也被称为hadoop文件系统的主节点或核心节点,称为Hadoop分布式文件系统(HDFS)。Namenode将元数据存储在内存和磁盘中。对于频繁访问,RAM会更快,但是当机器出现故障或断电时,RAM中的数据将被清除。所以它也在磁盘中保留了一份元数据的副本

hadoop - 为什么 Hadoop 需要那么大的 RAM?

Hadoop容器需要的RAM比数据大小本身(我用于测试0.5GB大小的数据)实际上是它的两倍,为什么太多了?容器外的物理内存和虚拟内存的概念是什么:有时您会遇到异常,例如物理内存中有100mb或500mb,但虚拟内存中有2.5Gb超过2GB。为什么hadoop超过了虚拟内存限制,只要2GB基本上足以运行整个操作系统并将我的所有数据保存在RAM内存中,为什么2GB还不够? 最佳答案 基本上,您需要更多RAM,因为您有Java运行映射器或缩减器任务的开销。该进程的Java堆+JVM。这张图片来自ConfiguringHeapsizefo

hadoop - 如何构建大小不适合 RAM 的布隆过滤器?

假设我们必须在一台具有32GBRAM和硬盘驱动器的机器上构建一个具有10^12个桶的布隆过滤器。假设key很小并且已经在硬盘驱动器上。我们如何才能高效地构建它?我的猜测是将布隆过滤器分成4个部分(125GB/4适合32GB)。然后将数据传递4次,每次散列并更新内存中的相应切片。将4个切片连接回去以获得完整的布隆过滤器。这是正确的吗? 最佳答案 为什么需要这么大的过滤器?您是否试图高估它以处理来自流媒体源的无限数据?如果是,您可以阅读有关StableBloomfilter和ScalableBloomfilter的信息。两者都比经典的布

hadoop - 我想知道(公式)如何计算 namenode、yarn 和 Resource Manager 的 RAM、CPU 和磁盘内存

我正在尝试构建不同大小的集群,这就是为什么我需要可以从中计算namenode、yarn和资源管理器的RAM、CPU和磁盘内存的公式。还想知道RAM、CPU和磁盘之间的关系。 最佳答案 您可以使用Cloudera指南Download 关于hadoop-我想知道(公式)如何计算namenode、yarn和ResourceManager的RAM、CPU和磁盘内存,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.co

hadoop - RAM 如何用于 mapreduce 处理?

需要澄清处理,像(namenode,datanode,jobttracker,tasktracker)这样的守护进程都位于一个集群中(单节点集群-它们分布在硬盘中)。RAM或缓存​​在mapreduce处理中的用途是什么,或者mapreduce中的各种进程如何访问它? 最佳答案 JobTracker和Tasktracker在mapreduce1.x中用于管理集群中的资源,它被删除的原因是因为它不是有效的方法。自mapreduce2.x以来,引入了一种称为YARN的新机制。您可以访问此链接http://javacrunch.in/Ya

hadoop - 具有15个表联接的Hive查询预计将在3个数据节点上生成10亿条记录,每个16GB RAM这是正确的方法吗?

我叫维塔尔。Amazon上的HortonworksHDP2.4群集是3个数据节点,不同实例上的主节点。7个实例,每个16GBRAM。1TB硬盘总空间3个数据节点Hadoop2.7版我已将数据从Postgres拉入Hadoop分布式环境。数据为15表,其中4表具有1500万记录,其余为Master。我将它们放在HDFS中,压缩为ORC和SnappyCodec。使用架构创建的Hive外部表。现在,我触发一个查询,该查询将所有15个表连接在一起,并选择最终平面表中所需的列。预期记录超过15亿。我已经优化了Hive,Yarn,MapReduceEngine,也就是。并行执行,向量化,优化联接,

hadoop - 当本地模式下数据不适合 RAM 时,如何设置 Apache Spark 以使用本地硬盘?

我有50GB的数据集,不适合我工作计算机的8GBRAM,但它有1TB的本地硬盘。以下来自官方文档的链接提到,如果数据不适合内存,Spark可以使用本地硬盘。http://spark.apache.org/docs/latest/hardware-provisioning.htmlLocalDisksWhileSparkcanperformalotofitscomputationinmemory,itstilluseslocaldiskstostoredatathatdoesn’tfitinRAM,aswellastopreserveintermediateoutputbetweenst

hadoop - 映射器是否将它的中间输出存储在它运行的数据节点的 RAM 上?

我的理解是否正确,jobtracker在存储inputsplit的数据节点上启动任务(mapper/reducer),并在该数据block上运行该任务,mapper将其中间输出存储在其本地存储中?所以我的问题是:因为映射器在数据节点上运行,所以它将它的中间数据存储在数据节点的RAM上?由于数据节点磁盘是hdfs的一部分,中间输出不存储在hdfs上。 最佳答案 映射器的输出(中间数据)存储在每个映射器数据节点的本地文件系统(不是HDFS)上。这通常是一个临时目录,可以由Hadoop管理员在配置中设置。一旦Mapper作业完成或数据传输