I am using to OrientdbInsertPerformanceTest to create the vertex and edge.In the same code how to make sure that duplicate node and edge are not created.
On Monday, 7 January 2013 20:09:48 UTC+5:30, Milen Dyankov wrote: > > *DISCLAIMER: I'm typically NOT a type of person that posts messages like > "hey, this other product is better then yours" and it is NOT my intention > to start any fights about which GraphDB is better. * > *The results below are not a benchmark of any kind! They simply > demonstrates that I was unable to get satisfying performance results with > OriendDB in particular use case! * > > I'm trying to insert some test data into local OrientDB. While > inserting vertices is fast enough, inserting edges gets slower and slower > as the amount of edges grows. Here is the result of very simple unit test: > > > |-----------------------------------------------------------------------------------------| > | Test inserting VERTECES_ONLY > | > > |-----------------------------------------------------------------------------------------| > | documents | vertices | edges | time (ms) | > avg (doc/sec) | > | --------------- | --------------- | --------------- | --------------- | > --------------- | > | 1000 | 1000 | 0 | 228 | > 4385.96 | > | 10000 | 10000 | 0 | 754 | > 13262.60 | > | 25000 | 25000 | 0 | 327 | > 76452.60 | > | 50000 | 50000 | 0 | 439 | > 113895.22 | > | 100000 | 100000 | 0 | 625 | > 160000.00 | > | 500000 | 500000 | 0 | 2913 | > 171644.35 | > | 1000000 | 1000000 | 0 | 5879 | > 170096.96 | > > |-----------------------------------------------------------------------------------------| > | Test inserting VERTECES_AND_EDGES > | > > |-----------------------------------------------------------------------------------------| > | documents | vertices | edges | time (ms) | > avg (doc/sec) | > | --------------- | --------------- | --------------- | --------------- | > --------------- | > | 1000 | 500 | 500 | 773 | > 1293.66 | > | 10000 | 5000 | 5000 | 6832 | > 1463.70 | > | 25000 | 12500 | 12500 | 36484 | > 685.23 | > > |-----------------------------------------------------------------------------------------| > | Test inserting EDGES_ONLY > | > > |-----------------------------------------------------------------------------------------| > | documents | vertices | edges | time (ms) | > avg (doc/sec) | > | --------------- | --------------- | --------------- | --------------- | > --------------- | > | 1000 | 2 | 998 | 347 | > 2881.84 | > | 10000 | 2 | 9998 | 23363 | > 428.03 | > | 25000 | 2 | 24998 | 148187 | > 168.71 | > > |-----------------------------------------------------------------------------------------| > > > As you can see inserting 10000 edges takes 23 seconds! I'm not even > trying to go over 25000 as it takes forever! > I thought there may be a problems with inserting relations in graph > databases in general so I started experimenting with Neo4j. > But I was surprised by the results: > > > |-----------------------------------------------------------------------------------------| > | Test inserting VERTECES_ONLY > | > > |-----------------------------------------------------------------------------------------| > | documents | vertices | edges | time (ms) | > avg (doc/sec) | > | --------------- | --------------- | --------------- | --------------- | > --------------- | > | 1001 | 1001 | 0 | 61 | > 16409.84 | > | 10001 | 10001 | 0 | 376 | > 26598.40 | > | 25001 | 25001 | 0 | 101 | > 247534.65 | > | 50001 | 50001 | 0 | 123 | > 406512.20 | > | 100001 | 100001 | 0 | 234 | > 427354.70 | > | 500001 | 500001 | 0 | 2005 | > 249377.06 | > | 1000001 | 1000001 | 0 | 5372 | > 186150.60 | > > |-----------------------------------------------------------------------------------------| > | Test inserting VERTECES_AND_EDGES > | > > |-----------------------------------------------------------------------------------------| > | documents | vertices | edges | time (ms) | > avg (doc/sec) | > | --------------- | --------------- | --------------- | --------------- | > --------------- | > | 1001 | 501 | 500 | 187 | > 5352.94 | > | 10001 | 5001 | 5000 | 278 | > 35974.82 | > | 25001 | 12501 | 12500 | 328 | > 76222.56 | > | 50001 | 25001 | 25000 | 292 | > 171236.30 | > | 100001 | 50001 | 50000 | 490 | > 204083.67 | > | 500001 | 250001 | 250000 | 1857 | > 269252.02 | > | 1000001 | 500001 | 500000 | 6981 | > 143246.10 | > > |-----------------------------------------------------------------------------------------| > | Test inserting EDGES_ONLY > | > > |-----------------------------------------------------------------------------------------| > | documents | vertices | edges | time (ms) | > avg (doc/sec) | > | --------------- | --------------- | --------------- | --------------- | > --------------- | > | 1001 | 3 | 998 | 118 | > 8483.05 | > | 10001 | 3 | 9998 | 139 | > 71949.64 | > | 25001 | 3 | 24998 | 186 | > 134413.98 | > | 50001 | 3 | 49998 | 259 | > 193054.05 | > | 100001 | 3 | 99998 | 437 | > 228835.24 | > | 500001 | 3 | 499998 | 3238 | > 154416.62 | > | 1000001 | 3 | 999998 | 6147 | > 162681.15 | > > |-----------------------------------------------------------------------------------------| > > Then this post > https://groups.google.com/d/topic/orient-database/crIFYreBTdo/discussionshowed > up where Luca > Garulli states "*we've customers (and users in this Group) that have <30 > Billions of records up and running in production*" ! > So I thought that may be OrientDB can be configured/optimized somehow. > Anyone has an idea how? > > If you want to try it for yourself, the tests that produced the above > tables comes from this project: https://github.com/azzazzel/graphdb-tests > To run them simply clone the repo and type "mvn test" (Yes! You need to > have maven). Feel free to experiment and if you happen to know how to > optimize the OrienDB test please let me know (or better off, send me a pull > request). > > I'm soryy to say that because I really like OrienDB and I was looking > forward to use it my project but for now I'm forced to put it aside and > move to something that will not block my unit testing. > > > > -- --- 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 orient-database+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.