Slideshow transcript
Slide 1: a flickr approach to making sense of the world Dan Catt
Slide 2: “To start with we’ll take a quick(ish) look at the current state of reverse geo-coding; mapping latitude and longitude to an actual place... blah blah blah ...” Then Database Stuff. Then some pictures of cats.
Slide 3: Database Stuff. “To start with we’ll take a quick(ish) look at the current state of reverse geo-coding; mapping latitude and longitude to an actual place... blah blah blah ...” Then some pictures of cats.
Slide 4: Anecdote
Slide 5: CK. - http://www.flickr.com/photos/ckyuan/22321940/
Slide 6: coldfusion CK. - http://www.flickr.com/photos/ckyuan/22321940/
Slide 7: coldfusion access database CK. - http://www.flickr.com/photos/ckyuan/22321940/
Slide 8: 1. Where On Earth WOE!
Slide 10: 32bit
Slide 11: 32bit 4,294,967,295
Slide 12: 64Bit
Slide 13: Dr Strangelove Yahoo! War Room
Slide 15: 63,812,239 geotagged photos (and videos)
Slide 16: network diagram white
Slide 17: one big server
Slide 18: expensive cheap less stuff more stuff
Slide 19: expensive development costs stay cheap(ish) cheap less stuff more stuff
Slide 21: bullish1974 - http://www.flickr.com/photos/bullish1974/564943824/
Slide 22: one big server [sad face]
Slide 23: lots of cheap servers
Slide 24: expensive cheap less stuff more stuff
Slide 25: expensive development may cost more cheap less stuff more stuff
Slide 26: lots of cheap servers
Slide 27: lots of cheap servers vespa
Slide 28: lots of cheap servers vespa
Slide 29: lots of cheap servers vespa indexes
Slide 30: Interlude
Slide 31: hilbert space filling curve, 1st iteration
Slide 32: hilbert space filling curve, 2nd iteration
Slide 33: hilbert space filling curve, 3rd iteration
Slide 34: search area
Slide 35: search area divided
Slide 36: (x > lon1 AND x < lon2)
Slide 37: AND (y > lat1 AND y < lat2)
Slide 38: (i > 8 AND i < 19) OR (i > 30 AND i < 33)
Slide 39: GEOLOC geographical referencing system
Slide 40: GEOLOC geographical referencing system
Slide 41: • the first level of partition consists of 2 rows and 3 columns, each partition or tile being 25 degrees of longitude by 13 degrees of latitude. These tiles are ordered row by row from the top left (Pacific Northwest) and numbered 1 to 6 • at the next level, each tile is divided into 26 rows of one half degree latitude and 25 columns of one degree longitude, the area covered by one 1:100,000 USGS quadrangle. Each of these subtitles is given a two letter designation using a letter to represent the row (A through Z) and one to represent the column (A through Y) • each subtile is divided into 4 rows and 8 columns of 7.5 minute quads, numbered row by row from 1 to 32 • at the next level, these are divided into 4 rows and 2 columns, designated by assigning the letters A through H row by row • finally, each of these divisions is divided into 5 rows, lettered A through E, and 10 columns numbered 0 through 9 to produce 50 cells of approximately 100 acres each • an example of a full designator for a 100 acre parcel (in the Los Angeles area) is 4FG19DC6
Slide 42: 4,FG,19,D,C6
Slide 43: 4,(F,G),19,D,(C,6)
Slide 44: pirates! Scott Ableman - http://www.flickr.com/photos/ableman/437906504/
Slide 45: pirates! pirate tables! Scott Ableman - http://www.flickr.com/photos/ableman/437906504/
Slide 46: ikea!
Slide 47: ikea! ikea tables!
Slide 48: Interlude
Slide 54: Scott Beale / Laughing Squid - http://www.flickr.com/photos/laughingsquid/102689398/
Slide 55: 0 1 2 3 0 1 2 3
Slide 56: 00 01 10 11 00 01 10 11
Slide 57: 23 = 00010111 42 = 00101010
Slide 58: 0 0 0 1 0 1 1 1 0 0 1 0 1 0 1 0
Slide 59: 0000100110011101
Slide 60: 0000100110011101 = 2461
Slide 61: 00 01 10 11 00 01 10 11 00 00 00 00 00 00 01 10 11 01 01 01 01 01 00 01 10 11 10 10 10 10 10 11 01 10 11 11 00 11 11 11
Slide 62: 00 01 10 11 00 0000 0001 0100 0101 01 0010 0011 0110 0111 10 1000 1001 1100 1101 11 1010 1011 1110 1111
Slide 63: 0 1 2 3 0 0 1 4 5 1 2 3 6 7 2 8 9 12 13 3 10 11 14 15
Slide 64: morton curve, 1st iteration
Slide 65: morton curve, 2nd iteration
Slide 66: morton curve, 3rd iteration
Slide 67: reverse hierarchical agglomerative clustering
Slide 68: (divisive) hierarchical agglomerative clustering
Slide 76: hierarchical agglomerative clustering
Slide 78: going back up can be expensive
Slide 79: give weighting to ‘adjacent’ points on the morton curve
Slide 80: morton curve, 3rd iteration
Slide 81: don’t need to go all the way back up
Slide 83: oh and cheat with a quick shuffle
Slide 87: geocoding
Slide 88: geocoding • A Point of Interest: Eiffel Tower • Address: 10 Downing Street, London, UK • Place: France
Slide 92: reverse geocoding
Slide 93: searching for eiffel tower gives us back 48.858235,2.294555, because the chances of matching "eiffel tower" in the database are pretty darn high now if I want to do a reverse geocode, and I happen to be standing right at 48.858235,2.294555 and ask the database what's there, then I may get back the eiffel tower. If I'm standing a few meters to the left at 48.858235,2.294554 then I'm out of luck
Slide 99: • if the container I’m in is significantly smaller than any of the others I’m in, use it • otherwise which center point of the boxes centered within the parent of the smallest box I’m within, am I closest too, if it’ not to far, use it, (if the parent box isn’t significantly bigger then the smallest of the boxes I’m in) • else give up, use the box I’m in
Slide 109: thank you






Add a comment on Slide 1
If you have a SlideShare account, login to comment; else you can comment as a guest- Favorites & Groups
Showing 1-50 of 10 (more)