phoenix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Wen-Hsiu Chang (JIRA)" <j...@apache.org>
Subject [jira] [Comment Edited] (PHOENIX-1661) Implement built-in functions for JSON
Date Wed, 10 Jan 2018 07:28:01 GMT

    [ https://issues.apache.org/jira/browse/PHOENIX-1661?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16319809#comment-16319809
] 

Wen-Hsiu Chang edited comment on PHOENIX-1661 at 1/10/18 7:27 AM:
------------------------------------------------------------------

Hi, [~jamestaylor]
We want to try this issue, and we put the patch below. Please take a look.
In brief, we take a look at the JSON built-in functions that are implemented in Hive(https://cwiki.apache.org/confluence/display/Hive/LanguageManual+UDF#LanguageManualUDF-get_json_object),
and we implement the same get_json_object built-in function in phoenix.
And in this method, the json object should store in one hbase cell.
{code:java}
 String get_json_object (String json, String path)
{code}
For example,
{code:java}
SELECT get_json_object(json_col,"$.name")  FROM my_table;
{code}

The pdf [^Implement built-in functions for JSON.pdf] says,
we want to do three built-in functions.
1. get_json_object
2. set_json_object
3. remove_json_object

[^PHOENIX-1661-00.patch]


was (Author: ashiou):
Hi, [~jamestaylor]
We want to try this issue, and we put the patch below. Please take a look.
In brief, we take a look at the JSON built-in functions that are implemented in Hive(https://cwiki.apache.org/confluence/display/Hive/LanguageManual+UDF#LanguageManualUDF-get_json_object),
and we implement the same get_json_object built-in function in phoenix.
And in this method, the json object should store in one hbase cell.
{code:java}
 String get_json_object (String json, String path)
{code}
For example,
{code:java}
SELECT get_json_object(json_col,"$.name")  FROM my_table;
{code}
[^PHOENIX-1661-00.patch]
The pdf [^Implement built-in functions for JSON.pdf] says,
we want to do three built in function
1. get_json_object
2. set_json_object
3. remove_json_object


> Implement built-in functions for JSON
> -------------------------------------
>
>                 Key: PHOENIX-1661
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-1661
>             Project: Phoenix
>          Issue Type: Sub-task
>            Reporter: James Taylor
>            Assignee: LeiWang
>              Labels: JSON, Java, SQL, gsoc2015, mentor
>         Attachments: Implement built-in functions for JSON.pdf, PHOENIX-1661-00.patch,
PHOENIX-1661.patch, PhoenixJSONSpecification-First-Draft.pdf
>
>
> Take a look at the JSON built-in functions that are implemented in Postgres (http://www.postgresql.org/docs/9.3/static/functions-json.html)
and implement the same for Phoenix in Java following this guide: http://phoenix-hbase.blogspot.com/2013/04/how-to-add-your-own-built-in-function.html
> Examples of functions include ARRAY_TO_JSON, ROW_TO_JSON, TO_JSON, etc. The implementation
of these built-in functions will be impacted by how JSON is stored in Phoenix. See PHOENIX-628.
An initial implementation could work off of a simple text-based JSON representation and then
when a native JSON type is implemented, they could be reworked to be more efficient.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Mime
View raw message