Murali-group / GraphSpace

The interactive graph sharing website.
http://graphspace.org
GNU General Public License v2.0
29 stars 41 forks source link

Support bulk upload via REST APIs #251

Open adbharadwaj opened 7 years ago

sandeepm96 commented 7 years ago

I would like to work on this. I had a doubt. Will there be a separate API endpoint for this or will it be implemented in the /graphs endpoint itself? Bulk upload can be achieved by posting an array of graphs in the API endpoint.

adbharadwaj commented 7 years ago

We plan to make a separate endpoint. Since the bulk upload will take a lot of time (indexing will take a lot of time), we cannot make the users wait till all the graphs have been added.

Aditya Bharadwaj Graduate Research Assistant, Department of Computer Science, Virginia Tech adb@vt.edu

On Thu, Apr 13, 2017 at 1:00 PM, Sandeep Mahapatra <notifications@github.com

wrote:

I would like to work on this. I had a doubt. Will there be a separate API endpoint for this or will it be implemented in the /graphs endpoint itself?

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/Murali-group/GraphSpace/issues/251#issuecomment-293960796, or mute the thread https://github.com/notifications/unsubscribe-auth/ADUeB8cSjHVRP81ydPPwEWHUKXj21bGZks5rvlSogaJpZM4Mh56O .

sandeepm96 commented 7 years ago

I read up on this blog post that implementing separate endpoints will not be RESTful. We can also do it by having different content types or different action identifiers for the same post request. @adbharadwaj What should be our best approach considering the above?

Also I read up about asynchronous processing on this blog post which we could implement in our case. This way we will not make the users wait for bulk uploads.

adbharadwaj commented 7 years ago

@sandeepm96 You are right that implementing separate endpoints will not be RESTful. This blog post points out the correct specification for the REST APIs. This solution will require a usage of a queueing system like Kafka. This might not be an ideal issue for you learn about the GraphSpace ecosystem.

Currently we support bulk upload via graphspace_python library.