
# UUID类型
UUID：通用唯一识别码（Universally Unique Identifier）是用于计算机体系中以识别信息的一个128位标识符。
UUID的作用是让分布式系统中的所有元素都能有唯一的辨识信息，而不需要通过中央控制端来做辨识信息的指定。很多应用场景需要一个ID，仅用来标识一个对象。常见的例子有数据库表的ID字段。另一个例子是前端的各种UI库，因为它们通常需要动态创建各种UI元素，这些元素需要唯一的ID，这时就需要使用UUID。
DWS支持的UUID函数及UUID应用示例，可参考[UUID函数](https://support.huaweicloud.com/sqlreference-dws/dws_06_0040.html)。
#### UUID格式
UUID由开放软件基金会标准化，作为分布式计算环境的一部分，在互联网工程任务组（IETF）公布的RFC 4122标准中对UUID进行了标准化。标准的UUID由36个字符组成，其中包括32个16进制数字和4个连字符'-'，形式为8-4-4-4-12，标准的UUID示例如下：
```
a0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11
```
除了标准型的UUID，DWS同样支持以其他方式输入：大写字母和数字、由花括号包围的标准格式、省略部分或所有连字符、在任意一组四位数字之后加一个连字符。示例：
```
A0EEBC99-9C0B-4EF8-BB6D-6BB9BD380A11
{a0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11}
a0eebc999c0b4ef8bb6d6bb9bd380a11
a0ee-bc99-9c0b-4ef8-bb6d-6bb9-bd38-0a11
```
#### UUID组成
UUID采用时间信息和空间信息确保全局唯一，通常由时间戳信息、时钟序列和节点ID（MAC地址）组成。但在DWS分布式集群中，多个节点可能部署在同一台机器上，其MAC地址相同会导致生成的UUID可能出现冲突。因此DWS将最后48位的MAC地址替换为生成UUID的CN或DN的序号以及当前的线程ID，从而确保分布式集群内UUID的全局唯一性。
