新建CarbonData Table
操作场景
使用CarbonData前需先创建表,才可在其中加载数据和查询数据。可通过Create Table命令来创建表。该命令支持使用自定义列创建表。
使用自定义列创建表
可通过指定各列及其数据类型来创建表。
命令示例:
CREATE TABLE IF NOT EXISTS productdb.productSalesTable (
productNumber Int,
productName String,
storeCity String,
storeProvince String,
productCategory String,
productBatch String,
saleQuantity Int,
revenue Int)
STORED AS carbondata
TBLPROPERTIES (
'table_blocksize'='128');
上述命令所创建的表的详细信息如下:
参数 |
描述 |
---|---|
productSalesTable |
待创建的表的名称。该表用于加载数据进行分析。 表名由字母、数字、下划线组成。 |
productdb |
数据库名称。该数据库将与其中的表保持逻辑连接以便于识别和管理。 数据库名称由字母、数字、下划线组成。 |
productName storeCity storeProvince procuctCategory productBatch saleQuantity revenue |
表中的列,代表执行分析所需的业务实体。 列名(字段名)由字母、数字、下划线组成。 |
table_blocksize |
CarbonData表使用的数据文件的block大小,默认值为1024,最小值为1,最大值为2048,单位为MB。 如果“table_blocksize”值太小,数据加载时,生成过多的小数据文件,可能会影响HDFS的使用性能。 如果“table_blocksize”值太大,数据查询时,索引匹配的block数据量较大,某些block会包含较多的blocklet,导致读取并发度不高,从而降低查询性能。 一般情况下,建议根据数据量级别来选择大小。例如:GB级别用256,TB级别用512,PB级别用1024。 |
![](https://support.huaweicloud.com/cmpntguide-mrs/public_sys-resources/note_3.0-zh-cn.png)
- 所有Integer类型度量均以BigInt类型进行处理与显示。
- CarbonData遵循严格解析,因此任何不可解析的数据都会被保存为null。例如,在BigInt列中加载double值(3.14),将会保存为null。
- 在Create Table中使用的Short和Long数据类型在DESCRIBE命令中分别显示为Smallint和Bigint。
- 可以使用DESCRIBE格式化命令查看表数据大小和表索引大小。
操作结果
根据命令创建表。