-
Notifications
You must be signed in to change notification settings - Fork 870
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Very low traverse performance #7299
Comments
how much does it take this sub select?
|
I has index on it: Select: SELECT FROM ProductOffering WHERE topOffer = TRUE |
how many records are returned? |
Can you also post the explain of
|
EXPLAIN SELECT .... Result:
|
returns about 400 records |
can you paste also this ?
|
|
do you have a loading script that i can use to recreate more/less this example? |
Sorry. Data Set under NDA. I can't send it to you. I will think about creation script to generate the same graph structure, |
@PrinceKorwin |
OrientDB Version: orientdb-community-2.2.17
Java Version: 1.7
OS: Windows / Mac OS
Server: Embedded in-memory only
Data Set: about 65.000 documents, graph (Vertex, Edges not used) only Documents with LINKS & LINKLIST
Description
I try use traversing for my Data Set (not a big, this is a just sample) and got a very low traverse performance. Data Set just a hierarchical product offering for e-business.
Data schema looks like:
ProductOffer -> ProductOfferReference -> ProductOffer;
ProductOffer -> ProductOfferCategoryReference -> CategoryToProductOfferRerefence -> ProductOffer;
ProductOffer -> ProductOfferCategoryReference -> CategoryToCategoryReference -> CategoryToProductOfferRerefence -> ProductOffer;
So. I just has a "direct" relation between offering and relation via category.
Request simple:
SELECT count(*) FROM (TRAVERSE offeringsRelationships, childProductOffering, productOfferingToCategoryRelationship, offeringCategory, parentCategoryToCategoryRelationships, childProductOfferingCategory, parentCategoryToOfferingRelationships FROM (SELECT FROM ProductOffering WHERE topOffer = TRUE))
I try get Top Product offering and traverse down by all available relation.
Request waste 2-3 second!
Total ProductOffering about 5000. Relations about 60000.
Request returns about 65000 records as expected but very slow!
Database created in-memory, WAL is disabled. I not use remote connection. OrientDB started in Embedded mode.
3 second for traversing 60.000 entities in in-memory mode is very slow!
Our Production DB contains x10 records and it's looks imposible to us move from SQL + custom in-memory cache to OrientDB.
I do Proof of Concept and for now it's looks not good for out business goals.
Can you help me?
The text was updated successfully, but these errors were encountered: