Geohashing Algorithm | Proximity Search Based Applications | System Design

  Рет қаралды 18,873

Code with Irtiza

Code with Irtiza

Күн бұрын

Пікірлер: 74
@carlluo8539
@carlluo8539 2 жыл бұрын
Just started to prepare my system design interview, and found this video with very detailed explanation and pretty useful.
@irtizahafiz
@irtizahafiz 2 жыл бұрын
So glad these are helping : ) Good luck on your system design interviews! You got this!
@zenlanfleek6580
@zenlanfleek6580 Жыл бұрын
Such a clear and well-explained video! It's my first time learning about Geohasing and I totally get it now. Thank you Irtiza!
@irtizahafiz
@irtizahafiz 9 ай бұрын
Glad you found it helpful!
@poojaarora014
@poojaarora014 Жыл бұрын
Pretty crisp and clear explanation , thank you!
@irtizahafiz
@irtizahafiz 9 ай бұрын
Glad it was helpful!
@protyaybanerjee5051
@protyaybanerjee5051 Жыл бұрын
Think of each co-ordinate in Level 1 in Binary representation. (00,01,10,11), You can then prefix each cell and zoom into the map.
@krishangopal2475
@krishangopal2475 Жыл бұрын
Great Explaination. Thanks!
@PASTRAMIKick
@PASTRAMIKick 2 жыл бұрын
very useful system, thanks for the explanation, this has such a wide range of uses.
@irtizahafiz
@irtizahafiz 2 жыл бұрын
So glad it was helpful! Please let me know if you have any feedback. Always looking to improve the content.
@irtizahafiz
@irtizahafiz 2 жыл бұрын
Correction: It's "representing" not "representating" -_- Don't know what happened to me.. Anyways, hope it was helpful!
@kalyanboro6338
@kalyanboro6338 Жыл бұрын
we care only about the valuable knowledge you've given to us bro, and we are grateful to you!
@GOUSETEIN
@GOUSETEIN 9 ай бұрын
its amazing. I wish u all the best.wish u post more videos on system design
@irtizahafiz
@irtizahafiz 9 ай бұрын
Thank you! I will start posting again very soon.
@prashantkumardhotre5695
@prashantkumardhotre5695 3 ай бұрын
Video could be edited to avoid repeated info and more examples etc and can be reduced to half of present length.
@soumavanag5025
@soumavanag5025 8 ай бұрын
Excellent explanation
@irtizahafiz
@irtizahafiz 7 ай бұрын
Thanks for that!
@semperfiArs
@semperfiArs Жыл бұрын
Brilliant explanation
@irtizahafiz
@irtizahafiz 10 ай бұрын
Thank you! Glad you found it valuable.
@AllanKobelansky
@AllanKobelansky 5 ай бұрын
So you map the sphere to a rectilinear grid.
@XboxTest-el5mn
@XboxTest-el5mn Жыл бұрын
very useful thanks !!!
@harinramesh3468
@harinramesh3468 Жыл бұрын
why this guy only this much subs
@irtizahafiz
@irtizahafiz 10 ай бұрын
Thank you! I will start posting again soon, so please let me know what type of content interests you the most.
@saminsafaei5125
@saminsafaei5125 9 ай бұрын
We are dividing the world into 64 cells not 32 cells... 4*4*4 (in each level we are dividing each cell into 4 so by level 3 we are multiplying 4, 3 times to it self meaning 4 to the power of 3)
@ayushagarwal05
@ayushagarwal05 Жыл бұрын
How we will handle the case of different quadrants where user and POIs are close but they are in different quadrant of level 1
@jinminetics599
@jinminetics599 Жыл бұрын
Very impressive explanation. I was just having assimilation problem trying to understand the algorithm on wikipedia and some sites. Your explanation made it something a 5 year old can easily understand. Thanks. Just subscribed.
@irtizahafiz
@irtizahafiz 10 ай бұрын
Thank you! Glad you found it valuable.
@thisiswill
@thisiswill Жыл бұрын
I would be interested in the thinking leading to choosing this algorithm. So, what other algorithms were considered for solving this problem, why arrive at dividing the world this way, what are the pros/cons of this and other algos for consideration. The algo itself is gettable, but arriving at the conclusion to use this algo over others in more crucial to me
@irtizahafiz
@irtizahafiz 9 ай бұрын
I am sure there are some great researches behind it, and I wouldn't be surprised if there are more preferred algorithms for this use case. This was just one example.
@mukarramshayah2911
@mukarramshayah2911 7 ай бұрын
thanks
@Trother555
@Trother555 Жыл бұрын
Don't know if somebody mentioned but there's a typo in you table on line 6: there sould be 1220 meters.
@irtizahafiz
@irtizahafiz Жыл бұрын
Thank you for correcting. Hopefully this will help others.
@cameronmccoy2204
@cameronmccoy2204 4 ай бұрын
Representated -> represented / represent
@irtizahafiz
@irtizahafiz 4 ай бұрын
Haha, my apologies. English is hard.
@cameronmccoy2204
@cameronmccoy2204 4 ай бұрын
@@irtizahafiz no worries haha, just came to my mind when watching. great vid!
@jamest4027
@jamest4027 2 жыл бұрын
Thank you for the video! I have subscribed! :) I have got a question not all POIs have the same prefix even when they are close. What are the other ways to find nearest POI using geohashing ?
@irtizahafiz
@irtizahafiz Жыл бұрын
Hi! That's a good question. I would recommend getting a few "boxes" around your POI, not one box only. That will help you get around the "boundary problem".
@adityakrverma612
@adityakrverma612 Жыл бұрын
Are Geo-hashing & Quadtress two different strategies? Which one is better ?
@irtizahafiz
@irtizahafiz 9 ай бұрын
Not too familiar with Quadtrees :(
@RS-vu5um
@RS-vu5um 2 жыл бұрын
Excellent Tutorial. Where can I find the pointer to your notes?
@irtizahafiz
@irtizahafiz 2 жыл бұрын
Hi! I try my best to upload the notes. But for some videos, it's not there unfortunately.
@cableraywire
@cableraywire 2 жыл бұрын
As a native English speaker, I would say "represented" instated of "representated" :).
@irtizahafiz
@irtizahafiz Жыл бұрын
Hi! Thank you for correcting. English is difficult haha.
@cableraywire
@cableraywire Жыл бұрын
@@irtizahafiz Yep :). I even had a typo in my response... (instated -> instead)
@silapukanan952
@silapukanan952 2 жыл бұрын
Good video. If I am standing near one corner of a geolocation quadrant,this logic will give me all the businesses that are in my geolocation(the square i am in). But since I am near the edge, would the businesses near the edge of adjacent quadrants get excluded in my search though they are within the distance I am searching for?
@irtizahafiz
@irtizahafiz 2 жыл бұрын
That's a very good observation. That's the downside of using only one of the quadrant. To get over the boundary problem, you want to look up businesses from a few quadrant around you, rather than just one.
@Arkham_nine
@Arkham_nine Жыл бұрын
Hi, thanks for the video. What about a case when POIs is around the border of rectangle? For example 2 points are close to each other on the map, but have different first character of hash.
@powerhead
@powerhead Жыл бұрын
I'm also wondering how to solve this. Did you find a solution?
@Arkham_nine
@Arkham_nine Жыл бұрын
@@powerhead Not yet :(
@vippan
@vippan 11 ай бұрын
@@Arkham_nine in this case you can expand your search radius by +- few Km
@irtizahafiz
@irtizahafiz 10 ай бұрын
As Vippan pointed out above, you can expand the radius.
@Arkham_nine
@Arkham_nine 10 ай бұрын
@@irtizahafiz Hi. How expanding the radius can fix this problem? I don't understand :( Can you show an example please?
@paulcurious2324
@paulcurious2324 2 жыл бұрын
hey super detailed video!, i enjoyed it thoroughly. Just wanted to ask if you could point me to any guide or an example even of how this could be implemented in code for python
@irtizahafiz
@irtizahafiz 2 жыл бұрын
Hi! Glad you enjoyed it. Will appreciate any feedback that you can give for future videos. Here is a good implementation in Python: github.com/wdm0006/pygeohash The documentation the author provided is also super helpful : ) Hopefully that helps!
@paulcurious2324
@paulcurious2324 2 жыл бұрын
@@irtizahafiz thanks a lot for the pointer will take a look at this. And i have subscribed to you channel so i can watch more of your content
@utkarshgupta2909
@utkarshgupta2909 2 жыл бұрын
Irtiza Can you please share your slides with us? These slides are really concise
@irtizahafiz
@irtizahafiz 2 жыл бұрын
Hi! Unfortunately, I don't have the slides anymore for this video. I think starting from the next video, I made it a regular thing to upload slides in the Description section.
@utkarshgupta2909
@utkarshgupta2909 2 жыл бұрын
@@irtizahafiz thanks
@igor1309
@igor1309 2 жыл бұрын
I’m not getting what exactly is computed by multiplying width and height in meters and dividing by 1000 🤔
@irtizahafiz
@irtizahafiz 2 жыл бұрын
Hi! It's been a very busy couple of weeks because I am changing places. I will try to get back to this comment later in the week.
@JardaniJovonovich192
@JardaniJovonovich192 2 жыл бұрын
Correct me If I'm wrong, ​@@irtizahafiz So, basically, the area of a rectangle is `width*height`. As width and height are in meters, dividing it by 1000 gives you the Kilometres denomination. So, the computation, width*height/1000 represents the area of the location covered by Geohash. As the Geohash length increases, the area decreases
@pavankumars1472
@pavankumars1472 2 жыл бұрын
Why 32? Is there an explanation somewhere?
@irtizahafiz
@irtizahafiz 2 жыл бұрын
Not that I am aware of unfortunately. I was mostly trying to explain the concept. I "think" 32 is configurable and used for demonstration purposes only here. However, I would recommend checking out some other resources if you wanted a more thorough explanation.
@flashliqu
@flashliqu 2 жыл бұрын
Would you mind to upload your ppt(documentation) for study
@irtizahafiz
@irtizahafiz 2 жыл бұрын
Hi. For sure. Sorry I forgot to upload the notes for this one. Other System design videos should have their notes in the video description. Here's the notes for this video: docdro.id/07Vq6FT
@flashliqu
@flashliqu 2 жыл бұрын
@@irtizahafiz Appreciate it, actually I think your lecture and presentation is really impressive and is really beneficial
@irtizahafiz
@irtizahafiz 2 жыл бұрын
So glad to hear that. Let me know if there is anything I can improve on. Cheers!
@Sirshendunath
@Sirshendunath Жыл бұрын
Your math is not right. Width * height gives you square meters not km 😊
@hestajevel
@hestajevel 10 ай бұрын
I agree, its not distance at all
@soumyajitganguly2593
@soumyajitganguly2593 Жыл бұрын
In a 18 minute video about geo-hashes you do not talk about or even mention the boundary problem. What if I am near the equator? All points to the south of me will have totally different prefixes.
@irtizahafiz
@irtizahafiz 10 ай бұрын
I believe I mention the boundary problem, and ways to deal with it in the later part of the video.
@firezdog
@firezdog 5 ай бұрын
This is just a quad tree
Design YouTube | System Design
40:20
Code with Irtiza
Рет қаралды 5 М.
Design Proximity Services Like Yelp & Google Maps | System Design
33:42
Code with Irtiza
Рет қаралды 10 М.
English or Spanish 🤣
00:16
GL Show
Рет қаралды 16 МЛН
Geohash: Deep Intuitive Understanding in under 7 Minutes
6:56
Jim O'Flaherty
Рет қаралды 36 М.
Designing a location database: QuadTrees and Hilbert Curves
22:22
Geohash: the algorithm inside and out - Part 1
15:37
Josiah Parry
Рет қаралды 8 М.
Realtime Advertisement Clicks Aggregator | System Design
32:56
Code with Irtiza
Рет қаралды 20 М.
Consistent Hashing | The Backend Engineering Show
23:54
Hussein Nasser
Рет қаралды 40 М.
GeoHash & Go
59:23
Luxoft Corporate
Рет қаралды 1,8 М.
Google SWE teaches systems design | EP29: Geospatial Indexes
15:16
Jordan has no life
Рет қаралды 7 М.
Top 7 Ways to 10x Your API Performance
6:05
ByteByteGo
Рет қаралды 328 М.