2016-11-03 5 views
2

I Follow-Datenbankstruktur haben:Wie Abfrage Index der verknüpften Dokument beschleunigen

create class User 
create class Social 

create property Social.vk string 
create property User.social LINK Social 

create index User.social unique 
create index Social.vk notunique 

Abfrage select from User where social.vk = '123' Index verwendet.

im Studio Erklären Sie gibt mir Info:

involvedIndexes 
["User.social","Social.vk"] 

elapsed 
2771.4197 

Es deutlich langsamer als

select from Social where vk = '123', die bei 10-30 millis läuft.

Wie kann ich die langsame Abfrage beschleunigen oder meine Daten mit bidirektionaler Verknüpfung neu gestalten?

upd
Vergleicht man Zeit ohne Index abzufragen, scheint nicht Verwendungen Index, sondern nach ‚erklären‘ es verwendet.

Upd2
Problem erscheint, wenn 'vk' Feld nicht eindeutig ist und viele wiederholte Werte

+0

Wie wäre es mit Kanten anstatt mit Links? –

+0

@IvanMaineti Danke für die Antwort. Wenn ich '=' nach 'LIKE' ändere, wird die Abfrage in Millisekunden ausgeführt, wählen Sie aus dem Benutzer aus, wo social.vk LIKE '123'', also fahre ich mit der Untersuchung fort und poste die Ergebnisse später ... – zella

+0

@IvanMaineti über' LIKE '- so scheint es ein Fehler, weil es nicht funktioniert. Über Links - ich bin mir nicht sicher, ob es für mich einfach ist - migriere Dokumentdatenbank in Graph. – zella

Antwort

0

Es ist ein bug mit osql hat. Einfache Problemumgehung - direkte Abfrage von Indizes. Es gibt also kein Problem mit der Leistung.

Verwandte Themen