累积道路数据是指您可以随着时间的推移为所选路线构建的数据。使用 Roads Selection API 创建路线后,您便会开始接收数据。这些数据随后可用于深入分析、战略规划和了解路线的长期行为。
累积道路数据以时间序列数据的形式提供,其中包括每条路线的行程时长、速度读取间隔 (SRI) 和路线几何图形。 这些数据通过 BigQuery 存储和访问。
设置 BigQuery
如需在 BigQuery 中访问道路数据,您必须设置 Google Cloud 项目并订阅数据交换。
前提条件
确保您的 Google Cloud 项目和账号具有以下配置:
- 启用 BigQuery API。如需相关说明,请参阅使用 Google Cloud 控制台查询公共数据集。
- 启用 Analytics Hub API。请参阅 Analytics Hub API。
- 授予必要的 IAM 角色。确保您的账号具有以下角色,以便执行订阅者任务和创建数据集:
- Analytics Hub Subscriber (
roles/analyticshub.subscriber) - BigQuery User (
roles/bigquery.user)
- Analytics Hub Subscriber (
订阅数据交换
您的道路数据通过 BigQuery (Analytics Hub) 中的私有数据交换与您共享。您将收到 Google 合作伙伴提供的特定订阅链接,以便访问您的数据。此数据集遵循以下命名惯例:
historical_roads_data_PROJECT_NUMBER.
如需订阅您的数据,请执行以下操作:
- 点击 Google 合作伙伴提供的订阅链接。此链接会将您直接带到 Google Cloud 控制台中的数据交换。
- 在 Google Cloud 控制台中,查看数据交换详细信息。
- 在对话框中,点击订阅 按钮。
- 订阅完成后,关联的数据集会显示在 Google Cloud 控制台的 BigQuery 探索器 面板中。现在,您可以使用探索器面板中显示的表名称在 SQL 查询中访问数据。
BigQuery 表
您所选路线的累积道路数据托管在 Google 拥有的云项目的隔离 BigQuery 数据集下。这些数据通过 BigQuery Sharing (Analytics Hub) 中专门为您创建的私有数据交换与您共享。如需访问这些数据,您需要在 Google Cloud 项目下订阅数据交换并创建关联的数据集。
共享的 BigQuery 数据集包含一些由 Google 定义和创建的 BigQuery 表。以下是每个表的详细信息。
historical_travel_time 表
以下是 BigQuery 表 historical_travel_time 的架构:
| 名称 | 模式 | 类型 | 说明 |
|---|---|---|---|
| selected_route_id | NULLABLE | STRING | 路线的 selected_route_id |
| display_name | NULLABLE | STRING | 路线的显示名称 |
| record_time | NULLABLE | TIMESTAMP | 计算路线数据时的时间戳 |
| duration_in_seconds | NULLABLE | FLOAT | 路线的流量感知时长 |
| static_duration_in_seconds | NULLABLE | FLOAT | 路线的流量非感知时长 |
| route_geometry | NULLABLE | GEOGRAPHY | 路线的流量感知多段线几何图形 |
表行为和事实
- 该表按天分区,每个分区都设置了 10 年的到期时间。
- 该表每小时更新一次,并批量写入最新的路况数据。
- 在 Roads Selection API 中创建新路线后,您最多需要等待 1 小时,才能看到此表中的可用数据。
- 从 Roads Selection API 中删除路线后,系统不会为此路线向此表写入新数据。不过,历史数据会保留到到期为止。
recent_roads_data 表
注意:只有当您的合同包含实时 道路数据时,此表才可用。
与 historical_travel_time 不同,此表还包含 SpeedReadingInterval 数据。以下是 BigQuery 中的架构:
| 名称 | 模式 | 类型 | 说明 |
|---|---|---|---|
| selected_route_id | NULLABLE | STRING | 路线的 selected_route_id |
| display_name | NULLABLE | STRING | 路线的显示名称 |
| record_time | NULLABLE | TIMESTAMP | 计算路线数据时的时间戳 |
| duration_in_seconds | NULLABLE | FLOAT | 路线的流量感知时长 |
| static_duration_in_seconds | NULLABLE | FLOAT | 路线的流量非感知时长 |
| route_geometry | NULLABLE | GEOGRAPHY | 路线的流量感知多段线几何图形 |
| speed_reading_intervals | REPEATED | RECORD | 表示路线上的流量密度的间隔。请参阅 Routes API 中的原始定义 |
| speed_reading_intervals.interval_coordinates | REPEATED | GEOGRAPHY | 此间隔的几何图形 |
| speed_reading_intervals.speed | NULLABLE | STRING | 此间隔的速度分类。可能的值:NORMAL、SLOW、TRAFFIC_JAM |
表行为和事实
- 该表按天分区,每个分区都设置了 60 天的到期时间。
- 该表每小时更新一次,并批量写入最新的路况数据。
- 在 Roads Selection API 中创建新路线后,您最多需要等待 1 小时,才能看到此表中的可用数据。
- 从 Roads Selection API 中删除路线后,系统不会为此路线向此表写入新数据。不过,历史数据会保留到到期为止。
routes_status 表
该表包含所选路线的元数据和状态信息。其目的是提供一种更简单的方式来查看所有路线和状态。它可以与其他两个表联接以进行数据过滤。以下是 BigQuery 中的架构:
| 名称 | 模式 | 类型 | 说明 |
|---|---|---|---|
| selected_route_id | NULLABLE | STRING | 路线的 selected_route_id |
| display_name | NULLABLE | STRING | 路线的显示名称 |
| status* | NULLABLE | STRING | 状态 路线 |
| validation_error | NULLABLE | STRING | 验证错误的路线 |
| low_road_usage_start_time | NULLABLE | TIMESTAMP | 在重新验证期间,路线首次观察到道路使用率较低的时间。它与 VALIDATION_ERROR_LOW_ROAD_USAGE 相关联。 |
| route_attributes | NULLABLE | STRING | 所选路线的自定义属性 |
*此表中的路线状态以 STATUS_ 开头,而不是 STATE_。除此之外,它与 Roads Selection API 保持一致。
表行为和事实
- 此表中仅包含状态为 STATUS_RUNNING 或 STATUS_INVALID 的路线。
- 路线元数据和状态每小时更新一次,且不会停止。
- 在 Roads Selection API 中创建新路线后,您最多需要等待 1 小时,才能看到此表中的可用路线。
- 从 Roads Selection API 中删除路线后,您最多需要等待 1 小时,才能看到所选路线从此表中移除。