just use hive split function for strings and get the value extracted.
by the way I am not sure why the to_date function is failing
stringto_date(string timestamp)Returns the date part of a timestamp string:
to_date("1970-01-01 00:00:00") = "1970-01-01"
also, I am sorry i might have misread your question
what do you mean by "partition column does not accepts to_date(event_date)
form "



On Fri, Jun 14, 2013 at 1:04 PM, Hamza Asad <hamza.asa...@gmail.com> wrote:

> sample row of my data is
> *591269735,1,1022,2012-06-24
> 11:08:10.9,null,2,null,null,null,null,null,null,null,null,12,null,null,2,null,null,null,null,4,1,null,null,null,null,null,null
> *
>
> and i want to partition it according to date i.e *2012-06-24 *skiping the
> hh:mm:ss.ff part
>
>
> On Fri, Jun 14, 2013 at 12:27 PM, Nitin Pawar <nitinpawar...@gmail.com>wrote:
>
>> can you provide whats your data and what you want it to look like ?
>>
>>
>> On Fri, Jun 14, 2013 at 12:31 PM, Hamza Asad <hamza.asa...@gmail.com>wrote:
>>
>>> which UDF? it does not take to_date(event_date) column
>>>
>>>
>>> On Fri, Jun 14, 2013 at 11:54 AM, Nitin Pawar 
>>> <nitinpawar...@gmail.com>wrote:
>>>
>>>> use already existing UDFs to split or transform your values the way you
>>>> want
>>>>
>>>>
>>>> On Fri, Jun 14, 2013 at 12:09 PM, Hamza Asad <hamza.asa...@gmail.com>wrote:
>>>>
>>>>> OIC. I got it. Thanx alot nitin :). One more thing i want to ask
>>>>> related this issue, if old table contains event_date in format "2012-06-24
>>>>> 06:04:11.9" then how can i partition it according to date part only? As
>>>>> partition column does not accepts to_date(event_date) form.
>>>>>
>>>>>
>>>>> On Thu, Jun 13, 2013 at 5:07 PM, Nitin Pawar 
>>>>> <nitinpawar...@gmail.com>wrote:
>>>>>
>>>>>> If the input column value is NULL or empty string, the row will be put 
>>>>>> into a special partition, whose name is controlled by the hive parameter 
>>>>>> hive.exec.default.dynamic.partition.name. The default value is 
>>>>>> `__HIVE_DEFAULT_PARTITION__`. Basically this partition will contain all
>>>>>> "bad" rows whose value are not valid partition names.
>>>>>>
>>>>>> so basically you do following things
>>>>>>
>>>>>> when you create a partitioned table, your partitioned column is normally 
>>>>>> at the end of the table, so when you are inserting data into this 
>>>>>> partitioned table, I would recommend using the column names in place 
>>>>>> select * from
>>>>>>
>>>>>> so your insert query should look like
>>>>>>
>>>>>> set hive.exec.dynamic.partition=true;
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> set hive.exec.dynamic.partition.mode=nonstrict;
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> insert overwrite table new_table partition(event_date) select col1, col2 
>>>>>> .... coln, event_date from old_table;
>>>>>>
>>>>>>
>>>>>>
>>>>>> On Thu, Jun 13, 2013 at 5:24 PM, Hamza Asad 
>>>>>> <hamza.asa...@gmail.com>wrote:
>>>>>>
>>>>>>> when i browse it in browser, all the data is in *
>>>>>>> event_date=__HIVE_DEFAULT_PARTITION__<http://10.0.0.14:50075/browseDirectory.jsp?dir=%2Fvar%2Flog%2Fpring%2Fhive%2Fwarehouse%2Fnydus.db%2Fnew_rc_partition_cluster_table%2Fevent_date%3D__HIVE_DEFAULT_PARTITION__&namenodeInfoPort=50070>
>>>>>>> *, rest of the files does not contains data
>>>>>>>
>>>>>>>
>>>>>>> On Thu, Jun 13, 2013 at 4:52 PM, Nitin Pawar <
>>>>>>> nitinpawar...@gmail.com> wrote:
>>>>>>>
>>>>>>>> what do you mean when you say "it wont split correctly" ?
>>>>>>>>
>>>>>>>>
>>>>>>>> On Thu, Jun 13, 2013 at 5:19 PM, Hamza Asad <hamza.asa...@gmail.com
>>>>>>>> > wrote:
>>>>>>>>
>>>>>>>>> what if i have data of more then 500 days then how can i create
>>>>>>>>> partition on date column by specifying each and every date? (i knw 
>>>>>>>>> that
>>>>>>>>> does not happens in dynamic partition but on dynamic partition, it 
>>>>>>>>> wont
>>>>>>>>> splits correctly).
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Thu, Jun 13, 2013 at 4:12 PM, Nitin Pawar <
>>>>>>>>> nitinpawar...@gmail.com> wrote:
>>>>>>>>>
>>>>>>>>>> you can partition existing table unless the hdfs data is laid out
>>>>>>>>>> in partitioned fashion.
>>>>>>>>>> your best bet is create a new partitioned table
>>>>>>>>>> enable dynamic paritionining
>>>>>>>>>> read from old table and write into new table
>>>>>>>>>>
>>>>>>>>>> you can verify the new partitions by using command "show
>>>>>>>>>> partitions"
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On Thu, Jun 13, 2013 at 4:40 PM, Hamza Asad <
>>>>>>>>>> hamza.asa...@gmail.com> wrote:
>>>>>>>>>>
>>>>>>>>>>> now i created partition table like
>>>>>>>>>>> *CREATE TABLE new_rc_partition_cluster_table(
>>>>>>>>>>>
>>>>>>>>>>>   id int,
>>>>>>>>>>>   event_id int,
>>>>>>>>>>>   user_id BIGINT,
>>>>>>>>>>>
>>>>>>>>>>>   intval_1 int ,
>>>>>>>>>>>   intval_2 int,
>>>>>>>>>>>   intval_3 int,
>>>>>>>>>>>   intval_4 int,
>>>>>>>>>>>   intval_5 int,
>>>>>>>>>>>   intval_6 int,
>>>>>>>>>>>   intval_7 int,
>>>>>>>>>>>   intval_8 int,
>>>>>>>>>>>   intval_9 int,
>>>>>>>>>>>   intval_10 int,
>>>>>>>>>>>   intval_11 int,
>>>>>>>>>>>   intval_12 int,
>>>>>>>>>>>   intval_13 int,
>>>>>>>>>>>   intval_14 int,
>>>>>>>>>>>   intval_15 int,
>>>>>>>>>>>   intval_16 int,
>>>>>>>>>>>   intval_17 int,
>>>>>>>>>>>   intval_18 int,
>>>>>>>>>>>   intval_19 int,
>>>>>>>>>>>   intval_20 int,
>>>>>>>>>>>   intval_21 int,
>>>>>>>>>>>   intval_22 int,
>>>>>>>>>>>   intval_23 int,
>>>>>>>>>>>   intval_24 int,
>>>>>>>>>>>   intval_25 int,
>>>>>>>>>>>   intval_26 int)
>>>>>>>>>>>   PARTITIONED BY (event_date string)
>>>>>>>>>>>
>>>>>>>>>>> CLUSTERED BY(id) INTO 256 BUCKETS
>>>>>>>>>>> ROW FORMAT DELIMITED
>>>>>>>>>>>  FIELDS TERMINATED BY ','
>>>>>>>>>>> STORED AS RCFile;
>>>>>>>>>>> *
>>>>>>>>>>>
>>>>>>>>>>> rest of the commands are same. But this time INSERT OVERWRITE
>>>>>>>>>>> query executed and took time but when i queries from that table, it 
>>>>>>>>>>> results
>>>>>>>>>>> none as it does not contains data. why is this so? and also please 
>>>>>>>>>>> tell me
>>>>>>>>>>> how can i partition my existing table dynamicaly on date so that 
>>>>>>>>>>> data
>>>>>>>>>>> splits equally without mentioning date explicitly?
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> On Wed, Jun 12, 2013 at 6:50 PM, Nitin Pawar <
>>>>>>>>>>> nitinpawar...@gmail.com> wrote:
>>>>>>>>>>>
>>>>>>>>>>>> you did not create partitioned table. You just created a
>>>>>>>>>>>> bucketed table.
>>>>>>>>>>>>
>>>>>>>>>>>> refer to partitioned table created
>>>>>>>>>>>> something like
>>>>>>>>>>>> partitioned by (event_date string)
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> On Wed, Jun 12, 2013 at 7:17 PM, Hamza Asad <
>>>>>>>>>>>> hamza.asa...@gmail.com> wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>> i have created table after enabling dynamic partition. i
>>>>>>>>>>>>> partitioned it on date but it is not splitting data datewise. 
>>>>>>>>>>>>> Below is the
>>>>>>>>>>>>> query of table created and data insert
>>>>>>>>>>>>> CREATE TABLE rc_partition_cluster_table(
>>>>>>>>>>>>>   id int,
>>>>>>>>>>>>>   event_id int,
>>>>>>>>>>>>>   user_id BIGINT,
>>>>>>>>>>>>>   event_date string,
>>>>>>>>>>>>>   intval_1 int )
>>>>>>>>>>>>> CLUSTERED BY(id) INTO 256 BUCKETS
>>>>>>>>>>>>> ROW FORMAT DELIMITED
>>>>>>>>>>>>>  FIELDS TERMINATED BY ','
>>>>>>>>>>>>> STORED AS RCFile;
>>>>>>>>>>>>>
>>>>>>>>>>>>> set hive.exec.dynamic.partition=true;
>>>>>>>>>>>>> set hive.exec.dynamic.partition.mode=nonstrict;
>>>>>>>>>>>>> set hive.exec.max.dynamic.partitions=1000;
>>>>>>>>>>>>> set hive.exec.max.dynamic.partitions.pernode=1000;
>>>>>>>>>>>>>
>>>>>>>>>>>>> INSERT OVERWRITE TABLE rc_partition_cluster_table Partition
>>>>>>>>>>>>> (event_date)
>>>>>>>>>>>>> SELECT * FROM events_details;
>>>>>>>>>>>>>
>>>>>>>>>>>>> why it is not working fine?
>>>>>>>>>>>>>
>>>>>>>>>>>>> --
>>>>>>>>>>>>> *Muhammad Hamza Asad*
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> --
>>>>>>>>>>>> Nitin Pawar
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> --
>>>>>>>>>>> *Muhammad Hamza Asad*
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> --
>>>>>>>>>> Nitin Pawar
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> *Muhammad Hamza Asad*
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> Nitin Pawar
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> *Muhammad Hamza Asad*
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Nitin Pawar
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> *Muhammad Hamza Asad*
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Nitin Pawar
>>>>
>>>
>>>
>>>
>>> --
>>> *Muhammad Hamza Asad*
>>>
>>
>>
>>
>> --
>> Nitin Pawar
>>
>
>
>
> --
> *Muhammad Hamza Asad*
>



-- 
Nitin Pawar

Reply via email to