Hi Christian, Thanks for the quick response, and sure thing. It does look like the text index is applied in both cases. While I was writing up an example of the slow query, I realized that the way I'll actually be querying it is by wrapping the condition in not(...). After doing so, it now only takes 6 seconds to run -- still slower but better. The slow query looks like this:
for $x in db:open('MyDatabase')/data/element where not($x/child1/child2/valid = 'false') return $x And the fast query looks like this: for $x in db:open('MyDatabase')/data/element where $x/child3/child4/id = '123' return $x Let me know if this is helpful -- if not, I could share more info in a direct email about the actual structure of the database and the Info output. Thanks, Matt On Mon, Oct 30, 2023 at 4:40 PM Christian Grün <christian.gr...@gmail.com> wrote: > Hi Matt, > > In general, all nodes are treated identically, no matter what the > hierarchy is or regular the target path is. > > Could you share some more information with us? How do the queries look > like (the slow and the fast one)? Is the text index applied in both cases? > > Thanks in advance, > Christian > > > > Matthew Dziuban <mrdziu...@gmail.com> schrieb am Mo., 30. Okt. 2023, > 21:33: > >> Hi all, >> >> I'm working with a database structured like so: >> >> <data> >> <element>...</element> >> <element>...</element> >> <element>...</element> >> </data> >> >> There are a total of about 1.5 million <element> nodes in the database. >> Each <element> has many child nodes, one of which is uncommon -- it only >> appears in 727 <element>s. >> >> I'm writing a query that has a condition on this uncommon field, but the >> query takes about 20 seconds to run, whereas another with a condition on a >> child node that appears in every <element> only takes about 20 milliseconds >> to run. >> >> Based on the Info in the GUI, it does appear that the text index is being >> used -- I see 'apply text index for "..."'. Is it expected that the query >> time would be this much longer? Is the text index somehow built differently >> for nodes that don't appear often in the database? >> >> Thanks in advance, >> Matt >> > -- Matthew R. Dziuban mattdziuban.com 703-973-6717 mrdziu...@gmail.com