Длина поля place_id API Google Places
Google помечает поля reference
и id
как устаревшие с 24 июня 2014 года и заменяет их одним place_id
.
Я до сих пор видел только длины place_id
ровно 27 символов, но задаюсь вопросом, есть ли какая-либо документация для этой длины? Я не смог найти эту документацию в любом месте.
Очевидно, что знание длины place_id
имеет большое значение для выбора оптимального поля базы данных и, следовательно, что-то, что я хотел бы знать.
На сайте Google Адресов Google:
Идентификационные и ссылочные поля устаревают по состоянию на 24 июня 2014 года. Они заменяются новым идентификатором места, уникальным идентификатором, который можно использовать сравнить места и получить информацию о месте. API-интерфейс Places теперь возвращает place_id во всех ответах и принимает placeid в запросах Place Place и Place Delete. Вскоре после 24 июня 2015 года API перестанет возвращать идентификационные и ссылочные поля в ответах. Некоторое время спустя API больше не будет принимать ссылка в запросах. Мы рекомендуем вам обновить код для использования новый идентификатор места, а не идентификатор и ссылку как можно скорее.
Ответы
Ответ 1
Там нет документации по конкретной длине, но я видел максимальную длину 255. Это соответствует адресу 488 Srinagarindra Rd., Suan Luang, Bangkok, 10250. Вы можете проверить идентификатор места здесь.
К вашему сведению:
ErwBNDg4IOC4luC4meC4mSDguKjguKPguLXguJnguITguKPguLTguJnguJfguKPguYwg4LmB4LiC4Lin4LiHIOC4quC4p-C4meC4q-C4peC4p-C4hyDguYDguILguJUg4Liq4Lin4LiZ4Lir4Lil4Lin4LiHIOC4geC4o-C4uOC4h-C5gOC4l-C4nuC4oeC4q-C4suC4meC4hOC4oyAxMDI1MCDguJvguKPguLDguYDguJfguKjguYTguJfguKI
Ответ 2
Хотя Google не дает никаких объяснений о внутренней реализации place_id, он, похоже, очень похож на общий GeoHash (например, ElasticSearch). Как и в случае с GeoHash, длины place_id имеют тенденцию быть более длинными, когда они ссылаются на более конкретную область.
Самый длинный place_id, который я видел до сих пор, имел длину 78, который был конкретным домом в большом городе.
Ответ 3
То, что API не документирует длину, указывает на то, что она может быть изменена в любое время, и я бы не рекомендовал полагаться на фиксированную длину - я видел намного больше place_id при использовании API.
Ответ 4
Длина может быть событием 172 символа:
En_QstGD0LvQuNGG0Y8g0IbQstCw0L3QsCDQkNC60ZbQvdGE0ZbRlNCy0LAsIDE1LCDQlNC90ZbQv9GA0L7MgSwg0JTQvdGW0L_RgNC-0L_QtdGC0YDQvtCy0YHRjNC60LAg0L7QsdC70LDRgdGC0YwsINCj0LrRgNCw0ZfQvdCw
Ответ 5
Самый длинный, который я видел до сих пор, - 315 символов. Я обновлю это, если найду больше.
Форматированный адрес: KAV.76-78, Indofood Tower, Sudirman Plaza, Jl. Jend. Судирман № 76-78, RT.3/RW.3, Кунинган, Сетиа Буди, Кекаматан Сетиабуди, Кота Джакарта Селатан, Даэра Хусус Ибукота Джакарта 10250, Индонезия
PlaceId: EsIBS0FWLjc2LTc4LCBJbmRvZm9vZCBUb3dlciwgU3VkaXJtYW4gUGxhemEsIEpsLiBKZW5kLiBTdWRpcm1hbiBOby43Ni03OCwgUlQuMy9SVy4zLCBLdW5pbmdhbiwgU2V0aWEgQnVkaSwgS2VjYW1hdGFuIFNldGlhYnVkaSwgS290YSBKYWthcnRhIFNlbGF0YW4sIERhZXJhaCBLaHVzdXMgSWJ1a290YSBKYWthcnRhIDEwMjUwLCBJbmRvbmVzaWEiJRojChYKFAoSCSH20UED9GkuEc707mF-vRHxEglLQVYuNzYtNzg
Ответ 6
Я бы использовал varbinary(1024)
Знание возможного макс. длина еще более важна для проверки входных данных, чем (часто преждевременно) беспокоиться о накладных расходах хранения столбцов. Большинство баз данных разделяют аналогичные накладные расходы, когда вы превышаете 255.
Ответ 7
Вы не должны определять длину google place_id, поскольку в документации API они не указывают максимальную длину place_id. Единственное, о чем они говорят, это то, что place_id может быть в форме длинной строки.
Я принял тип поля как TextField в модели Django.