Hi Ari,

Please send an email to 
[email protected]<mailto:[email protected]>

Thanks!
Nick

From: Ari Flink [mailto:[email protected]]
Sent: Monday, January 26, 2015 1:30 PM
To: [email protected]
Subject: Re: Hive JSON Serde question

unsubscribe

On Sun, Jan 25, 2015 at 6:54 PM, Sanjay Subramanian 
<[email protected]<mailto:[email protected]>> wrote:
sure will try get_json_object
thank u
regards
sanjay

________________________________
From: 丁桂涛(桂花) <[email protected]<mailto:[email protected]>>
To: [email protected]<mailto:[email protected]>; Sanjay Subramanian 
<[email protected]<mailto:[email protected]>>
Sent: Sunday, January 25, 2015 4:45 PM
Subject: Re: Hive JSON Serde question

Try get_json_object UDF. No iterations need. :)


On Mon, Jan 26, 2015 at 12:25 AM, Sanjay Subramanian 
<[email protected]<mailto:[email protected]>> wrote:
Thanks Ed. Let me try a few more iterations. Somehow I am not doing this 
correctly :-)

regards

sanjay
________________________________
From: Edward Capriolo <[email protected]<mailto:[email protected]>>
To: "[email protected]<mailto:[email protected]>" 
<[email protected]<mailto:[email protected]>>; Sanjay Subramanian 
<[email protected]<mailto:[email protected]>>
Sent: Sunday, January 25, 2015 8:11 AM
Subject: Re: Hive JSON Serde question

Nested lists require nested lateral views.


On Sun, Jan 25, 2015 at 11:02 AM, Sanjay Subramanian 
<[email protected]<mailto:[email protected]>> wrote:
hey guys

This is the Hive table definition I have created based on the JSON
I am using this version of hive json serde
https://github.com/rcongiu/Hive-JSON-Serde

ADD JAR 
/home/sanjay/mycode/jar/jsonserde/json-serde-1.3.1-SNAPSHOT-jar-with-dependencies.jar
;
DROP TABLE IF EXISTS
  datafeed_json
;
CREATE EXTERNAL TABLE IF NOT EXISTS
   datafeed_json (
   object STRING,
   entry array
          <struct
            <id:STRING,
             time:BIGINT,
             changes:array
               <struct
                 <field:STRING,
                  value:struct
                    <item:STRING,
                     verb:STRING,
                     parent_id:STRING,
                     sender_id:BIGINT,
                     created_time:BIGINT>>>>>
) ROW FORMAT SERDE 'org.openx.data.jsonserde.JsonSerDe' STORED AS TEXTFILE 
LOCATION '/data/sanjay/datafeed'
;


QUERY 1
=======
ADD JAR 
/home/sanjay/mycode/jar/jsonserde/json-serde-1.3.1-SNAPSHOT-jar-with-dependencies.jar
;
 SELECT
    object,
    entry[0].id,
    entry[0].time,
    entry[0].changes[0].field,
    entry[0].changes[0].value.item,
    entry[0].changes[0].value.verb,
    entry[0].changes[0].value.parent_id,
    entry[0].changes[0].value.sender_id,
    entry[0].changes[0].value.created_time
  FROM
    datafeed_json
;

RESULT1
======
foo123  113621765320467 1418608223 leads song1 rock 
113621765320467_1107142375968396 100004748082019 1418608223


QUERY2
======
ADD JAR 
/home/sanjay/mycode/jar/jsonserde/json-serde-1.3.1-SNAPSHOT-jar-with-dependencies.jar
;
 SELECT
    object,
    entry.id<http://entry.id/>,
    entry.time,
    ntry
  FROM
    datafeed_json
  LATERAL VIEW EXPLODE
    (datafeed_json.entry.changes) oc1 AS ntry
;

RESULT2
=======
This gives 4 rows but I was not able to iteratively do the LATERAL VIEW EXPLODE


I tried various combinations of LATERAL VIEW , LATERAL VIEW EXPLODE, json_tuple 
to extract all fields in an exploded view from the JSON in tab separated format 
but no luck.

Any thoughts ?


Thanks

sanjay






Reply via email to