У меня было несколько проектов с любым из них. В дополнение к очевидной разнице между службой данных и источником, существуют некоторые практические соображения.
Преимущества OpenLayers:
- более гибкий
- может использовать практически любой источник данных - даже Google / Bing и другие через API-оболочки
- нет зависимости от одного поставщика карт ToS
- нет ограничений по использованию (например, решение Google Maps для интранета стоит дорого)
- сильное сообщество с открытым исходным кодом, может сделать дополнения
- расширяемость, множество расширений / плагинов от сообщества, например, приятные функции векторного редактирования, поддержка мультипроекции, WMS, WFS и другие дружественные к ГИС API
Преимущества Google:
- более отшлифованный товар коммерческого уровня - более стабильные элементы пользовательского интерфейса по умолчанию (например, маркеры с надписями) намного лучше из коробки (и настроить их с помощью OL не так-то просто)
- не нужно думать о данных - Google просто связывает их
- огромное количество пользователей, активное сообщество пользователей (разработчиков)
- легче начать
- расширенный вид: вид с улицы, 3D (Земля)
Карты Google больше похожи на среднего разработчика, и, вероятно, для 90% пользователей / приложений этого достаточно; OpenLayers для продвинутых.