Exporter datatables CSV de SQL Server pour les importer dans la database graphique Neo4j

J'ai besoin d'importer en vrac certaines données hautement connectées de SQL Server dans Neo4j pour parsing.

Il y a 2 liens dans le guide du développeur Neo4j qui en discute:

  • Guide: import CSV
  • Guide: Importation de données et ETL

Ma première tentative d'import de données à partir d'un file CSV généré par l'Assistant Importation et export de SQL Server n'a pas réussi à charger les colonnes de mes tables dans les attributes de nœud.

Est-ce que quelqu'un connaît un guide de configuration d'un package SSIS pour produire une export CSV conforme aux exigences de Neo4j répertoriées dans le lien ci-dessus?

Je n'ai pas de guide à vous indiquer, mais je peux vous orienter dans la bonne direction pour résoudre ce problème vous-même:

  • N'utilisez pas l'assistant d'import d'export – ceci est très limitatif dans votre capacité à configurer la destination du file plat et il ne vous permettra pas de corriger datatables dans le pipeline
  • On dirait qu'ils veulent une rangée d'en-tête. Ce qui signifie que vous devez vous assurer que la première ligne de vos données est celle-là. Cela peut être fait avec UNION, si vos données proviennent de SQL par exemple. c'est à dire

    SELECT 'Column1' as Column1 , 'Column2' as Column2 UNION SELECT <actual data from my table> 
  • Configurez le gestionnaire de connections de file plat pour avoir une ligne d'en-tête en cochant "Noms des colonnes dans la première ligne de données"

  • Vous pouvez utiliser une colonne ou une tâche de script dérivée pour placer des guillemets autour de caractères spéciaux ou de guillemets dans le text:

      - "Special character in non-quoted text ← make sure unusual text is always quoted" - "stray quotes – standalone double or single quote in the middle of non-quoted text, or non-escaped quotes in quoted text ← escape or remove stray quotes" 

Selon les suggestions du lien, vous pouvez utiliser CSVkit ou Papa Parse pour examiner les problèmes dans votre file CSV final avant d'essayer de le download sur neo4j. Souvent, ces problèmes de qualité des données sont spécifiques à votre domaine et une fois la poignée de problèmes résolus, il ne sera plus nécessaire d'en prendre soin.