The problem is likely '*'. Be specific about your QNames, because MarkLogic indexes element values and element-attribute values. Use xdmp:plan to see what indexes are used.
To avoid an ugly XPath consider using cts:search with a cts:element-attribute-value query. That allows a sequence of element QNames, which could work well here. I'd also reconsider the XML. It seems like an awkward way to express transactions. Why not one transaction per document? -- Mike > On Aug 19, 2014, at 1:33, Kunal Chauhan <[email protected]> wrote: > > Hello, > > I am evaluting MarkLogic for XML based application. > > I split 1.1GB xml file into small pieces of xmls (1000 elements each). > > Below is MarkLogic server configuration. > > I have turned on following indexing > > word searches, > word positions, > fast phrase searches, > fast case sensitive searches, > fast diacritic sensitive searches, > fast element word searches, > element word positions, > fast element phrase searches, > element value positions, > attribute value positions, > field value searches, > field value positions, > fast element character searches, > uri lexicon > > remaining all the values are default. > > > Below is machine configuration. > > Linux machine having 8 cores and 64 GB RAM. > > I set max memory for MarkLogic is 32GB (Xmx32g). > > > My XML file is look like this. > > <transaction> > > <traInfo id="ti1"> > <date>01-01-2014</date> > <source>bank1</source> > </traInfo> > > <traInfo id="ti2"> > <date>01-01-2014</date> > <source>bank2</source> > </traInfo> > > <traInfo id="ti3"> > <date>01-01-2014</date> > <source>bank3</source> > </traInfo> > > <income transInfoRef="ti1">1000</income> > <assets transInfoRef="ti1">1000</assets> > <liablity transInfoRef="ti1">1000</liablity> > <grossprofit transInfoRef="ti1">1000</grossprofit> > > <income transInfoRef="ti2">1000</income> > <assets transInfoRef="ti2">1000</assets> > <liablity transInfoRef="ti2">1000</liablity> > <grossprofit transInfoRef="ti2">1000</grossprofit> > > <income transInfoRef="ti3">1000</income> > <assets transInfoRef="ti3">1000</assets> > <liablity transInfoRef="ti3">1000</liablity> > <grossprofit transInfoRef="ti3">1000</grossprofit> > > </transaction> > > > I fired following query. > /transaction/*[@transInfoRef='ti1'] > > I fired above query in Marklogic, it took 48secs. The Same query I fired in > BaseX with Attribute indexing On and got output in mili seconds. > > > > is this the best possible result I can achieve with MarkLogic ? Or can anyone > help in tuning the MarkLogic database. > > Thanks, > -- > Kunal Chauhan > [email protected] > [+918655517141] > _______________________________________________ > General mailing list > [email protected] > http://developer.marklogic.com/mailman/listinfo/general
_______________________________________________ General mailing list [email protected] http://developer.marklogic.com/mailman/listinfo/general
