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

ASF GitHub Bot commented on DRILL-6847:
---------------------------------------

cgivre commented on issue #1539: DRILL-6847: Add Query Metadata to RESTful 
Interface
URL: https://github.com/apache/drill/pull/1539#issuecomment-439064781
 
 
   HI @kkhatua 
   A few things.  First re: breaking backward compatibility.  Since the RESTful 
interface returns JSON KV pairs, and since all this is doing is introducing an 
additional key (metadata) which contains the column types, I don't think it 
will break anything since it isn't doing anything to the existing keys.  No 
real way to know unless a lot of people complain, but the tools which I use 
that use the RESTful interface are not affected.
   
   Secondly, regarding star queries, I did try a few on my local machine and 
you get a dump of all the column types. IE if your data contains 4 columns and 
you do a `SELECT *` you get:
   
   ```
     "metadata": [
       "INT",
       "VARCHAR",
       "VARCHAR",
       "VARCHAR"
     ],
   ```
   Since this code gets called when results are returned, I don't think schema 
inconsistencies matter.  IE if the query fails due to schema inconsistencies, 
you won't get metadata, and if it succeeds you get the results. 
   
   @arina-ielchiieva Would you like to see additional arrays with precision and 
scale with null values if it is not needed.  IE 
   ```
   "scale": [
   4,
   null,
   null,
   null
   ]
   ```

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> Add Query Metadata to RESTful Interface
> ---------------------------------------
>
>                 Key: DRILL-6847
>                 URL: https://issues.apache.org/jira/browse/DRILL-6847
>             Project: Apache Drill
>          Issue Type: Improvement
>          Components: Metadata
>            Reporter: Charles Givre
>            Assignee: Charles Givre
>            Priority: Minor
>
> The Drill RESTful interface does not return the structure of the query 
> results.   This makes integrating Drill with other BI tools difficult because 
> they do not know what kind of data to expect.  
> This PR adds a new section to the results called Metadata which contains a 
> list of the minor types of all the columns returned.
> The query below will now return the following in the RESTful interface:
> {code:sql}
> SELECT CAST( employee_id AS INT) AS employee_id,
> full_name,
> first_name, 
> last_name, 
> CAST( position_id AS BIGINT) AS position_id, 
> position_title 
> FROM cp.`employee.json` LIMIT 2
> {code}
> {code}
> {
>   "queryId": "2414bf3f-b4f4-d4df-825f-73dfb3a56681",
>   "columns": [
>     "employee_id",
>     "full_name",
>     "first_name",
>     "last_name",
>     "position_id",
>     "position_title"
>   ],
>   "metadata": [
>     "INT",
>     "VARCHAR",
>     "VARCHAR",
>     "VARCHAR",
>     "BIGINT",
>     "VARCHAR"
>   ],
>   "rows": [
>     {
>       "full_name": "Sheri Nowmer",
>       "employee_id": "1",
>       "last_name": "Nowmer",
>       "position_title": "President",
>       "first_name": "Sheri",
>       "position_id": "1"
>     },
>     {
>       "full_name": "Derrick Whelply",
>       "employee_id": "2",
>       "last_name": "Whelply",
>       "position_title": "VP Country Manager",
>       "first_name": "Derrick",
>       "position_id": "2"
>     }
>   ]
> }
> {code}
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to