- Subscribe to RSS Feed
- Mark Question as New
- Mark Question as Read
- Float this Question for Current User
- Bookmark
- Subscribe
- Mute
- Printer Friendly Page
how to show a query is using LLAP
- Labels:
-
Apache Hive
Created ‎08-15-2016 10:49 PM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I am using the HDP 2.5 tech preview. I do a query using hive.llap.execution.mode=all and then the same query with hive.llap.execution.mode=none.
The query using LLAP takes only 1/3 the time and I can see output in LLAP daemon log on the host.
Other than showing the difference in the DAGs (the LLAP DAG is much smaller and runs much faster) and query run time, is there a way to show in the query output how LLAP is being used? In other words is there something that shows LLAP specifically?
Without LLAP:
INFO : Map 1: 0/1 Map 2: -/- Map 5: 0/1 Reducer 3: 0/6 Reducer 4: 0/1
INFO : Map 1: 0/1 Map 2: -/- Map 5: 0(+1)/1 Reducer 3: 0/6 Reducer 4: 0/1
INFO : Map 1: 0(+1)/1 Map 2: -/- Map 5: 0(+1)/1 Reducer 3: 0/6 Reducer 4: 0/1
INFO : Map 1: 0(+1)/1 Map 2: -/- Map 5: 1/1 Reducer 3: 0/6 Reducer 4: 0/1
INFO : Map 1: 1/1 Map 2: -/- Map 5: 1/1 Reducer 3: 0/6 Reducer 4: 0/1
INFO : Map 1: 1/1 Map 2: 0/1 Map 5: 1/1 Reducer 3: 0/6 Reducer 4: 0/1
INFO : Map 1: 1/1 Map 2: 0(+1)/1 Map 5: 1/1 Reducer 3: 0/6 Reducer 4: 0/1
INFO : Map 1: 1/1 Map 2: 1/1 Map 5: 1/1 Reducer 3: 0(+1)/1 Reducer 4: 0/1
INFO : Map 1: 1/1 Map 2: 1/1 Map 5: 1/1 Reducer 3: 1/1 Reducer 4: 0(+1)/1
INFO : Map 1: 1/1 Map 2: 1/1 Map 5: 1/1 Reducer 3: 1/1 Reducer 4: 1/1
INFO : Status: DAG finished successfully in 8.03 seconds
With LLAP:
INFO : Map 1: 1/1 Map 2: -/- Map 5: 1/1 Reducer 3: 0/6 Reducer 4: 0/1
INFO : Map 1: 1/1 Map 2: 0(+1)/1 Map 5: 1/1 Reducer 3: 0/6 Reducer 4: 0/1
INFO : Map 1: 1/1 Map 2: 1/1 Map 5: 1/1 Reducer 3: 0(+1)/1 Reducer 4: 0/1
INFO : Map 1: 1/1 Map 2: 1/1 Map 5: 1/1 Reducer 3: 1/1 Reducer 4: 1/1
INFO : Status: DAG finished successfully in 0.98 seconds
Created ‎08-16-2016 07:12 PM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The beeline client doesn't actually have a clean way of doing that unlike the in-place CLI UI. The current method is to run "explain <query>" and look for the LLAP annotation next to the vectorization.
Created ‎08-16-2016 07:12 PM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The beeline client doesn't actually have a clean way of doing that unlike the in-place CLI UI. The current method is to run "explain <query>" and look for the LLAP annotation next to the vectorization.
Created ‎08-19-2016 09:31 PM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Here is an example of the explain with llap enabled. Note the llap after Reducer 4:
| Stage-0 |
| Fetch Operator |
| limit:100 |
| Stage-1 |
| Reducer 4 vectorized, llap |
| File Output Operator [FS_58] |
And below with LLAP set to none. There is no llap after Reducer 4:
| Stage-0 |
| Fetch Operator |
| limit:100 |
| Stage-1 |
| Reducer 4 vectorized
Created ‎08-18-2016 02:21 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
One option is that provided by Gopal, or you open ResourceManager UIand look for your user and application type. For LLAP it shows as org.apache.slider. For Tez shows TEZ. You can map back the application_id to your query. A bit confusing tough.
Created ‎08-19-2016 09:29 PM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks for the tip. I think the explain is a bit easier to find.
Created ‎03-17-2017 06:48 PM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I do not see it showing as org.apache.slider for me. I have connected to the hive interactive server through beeline to run the queries. It shows the application type as TEZ for me. Do I need to set some parameter to get it running.
