草庐IT

my_algorithm

全部标签

algorithm - 集群作业调度算法

我正在寻找适用于以下问题的算法:有多台电脑(具体数目未知)。每台计算机从某个中央队列中提取作业,完成作业,然后提取下一个。工作是由一些用户组产生的。有些用户提交了很多工作,有些则提交了一点。作业消耗相等的CPU时间(不是真的,只是近似值)。中央队列在调度作业时应该是公平的。此外,提交大量作业的用户应该拥有一些最小的资源份额。我正在为这个调度寻找一个好的算法。考虑了两个候选人:类似Hadoop的公平调度程序。这里的问题是:当我的集群大小未知时,我在哪里可以获得最小份额?将一些惩罚与每个用户相关联。安排用户的工作时增加惩罚。使用将作业调度给用户的概率作为1-(归一化惩罚)。这有点像步幅调度

algorithm - Hadoop 适合哪种类型的并行算法?

我完全不是Hadoop专家,但我的理解是Hadoop非常适合并行算法,其中并行性表现为map-reduce形式或任何其他类型的分而治之。还有其他类型的算法技术也很适合吗? 最佳答案 Hadoop适用于令人尴尬的并行工作负载(并行任务之间没有依赖性)。进程之间没有消息传递机制。Map和Reduce进程遵循基于IO的通信模式,这本身就是一个很大的开销。MapReduce不适合编写迭代算法(例如KMeans、PageRank),因为每次迭代都是一个单独的mapreduce应用程序,并且由于巨大的IO开销,算法的性能会下降。对于迭代算法,您

algorithm - 为什么我们说 map-reduce 比传统方法更好地解决了 "Paper reference"问题?

据说当我们希望对论文引用进行统计时,map-reduce可以比传统方式做得更好,因为传统方式涉及大量内存/磁盘切换。我不太明白为什么传统方法不好。假设我只在一台机器上运行map-reduce(没有集群),它是否仍然比传统方式更好地解决了一些问题?或者换句话说,“map-reduce”这种算法范式本身,从算法的角度来说,在解决问题上是否有一些优势?谢谢。 最佳答案 AtbestM/R允许重新应用与高级统计包相同的算法。但更典型的是,在使用的算法中会做出一些牺牲——以允许以分布式方式运行。Map/Reduce在交叉采样(或任何其他采样方

hadoop - Hive 给出 SemanticException [错误 10014] : when Running my UDF

我有一个执行GeoIP查找的配置单元UDF。publicstaticTextevaluate(TextinputFieldName,Textoption,TextdatabaseFileName){StringinputField,fieldOption,dbFileName,result=null;inputField=inputFieldName.toString();fieldOption=option.toString();dbFileName=databaseFileName.toString();ExtractDataeed=newExtractData();try{res

algorithm - 通过仅知道开始和结束的集合来估计当前进度

在只知道第一个和最后一个项目而不是项目数量的情况下,如何估算迭代遍历集合的进度?AAAAAAA............?........ZZZZZZZZZZZZ第一项和最后一项保证是整个集合的字典序最小值和最大值。可以假定项目值的分布接近均匀。您收到元素的顺序是未知的,可能无法预测,也可能是有序的。项目保证是唯一的。只要随着时间的推移,估计值通常会接近99.999%,即使它出现波动也没关系。这让我想起了Germantankproblem除了没有(据我所知)一种方法来减去或获取字典顺序中项目之间的距离。例如,我正在考虑获取尚未收到的最大项目并将其与最后一项进行比较,但我不知道如何获得任意

安装的mysql中没有my.ini文件

使用的这么长时间的mysql,有一天我突然需要使用mysql的配置文件my.ini时发现没有这个文件并且这个文件不是被隐藏了。查看自己的mysql中是否有my.ini,也可能是这个文件是隐藏文件你没有设置可以查看隐藏文件一般情况下mysql都是安装在C:\ProgramFiles\MySQL\MySQLServer5.7这个地方,我之前好像是用的安装包搞的mysql所以没有my.ini这个文件。这个文件是关于mysql一个重要配置文件。如果没有的话可以这样。这个我也是看别人的文章搞的。注意,在你准备把my.ini这个文件搞出来之前先把你之前数据库中的数据都转储sql一下因为,因为在这个过程中会

algorithm - 对于相似图像有什么好的最近邻算法吗?

我正在寻找一种可以在大型集合中搜索相似图像的算法。我目前正在使用SURFimplementation在OpenCL中。一开始我用的是KNN搜索算法将每个图像的兴趣点与集合的其余部分进行比较,但测试表明它不能很好地扩展。我还尝试了KNN-Join的Hadoop实现这在HDFS中确实占用了大量临时空间,与输入数据量相比太多了。事实上,由于我的输入向量(64)的维度,成对距离方法并不合适。我听说过LocallySensitiveHashing,想知道是否有任何免费的实现,或者是否值得实现它,也许还有另一种我不知道的算法? 最佳答案 IIR

algorithm - 从 mapreduce 中的 n 个元素中选择 k

假设输入x记录,其中n具有所需的属性(例如,它们的值为正)并且所有x具有唯一键。我想做的是,在MapReduce中使用仅限map的作业,恰好发出这些n记录中的k。例如,假设这是我的输入:(a,10)(g,-3)(c,-2)(f,4)(s,2)并且我想发射2个具有正值的元素。在这个例子中,x是5,n是3,k是2。我知道x(我认为不需要),k和n在作业开始之前。问题是具有正值的记录可以由不同的映射器处理。我想到的是,在每个映射器中使用大小为n的哈希表,并使用键的哈希值将具有正值的元素放入该哈希表中。然后,哈希表的前k位置的元素将被发出。但是,如果两个记录落在同一个哈希桶中,这将不起作用。还

mysql - 如何在 MySQL my.cnf 中永久设置 sql-mode ="NO_ENGINE_SUBSTITUTION"

更新于2015年1月18日修复在我们最近更新到MySQL5.6.27(来自Ubuntu存储库)之后,此选项现在可以使用。所以这似乎是以前版本的MySQL的问题。原始问题随着对MySQL(5.6.20)的新升级,更新和插入失败,除非我将sql-mode设置为NO_ENGINE_SUBSTITUTION。感谢documentation,我可以从mysql终端运行以下命令并解决问题(暂时):SETGLOBALsql_mode='NO_ENGINE_SUBSTITUTION';SETSESSIONsql_mode='NO_ENGINE_SUBSTITUTION';`但是下次MySQL重新启动时

mysql - 如何在 MySQL my.cnf 中永久设置 sql-mode ="NO_ENGINE_SUBSTITUTION"

更新于2015年1月18日修复在我们最近更新到MySQL5.6.27(来自Ubuntu存储库)之后,此选项现在可以使用。所以这似乎是以前版本的MySQL的问题。原始问题随着对MySQL(5.6.20)的新升级,更新和插入失败,除非我将sql-mode设置为NO_ENGINE_SUBSTITUTION。感谢documentation,我可以从mysql终端运行以下命令并解决问题(暂时):SETGLOBALsql_mode='NO_ENGINE_SUBSTITUTION';SETSESSIONsql_mode='NO_ENGINE_SUBSTITUTION';`但是下次MySQL重新启动时