On 2017-11-16 14:51, Andy Seaborne wrote:
> 
> 
> On 16/11/17 13:42, Rob Vesse wrote:
>> TDB does not store a separate list of graphs as it is a quad store
>> i.e. it stores raw quads.
>>
>> Therefore, in order to list the available graphs it has to iterate
>> over all the quads and track the unique values for the graph field.
>>
>> So what you are doing yourself is probably the best approach
> 
> I have recently been doing some related queries (COUNT) and don't see
> this issue but who knows? Details are missing.  

When I make a query to a specific graph it works really well and
quickly. But the problem is that listing is taking too much.

> How much data? SSD vs
> disk? How much free RAM for file cache? What else is on the machine?
> Cold start or warm database?

Machine data - Intel Xeon E312xx (Sandy Bridge) and 32 GB RAM

> An example database to try out would help.

Database is over 20Gb now and has 200 named graphs, so unable to post it ;)

>>
>> Rob
>>
>> On 16/11/2017, 12:03, "George News" <[email protected]> wrote:
>>
>>      Sorry for insisting on this matter,
> 
> That's not how this works.

I know that you answer whenever you have time, and I will never be able
to thank you, but let's say in order to be "polite" it's better to
apologize for insisting as this is like upping a post, which I really
don't like.

>     Andy
> 
>> but I really need to remove the
>>      delay and would love to understand how the system works, as
>> otherwise I
>>      have to rework a big part of my code :(
>>           On 2017-11-15 12:02, George News wrote:
>>      > Hi,
>>      >
>>      > I would like to know if there is any way of speeding up
>>      > Dataset.listNames(). Currently running it on a TDB with 200
>> graphs it
>>      > takes something like 10 seconds.
>>      >
>>      > I think it is quite a lot, as there should be some index
>> pointing to them.
>>      >
>>      > Could you please tell me how I can speed up? I'm now currently
>> thinking
>>      > on uploading all the graphs names in memory when starting my
>> service and
>>      > then use the names from memory.
>>      >
>>      > Regards,
>>      > Jorge
>>      >
>>     
>>
>>
>>
> 

Reply via email to