Giter VIP home page Giter VIP logo

goffish's People

Contributors

charithwiki avatar kumbhare avatar mfrincu avatar simmhan avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

goffish's Issues

Rewrite GML parser

GML parser ignores newlines, and is prone to deep stack exceptions on malformed GML files. Rewrite of parser is necessary, it may be worth looking into parser generators, but this is likely overkill for now.

Add capability to look up subgraph id from a remote vertex

Currently We can't look up the subgraph id from the vertex. As a result in Gopher currently we route messages with partition id and remote vertex it to route between sub-graphs.

Ideally subgraph centric programming abstractions should provide the capability to direct communication between subgroups.

Doing this Lookup at Gopher level will be costly. So we need some mapping to do the this look up from the local node.

Perf Benchmarks

Different graph sizes, # of partitions, kryo/protobuf, read/write. preference to XDATA graph dataset. Run on Tsangpo.

NPE when Iterating over instances

Sample code
I m getting this at subIt.hasNext()

Iterable instances = sliceManager.readInstances(subgraph,
endTime - 5 * 60 * 1000, endTime, nodeProperties, edgeProperties);

                Iterator<ISubgraphInstance> subIt = instances.iterator();
                if (subIt.hasNext()) {

                   -----------------
               }

Trace

java.lang.NullPointerException
at edu.usc.pgroup.goffish.gofs.slice.FileStorageManager.translateUUIDTo
ile(FileStorageManager.java:39)
at edu.usc.pgroup.goffish.gofs.slice.FileStorageManager.getReadStream(F
leStorageManager.java:23)
at edu.usc.pgroup.goffish.gofs.slice.SliceManager.readPropertyInstances
lice(SliceManager.java:418)
at edu.usc.pgroup.goffish.gofs.slice.InstanceIterator.advanceToNext(Ins
anceIterator.java:69)
at edu.usc.pgroup.goffish.gofs.slice.InstanceIterator.advanceToNext(Ins
anceIterator.java:13)
at edu.usc.pgroup.goffish.gofs.util.AbstractWrapperIterator.hasNext(Abs
ractWrapperIterator.java:34)
at edu.usc.pgroup.goffish.gopher.sample.CarTracer.compute(CarTracer.jav
:81)
at edu.usc.pgroup.floe.applications.gopher.BSPProcessorPellet$GraphTask
unner.run(BSPProcessorPellet.java:352)
at java.util.concurrent.ForkJoinTask$AdaptedRunnable.exec(ForkJoinTask.
ava:1265)
at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:334)
at java.util.concurrent.ForkJoinWorkerThread.execTask(ForkJoinWorkerThr
ad.java:604)
at java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:784)
at java.util.concurrent.ForkJoinPool.work(ForkJoinPool.java:646)
at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.j
va:398)

Jython Library to GoFS

To close finish.

  1. documentation - Jython integration (dependencies, compile etc.),
  2. Sample code (including Python wrappers for GMLPartition and Slice manager)

Refactor SliceManager

There a number of conceptual problems with SliceManager as it exists right now, as well as bugs in how it handles more than one partition, or two properties with the same name. This needs to be fixed ASAP.

Allow IInstanceSerializablePartition to groups instances for serialization

We should push the problem of the slice manager trying to group horizontally sliced instances (from GML, etc) and vertically slice them into each property to IInstanceSerializablePartition. Allow IInstanceSerializablePartition to return groups of instances at a time, rather than just one instance, so that the partition implementation is responsible for returning instances that A) can be grouped together B) will all fit in memory together.

Gopher APIs

Vertex centric
subgraph centric
Time series

NameNode implementation

Define what INameNode responsibilities actually are, and implement. Convert metis format to gml after partitionimg. Send request to partitiom daemon to pull gml partitiom files from name node. Create hash for vertices with remote exges.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.