I have a file with srcId -> dstId values that represent the edges of a graph which i load with GraphLoader edgeListFile, the source represents users and the destination items , in some occasions the srcId and the dstId are equal so there are errors in some algorithms like when i want to collect the neighbor of each vertex. Can i do something to separate the users from the items and also not loose any information
Apache Spark Graphx :Source and Destination share the shame VertexId but represnet different things
337 Views Asked by user3224454 At
1
There are 1 best solutions below
Related Questions in SPARK-GRAPHX
- traversing a graph in spark-graphx via edge properties
- Spark GraphX memory out of error SparkListenerBus (java.lang.OutOfMemoryError: Java heap space)
- Connecting the first two nodes with an edge from two RDDs in GraphX
- Subtract an RDD from another RDD doesn't work correctly
- Passing a function foreach key of an Array
- Graphx EdgeRDD count taking long time to compute
- How to create EdgeRDD in Graphx
- Does Spark Graphx have visualization like Gephi
- Retrieving TriangleCount
- removing vertices with no edges in graphx spark
- VertexRDD giving me type mismatch error
- Apache Spark Graphx :Source and Destination share the shame VertexId but represnet different things
- Spark Graphx: Loading a graph from adjacency matrix
- Apache spark Graphx :GraphLoader minEdgePartitions selection
- GraphX not working properly Spark / Scala
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Each GraphX vertex must be defined by an unique long value. If the source and destination IDs represent different things, you need to transform them with some operation to make sure they are distinct. For example, assuming you have read your data into an
RDD[(Long, Long)], you could do:Then you will have a graph where all item IDs will be their original ID + the maximum ID of an user (if the IDs can be 0, you need to add an extra 1).
Note that this is just a suggestion, the idea is that you need to transform your IDs in a way that no item can have the same ID as an user. Also, you may want to keep a way to know if a given vertex is an user or an item; in my suggestion, all vertices with ID <=
userMaxIDwould be users, whereas all vertices with ID >userMaxIDwould be items.