草庐IT

partitioning

全部标签

oracle - 使用 sqoop 将数据从 oracle 导入到 hive - 不能使用 --hive-partition-key

我有一个简单的表格:createtableosoba(idnumber,imievarchar2(100),nazwiskovarchar2(100),wiekinteger);insertintoosobavalues(1,'pawel','kowalski',36);insertintoosobavalues(2,'john','smith',55);insertintoosobavalues(3,'paul','psmithski',44);insertintoosobavalues(4,'jakub','kowalski',70);insertintoosobavalues(5

hadoop - 无法将 TotalOrderPartitioner 与 Hive : Can't read partitions file 一起使用

我们正在尝试使用生成HBaseHfiles从Hive批量加载。我们的主要问题是,当使用org.apache.hadoop.mapred.lib.TotalOrderPartitioner;它找不到自定义分区程序文件:java.lang.IllegalArgumentException:Can'treadpartitionsfile更多详情:自定义分区程序文件是从Hive表创建的:CREATEEXTERNALTABLEnetezza.ais_lowres_mmsi_range_keys(hbase_key_range_startstring)ROWFORMATSERDE'org.apac

hadoop - hive中partitioning和bucketing的比较区别

我们能否定义一种方法来决定是否应该进行分桶或分区? 最佳答案 通常Hive中的分区提供了一种将Hive表数据分离到多个文件/目录中的方法。但是分区在以下情况下会产生有效的结果,分区数量有限大小相当的分区但这可能并非在所有情况下都可行,例如当我们根据国家/地区等地理位置对我们的表进行分区时,一些较大的国家/地区将有较大的分区(例如:4-5个国家/地区本身贡献了总数据的70-80%),其中小国家数据将创建小分区(世界上其余所有国家可能只占总数据的20-30%)。因此,在这些情况下,分区将不是理想的。为了克服过度分区的问题,Hive提供了

hadoop - AWS 上的 hive : convert S3 JSON to Columnar preserving partitions

我在S3中有包含多行JSON(以换行符分隔)的文件。我想将这些文件转换为柱状格式以供AWSAthena使用我正在关注ConvertingtoColumnarFormatsguide要做到这一点,但是当转换为ORC时,S3中的分区约定将丢失。在这个例子中,如何在转换为parquets3的文件夹结构中保留dt分区?当我运行示例时,它只输出s3://myBucket/pq/000000_0而不是s3://myBucket/pq/dt=2009-04-14-04-05/000000_0这是设置接口(interface)以将JSON导入Hive表的HQL:CREATEEXTERNALTABLEi

hadoop - 配置单元 0.14.0.2.2.4.10-1 : Multi Insert - Empty partition

我正在尝试使用以下查询进行多次插入。Fromkiran.employee_partepinsertoverwritetablekiran.employee_ext_partpartition(pdept='gbm',pspm='ajay')selectep.id,ep.name,ep.dept,ep.skill,ep.sal,ep.mgr,ep.spm,ep.commentwhereep.pdept='gbm'andep.pspm='ajay'insertoverwritetablekiran.employee_ext_partpartition(pdept='rw',pspm='pr

hadoop - 使用 hive.optimize.sort.dynamic.partition 选项避免单个文件

我正在使用配置单元。当我使用INSERT查询编写动态分区并打开hive.optimize.sort.dynamic.partition选项(SEThive.optimize.sort.dynamic.partition=true)时,总是有单个每个分区中的文件。但是如果我关闭该选项(SEThive.optimize.sort.dynamic.partition=false),我会遇到这样的内存不足异常。TaskAttempt3failed,info=[Error:Errorwhilerunningtask(failure):attempt_1534502930145_6994_1_01

hadoop - 错误无法识别的参数 --hive-partition-key

当我运行以下语句时出现错误Unrecognizedargument--hive-partition-key:sqoopimport--connect'jdbc:sqlserver://192.168.56.1;database=xyz_dms_cust_100;username-hadoop;password=hadoop'--tablee_purchase_category--hive_import--delete-target-dir--hive-tablepurchase_category_p--hive-partition-key"creation_date"--hive-pa

hadoop - 配置单元加载数据 :how to specify file column separator and dynamic partition columns?

好吧,我有一些关于将mysql数据加载到hive2的问题,并且不知道如何指定分隔符,我尝试了serval次但一无所获。下面是hive表,id是分区列,0:jdbc:hive2://localhost/>desctest;+-----------+------------+----------+|col_name|data_type|comment|+-----------+------------+----------+|a|string|||id|int||+-----------+------------+----------+当我执行loaddatalocalinpath'fil

hadoop - Hive "add partition"并发

我们有一个用于处理原始日志文件数据的外部Hive表。这些文件按小时计算,并按日期和源主机名分区。目前,我们正在使用每小时触发几次的简单python脚本导入文件。该脚本根据需要在HDFS上创建子文件夹,从临时本地存储复制新文件并将任何新分区添加到Hive。今天,使用“ALTERTABLE...ADDPARTITION...”创建新分区。但是,如果另一个Hive查询正在该表上运行,它将被锁定,这意味着添加分区命令将失败(如果查询运行时间足够长),因为它需要独占锁。此方法的替代方法是使用“MSCKREPAIRTABLE”,出于某种原因,它不似乎在表上获取任何锁。但是,我的印象是不建议在生产环

Hadoop:如何使用上下文对象在减少步骤中找出partition_Id

在HadoopAPI版本中。0.20及更高版本引入了Context对象,而不是JobConf。我需要使用Context对象找出:当前Reducer的partition_id输出文件夹使用过时的JobConf,我可以通过以下方式找到当前Reducer的partition_id:publicvoidconfigure(JobConfconf){intcurrent_partition=conf.getInt("mapred.task.partition",-1);}我认为我需要在方法内部使用Context对象publicvoidsetup(Contextc)但是怎么办?输出文件夹名称呢?