Hello everyone, I hope I'm not rehashing a topic that's already been created, but I haven't found any problems similar to mine.
I'm going to start by explaining my project to you, I'm currently at engineering school and for a project we need to create a graph database. we have a lot of data, this data is articles from French codes of law linked to legal dictionaries in French.
For this we have created different programs and scripts to create text files containing the creation of noeds and links, but we are encountering optimisation problems knowing that we have imported just 1/20 of our data which corresponds to around 20,000 nodes and 3,000 links, and this took us almost 2 hours.
So I'm trying to find out how to optimise this knowing that I've tried on the desktop version on a MacBook Air but also on the computers at my school which have better capacity but it didn't change the only difference was on the neo4j online version where it was a bit faster.
If I've forgotten anything, let me know and I'll get back to you as soon as possible.
here's an example of what I have :
CREATE (D3:Dictionnaire {mots:'Abandon '})
CREATE (D4:Dictionnaire {mots:'Abandon de biens '})
CREATE (D5:Dictionnaire {mots:'Abandon de domicile '})
CREATE (D6:Dictionnaire {mots:'Abandon d’enfant '})
CREATE (D7:Dictionnaire {mots:'Abandon de famille '})
CREATE (D8:Dictionnaire {mots:'Abattement '})
CREATE (D9:Dictionnaire {mots:'Abattement supplémentaire '})
CREATE (D10:Dictionnaire {mots:'Ab intestat '})
CREATE (D11:Dictionnaire {mots:'Ab irato '})
CREATE (D12:Dictionnaire {mots:'Abolition '})
CREATE (D13:Dictionnaire {mots:'Abondement '})
CREATE (D14:Dictionnaire {mots:'Ă€ bon droit '})
CREATE (D15:Dictionnaire {mots:'Abordage '})
CREATE (D16:Dictionnaire {mots:'Abornement '})
CREATE (D17:Dictionnaire {mots:'Aboutissants '})
CREATE (D18:Dictionnaire {mots:'Abrogation '})
CREATE (D19:Dictionnaire {mots:'Absence '})
CREATE (D20:Dictionnaire {mots:'Absentéisme '})
CREATE (D21:Dictionnaire {mots:'Absentéisme scolaire '})
CREATE (D22:Dictionnaire {mots:'Absolu '})
CREATE (D23:Dictionnaire {mots:'Absolution '})
CREATE (D24:Dictionnaire {mots:'Absolutisme '})
CREATE (D25:Dictionnaire {mots:'Abstention '})
CREATE (D26:Dictionnaire {mots:'Abstention délictueuse '})
CREATE (D27:Dictionnaire {mots:'Abstentionnisme Ă©lectoral '})
CREATE (D28:Dictionnaire {mots:'Abstrait '})
CREATE (D29:Dictionnaire {mots:'Abstrat '})
CREATE (D30:Dictionnaire {mots:'Abus '})
...
CREATE (D5653:Dictionnaire {mots:'Vigueur '})
CREATE (D5654:Dictionnaire {mots:'Vil '})
CREATE (D5655:Dictionnaire {mots:'Viol '})
CREATE (D5656:Dictionnaire {mots:'Violation de la loi '})
CREATE (D5657:Dictionnaire {mots:'Violence '})
CREATE (D5658:Dictionnaire {mots:''})
CREATE (C1:Code {type:'Civile', article:'Art. 7'})
CREATE (D1154)-[:isIn ]->(C1)
CREATE (C2:Code {type:'Civile', article:'Art. 8'})
CREATE (C3:Code {type:'Civile', article:'Art. 9'})
CREATE (D408)-[:isIn ]->(C3)
CREATE (D1646)-[:isIn ]->(C3)
CREATE (D4009)-[:isIn ]->(C3)
CREATE (D4530)-[:isIn ]->(C3)
CREATE (C4:Code {type:'Civile', article:'Art. 9-1'})
CREATE (D1646)-[:isIn ]->(C4)
CREATE (D1879)-[:isIn ]->(C4)
CREATE (D4043)-[:isIn ]->(C4)
CREATE (D4044)-[:isIn ]->(C4)
CREATE (C5:Code {type:'Civile', article:'Art. 10'})
CREATE (C6:Code {type:'Civile', article:'Art. 11'})
CREATE (C7:Code {type:'Civile', article:'Art. 12'})
CREATE (D1646)-[:isIn ]->(C7)
CREATE (C8:Code {type:'Civile', article:'Art. 14'})
...
CREATE (C3006:Code {type:'Civile', article:'Art. 6'})
CREATE (C3007:Code {type:'Civile', article:'Art. 6-1'})
CREATE (C3008:Code {type:'Civile', article:'Art. 6-2'})
CREATE (EN1:Code {type:'Environnement', article:'Art. L. 110-1'})
CREATE (D1154)-[:isIn ]->(EN1)
CREATE (EN2:Code {type:'Environnement', article:'Art. L. 110-1'})
CREATE (EN3:Code {type:'Environnement', article:'Art. L. 110-1'})
CREATE (EN4:Code {type:'Environnement', article:'Art. L. 110-2'})
CREATE (EN5:Code {type:'Environnement', article:'Art. L. 110-3'})
CREATE (EN6:Code {type:'Environnement', article:'Art. L. 110-4'})
CREATE (D2546)-[:isIn ]->(EN6)
CREATE (EN7:Code {type:'Environnement', article:'Art. L. 110-5'})
CREATE (D2546)-[:isIn ]->(EN7)
CREATE (EN8:Code {type:'Environnement', a
or
MERGE (n:Code {type:'Procédure pénale', article:'Art. 475-1'}); MATCH (d:Dictionnaire {mots:'Absence '}), (node2:Code {type:'Procédure pénale', article:'Art. 475-1'}) CREATE (d)-[:Dist {distance:'0.02729748934154429'}]->(node2);
MERGE (n:Code {type:'Procédure pénale', article:'Art. 462'}); MATCH (d:Dictionnaire {mots:'Absence '}), (node2:Code {type:'Procédure pénale', article:'Art. 462'}) CREATE (d)-[:Dist {distance:'0.171078083057003'}]->(node2);
MERGE (n:Loi {type:'du 29 juillet', article:'Art. 53'}); MATCH (d:Dictionnaire {mots:'Absence '}), (node2:Loi {type:'du 29 juillet', article:'Art. 53'}) CREATE (d)-[:Dist {distance:'0.08399455234486025'}]->(node2);
MERGE (n:Loi {type:'du 29 juillet', article:'Art. 29'}); MATCH (d:Dictionnaire {mots:'Absence '}), (node2:Loi {type:'du 29 juillet', article:'Art. 29'}) CREATE (d)-[:Dist {distance:'0.06670416864045477'}]->(node2);
MERGE (n:Loi {type:'du 29 juillet', article:'Art. 33'}); MATCH (d:Dictionnaire {mots:'Absence '}), (node2:Loi {type:'du 29 juillet', article:'Art. 33'}) CREATE (d)-[:Dist {distance:'0.06503631770093163'}]->(node2);
MERGE (n:Loi {type:'du 29 juillet', article:'Art. 24'}); MATCH (d:Dictionnaire {mots:'Absence '}), (node2:Loi {type:'du 29 juillet', article:'Art. 24'}) CREATE (d)-[:Dist {distance:'0.0005921364282330649'}]->(node2);
MERGE (n:Code {type:'Procédure pénale', article:'Art. 2'}); MATCH (d:Dictionnaire {mots:'Absence '}), (node2:Code {type:'Procédure pénale', article:'Art. 2'}) CREATE (d)-[:Dist {distance:'0.01086570345807674'}]->(node2);
MERGE (n:Loi {type:'du 29 juillet', article:'Art. 48-1'}); MATCH (d:Dictionnaire {mots:'Absence '}), (node2:Loi {type:'du 29 juillet', article:'Art. 48-1'}) CREATE (d)-[:Dist {distance:'0.038814542870677406'}]->(node2);
MERGE (n:Code {type:'général des impôts', article:'Art. 1018'}); MATCH (d:Dictionnaire {mots:'Absence '}), (node2:Code {type:'général des impôts', article:'Art. 1018'}) CREATE (d)-[:Dist {distance:'0.2257914890257382'}]->(node2);
MERGE (n:Code {type:'Procédure pénale', article:'Art. 475-1'}); MATCH (d:Dictionnaire {mots:'Absolu '}), (node2:Code {type:'Procédure pénale', article:'Art. 475-1'}) CREATE (d)-[:Dist {distance:'0.19579977893573347'}]->(node2);
MERGE (n:Code {type:'Procédure pénale', article:'Art. 462'}); MATCH (d:Dictionnaire {mots:'Absolu '}), (node2:Code {type:'Procédure pénale', article:'Art. 462'}) CREATE (d)-[:Dist {distance:'0.3220037896731407'}]->(node2);
MERGE (n:Loi {type:'du 29 juillet', article:'Art. 53'}); MATCH (d:Dictionnaire {mots:'Absolu '}), (node2:Loi {type:'du 29 juillet', article:'Art. 53'}) CREATE (d)-[:Dist {distance:'0.23492025896099794'}]->(node2);
MERGE (n:Loi {type:'du 29 juillet', article:'Art. 29'}); MATCH (d:Dictionnaire {mots:'Absolu '}), (node2:Loi {type:'du 29 juillet', article:'Art. 29'}) CREATE (d)-[:Dist {distance:'0.21762987525659244'}]->(node2);
MERGE (n:Loi {type:'du 29 juillet', article:'Art. 33'}); MATCH (d:Dictionnaire {mots:'Absolu '}), (node2:Loi {type:'du 29 juillet', article:'Art. 33'}) CREATE (d)-[:Dist {distance:'0.21596202431706932'}]->(node2);
MERGE (n:Loi {type:'du 29 juillet', article:'Art. 24'}); MATCH (d:Dictionnaire {mots:'Absolu '}), (node2:Loi {type:'du 29 juillet', article:'Art. 24'}) CREATE (d)-[:Dist {distance:'0.03583412284857098'}]->(node2);
MERGE (n:Code {type:'Procédure pénale', article:'Art. 2'}); MATCH (d:Dictionnaire {mots:'Absolu '}), (node2:Code {type:'Procédure pénale', article:'Art. 2'}) CREATE (d)-[:Dist {distance:'0.17936799305226592'}]->(node2);
MERGE (n:Loi {type:'du 29 juillet', article:'Art. 48-1'}); MATCH (d:Dictionnaire {mots:'Absolu '}), (node2:Loi {type:'du 29 juillet', article:'Art. 48-1'}) CREATE (d)-[:Dist {distance:'0.20731683246486657'}]->(node2);
MERGE (n:Code {type:'général des impôts', article:'Art. 1018'}); MATCH (d:Dictionnaire {mots:'Absolu '}), (node2:Code {type:'général des impôts', article:'Art. 1018'}) CREATE (d)-[:Dist {distance:'0.39429377861992737'}]->(node2);