Lui Neumann
Lui Neumann

Reputation: 64

Configure OrientDb - Performance and Capacity

I return to this topic

I have a database with

I execute this query

SELECT  
    psq1.psq_nome AS nomePesquisador, COUNT(pub1) AS qtdPub
FROM 
    (MATCH 
        {class:Pesquisador, as:psq1}.outE("PUBLICOU").inV(){as:pub1}
     RETURN psq1, pub1)
GROUP BY 
    psq1
ORDER BY 
    qtdPub DESC, nomePesquisador
LIMIT 1000;

OR

SELECT out.psq_nome AS nomePesquisador, COUNT(in.@rid) AS qtdPub
FROM Publicou
GROUP BY out.psq_nome
ORDER BY qtdPub DESC, nomePesquisador
LIMIT 1000;

Then there are errors of memory heap

How I configure the OrientDb to permit I execute this?

Upvotes: 0

Views: 169

Answers (1)

Oleksandr Gubchenko
Oleksandr Gubchenko

Reputation: 1369

The most important thing on tuning is assuring the memory settings are correct. What can make the real difference is the right balancing between the heap and the virtual memory used by Memory Mapping, specially on large datasets (GBs, TBs and more) where the in memory cache structures count less than raw IO.

For example if you can assign maximum 8GB to the Java process, it's usually better assigning small heap and large disk cache buffer (off-heap memory). So rather than:

java -Xmx8g ...

You could instead try this:

java -Xmx800m -Dstorage.diskCache.bufferSize=7200 ...

Reference: Performance Tuning

Upvotes: 1

Related Questions