gpt4 book ai didi

cassandra - Cassandra 中的元组和用户定义类型有什么区别

转载 作者:行者123 更新时间:2023-12-02 00:52:10 24 4
gpt4 key购买 nike

谁能告诉我 Cassandra 中元组和用户定义类型的区别

最佳答案

Datastax documents那个

You can use a tuple as an alternative to a user-defined type when you don't need to add new fields.

User-defined types在以后需要更新数据的情况下,您可以更灵活地更改字段数量,并允许您为每个字段指定有意义的名称。地址是 UDT 工作原理的经典示例。

CREATE TYPE mykeyspace.address (
street_number int,
street text,
city text,
zip_code int,
phones set<text>
);

并创建表格

CREATE TABLE users (
id uuid PRIMARY KEY,
address frozen <address>
);

等价的元组是

CREATE TABLE users (
id uuid PRIMARY KEY,
address <tuple<int, text, text, int, set<text>>
);

因此元组最适合收集固定数量的字段名称不重要的数据(地址列绝对不是一个好的用例;字段很重要——street_number zip_code 可能会造成混淆——您以后将无法添加详细字段)。 UDT 将允许这样做,并且还允许您通过字段名称进行查询。

此外,在性能上没有显着差异。

关于cassandra - Cassandra 中的元组和用户定义类型有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38861966/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com