Wstawianie dużej liczby węzłów do Neo4J

Mam tabelę przechowywaną w typowej bazie danych MySQL i zbudowałem małe narzędzie analizatora składni przy użyciu Java, aby przeanalizować i zbudować bazę danych neo4j. Ta baza danych będzie miała ~ 40 milionów węzłów, każdy z jednym lub więcej krawędzi (z możliwymi maksymalnie 10 krawędziami). Problem pochodzi ze sposobu tworzenia pewnych węzłów. Jest węzeł użytkownika, węzeł komentarza i węzeł hashtag. Węzły użytkowników i węzły hashtag muszą być unikalne. Używam kodu z następującego przykładu, aby zapewnić wyjątkowość:

public Node getOrCreateUserWithUniqueFactory( String username, GraphDatabaseService graphDb )
{
    UniqueFactory<Node> factory = new UniqueFactory.UniqueNodeFactory( graphDb, "users" )
    {
    @Override
    protected void initialize( Node created, Map<String, Object> properties )
    {
        created.setProperty( "name", properties.get( "name" ) );
    }
};

return factory.getOrCreate( "name", username );

}

Zastanawiałem się nad użyciem insertera wsadowego, ale nie widziałem sposobu sprawdzenia, czy węzeł jest unikalny podczas wykonywania wstawki wsadowej. Moje pytanie brzmi więc, jaki jest najszybszy sposób wstawienia wszystkich tych węzłów, przy jednoczesnym zachowaniu ich wyjątkowości. Jakakolwiek pomoc byłaby zawsze bardzo doceniana.

questionAnswers(3)

yourAnswerToTheQuestion