Any pointers please

Thanks
Rajesh

On 5 Feb 2018 10:53 p.m., "Rajesh Kishore" <rajesh10si...@gmail.com> wrote:

> Hi Christos
>
> Does that mean Ignite cannot scale well against Berkley dB Incase of
> single node?
>
> Regards
> Rajesh
>
> On 5 Feb 2018 10:08 p.m., "Christos Erotocritou" <chris...@gridgain.com>
> wrote:
>
>> Hi Rajesh,
>>
>> Ignite is a distributed system, testing with one node is really not the
>> way.
>>
>> You need to consider having multiple nodes and portion and collocate your
>> data before.
>>
>> Thanks,
>> C
>>
>> On 5 Feb 2018, at 16:36, Rajesh Kishore <rajesh10si...@gmail.com> wrote:
>>
>> Hi,
>>
>> We are in the process of evaluating Ignite native persistence against
>> berkely db. For some reason Ignite query does not seem to be performant the
>> way application code behaves against berkley db
>>
>> Background:
>> Berkley db - As of now, we have berkley db for our application and the
>> data is stored as name value pair as byte stream in the berkley db's native
>> file system.
>>
>> Ignite DB - We are using Ignite DB's native persistence file system.
>> Created appropriate index and retrieving data using SQL involving multiple
>> joins.
>>
>> Ignite configuration : with native persistence enabled , only one node
>>
>> Data: As of now in the main table we have only *.1 M records *and in
>> supporting tables we have around 2 million records
>>
>> Ignite sql query used
>>
>> SELECT f.entryID,f.attrName,f.attrValue, f.attrsType FROM
>>     ( select st.entryID,st.attrName,st.attrValue, st.attrsType from
>>             (SELECT at1.entryID FROM "objectclass".Ignite_ObjectClass
>> at1 WHERE  at1.attrValue= ? ) t
>>             INNER JOIN
>>             "Ignite_DSAttributeStore".IGNITE_DSATTRIBUTESTORE st ON
>> st.entryID = t.entryID  WHERE st.attrKind IN ('u','o')
>>     ) f
>>    INNER JOIN  (SELECT entryID from "dn".Ignite_DN where parentDN like ?
>> ) dnt ON f.entryID = dnt.entry
>>
>> The corresponding EXPLAIN PLAN
>>
>>
>>
>> [[SELECT
>>     F__Z3.ENTRYID AS __C0_0,
>>     F__Z3.ATTRNAME AS __C0_1,
>>     F__Z3.ATTRVALUE AS __C0_2,
>>     F__Z3.ATTRSTYPE AS __C0_3
>> FROM (
>>     SELECT
>>         ST__Z2.ENTRYID,
>>         ST__Z2.ATTRNAME,
>>         ST__Z2.ATTRVALUE,
>>         ST__Z2.ATTRSTYPE
>>     FROM (
>>         SELECT
>>             AT1__Z0.ENTRYID
>>         FROM "objectclass".IGNITE_OBJECTCLASS AT1__Z0
>>         WHERE AT1__Z0.ATTRVALUE = ?1
>>     ) T__Z1
>>     INNER JOIN "Ignite_DSAttributeStore".IGNITE_DSATTRIBUTESTORE ST__Z2
>>         ON 1=1
>>     WHERE (ST__Z2.ATTRKIND IN('u', 'o'))
>>         AND (ST__Z2.ENTRYID = T__Z1.ENTRYID)
>> ) F__Z3
>>     /* SELECT
>>         ST__Z2.ENTRYID,
>>         ST__Z2.ATTRNAME,
>>         ST__Z2.ATTRVALUE,
>>         ST__Z2.ATTRSTYPE
>>     FROM (
>>         SELECT
>>             AT1__Z0.ENTRYID
>>         FROM "objectclass".IGNITE_OBJECTCLASS AT1__Z0
>>         WHERE AT1__Z0.ATTRVALUE = ?1
>>     ) T__Z1
>>         /++ SELECT
>>             AT1__Z0.ENTRYID
>>         FROM "objectclass".IGNITE_OBJECTCLASS AT1__Z0
>>             /++ "objectclass".OBJECTCLASSNDEXED_ATTRVAL_IDX: ATTRVALUE =
>> ?1 ++/
>>         WHERE AT1__Z0.ATTRVALUE = ?1
>>          ++/
>>     INNER JOIN "Ignite_DSAttributeStore".IGNITE_DSATTRIBUTESTORE ST__Z2
>>         /++ "Ignite_DSAttributeStore".IGNITE_DSATTRIBUTESTORE_ENTRYID_IDX:
>> ENTRYID = T__Z1.ENTRYID ++/
>>         ON 1=1
>>     WHERE (ST__Z2.ATTRKIND IN('u', 'o'))
>>         AND (ST__Z2.ENTRYID = T__Z1.ENTRYID)
>>      */
>> INNER JOIN (
>>     SELECT
>>         __Z4.ENTRYID
>>     FROM "dn".IGNITE_DN __Z4
>>     WHERE __Z4.PARENTDN LIKE ?2
>> ) DNT__Z5
>>     /* SELECT
>>         __Z4.ENTRYID
>>     FROM "dn".IGNITE_DN __Z4
>>         /++ "dn".EP_DN_IDX: ENTRYID IS ?3 ++/
>>     WHERE (__Z4.ENTRYID IS ?3)
>>         AND (__Z4.PARENTDN LIKE ?2): ENTRYID = F__Z3.ENTRYID
>>      */
>>     ON 1=1
>> WHERE F__Z3.ENTRYID = DNT__Z5.ENTRYID
>> ORDER BY 1], [SELECT
>>     __C0_0 AS ENTRYID,
>>     __C0_1 AS ATTRNAME,
>>     __C0_2 AS ATTRVALUE,
>>     __C0_3 AS ATTRSTYPE
>> FROM PUBLIC.__T0
>>     /* "Ignite_DSAttributeStore"."merge_sorted" */
>> ORDER BY 1
>> /* index sorted */]]
>>
>>
>> Any pointers , how should I proceed , Following is the JFR report for the
>> code used
>> cursor = cache.query(new SqlFieldsQuery(query).setEnforceJoinOrder(true);
>> cursor.getAll();
>>
>>
>> <image.png>
>>
>>
>>
>> Thanks,
>> Rajesh
>>
>>
>>

Reply via email to