草庐IT

innodb-performance-optimization

全部标签

performance - Hadoop 性能建模

我正在研究Hadoop性能建模。Hadoop有200多个参数,因此无法手动设置它们。我们经常使用默认参数值运行hadoop作业(例如使用默认值io.sort.mb、io.sort.record.percent、mapred.output.compress等)。但是使用默认参数值给了我们次优性能。HerodotosHerodotou(http://www.cs.duke.edu/starfish/files/vldb11-job-optimization.pdf)在这方面做了一些工作来提高性能。但我对他们的工作有以下疑问--他们在作业开始时(根据数据的比例假设)为MapReduce作业的

performance - 如何知道 MR2 中的 HDFS 并发吞吐量

我是Hadoop新手。最近我正在尝试使用TestDFSIO来评估我的hdfs性能,我有一个关于并发吞吐量的问题:在MR1并发吞吐量=报告的吞吐量x映射槽数例如ThroughputMB/sec:141.4427MapSlots=2ConcurrentThroughput=282.8854MB/sec.但是在MR2中(YARN中不再存在map和reduceslot),如何计算并发吞吐量? 最佳答案 这是一篇很好的简单文章,它解释了这些“并发”词背后的大部分数学知识:BenchmarkingandStressTestinganHadoop

performance - 如何做Hadoop集群的负载和性能测试?

是否有任何工具可以生成具有预定义的用户请求增加(运行相同的map-reduce作业)并监控负载下Hadoop集群的某些特定指标的自动化场景?我正在寻找类似LoadRunner的东西但免费/开源工具。该工具不一定要有很酷的用户界面,而是能够记录和保存场景,其中包括供多个用户使用的加速和会合点(等到其他用户到达某个点并同时执行某些操作)。我要测试的Hadoop发行版是最新的MapR。搜索互联网并没有为HPLoadRunner带来任何好的免费替代品。如果您有Hadoop(或特别是MapR)负载测试的经验,请分享您使用的工具。 最佳答案 您

performance - 协助减少 distcp 操作的执行时间

我们有许多distcp作业将数据从我们的主集群复制到我们的备份集群。这些作业全天运行并复制关键数据库的几乎所有表。我们在这里使用webhdfs。其中一些作业运行数小时(对于巨大的表(ORC格式的))。有什么方法可以优化两个集群之间的distcp操作。欢迎提出任何建议。我们尝试使用带宽来加速。以下是我们脚本的摘录。PROP="-Dmapreduce.task.timeout=300000-Dmapred.job.queue.name=$YARN_QUEUE-Dmapred.job.name="cpy-${jobName}"-bandwidth800"hadoopdistcp${PROP}

performance - 配置单元分析查询花费大量时间

为了加快对大型表的ETL查询,我们在晚上对这些表和日期列运行许多analyze查询。但是这些针对列的analyze查询会占用大量内存和时间。我们正在使用tez。有什么方法可以像一些设置命令一样优化analyze查询。 最佳答案 如果您使用插入覆盖加载表,则可以通过在插入覆盖查询期间设置hive.stats.autogather=true自动收集统计信息。如果表是分区的并且分区是增量加载的,那么你可以只分析最后的分区。ANALYZETABLE[db_name.]tablename[PARTITION(partcol1[=val1],p

performance - Hadoop Map reduce - 如何加速作业启动/设置

我正在使用mongo-hadoop适配器来运行map/reduce作业。除了启动时间和工作所花费的时间外,一切都很好。即使数据集非常小,map时间也为13秒,reduce时间为12秒。事实上,我已经更改了mapred-site.xml和core-site.xml中的设置。但是map/reduce花费的时间似乎是恒定的。有什么办法可以减少它。我还从hanborq探索了优化的hadoop分布.他们使用工作池来更快地启动/设置作业。由于hanborq分布不是很活跃,是否有其他地方可用的等效项。它是4个月前更新的,基于旧版本的hadoop。我的一些设置如下:mapred-site.xml:ma

performance - HDFS序列文件性能调优

我正在尝试使用Hadoop来处理许多存储在序列文件中的小文件。我的程序是高度IO绑定(bind),因此我想确保IO吞吐量足够高。我编写了一个MR程序,它从序列文件中读取小样本文件并将这些文件写入ramdisk(/dev/shm/test/)。还有另一个独立的程序可以删除写入ram磁盘的文件而不需要任何计算。所以测试应该几乎是纯IO绑定(bind)。然而,IO吞吐量并没有我预期的那么好。我有5个数据节点,每个数据节点有5个数据磁盘。每个磁盘可以提供大约100MB/s的吞吐量。理论上这个集群应该可以提供100MB/s*5(磁盘)*5(机器)=2500MB/s。但是,我只得到大约600MB/

optimization - 如何在 awk 中编写优化的 reducer

我有下面的awkreducer程序,它在计算键值对中的值时运行良好。#!/bin/awk-fBEGIN{FS="\t";}{A[$1]+=$2;}END{for(iinA){printf("%s\t%d\n",i,A[i])}}上面的reducer效果很好,有没有什么优化的写法...?输入:APPLE1APPLE11ORANGE1ORANGE1MANGO1BANANA1111ORANGE11APPLE1BANANA1输出:APPLE3BANANA2MANGO1ORANGE35 最佳答案 取决于您对优化的定义-您当前的解决方案是有限的

optimization - 优化 Pig 请求

我想在嵌入式java程序中执行pig命令。目前,我在本地模式下尝试Pig。我的数据文件大小约为15MB,但此命令的执行时间很长,所以我认为我的脚本需要优化...我的脚本:A=LOAD'data'USINGPigPrismeLoader('data.xml');filter_response_time_less_than_1_s=FILTERABY(response_time=1000.0ANDresponse_time=2000.0);star__zne_asfo_access_log=FOREACH(COGROUPABY(date_day,url,date_minute,ret_co

performance - 我如何评估我的 spark 应用程序

你好我刚刚创建了我的第一个spark应用程序,现在我可以访问一个集群(12个节点,每个节点有2个处理器Intel(R)Xeon(R)CPUE5-26502.00GHz,每个处理器有8个内核),我想知道帮助我调整应用程序和观察其性能的标准是什么。我已经访问过spark的官方网站,它在谈论数据序列化,但我无法确切地了解它是什么或如何指定它。它也在谈论“内存管理”、“并行级别”,但我不明白如何控制这些。还有一件事,我知道数据的大小有影响,但我拥有的所有files.csv文件的大小都很小,我怎样才能获得大文件(10GB、20GB、30GB、50GB,100GB,300GB,500GB)请尽量为