草庐IT

hadoop - Hadoop 集群上的 Hive/Map-Reduce 作业 : How to (roughly) calculate the diskspace needed?

以下用例:我对.gz压缩大小约为500GB的数据运行配置单元查询:selectcount(distinctc1),c2fromt1groupbyc2;此查询产生约2800个映射作业和约400个缩减作业。在设置具有20个实例(每个160GB实例存储)的Hadoop集群时,该工作将停止在97%map和21%reduceprogress,然后回落到94%map和19%reduceprogress,然后就没有任何进展了。我认为这是因为HDFS的磁盘空间已达到使用限制。也许我可以在当天晚些时候提供异常消息。如何:有没有办法根据正在处理的数据的输入大小粗略地预先计算所需的HDFS磁盘空间?请记住,

hadoop - 得到错误的 FS : file while running hive query

在hive上运行一个简单的选择查询时我遇到了这个奇怪的错误java.lang.IllegalArgumentException:WrongFS:file://usr/lib/hive/lib/CustomUDFint.jar,expected:file:///atorg.apache.hadoop.fs.FileSystem.checkPath(FileSystem.java:410)atorg.apache.hadoop.fs.RawLocalFileSystem.pathToFile(RawLocalFileSystem.java:56)atorg.apache.hadoop.fs

hadoop - hive 选择列做一个案例陈述

这会将数据从dynamodb动态导出到s3。--LoadS3TablewithdatafromDynamoDBINSERTOVERWRITETABLEs3_tableSELECT*FROMdynamodb_table;问题是它留下了一堆\N。我可以手写它看起来像--LoadS3TablewithdatafromDynamoDBINSERTOVERWRITETABLEs3_tableSELECTDCS_ID,CASEWHENMAKEISNULLTHEN""ELSEMAKEEND,CASEWHENMODELISNULLTHEN""ELSEMODELENDFROMdynamodb_table

hadoop - 如何使用flume创建任务自动定时从HDFS加载数据到HIVE?

我需要将数据从hadoop自动加载到hive,但我不想设置其他服务来执行此操作。我已经使用flume来收集我的日志了……那我该怎么办呢?flume是否可以执行命令(查询hive就像LOAD.....)? 最佳答案 抱歉,我来晚了一点,但实际上我已经整理了一个非常完整的示例,说明如何执行此操作并公开了所有细节。也许,它会帮助别人http://www.lopakalogic.com/articles/hadoop-articles/log-files-flume-hive/祝你好运! 关于h

hadoop - 启用安全性的 Hive 创建权限

我已将Kerberos设置为hive的安全模型,但我正在努力获得正确的权限。现在用户可以很好地创建和删除数据库,但不能创建表:hive>showdatabases;OKcpenneydefaultTimetaken:0.051seconds,Fetched:2row(s)hive>dropdatabasecpenney;OKTimetaken:0.098secondshive>createdatabasecpenney;OKTimetaken:0.062secondshive>createtabletest(hostgroupSTRING);Authorizationfailed:No

java - 在单元测试中启动一个简单的独立 hadoop 服务器

背景:我正在尝试将Hive查询作为我们测试框架的一部分进行测试。我想创建简短的测试来测试一小部分数据,以便查询快速返回,并能够在每台计算机(甚至是私有(private)笔记本电脑)上运行它们。目标是能够只检查代码、使用Maven构建并运行测试。问题:有没有一种方法可以让我仅使用java代码启动独立的hadoop(或某种模拟器),而无需下载和安装可以作为测试的一部分运行?我的目标是进行一个测试,在其@Before方法中在测试内部设置hadoop,并在测试结束时将其删除。 最佳答案 您看过MiniClusterapi(http://wi

hadoop - Hive CLI 无法从另一个表创建表

我一直在尝试创建一个包含来自另一个表的列的表,但HiveCLI始终无法这样做。查询如下:CREATETABLEtweets_id_sampleASSELECTidFROMtweets_sample;伴随此Hive查询的CLI错误如下:TotalMapReducejobs=3LaunchingJob1outof3Numberofreducetasksissetto0sincethere'snoreduceoperatorStartingJob=job_201310250853_0023,TrackingURL=http://sandbox:50030/jobdetails.jsp?job

sql - 选择 Hive 表中的第一个匹配项

我在hive上有一个表A,如下所示:idmstsaction1231000sleep1231010eat1232001sleep4561200eat4561500drink我想要的是为每个id选择与min(tmst)对应的整个集合。我可以通过运行select*fromAt1semileftjoin(selectid,min(msts)asmstsfromAgroupbyid)t2ont1.id=t2.idandt1.msts=t2.msts;但我想看看我是否可以在没有连接(或自定义reducer)的情况下完成它,因为它很耗时。编辑:澄清一下:我想要得到的是每个id执行的第一个操作(ac

mysql - Hive Metastore 未创建 MYSQL 或 Derby 连接

HiveMetastore未创建MYSQL或Derby连接。Derby战schematool-dbTypederby-initSchemaMetastoreconnectionURL:jdbc:mysql://localhost/metastoreMetastoreConnectionDriver:com.mysql.jdbc.DriverMetastoreconnectionUser:hiveschematool-dbTypederby-infoMetastoreconnectionURL:jdbc:mysql://localhost/metastoreMetastoreConnec

mysql - 无法使用 Sqoop 将数据从 Hive 导出到 MySQL

我正在使用Sqoop从以Hive格式存储的HDFS将处理后的数据导出到MySQL服务器。代码简单明了,但无论我做什么,Sqoop都无法正确识别字段分隔符。可能是什么问题?这是我在Hive中的表定义hive>showcreatetabledatabase.weblog_ag;OKCREATETABLEdatabase.weblog_ag(visitor_idstring,timearray,urlarray,client_timearray,resolutionarray,browserarray,osarray,devicetypearray,devicemodelarray,ipin