Here is some more results.
The main change there, I got rid of properties on edges, because I don't
really need that in my project.
Also, I figured out that
db.getRawGraph().declareIntent(new OIntentMassiveInsert());
actually slow down insertion rate.... What's the purpose of it then?
|-----------------------------------------------------------------------------------------------------------------------------------------|
| Test inserting VERTICES_AND_EDGES threads 4
|
|-----------------------------------------------------------------------------------------------------------------------------------------|
| test | documents |
vertices | edges | time (ms) | avg (doc/sec) |
| ---------------------------------------- | --------------- |
--------------- | --------------- | -------------------- | --------------- |
| 1000 documents with 2 fields each | 1000 |
500 | 500 | 37 | 27027.03 |
| 1000 documents with 5 fields each | 1000 |
500 | 500 | 71 | 14084.51 |
|-----------------------------------------------------------------------------------------------------------------------------------------|
| 5000 documents with 2 fields each | 5000 |
2500 | 2500 | 86 | 58139.53 |
| 5000 documents with 5 fields each | 5000 |
2500 | 2500 | 99 | 50505.05 |
|-----------------------------------------------------------------------------------------------------------------------------------------|
| 10000 documents with 2 fields each | 10000 |
5000 | 5000 | 149 | 67114.09 |
| 10000 documents with 5 fields each | 10000 |
5000 | 5000 | 180 | 55555.56 |
|-----------------------------------------------------------------------------------------------------------------------------------------|
| 50000 documents with 2 fields each | 50000 |
25000 | 25000 | 813 | 61500.62 |
| 50000 documents with 5 fields each | 50000 |
25000 | 25000 | 806 | 62034.74 |
|-----------------------------------------------------------------------------------------------------------------------------------------|
| 10000 documents with 2 fields each | 10000 |
5000 | 5000 | 154 | 64935.06 |
| 10000 documents with 5 fields each | 10000 |
5000 | 5000 | 180 | 55555.56 |
|-----------------------------------------------------------------------------------------------------------------------------------------|
| 50000 documents with 2 fields each | 50000 |
25000 | 25000 | 746 | 67024.13 |
| 50000 documents with 5 fields each | 50000 |
25000 | 25000 | 819 | 61050.06 |
|-----------------------------------------------------------------------------------------------------------------------------------------|
| 100000 documents with 2 fields each | 100000 |
50000 | 50000 | 1440 | 69444.44 |
| 100000 documents with 5 fields each | 100000 |
50000 | 50000 | 1780 | 56179.78 |
|-----------------------------------------------------------------------------------------------------------------------------------------|
| 500000 documents with 2 fields each | 500000 |
250000 | 250000 | 7576 | 65997.89 |
| 500000 documents with 5 fields each | 500000 |
250000 | 250000 | 10560 | 47348.48 |
|-----------------------------------------------------------------------------------------------------------------------------------------|
| 1000000 documents with 2 fields each | 1000000 |
500000 | 500000 | 16061 | 62262.62 |
| 1000000 documents with 5 fields each | 1000000 |
500000 | 500000 | 21154 | 47272.38 |
|-----------------------------------------------------------------------------------------------------------------------------------------|
As you can see, the performance is way better.
This is the results of test where vertices don't have properties and edges
have 2 or 5 properties.
|-----------------------------------------------------------------------------------------------------------------------------------------|
| Test inserting VERTICES_AND_EDGES threads 1
|
|-----------------------------------------------------------------------------------------------------------------------------------------|
| test | documents |
vertices | edges | time (ms) | avg (doc/sec) |
| ---------------------------------------- | --------------- |
--------------- | --------------- | -------------------- | --------------- |
| 1000 documents with 2 fields each | 1000 |
500 | 500 | 287 | 3484.32 |
| 1000 documents with 5 fields each | 1000 |
500 | 500 | 215 | 4651.16 |
|-----------------------------------------------------------------------------------------------------------------------------------------|
| 5000 documents with 2 fields each | 5000 |
2500 | 2500 | 723 | 6915.63 |
| 5000 documents with 5 fields each | 5000 |
2500 | 2500 | 596 | 8389.26 |
|-----------------------------------------------------------------------------------------------------------------------------------------|
| 10000 documents with 2 fields each | 10000 |
5000 | 5000 | 977 | 10235.41 |
| 10000 documents with 5 fields each | 10000 |
5000 | 5000 | 1041 | 9606.15 |
|-----------------------------------------------------------------------------------------------------------------------------------------|
| 50000 documents with 2 fields each | 50000 |
25000 | 25000 | 12470 | 4009.62 |
| 50000 documents with 5 fields each | 50000 |
25000 | 25000 | 11266 | 4438.13 |
|-----------------------------------------------------------------------------------------------------------------------------------------|
| 100000 documents with 2 fields each | 100000 |
50000 | 50000 | 78769 | 1269.53 |
| 100000 documents with 5 fields each | 100000 |
50000 | 50000 | 68145 | 1467.46 |
|-----------------------------------------------------------------------------------------------------------------------------------------|
| 500000 documents with 2 fields each | 374500 |
250000 | 124500 | (timeout) 617106 | 606.86 |
| 500000 documents with 5 fields each | 370100 |
250000 | 120100 | (timeout) 620044 | 596.89 |
|-----------------------------------------------------------------------------------------------------------------------------------------|
| 1000000 documents with 2 fields each | 614100 |
500000 | 114100 | (timeout) 626038 | 980.93 |
The result is way worse.
Starting with 500000 docs, test stopped by timeout, so I didn't wait for
the whole test suit to complete.
I think we found the bottle neck of OrientDB.
Avoid properties in edges!
Would be great to hear why edges properties are so slow!
--
---
You received this message because you are subscribed to the Google Groups
"OrientDB" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.