Placekey is a special type of unique identifier that is made specifically for places data—also referred to as POI data, short for places of interest. The main utility of Placekey is to provide a common joint field across different POI datasets. Placekey thereby solves the challenges faced when trying to join on addresses, or location name, or both, particularly when the format of fields can be so varied. A Placekey is composed of two parts referred to as the ‘what’ and the ‘where’, and takes the format of ‘what@where’. The what is optional, meaning that a placekey may also look like @where. An example of a valid placekey is 227-222@62k-phc-qs5. This is the unique identifier for Kings Dining & Entertainment Dedham, MA.

Placekey utilizes a custom encoding based 1 on the 28 character alphabet 23456789bcdfghjkmnpqrstvwxyz. Each portion of a placekey relies on separate infrastructure. The ‘what’ part of a Placekey is like the secret formula kept hidden in the Krusty Krab. The ‘where’, on the other hand,is not so secret. The ‘where’ portion of a placekey is created by utilizing Uber’s H3 library. In brief, H3 is a library and, more generally, method of partitioning the globe into small sections. H3 partitions the globe into a number of hexagons. The hexagons have varying sizes, or resolutions, ranging from 0 to 15. An H3 index of resolution 0 covers over 4,000,000 square kilometers whereas an index of resolution 15 covers an area of 0.0000009 square kilometers3. Placekey utilizes H3 indexes with a resolution of 10 covering approximately 15 square meters each. An H3 index such as 8a2a339a02a7f80 is encoded using the placekey encoding specification to create the ‘where’ portion of a placekey. The above H3 index corresponds to the H3 cell in which King’s Dining is located. If we were to run placekey::h3_to_placekey("8a2a339a02a7f80") we would be returned with the ‘where’ portion of King’s Dining’s Placekey.

Learn more about Placekey here.