2014-07-09 1 views
1

En ce qui concerne la création d'index pour les noeuds que nous créons j'ai une question ..Neo4j Index dans une migration pouvoir d'appréciation Mysql à Neo4j

Si je fais une migration de MySql à Neo4j graphique db dois-je créer un index pour chaque enregistrement ou il est bon de créer à la fin? PS: Désolé pour la question stupide que je suis nouveau et j'essaie d'apprendre. voici le code: `$ query = 'SELECT * FROM produit'; $ resultat = mysql_query ($ query);

while ($row = mysql_fetch_array ($result)) { 
    $product = $this->client->makeNode(); 
    $product->setProperty ('product_id',(int)$row[ 'product_id' ]) 
     ->setProperty ('sku', $row[ 'sku' ]) 
     ->save(); 
    $productIndex = new NodeIndex($this->client,'products'); 
    $productIndex->save(); 
    $productLabel = $this->client->makeLabel ('product'); 
    $product->addLabels (array ($productLabel)); 

    echo "Done creating " . $row[ 'product_id' ] . " node<br/>"; 

}` 

aussi je me demande comment je vois que je l'index a été créé (dans le navigateur) ou je ne peux pas voir seulement le sentir? Je vous remercie !

Répondre

1

Vous pouvez voir les index dans le navigateur avec :schema

ne suis pas sûr de votre index produit? Je ne suis pas familier avec l'API Neo4jPHP. Êtes-vous sûr qu'il s'agit d'un nouvel index de schéma de style?

Vous pouvez également créer l'index ou la contrainte avec des instructions de chiffrement simples.

create index on :Product(product_id) 

ou

create constraint on (p:Product) assert p.product_id is unique 

Voir: http://docs.neo4j.org/chunked/milestone/query-schema-index.html

1

Vous devez créer l'index une fois

$ productIndex = new NodeIndex ($ this-> client, 'produits') $ productIndex-> ​​save();

Puis ajouter des nœuds à l'index

productIndex $> ajouter (nœud $, 'clé', 'valeur');

vérifier l'exemple Neo4j github https://github.com/jadell/neo4jphp/wiki/Indexes