Search in sources :

Example 1 with Header

use of org.neo4j.unsafe.impl.batchimport.input.csv.Header in project neo4j by neo4j.

the class QuickImport method main.

public static void main(String[] arguments) throws IOException {
    Args args = Args.parse(arguments);
    long nodeCount = parseLongWithUnit(args.get("nodes", null));
    long relationshipCount = parseLongWithUnit(args.get("relationships", null));
    int labelCount = args.getNumber("labels", 4).intValue();
    int relationshipTypeCount = args.getNumber("relationship-types", 4).intValue();
    File dir = new File(args.get(ImportTool.Options.STORE_DIR.key()));
    long randomSeed = args.getNumber("random-seed", currentTimeMillis()).longValue();
    Configuration config = COMMAS;
    Extractors extractors = new Extractors(config.arrayDelimiter());
    IdType idType = IdType.valueOf(args.get("id-type", IdType.ACTUAL.name()));
    Header nodeHeader = parseNodeHeader(args, idType, extractors);
    Header relationshipHeader = parseRelationshipHeader(args, idType, extractors);
    FormattedLogProvider sysoutLogProvider = FormattedLogProvider.toOutputStream(System.out);
    org.neo4j.unsafe.impl.batchimport.Configuration importConfig = new Default() {

        @Override
        public int maxNumberOfProcessors() {
            return args.getNumber(ImportTool.Options.PROCESSORS.key(), super.maxNumberOfProcessors()).intValue();
        }

        @Override
        public int denseNodeThreshold() {
            return args.getNumber(dense_node_threshold.name(), super.denseNodeThreshold()).intValue();
        }
    };
    SimpleDataGenerator generator = new SimpleDataGenerator(nodeHeader, relationshipHeader, randomSeed, nodeCount, labelCount, relationshipTypeCount, idType);
    Input input = new DataGeneratorInput(nodeCount, relationshipCount, generator.nodes(), generator.relationships(), idType, silentBadCollector(0));
    try (FileSystemAbstraction fileSystem = new DefaultFileSystemAbstraction()) {
        BatchImporter consumer;
        if (args.getBoolean("to-csv")) {
            consumer = new CsvOutput(dir, nodeHeader, relationshipHeader, config);
        } else {
            consumer = new ParallelBatchImporter(dir, fileSystem, importConfig, new SimpleLogService(sysoutLogProvider, sysoutLogProvider), defaultVisible(), Config.defaults());
        }
        consumer.doImport(input);
    }
}
Also used : Args(org.neo4j.helpers.Args) DefaultFileSystemAbstraction(org.neo4j.io.fs.DefaultFileSystemAbstraction) FileSystemAbstraction(org.neo4j.io.fs.FileSystemAbstraction) DefaultFileSystemAbstraction(org.neo4j.io.fs.DefaultFileSystemAbstraction) Configuration(org.neo4j.unsafe.impl.batchimport.input.csv.Configuration) SimpleLogService(org.neo4j.kernel.impl.logging.SimpleLogService) Default(org.neo4j.unsafe.impl.batchimport.Configuration.Default) IdType(org.neo4j.unsafe.impl.batchimport.input.csv.IdType) FormattedLogProvider(org.neo4j.logging.FormattedLogProvider) ParallelBatchImporter(org.neo4j.unsafe.impl.batchimport.ParallelBatchImporter) Extractors(org.neo4j.csv.reader.Extractors) Input(org.neo4j.unsafe.impl.batchimport.input.Input) Header(org.neo4j.unsafe.impl.batchimport.input.csv.Header) DataGeneratorInput.bareboneNodeHeader(org.neo4j.tooling.DataGeneratorInput.bareboneNodeHeader) DataFactories.defaultFormatRelationshipFileHeader(org.neo4j.unsafe.impl.batchimport.input.csv.DataFactories.defaultFormatRelationshipFileHeader) DataFactories.defaultFormatNodeFileHeader(org.neo4j.unsafe.impl.batchimport.input.csv.DataFactories.defaultFormatNodeFileHeader) DataGeneratorInput.bareboneRelationshipHeader(org.neo4j.tooling.DataGeneratorInput.bareboneRelationshipHeader) ParallelBatchImporter(org.neo4j.unsafe.impl.batchimport.ParallelBatchImporter) BatchImporter(org.neo4j.unsafe.impl.batchimport.BatchImporter) File(java.io.File)

Aggregations

File (java.io.File)1 Extractors (org.neo4j.csv.reader.Extractors)1 Args (org.neo4j.helpers.Args)1 DefaultFileSystemAbstraction (org.neo4j.io.fs.DefaultFileSystemAbstraction)1 FileSystemAbstraction (org.neo4j.io.fs.FileSystemAbstraction)1 SimpleLogService (org.neo4j.kernel.impl.logging.SimpleLogService)1 FormattedLogProvider (org.neo4j.logging.FormattedLogProvider)1 DataGeneratorInput.bareboneNodeHeader (org.neo4j.tooling.DataGeneratorInput.bareboneNodeHeader)1 DataGeneratorInput.bareboneRelationshipHeader (org.neo4j.tooling.DataGeneratorInput.bareboneRelationshipHeader)1 BatchImporter (org.neo4j.unsafe.impl.batchimport.BatchImporter)1 Default (org.neo4j.unsafe.impl.batchimport.Configuration.Default)1 ParallelBatchImporter (org.neo4j.unsafe.impl.batchimport.ParallelBatchImporter)1 Input (org.neo4j.unsafe.impl.batchimport.input.Input)1 Configuration (org.neo4j.unsafe.impl.batchimport.input.csv.Configuration)1 DataFactories.defaultFormatNodeFileHeader (org.neo4j.unsafe.impl.batchimport.input.csv.DataFactories.defaultFormatNodeFileHeader)1 DataFactories.defaultFormatRelationshipFileHeader (org.neo4j.unsafe.impl.batchimport.input.csv.DataFactories.defaultFormatRelationshipFileHeader)1 Header (org.neo4j.unsafe.impl.batchimport.input.csv.Header)1 IdType (org.neo4j.unsafe.impl.batchimport.input.csv.IdType)1