TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Ask HN: How was Google maps made?

16 点作者 whatitdobooboo超过 5 年前
I know this is broad - but I cant find much information on how Google Maps or any GIS is made. Does anyone have any links&#x2F;direction that explains this better?<p>Edit&#x2F;Clarification: I am asking from a technology&#x2F;programming standpoint

5 条评论

mtmail超过 5 年前
Go to an OpenStreetMap like <a href="https:&#x2F;&#x2F;www.openstreetmap.org&#x2F;#map=17&#x2F;36.16567&#x2F;-115.15036" rel="nofollow">https:&#x2F;&#x2F;www.openstreetmap.org&#x2F;#map=17&#x2F;36.16567&#x2F;-115.15036</a> and click the &#x27;layer&#x27; icon on the right-hand side. This lead to <a href="https:&#x2F;&#x2F;www.openstreetmap.org&#x2F;#map=17&#x2F;36.16567&#x2F;-115.15036&amp;layers=D" rel="nofollow">https:&#x2F;&#x2F;www.openstreetmap.org&#x2F;#map=17&#x2F;36.16567&#x2F;-115.15036&amp;la...</a><p>You will see all kind of objects (points, ways, polygons). Click on each will reveal a list of key-value pairs, e.g. the name of a street or if it&#x27;s one-way. What key and value are use depends on the provider. I think Google Maps started with NavTec licensed database.<p>The data is put into a database (OpenStreetMap: postgresql). Renderer servers do SQL queries for a location and create PNG images (<a href="https:&#x2F;&#x2F;mapnik.org&#x2F;" rel="nofollow">https:&#x2F;&#x2F;mapnik.org&#x2F;</a>). Similar (more complex) with vector output which is usually rendered in the client, e.g. in the browser (<a href="https:&#x2F;&#x2F;github.com&#x2F;mapbox&#x2F;mapbox-gl-js" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;mapbox&#x2F;mapbox-gl-js</a>)<p>Later Google decided to skip NavTec and created their own database. They already had the StreeView cars which took photos of the whole USA. In a clean-room environment (no outside internet access) hundreds of employees traced the GPS tracks and photos from StreetView. Months-long and at huge cost. Even if it cost them a billion USD, it was cheaper long-term than paying the licence fees. Then repeat for more countries.<p>The book &quot;Never Lost Again&quot; (<a href="https:&#x2F;&#x2F;www.amazon.com&#x2F;dp&#x2F;B07CHPY6B9&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.amazon.com&#x2F;dp&#x2F;B07CHPY6B9&#x2F;</a>) covers the early days from a project, not engineering, point of view.<p>If you want to play with the technology <a href="https:&#x2F;&#x2F;switch2osm.org&#x2F;" rel="nofollow">https:&#x2F;&#x2F;switch2osm.org&#x2F;</a> has good guides.
评论 #21754670 未加载
评论 #21754379 未加载
satvikpendem超过 5 年前
For one of our classes, we implemented a Google Maps clone, complete with turn by turn navigation as well (although no AI voice, just text). You can do the same if you wish [0]. Note that this project took us a semester, it might take you the same amount of time.<p>The main insight is that 2D data can be represented by quad-trees, like binary trees but with 4 branches rather than two. This enables you to break up a square are into 4 parts, one for each branch, and further subdivide them. In each branch, you can store some information, such as a location or city. If there are two in a leaf, you break them down until there is only one piece of information in each leaf. This is just one type of quad-tree, there are others. Some subdivide each square evenly, some don&#x27;t.<p>Curiously, you can do the same sort of thing with oct-trees, with 8 leaves. In general it seems that for whatever number of dimensions N, you need a 2^N ary tree to represent its internal data. A binary tree works for a 1D line, everything to the left of the line and right of the line (this is how binary search works); quad-trees for northeast, northwest, southeast, southwest; oct-trees for those four, plus front and back; and so on.<p>[0] <a href="http:&#x2F;&#x2F;www.cs.umd.edu&#x2F;users&#x2F;meesh&#x2F;420&#x2F;ProjectBook&#x2F;" rel="nofollow">http:&#x2F;&#x2F;www.cs.umd.edu&#x2F;users&#x2F;meesh&#x2F;420&#x2F;ProjectBook&#x2F;</a>
johncoltrane超过 5 年前
Are you asking about the product or the technologies? Both have changed a lot in 14 years: <a href="https:&#x2F;&#x2F;www.versionmuseum.com&#x2F;history-of&#x2F;google-maps-website" rel="nofollow">https:&#x2F;&#x2F;www.versionmuseum.com&#x2F;history-of&#x2F;google-maps-website</a>
评论 #21754233 未加载
rgovostes超过 5 年前
I recall that in Google’s early days they held a competition where they published a corpus of thousands of crawled webpages and invited developers to do something novel with the data.<p>The winner used pattern matching to identify addresses, then geocoded them using the US Census Bureau’s TIGER database. Thus it was possible to associate fairly accurate locations to a page, which enabled local searches and a number of other products.<p>Someone please correct me or fill in details I’ve forgotten.
maxwell超过 5 年前
<a href="https:&#x2F;&#x2F;wired.com&#x2F;2014&#x2F;12&#x2F;google-maps-ground-truth" rel="nofollow">https:&#x2F;&#x2F;wired.com&#x2F;2014&#x2F;12&#x2F;google-maps-ground-truth</a><p><a href="https:&#x2F;&#x2F;justinobeirne.com" rel="nofollow">https:&#x2F;&#x2F;justinobeirne.com</a>