Janusgraph Util
DataImporter.importData
- 创建线程池
- pool.submit( new ExhaustingEntityImporterRunnable(
execution, dataIterator, visitors.apply(i), roughEntityCountProgress ) );
- 线程内部
-dataIterator的数据分成chunk读取
-chunk.next(vistor) 取单个InputEntity送入visitor
包含单条记录的所有信息,供InputEntityVisitor使用
InputEntity implements InputEntityVisitor
-有replayOnto( InputEntityVisitor visitor )方法,
这里涉及了什么设计模式吗? Adapter/Delegate
InputEntityVisitor 接受InputChunk调用,传入该visitor对数据进行处理。
-InputEntityVisitor.adapter
-EntityImporter
-EdgeImporter
-NodeImporter
-有endOfEntity方法,对数据进行最终处理
-BulkMutator mutator.mutateMany(stx,addedRelations);
BulkMutator 序列化JanusGraph元素的方法
-BulkMutatorImpl
-mutateMany(StandardJanusGraphTx stx, Collection addedRelations)
-ParallelBulkMutator