У меня не было возможности протестировать геокодеры Nominatim и Geocoder US. Однако я понимаю, что геокодер и Nominatim не могут быть запущены непосредственно в базе данных, что для меня является большим недостатком, поскольку затрудняет их использование в таких вещах, как триггеры или для пакетного обновления непосредственно в базе данных.
Геокодер PostGIS, представляющий собой чистый набор функций plpgsql PostGIS / postgresql, полностью работает в базе данных. Я ожидал бы, что результаты геокодера Geocoder US и PostGIS будут на одном уровне, и из того, что я тестировал с помощью веб-материалов, они есть. Google немного лучше, так как они используют названия мест.
Я думаю, что Nominatum, поскольку он использует данные OSM, использует данные тигра косвенно, поскольку импорт OSM для США в значительной степени поступает от TIGER с внесенными пользователями исправлениями. Я не уверен, какой сейчас год сбора винограда (год) Tiger OSM. Играя с веб-интерфейсами онлайн, он также использует преимущества географических названий и обладает интересным поворотом, заключающимся в том, что он позволяет указать уровень масштабирования геокодирования, который позволяет ускорить геокодирование, установив необходимую точность масштабирования.
Полное раскрытие - я много работал над PostGIS Geocoder и написал для него онлайн-руководство. Я скажу вам об ошибке, над которой я работаю, это то, что я думаю, что точка, которую она интерполирует, находится не на той стороне улицы. Я работаю над исправлением этого. Если вы не заботитесь о том, с какой стороны улицы (или хотя бы иногда), то это может быть проблемой для вас.
Возможно, стоит протестировать с онлайн-версиями, сравнивающими некоторые результаты адресов: например, nominatim, вы можете протестировать здесь: http://open.mapquestapi.com/nominatim/v1/search.php
Для моих случаев использования я обнаружил, что нечеткая проверка nominatum не так хороша, как у PostGIS Geocoder. Например, мой адрес улицы (почтовый адрес): 1 Devonshire Place, Boston MA. PostGIS возвращает ответ, который, насколько я помню, близок, Google возвращает ответ, но я не могу заставить Nominatim вернуть ответ. Чтобы быть справедливым, даже Бостонские записи о посылках не имеют ни малейшего представления, где это находится, и они занесены в записи о посылках как Вашингтонская улица. PostGIS может найти его, поскольку он выполняет различные уровни проверки и пересечения перекрестков и т. Д. Я проверил другие случаи, когда я намеренно вводил неправильный почтовый индекс или что-то в этом роде, и PostGIS возвращался с точным набором параметров. Гугл тоже.