累积道路数据以时间序列数据的形式提供,其中包括:
- 行程时长
- 朗读速度间隔 (SRI)
- 路线几何图形
设置 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)
- BigQuery User
(
订阅数据交换
您的道路数据通过 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 小时,才能看到所选路线从此表中移除。