품질 및 지연 시간 구성

컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.

요청을 할 때 가능한 한 가장 정확한 결과를 반환하는지 아니면 가능한 한 빨리 결과를 반환하는 것이 더 나은지 결정해야 할 수 있습니다. Routes API는 응답 데이터의 품질과 응답 지연 시간을 제어할 수 있는 옵션을 제공합니다.

트래픽 데이터 수준 구성

Routes API는 경로 계산을 위한 라우팅 환경설정을 지정할 수 있는 RoutePreference (REST)와 RoutePreference(gRPC)를 제공합니다. 이러한 환경설정은 경로 계산 시 교통 상황을 고려하는 정도가 다릅니다. 각 라우팅 환경설정은 경로 품질, 예상 ETA, 응답 지연 시간과 관련하여 어느 정도 다른 결과를 생성합니다.

트래픽 조건은 트래픽 흐름의 속도를 나타냅니다. 예를 들면 다음과 같습니다.

  • 정체가 없으면 교통 상황이 정상적인 것으로 간주되며 트래픽이 제한되지 않은 일반 속도로 흐릅니다.
  • 피크타임이 가까워지면 트래픽 밀도가 높아져서 트래픽 속도가 느려지고, 밝거나 중간 정도의 교통상황을 반영합니다.
  • 범퍼-범퍼 광고 트래픽에서 유속이 급격히 증가하여 교통량이 많아집니다.

알 수 없는 트래픽

TRAFFIC_UNAWARE 라우팅 환경설정을 설정하면 현재 교통상황을 고려하지 않고 경로가 계산됩니다. 이 라우팅 환경설정은 응답 지연 시간이 가장 짧습니다 (응답이 가장 빠르게 반환됨).

TRAFFIC_UNAWARE가 기본 설정입니다.

응답에서

  • ETA는 duration 응답 속성에 포함되어 있습니다.

  • durationstaticDuration 응답 속성에는 동일한 값이 포함됩니다.

응답을 가장 빨리 반환하려고 하며 대략적인 라우팅 세부정보로 충분할 때 이 라우팅 환경설정을 사용합니다.

교통정보 인식

TRAFFIC_AWARE 라우팅 환경설정을 설정하면 경로가 현재 교통상황을 고려하여 계산됩니다. 따라서 경로 및 경로 세부정보가 실제 조건을 더 정확하게 반영합니다. 이렇게 데이터 품질이 높아지면 응답 지연 시간이 줄어들기 때문에 성능 최적화를 적용하여 지연 시간을 크게 줄일 수 있습니다.

응답에서

  • 실시간 트래픽을 고려하는 ETA는 duration 응답 속성에 포함됩니다.

  • staticDuration 응답 속성에는 교통상황을 고려하지 않고 경로를 이동하는 데 걸리는 시간이 포함됩니다.

이 라우팅 환경설정은 TRAFFIC_UNAWARE보다 정확한 라우팅 세부정보를 원하지만 응답이 약간 지연되어 반환되는 경우에도 상관없습니다.

트래픽 인식 최적화

TRAFFIC_AWARE_OPTIMAL 라우팅 환경설정을 설정하면 경로가 현재 교통상황을 고려하여 계산되지만 성능 최적화는 적용되지 않습니다. 이 모드에서 서버는 도로망을 보다 철저히 검색하여 최적의 경로를 찾습니다.

TRAFFIC_AWARE_OPTIMAL 라우팅 환경설정은 maps.google.com 및 Google 지도 모바일 앱에서 사용하는 모드와 동일합니다.

이 옵션을 Compute 경로 매트릭스와 함께 사용하는 경우 요청의 요소 수 (출발지 수 x 목적지 수)는 100을 초과할 수 없습니다. 컴퓨팅 경로 매트릭스 한도에 대한 자세한 내용은 경로 매트릭스 계산을 참조하세요.

응답에서

  • 실시간 트래픽을 고려하는 ETA는 duration 응답 속성에 포함됩니다.

  • staticDuration 응답 속성에는 교통상황을 고려하지 않고 경로를 이동하는 데 걸리는 시간이 포함됩니다.

이 라우팅 환경설정은 가장 긴 응답 지연 시간을 제공합니다 (즉, 응답이 가장 긴 지연 시간으로 반환됨). 응답 소요 시간에 관계없이 최고 품질의 결과를 원하는 경우 이 라우팅 환경설정을 사용하세요.

출발 시간 설정의 영향

원하는 경우 departureTime 속성을 사용하여 원하는 출발 시간을 설정합니다. departureTime 속성을 설정하지 않으면 기본값은 요청 시간으로 설정됩니다.

  • TRAFFIC_UNAWARE의 경우 경로 및 기간 선택이 도로망 및 평균 시간과 무관한 교통상황을 기반으로 하므로 departureTime를 설정할 수 없습니다.

  • 실시간 교통상황을 고려하는 TRAFFIC_AWARETRAFFIC_AWARE_OPTIMAL의 경우, 현재 departureTime가 더 가까워질수록 실시간 트래픽이 더 중요해집니다. 출발 시간을 미래로 설정할수록 과거 교통상황을 더 많이 고려하게 됩니다.

라우팅 환경설정 설정의 예

다음 JSON 코드는 요청 메시지 항목 본문에서 라우팅 환경설정을 설정하는 방법을 보여줍니다.

{
  "origin":{
    "location":{
      "latLng":{
        "latitude":37.419734,
        "longitude":-122.0827784
      }
    }
  },
  "destination":{
    "location":{
      "latLng":{
        "latitude":37.417670,
        "longitude":-122.079595
      }
    }
  },
  "travelMode":"DRIVE",
  "routingPreference":"TRAFFIC_AWARE_OPTIMAL"
}

다중선 품질 구성

Routes API를 사용하면 교통정보 인식 다중선과 함께 교통상황에 관한 정보를 요청할 수 있습니다. 자세한 내용은 다중선 요청을 참고하세요.

다중선의 품질은 다음 용어로 설명할 수 있습니다.

  • 다중선을 구성하는 점의 수

    점이 많을수록 다중선이 더 부드러워집니다 (특히 곡선에서).

  • 포인트의 부동 소수점 정밀도

    점은 위도 및 경도 값으로 지정되며, 단일 정밀도 부동 소수점 형식으로 표현됩니다. 이는 정확하게 표현될 수 있는 작은 값에 적합하지만 부동 소수점 반올림 오류로 인해 값이 증가하면 정밀도가 낮아집니다.

computeRoutes 메서드 (REST)와 ComputeRoutes 메서드 (gRPC)는 다중선 품질을 제어하는 polylineQuality 요청 옵션을 지원합니다.

다중선 품질 설정 예

polylineQuality은 다중선의 품질을 HIGH_QUALITY 또는 OVERVIEW (기본값)로 지정합니다. OVERVIEW를 사용하면 다중선이 다중 점을 사용하여 구성되며 요청 지연 시간이 HIGH_QUALITY보다 낮습니다.

예를 들어 요청 본문에서 다음을 실행합니다.

{
  "origin":{
    "location":{
      "latLng":{
        "latitude": 37.419734,
        "longitude": -122.0827784
      }
    }
  },
  "destination":{
    "location":{
      "latLng":{
        "latitude": 37.417670,
        "longitude": -122.079595
      }
    }
  },
  "travelMode": "DRIVE",
  "routingPreference": "TRAFFIC_AWARE",
  "polylineQuality": "HIGH_QUALITY",
  "polylineEncoding": "ENCODED_POLYLINE", 
  "departureTime": "2023-10-15T15:01:23.045123456Z",
  ...
}