3.2 KiB
3.2 KiB
| 字段名称 | 字段类型 | 中文说明 | 注释 | 是否为主键 |
|---|---|---|---|---|
| regionid | varchar(64) NOT NULL | 栅格所属区域 ID | 栅格所属区域 ID | 是 |
| x_offset_20 | varchar(32) NOT NULL | 栅格 X 偏移(20m 网格编码) | 栅格 X 偏移(20m 网格编码) | 否 |
| y_offset_20 | varchar(32) NOT NULL | 栅格 Y 偏移(20m 网格编码) | 栅格 Y 偏移(20m 网格编码) | 否 |
| provincecode | integer NOT NULL | 省编码 | 省编码 | 否 |
| province_name | varchar(64) NOT NULL | 省名称 | 省名称 | 否 |
| citycode | integer NOT NULL | 地市编码 | 地市编码 | 否 |
| city_name | varchar(64) NOT NULL | 地市名称 | 地市名称 | 否 |
| districtcode | integer NOT NULL | 区县编码 | 区县编码 | 否 |
| district_name | varchar(64) NOT NULL | 区县名称 | 区县名称 | 否 |
| center_lon | numeric(10, 6) | 栅格中心点经度(EPSG:4326) | 栅格中心点经度(EPSG:4326) | 否 |
| center_lat | numeric(10, 6) | 栅格中心点纬度(EPSG:4326) | 栅格中心点纬度(EPSG:4326) | 否 |
| grid_wkt | text | 栅格多边形 WKT,EPSG:4326 | 栅格多边形 WKT,EPSG:4326 | 否 |
| grid_geom | geometry(Polygon, 4326) | 由 grid_wkt 生成的 Polygon 几何列,用于 GiST 空间索引 | 由 grid_wkt 生成的 Polygon 几何列,用于 GiST 空间索引 | 否 |
| is_valid | smallint NOT NULL DEFAULT 1 | 是否有效,1=有效 0=无效 | 是否有效,1=有效 0=无效 | 否 |
| updated_time | timestamp without time zone NOT NULL DEFAULT now() | 记录更新时间 | 记录更新时间 | 否 |
计算逻辑说明
- 实现侧:HiveSQL
- 数据源:仅从 ODS 层
OTT_GRID提取。 - 计算逻辑:
- 提取全量不重复的
regionid序列。 - WKT 生成:基于中心点
(center\_lon, center\_lat)和偏移量 $(x_offset_20, y_offset_20)$。顶点坐标为 $(center_lon \pm x_offset_20 / 2, center_lat \pm y_offset_20 / 2)$。严禁进行米/度转换,直接使用坐标偏移值。 - 同步至 PostGIS 侧,利用
ST_GeomFromText生成grid_geom。
- 提取全量不重复的
- 索引创建建议 (PostGIS 侧):
- 空间索引:必须对
grid_geom建立GIST索引,以支撑与楼宇/场景面的空间关联。 - 业务索引:对
regionid建立B-TREE唯一索引;对provincecode,citycode,districtcode建立复合索引。
- 空间索引:必须对
- 字段全量映射清单:
目标字段 来源 ODS (OTT_GRID) 转换逻辑/备注 regionidregionid直接映射 (主键) x_offset_20x_offset_20直接映射 y_offset_20y_offset_20直接映射 provincecodeprovincecode直接映射 province_nameprovince_name直接映射 citycodecitycode直接映射 city_namecity_name直接映射 districtcodedistrictcode直接映射 district_namedistrict_name直接映射 center_loncenter_lon直接映射 center_latcenter_lat直接映射 grid_wktcenter_lon/lat,offsets依据上述“坐标偏移法”拼接 grid_geomgrid_wktPostGIS: ST_GeomFromText(..., 4326)is_valid- 常量填充 1updated_time- 系统当前时间 now()