Hi Gilles,
we are currently working on a general update optimization that mainly addresses I/O issues. As your problems are CPU related, I guess this won't directly affect your case.
So I suppose the bottleneck is the CPU.
Is there a way to check where in Basex server the bottleneck is? Which functions crunch up all cpu?
You could profile the Java server process for infos on CPU loading and get back to us with the result.
How can I be sure basex uses both CPU?
This should be taken care of by your OS.
Is there any chance to have multiple simultaneous write access in future
versions?
There is some work in progress regarding simultaneous writing transactions but I'm not informed when it will find its way into the official release. Maybe one of my team mates can tell you more about this.
It could also help to have a look at your insert queries. If you don't want to share them on the list, you could either send them to us directly or post a simplified version that reflects the overall approach.
Cheers, Lukas
**
**
**
On Fri, Aug 24, 2012 at 3:15 PM, Gilles CARRY gilles.carry@st.com wrote:
Hi,****
I’m currently setting up a prototype to store test log results in a XML DB and let users do reports with XQUERY.****
I’m experiencing performance issues and am trying to identify where the bottleneck is.****
The status:****
**- **I use a single database.****
**- **The computer is dedicated to the DB server. (all clients are on distant machines)****
**- **Each applications insert bursts of 100-400 xml nodes in each insert query. Between inserts there is a random delay. (seconds to minutes)****
**- **UPDINDEX=true****
**- **Autoflush is on****
**- **The delays start being unacceptable when CPU average reaches ~40% (on a dual core which means ~80% of a single CPU)****
**- **Disk i/o seems fine: iostat says write kB_wrtn/s is about 10% of max iorate supported by disk. (I also tried with an SSD with no better results)****
**- **After some trials, it seems the more nodes in the DB the more delays to insert. The delays seem proportional to the number of nodes in the DB.****
**- **The delays are also proportional to the number of inserter client application (it looks like the transaction monitor is responsible for this)****
So I suppose the bottleneck is the CPU.****
Is there a way to check where in Basex server the bottleneck is? Which functions crunch up all cpu?****
How can I be sure basex uses both CPU?****
Is there any chance to have multiple simultaneous write access in future versions?****
Thank-you,****
Best regards,****
Gilles.****
By the way, the output of ‘info database’:****
[BaseX]: info database****
Database Properties****
Name: logs2****
Size: 202 GB****
Nodes: 81534781****
Documents: 1****
Binaries: 0****
Timestamp: 24.08.2012 15:07:11****
Resource Properties****
Timestamp: 24.08.2012 15:07:10****
Encoding: UTF-8****
Whitespace Chopping: ON****
Indexes****
Up-to-date: false****
Text Index: ON****
Attribute Index: ON****
Full-Text Index: OFF****
BaseX-Talk mailing list BaseX-Talk@mailman.uni-konstanz.de https://mailman.uni-konstanz.de/mailman/listinfo/basex-talk