草庐IT

Play-Services

全部标签

amazon-web-services - 降低亚马逊 EMR 上 100% Cpu 利用率的 Hive 技巧

我正在使用下表来处理大约15GB(.gz压缩)的iislog。使用亚马逊EMR(1个中型主实例、4个大型核心实例、2个任务实例)。甚至需要大约1小时才能获得此查询的结果:selecturi,cs_CookieasCookie,count(*)ashitsfromtmp1groupbycs_Cookie,uriorderbyhitsDesc;我看到所有DataNode上的cpu利用率每次都是100%。那么,有人可以建议如何减少查询时间和cpu利用率吗?表定义:createexternaltablemarData(logdatestring,timestring,computernames

hadoop - 在 Amazon Web Services 上的 Elastic MapReduce 上定义一个 HDFS 文件

我开始在HadoopMapReduce框架上实现KMeans算法。在这方面,我正在使用AmazonWebServices提供的弹性MapReduce。我想创建一个HDFS文件以在其上保存初始集群坐标,并在其上存储reducer的最终结果。我在这里完全困惑。无论如何要创建或“上传”这个文件到HDFS格式,以便所有映射器都能看到。有这方面的说明吗?谢谢。 最佳答案 最后我知道了怎么做。所以,为了将HDFS文件上传到集群中。您必须通过Putty连接到您的集群(通过使用安全key)。然后编写这些命令hadoopdistcps3://buck

amazon-web-services - 由 s3 透明支持的 EMR hdfs

有了hadoop,我可以使用s3作为存储url。但目前我有很多使用hdfs://...的应用程序,我想将整个集群和应用程序迁移到EMR和s3。我是否必须将每个应用程序中的url从hdfs://...更改为s3://...或者是否可以以某种方式告诉EMR存储s3上的hdfs内容所以每个应用程序仍然可以使用hdfs://...但实际上它会指向s3?如果是,怎么办? 最佳答案 这是一个很好的问题。有协议(protocol)欺骗这样的东西吗?您真的可以通过编写覆盖协议(protocol)处理方式的内容来影响此行为吗?老实说,这种解决方案让我

amazon-web-services - AWS EMR jupyter 密码

我正在使用EMR并想使用jupyter(ipython),所以我向集群添加了引导操作:s3://elasticmapreduce.bootstrapactions/ipython-notebook/install-ipython-notebook我执行了端口隧道以从我的本地主机访问jupyter并且工作正常,但它要求输入登录密码,尝试为空,尝试hadoop,但没有运气,有人知道jypyter密码是什么吗? 最佳答案 当我使用相同的引导操作时,我也遇到了这个问题。我试着加入Args=[--password,jupyter]我也无法工作

amazon-web-services - Amazon S3 错误代码 403 禁止进入 EMR 集群

我知道这个问题可能被问过多次,但我尝试了这些解决方案,但没有成功。因此,在新线程中询问它以获得确定的解决方案。我创建了一个具有S3只读权限(在所有S3资源上获取和列出)的IAM用户,但是当我尝试使用HDFS命令从EMR集群访问S3时,它会针对某些文件夹抛出“错误代码403禁止访问”异常。其他帖子的人回答是权限问题;我没有找到正确的解决方案,因为它是“禁止”而不是“拒绝访问”。此错误的行为仅针对存储桶内的某些文件夹(包含对象)和某些空文件夹出现。据观察,如果我使用nativeAPI调用,那么它会正常工作,如下所示:使用s3a调用时出现“禁止”异常:hdfsdfs-lss3a:///使用s

amazon-web-services - AWS Data Pipeline 中有任何东西可以通过决策脚本停止执行特定事件吗?

我们的数据管道中有5个管道,它们在以下基础上执行:管道1-管道4=每天管道5-月底。我们正在考虑为管道5创建单独管道的选项,因为它对其他管道没有任何依赖性。有没有什么办法可以执行除管道5之外的所有管道,就像我们在OOZIE中所做的那样,它可以成功地忽略管道5的执行并完成管道而没有任何“错误”/“等待依赖项”状态? 最佳答案 您最好创建多个管道并将它们设置在不同的时间表上。如果您想让事情变得有趣,您可以使用Cloudwatch调度和AWSLambda以类似cron的方式安排管道创建/删除。您还可以使用AWSStep函数来定义每个组件的

amazon-web-services - 在策略中列出 dynamo 的所有权限将不起作用,但通配符可以 dynamodb :*

所以我试图从一个步骤中找出EMR集群创建配置单元表所需的最低权限。我发现它需要来自dynamodb的东西,因为它不会工作,除非策略中有“dynamodb:*”(它确实在集群上设置了一致的View)。我想知道它需要的特定权限,而不是通配所有权限。这样做的一种蛮力方法是,我使用一个列出所有dynamodb操作的策略,然后我将它们一个一个地删除,并在集群上的一个步骤中再次创建该表,以查看它是否失败。但是当我使用通配符时它起作用了,但列出所有通配符却不起作用。当我使用时:{"Version":"2012-10-17","Statement":[...(otherstuff){"Effect":

amazon-web-services - 在 Hadoop 1.0.3 中从 AWS EMR 上的 HDFS 清除数据

出于各种原因,我正在使用AMI2.4.11/Hadoop1.0.3在EMR上运行一些作业。我正在尝试通过添加额外的EMR步骤来在我的作业之后运行HDFS清理。使用博托:step=JarStep('HDFScleanup','command-runner.jar',action_on_failure='CONTINUE',step_args=['hadoop','dfs','-rmr','-skipTrash','hdfs:/tmp'])emr_conn.add_jobflow_steps(cluster_id,[step])然而,它经常失败,EMR控制台中的stderr中没有任何内容。

amazon-web-services - 使用 Hadoop 版本 2.7.2 从 Spark 使用 S3a 协议(protocol)访问 S3

我正在尝试从pyspark(版本2.2.0)访问s3(s3a协议(protocol)),但我遇到了一些困难。我正在使用Hadoop和AWSSDK包。pyspark--packagescom.amazonaws:aws-java-sdk-pom:1.10.34,org.apache.hadoop:hadoop-aws:2.7.2这是我的代码:sc._jsc.hadoopConfiguration().set("fs.s3a.impl","org.apache.hadoop.fs.s3a.S3AFileSystem")sc._jsc.hadoopConfiguration().set("f

amazon-web-services - 无法将 AWS 主机注册到 Ambari 服务器

将主机注册到Ambari-server集群时,出现以下错误。“在1个未能注册的主机上跳过了主机检查。”我正在尝试在AWS实例上安装HDP2.5版本。我已尝试遵循Hortonworks的文档。https://docs.hortonworks.com/HDPDocuments/Ambari-2.5.0.3/bk_ambari-installation/content/set_the_hostname.html我已将公共(public)IP地址和公共(public)主机名添加到/etc/hosts文件,并更改服务器和主机上/etc/hostname文件中的主机名。重新启动两者,主机名已更改。