草庐IT

提取分区

全部标签

apache nutch提取和更新阶段

我有一个疑问,关于Nutch获得链接以更新CrawldB的方式。有问题的命令是bin/nutchupdatedbcrawl/crawldb$s1我需要编写一个自定义解析器,在此之前,我已经检查了Nutch的源代码,就我而言,我负责通过从文档中提取并将其放入ASOutlink来提供更新CRAWLDB的链接来更新CRAWLDB[]在Parsedata中。至少这就是我从中了解的这个.如果我错了,请纠正我,因为我不希望我的爬行者在第一次迭代后停下来,因为它不会有更新crawldb的链接。看答案纽约都使用parse-html或者parse-tika为了解析您的爬行URL(通常是HTML)在此阶段,提取和

apache - 创建分区 View 时 Hive 出错

我有一个“日志”表,该表当前按年、月和日进行分区。我想在“日志”表的顶部创建一个分区View,但遇到了这个错误:hive>CREATEVIEWlog_viewPARTITIONEDON(pagename,year,month,day)ASSELECTpagename,year,month,day,uid,propertiesFROMlog;FAILED:SemanticException[Error10093]:RightmostcolumnsinviewoutputdonotmatchPARTITIONEDONclause创建分区View的正确方法是什么?

hadoop - 表显示 CLI 中的 Hive 分区,但无法通过终端访问

当我使用命令showpartitions时,我可以在Hive中看到日期分区。但是,当我尝试通过hadoopfs-ls/path/to/partition访问该文件夹时,我收到消息Nosuchfileordirectory。我不确定为什么会这样?即使里面没有数据,我也不能去那个日期分区文件夹吗(我也不能将数据移动到这个分区) 最佳答案 您必须遵循以下步骤:创建托管/内部表CREATETABLEstations(numberSTRING,latitudeINT,longitudeINT,elevationINT,nameSTRING,c

sql - Hive:需要指定分区列,因为目标表已分区

我想知道在Hive中是否可以将未分区的表插入到已已分区的表中。第一张表如下:hive>describeextendeduser_ratings;OKuseridintmovieidintratingintunixtimeintDetailedTableInformationTable(tableName:user_ratings,dbName:ml,owner:cloudera,createTime:1500142667,lastAccessTime:0,retention:0,sd:StorageDescriptor(cols:[FieldSchema(name:userid,typ

Hadoop 自定义分区程序问题

我遇到了一个问题,自定义中间键没有出现在我期望的分区中,这是基于自定义分区程序的“getPartition”方法的输出。我可以在我的映射器日志文件中看到分区器生成了预期的分区号,但有时具有公共(public)分区号的键不会在同一个缩减器中结束。具有共同“getPartition”输出的键如何在不同的reducer中结束?在所有“getPartition”调用之后,我在映射器日志文件中注意到对自定义中间键“hashCode”和“compareTo”方法进行了多次调用。映射器只是在分区排序中进行,还是这可能是问题的一部分?我附上了自定义中间键和分区程序的代码。注意:我确切知道1/2的键将“

hadoop - hive 。不能在 where 子句中引用分区

我创建了一个按日期分区的表。但是不能在where子句中使用partition。这是过程第一步:CREATETABLEnew_table(astring,bstring)PARTITIONEDBY(dtstring);第二步:Insertoverwritetablenew_tablepartition(dt=$date)Selecta,bfrommy_tablewheredt='$date表已创建。Describenew_table;astringbstringdtstring问题:select*fromnew_tablewheredt='$date'返回空集。鉴于select*from

hadoop - Hive静态分区问题

我有一个csv文件,其中有600条记录,男性和女性各300条。我创建了一个Table_Temp并将所有这些记录填充到该表中。然后,我创建Table_Main并将gender作为分区列。对于Temp_Table查询是:CreatetableifnotexistsTemp_Table(idstring,ageint,genderstring,citystring,pinstring)rowformatdelimitedfieldsterminatedby',';然后我编写以下查询:InsertintoTable_Mainpartitioned(gender)selecta,b,c,d,ge

hadoop - Apache Pig - 如何提取记录集

我是ApachePig的新用户,我有以下数据order=0012,1,23order=0013,2,34,0015,1,45order=0011,1,456...我试图提取到以下记录0012,1,230013,2,340015,1,450011,1,456...下面是我试过的代码a=LOAD'a.txt'UsingTextLoader()AS(line:chararray);b=FOREACHaGENERATEFLATTEN(REGEX_EXTRACT_ALL(line,'order=((\\d+),(\\d+),(\\d+))+'))AS(order_item:chararray,o

java - 使用 Spark Dataframe 的 Hive 分区中缺少日期前导零

我正在向SparkDataframe添加一个分区列。新列包含年月日。我的数据框中有一个时间戳列。DataFramedfPartition=df.withColumn("year",df.col("date").substr(0,4));dfPartition=dfPartition.withColumn("month",dfPartition.col("date").substr(6,2));dfPartition=dfPartition.withColumn("day",dfPartition.col("date").substr(9,2));当我输出数据帧时,我可以看到列的正确值,

oracle - 将数据从 Oracle 提取到 Hadoop。 Sqoop 是个好主意吗

我想从Oracle数据库中提取一些数据并将其传输到远程HDFS文件系统。似乎有几种可能的方法可以实现这一点:使用Sqoop。该工具将提取数据,通过网络复制并直接存储到HDFS使用SQL读取数据并将其存储在本地文件系统中。完成后,将数据复制(ftp?)到Hadoop系统。我的问题是第一种方法(对我来说不太有效)会导致Oracle锁定表的时间超过所需时间吗?我担心的是,当Sqoop开始查询数据时,它可能会在数据库上锁定,并且在所有数据都复制到HDFS之前不会释放此锁定。由于我将提取大量数据并将其复制到远程位置(因此会有显着的网络延迟),锁将保持比其他方式所需的更长的时间。