Skip to content

Instantly share code, notes, and snippets.

View aniquetahir's full-sized avatar
💤
( 👁 〰️ 👁 )

Anique aniquetahir

💤
( 👁 〰️ 👁 )
View GitHub Profile
1.Create a PointRDD objectRDD;
2.Create a RectangleRDD queryWindowRDD;
3.Collect rectangles from queryWindowRDD to one Java List L;
4. For each rectangle R in L
do RangeQuery.SpatialRangeQuery(objectRDD, queryEnvelope, 0, true);
End;
5.Collect all results; //"Collect" is a standard function under SparkContext.
6.Parallelize the results to generate a RDD in this format: JavaPairRDD<Envelope, HashSet<Point>>.;//"Parallelize" is a standard function under SparkContext.
7.Return the result RDD;
/*---------------------------- Start an example Spatial Join Query using Cartesian Product algorithm ----------------------------*/
/* Please see http://www.public.asu.edu/~jiayu2/geospark/javadoc/latest/ for function documentation */
val objectRDD = new PointRDD(sc, "/home/SparkUser/Downloads/GeoSpark/src/test/resources/arealm.csv", 0, FileDataSplitter.CSV, false, 10); /* The O means spatial attribute starts at Column 0 and the 10 means 10 RDD partitions */
val rectangleRDD = new RectangleRDD(sc, "/home/SparkUser/Downloads/GeoSpark/src/test/resources/zcta510.csv", 0, FileDataSplitter.CSV, false); /* The O means spatial attribute starts at Column 0. You might need to "collect" all rectangles into a list and do the Carteian Product join. */
val resultSize = JoinQuery.SpatialJoinQuery(objectRDD, rectangleRDD, true).count();
/*---------------------------- End an example Spatial Join Query using Cartesian Product algorithm ----------------------------*/
CSE 512 Naive Spatial Join