MAPREDUCE服务 MRS-CarbonData表空间索引语法说明:建表
建表
GeoHash编码:
create table IF NOT EXISTS carbonTable ( ... `LONGITUDE` BIGINT, `LATITUDE` BIGINT, ... ) STORED AS carbondata TBLPROPERTIES ('SPATIAL_INDEX.mygeohash.type'='geohash','SPATIAL_INDEX.mygeohash.sourcecolumns'='longitude, latitude','SPATIAL_INDEX.mygeohash.originLatitude'='xx.xxxxxx','SPATIAL_INDEX.mygeohash.gridSize'='xx','SPATIAL_INDEX.mygeohash.minLongitude'='xxx.xxxxxx','SPATIAL_INDEX.mygeohash.maxLongitude'='xxx.xxxxxx','SPATIAL_INDEX.mygeohash.minLatitude'='xx.xxxxxx','SPATIAL_INDEX.mygeohash.maxLatitude'='xxx.xxxxxx','SPATIAL_INDEX'='mygeohash','SPATIAL_INDEX.mygeohash.conversionRatio'='1000000','SORT_COLUMNS'='column1,column2,column3,latitude,longitude');
SPATIAL_INDEX:自定义索引处理器。此处理程序允许用户从表结构列集合中创建新的列。新创建的列名与处理程序名相同。处理程序的type和sourcecolumns属性是必须的属性。目前,type属性只支持“geohash”。Carbon提供一个简单的默认实现类。用户可以通过扩展默认实现类来挂载geohash的自定义实现类。该默认处理程序还需提供以下的表属性:
- SPATIAL_INDEX.xxx.originLatitude:Double类型,坐标原点纬度
- SPATIAL_INDEX.xxx.gridSize:Int类型,栅格长度(米)
- SPATIAL_INDEX.xxx.minLongitude:Double类型,最小经度
- SPATIAL_INDEX.xxx.maxLongitude:Double类型,最大经度
- SPATIAL_INDEX.xxx.minLatitude:Double类型,最小纬度
- SPATIAL_INDEX.xxx.maxLatitude:Double类型,最大纬度
- SPATIAL_INDEX.xxx.conversionRatio:Int类型,将经纬度小数值转换为整型值
用户可以按照上述格式为处理程序添加自己的表属性,并在自定义实现类中访问它们。originLatitude,gridSize及conversionRatio是必选参数,其余属性在Carbon中都是可选的。可以使用“SPATIAL_INDEX.xxx.class”属性指定它们的实现类。
默认实现类可以为每一行的sourcecolumns生成handler列值,并且支持基于sourcecolumns的过滤条件查询。生成的handler列对用户不可见。除SORT_COLUMNS表属性外,任何DDL命令和属性都不允许包含handler列。
- 生成的handler列默认被视为排序列。如果SORT_COLUMNS不包含任何sourcecolumns,则将handler列追加到现有的SORT_COLUMNS最后。如果在SORT_COLUMNS中已经指定了该handler列,则它在SORT_COLUMNS的顺序将保持不变。
- 如果SORT_COLUMNS包含任意的sourcecolumns,但是没有包含handler列,则handler列将自动插入到SORT_COLUMNS中的sourcecolumns之前。
- 如果SORT_COLUMNS需要包含任意的sourcecolumns,那么需要保证handler列出现在sourcecolumns之前,这样handler列才能在排序中生效。
- GaussDB数据库SQL语法_SQL语法_CREATE_ALTER
- GaussDB查看表大小_GaussDB查询表空间_高斯数据库查看表大小-华为云
- GaussDB如何建主键_数据库索引设计规范_高斯数据库如何建主键-华为云
- GaussDB索引_GaussDB数据库索引_高斯数据库索引_华为云
- Hudi服务_什么是Hudi_如何使用Hudi
- GaussDB数据库系统_数据库逻辑结构图_高斯数据库数据库系统-华为云
- GaussDB了解_GaussDB入门_高斯数据库了解_华为云
- MapReduce服务_什么是ClickHouse_如何使用ClickHouse
- 云数据库Gaussdb数据库索引_华为gaussdb__gaussdb 数据库
- MapReduce服务_什么是Hive_如何使用Hive