The scan is initiated on the client, but intercepted by coprocessors which do the aggregation on the server side. Take a look at the presentations here, as they go into the client/server interaction in more depth: http://phoenix.apache.org/resources.html
On Monday, December 22, 2014, Komal Thombare <[email protected] <javascript:_e(%7B%7D,'cvml','[email protected]');>> wrote: > Hi, > > I am trying to understand the co-processors concept used by Phoenix. > > When i try to explain query: explain select "drugname",count("isr") as > count from DRUG group by "drugname"; > > +------------+ > | PLAN | > +------------+ > | CLIENT PARALLEL 1-WAY FULL SCAN OVER DRUGNAME | > | SERVER AGGREGATE INTO ORDERED DISTINCT ROWS BY [drugname] | > | CLIENT MERGE SORT | > +------------+ > > According to my understanding of co-processors the aggregation and group > by part is handled here by co-processor on the region-server side which > hosts the region for specified table. > But 1st line specifies, scan is at CLIENT. Does it mean entire data comes > to client? If so then how aggregate function is executed on server side? > How different regions on different servers will be scanned parallely? > > I have already filed Jira for Explain plan Documentation but it is still > unassigned. > > Any help would be appreciated. > > Thanks andRegards, > Komal Ravindra Thombare > > =====-----=====-----===== > Notice: The information contained in this e-mail > message and/or attachments to it may contain > confidential or privileged information. If you are > not the intended recipient, any dissemination, use, > review, distribution, printing or copying of the > information contained in this e-mail message > and/or attachments to it are strictly prohibited. If > you have received this communication in error, > please notify us by reply e-mail or telephone and > immediately and permanently delete the message > and any attachments. Thank you > >
