Hi Val,
Please have a look in execution plan of the query and please suggest me if
you see any improvement.
SELECT
P._KEY AS __C0,
P._VAL AS __C1,
P.EQUIPMENTID AS __C2,
P.INSTALLBASEID AS __C3,
P.MATERIALID AS __C4,
P.OVERLENGTHMATERIALID AS __C5,
P.DEVICENAME AS __C6,
P.MODULE AS __C7,
P.SUBMODULE AS __C8,
P.SUBSUBMODULE AS __C9,
P.SUBSUBSUBMODULE AS __C10,
P.PARTNUMBER AS __C11,
P.REVISION AS __C12,
P.MODELNUMBER AS __C13,
P.SERIALNUMBER AS __C14,
P.DESCRIPTION AS __C15,
P.SOFTWARERELEASE AS __C16,
P.MATERIALSTATUS AS __C17,
P.ROHS2DEPSITION AS __C18,
P.LASTORDERTIME AS __C19,
P.EOSTIME AS __C20,
P.EOSFLAG AS __C21,
P.ITEMGROUPDESCRIPTION AS __C22,
P.PRODUCTCATEGORY AS __C23,
P.PRODUCTFAMILY AS __C24,
P.PRODUCTLINE AS __C25,
P.PRODUCTNAME AS __C26,
P.ISPARENTIBASE AS __C27,
P.SERVICEDECLINE AS __C28,
P.SERVICEELIGIBLE AS __C29,
P.SERVICEOPTIONAL AS __C30,
P.SHIPQTR AS __C31,
P.SHIPTIME AS __C32,
P.DEADWARRANTYTIME AS __C33,
P.SOFTWAREWARRANTYTIME AS __C34,
P.WARRANTYSTARTTIME AS __C35,
P.WARRANTYENDTIME AS __C36,
P.WARRANTYTYPE AS __C37,
P.DTWARRANTYTYPE AS __C38,
P.REGISTRATIONTIME AS __C39,
P.MATERIALGROUP AS __C40,
P.MATERIALTYPE AS __C41,
P.COMPONENTNUMBER AS __C42,
P.TOPCOMPONENTIBASE AS __C43,
P.INSTALLEDATTHEATER AS __C44,
P.INSTALLEDAT AS __C45,
P.INSTALLEDATBPID AS __C46,
P.MANAGEDRESLLERBPID AS __C47,
P.INSTALLEDTIME AS __C48,
P.SERVICEDECLINEREASON AS __C49,
P.ASSEMBLYNUMBER AS __C50,
P.ASSEMBLYREV AS __C51,
P.ASSEMPLYHWREV AS __C52,
P.RMANUMBER AS __C53,
P.CUSTOMERPONUMBER AS __C54,
P.SALESORDERNUMBER AS __C55,
P.SALESORDERLINENUMBER AS __C56,
P.POSDISTRIBUTOR AS __C57,
P.RESELLER AS __C58,
P.ENDUSERPARENTNAME AS __C59,
P.ENDUSERBPID AS __C60,
P.ENDUSERNAME AS __C61,
P.ENDUSERPARENTBPID AS __C62,
P.INSTALLEDATADDRESSLINE AS __C63,
P.INSTALLEDATCITY AS __C64,
P.INSTALLEDATCOUNTRY AS __C65,
P.INSTALLEDATSTATE AS __C66,
P.TYPE AS __C67,
P.FPCLCC AS __C68,
P.PARENTSERIALNUMBER AS __C69,
P.PARENTCHASSISTYPE AS __C70,
P.PARENTCHASSISNAME AS __C71,
P.PARENTCHASSISRELEASE AS __C72,
P.JUNOS AS __C73,
P.HASFRU AS __C74,
P.HASINVENTORY AS __C75,
P.HASVERSION AS __C76,
P.HASFPC AS __C77,
P.SOURCE AS __C78,
P.REMARKS AS __C79,
P.DELETED AS __C80,
P.HASCHILDS AS __C81,
P.CONTRACTID AS __C82,
P.CONTRACTSTATUS AS __C83,
P.CONTRACTSTARTTIME AS __C84,
P.CONTRACTENDTIME AS __C85,
P.SUPPORTCOVERAGETYPE AS __C86,
P.COVERAGETYPE AS __C87,
P.PRODDESCRIPTION AS __C88,
P.DUAL AS __C89,
P.INSTALLEDATACCID AS __C90,
P.MANAGEDRESLLERACCID AS __C91,
P.ENDUSERACCID AS __C92,
CNT.CONTRACTID AS __C93,
CNT.STARTDATE AS __C94,
CNT.ENDDATE AS __C95,
CNT.SERVICESKU AS __C96,
CNT.CONTRACTSTATUS AS __C97,
IIB.COUNT AS __C98
FROM CACHE2.CONTRACT CNT
/* CACHE2."contractStatus_idx": CONTRACTSTATUS = 'Active' */
/* WHERE CNT.CONTRACTSTATUS = 'Active'
*/
INNER JOIN TABLE(JOINID VARCHAR(50)=?1) J
/* function */
ON 1=1
INNER JOIN CACHE1.INSTALLBASE P
/* CACHE1."installedAtBpid_idx": INSTALLEDATBPID = J.JOINID */
ON 1=1
/* WHERE (J.JOINID = P.INSTALLEDATBPID)
AND ((P.EQUIPMENTID = CNT.EQUIPMENTID)
AND (LOWER(P.SERIALNUMBER) LIKE '%d2300%'))
*/
INNER JOIN (
SELECT
SERIALNUMBER,
COUNT(*) AS COUNT
FROM CACHE1.INSTALLBASE
GROUP BY SERIALNUMBER
) IIB
/* SELECT
SERIALNUMBER,
COUNT(*) AS COUNT
FROM CACHE1.INSTALLBASE
/++ CACHE1."serialNumber_idx": SERIALNUMBER IS ?3 ++/
WHERE SERIALNUMBER IS ?3
GROUP BY SERIALNUMBER
/++ group sorted ++/: SERIALNUMBER = P.SERIALNUMBER
*/
ON 1=1
WHERE ((CNT.CONTRACTSTATUS = 'Active')
AND (LOWER(P.SERIALNUMBER) LIKE '%d2300%'))
AND ((P.EQUIPMENTID = CNT.EQUIPMENTID)
AND ((P.SERIALNUMBER = IIB.SERIALNUMBER)
AND (J.JOINID = P.INSTALLEDATBPID)))
ORDER BY 15 DESC
LIMIT 10
Count - SELECT
__C0 AS _KEY,
__C1 AS _VAL,
__C2 AS EQUIPMENTID,
__C3 AS INSTALLBASEID,
__C4 AS MATERIALID,
__C5 AS OVERLENGTHMATERIALID,
__C6 AS DEVICENAME,
__C7 AS MODULE,
__C8 AS SUBMODULE,
__C9 AS SUBSUBMODULE,
__C10 AS SUBSUBSUBMODULE,
__C11 AS PARTNUMBER,
__C12 AS REVISION,
__C13 AS MODELNUMBER,
__C14 AS SERIALNUMBER,
__C15 AS DESCRIPTION,
__C16 AS SOFTWARERELEASE,
__C17 AS MATERIALSTATUS,
__C18 AS ROHS2DEPSITION,
__C19 AS LASTORDERTIME,
__C20 AS EOSTIME,
__C21 AS EOSFLAG,
__C22 AS ITEMGROUPDESCRIPTION,
__C23 AS PRODUCTCATEGORY,
__C24 AS PRODUCTFAMILY,
__C25 AS PRODUCTLINE,
__C26 AS PRODUCTNAME,
__C27 AS ISPARENTIBASE,
__C28 AS SERVICEDECLINE,
__C29 AS SERVICEELIGIBLE,
__C30 AS SERVICEOPTIONAL,
__C31 AS SHIPQTR,
__C32 AS SHIPTIME,
__C33 AS DEADWARRANTYTIME,
__C34 AS SOFTWAREWARRANTYTIME,
__C35 AS WARRANTYSTARTTIME,
__C36 AS WARRANTYENDTIME,
__C37 AS WARRANTYTYPE,
__C38 AS DTWARRANTYTYPE,
__C39 AS REGISTRATIONTIME,
__C40 AS MATERIALGROUP,
__C41 AS MATERIALTYPE,
__C42 AS COMPONENTNUMBER,
__C43 AS TOPCOMPONENTIBASE,
__C44 AS INSTALLEDATTHEATER,
__C45 AS INSTALLEDAT,
__C46 AS INSTALLEDATBPID,
__C47 AS MANAGEDRESLLERBPID,
__C48 AS INSTALLEDTIME,
__C49 AS SERVICEDECLINEREASON,
__C50 AS ASSEMBLYNUMBER,
__C51 AS ASSEMBLYREV,
__C52 AS ASSEMPLYHWREV,
__C53 AS RMANUMBER,
__C54 AS CUSTOMERPONUMBER,
__C55 AS SALESORDERNUMBER,
__C56 AS SALESORDERLINENUMBER,
__C57 AS POSDISTRIBUTOR,
__C58 AS RESELLER,
__C59 AS ENDUSERPARENTNAME,
__C60 AS ENDUSERBPID,
__C61 AS ENDUSERNAME,
__C62 AS ENDUSERPARENTBPID,
__C63 AS INSTALLEDATADDRESSLINE,
__C64 AS INSTALLEDATCITY,
__C65 AS INSTALLEDATCOUNTRY,
__C66 AS INSTALLEDATSTATE,
__C67 AS TYPE,
__C68 AS FPCLCC,
__C69 AS PARENTSERIALNUMBER,
__C70 AS PARENTCHASSISTYPE,
__C71 AS PARENTCHASSISNAME,
__C72 AS PARENTCHASSISRELEASE,
__C73 AS JUNOS,
__C74 AS HASFRU,
__C75 AS HASINVENTORY,
__C76 AS HASVERSION,
__C77 AS HASFPC,
__C78 AS SOURCE,
__C79 AS REMARKS,
__C80 AS DELETED,
__C81 AS HASCHILDS,
__C82 AS CONTRACTID,
__C83 AS CONTRACTSTATUS,
__C84 AS CONTRACTSTARTTIME,
__C85 AS CONTRACTENDTIME,
__C86 AS SUPPORTCOVERAGETYPE,
__C87 AS COVERAGETYPE,
__C88 AS PRODDESCRIPTION,
__C89 AS DUAL,
__C90 AS INSTALLEDATACCID,
__C91 AS MANAGEDRESLLERACCID,
__C92 AS ENDUSERACCID,
__C93 AS CONTID,
__C94 AS CONTSTARTDATE,
__C95 AS CONTENDDATE,
__C96 AS CONTSERVICESKU,
__C97 AS CONTSTATUS,
__C98 AS COUNT
FROM PUBLIC.__T0
/* CACHE1."merge_scan" */
ORDER BY 15 DESC
LIMIT 10 OFFSET 0
-Tejas
On Sat, Jan 7, 2017 at 1:07 AM, vkulichenko <[email protected]>
wrote:
> Hi Tejas,
>
> Did you check the execution plan? Are there any scans?
>
> -Val
>
>
>
> --
> View this message in context: http://apache-ignite-users.
> 70518.x6.nabble.com/Affinity-tp9744p9943.html
> Sent from the Apache Ignite Users mailing list archive at Nabble.com.
>