云数据库 GEMINIDB-GeminiDB Cassandra创表时需要注意什么:创表数目计算方式

时间:2024-08-13 17:36:15

创表数目计算方式

根据实例规格不同,创表需要的内存稍有不同,以4U16GB实例为例,可以简单按照单张表768MB计算。

所以创表数目上限=集群可用总内存/单表所需内存

  • 奇数数目集群

    集群可用内存=节点内存/2*(N/2+1)

  • 偶数数目集群

    集群可用内存=节点内存/2*(N/2)

例如:
  • 3节点4U16GB实例的可用内存=16/2*(3/2+1)=16GB

    创表数目上限=16*1024MB/768MB=21

  • 4节点4U16GB实例的可用内存=16/2*(4/2)=16GB

    创表数目上限=16*1024MB/768MB=21

  • 5节点4U16GB实例可用内存=16/2*(5/2+1)=24GB

    创表数目上限=24*1024MB/768MB=32

根据上述计算方式,4U16GB规格实例的节点个数和表个数对应关系,请参见表1
表1 4U16GB规格实例的节点数和表个数对应关系

实例规格

节点数量

表个数

4U16GB

3

21

4

21

5

32

6

32

7

42

8

42

9

53

10

53

11

64

12

64

  • 单表占用内存为768MB,表tokens个数为默认值12,如果单独设置了tokens,则需要单独计算,换算公式为(768/12)*tokens个数。
  • 上述表个数都是按照普通表计算的,如果开启了流表,一张流表耗费的资源为2.5个普通表。
根据上述计算方式,8U32GB规格实例的节点个数和表个数对应关系,请参见表2
表2 8U32GB规格实例的节点个数和表个数对应关系

实例规格

节点个数

表个数

8U32GB

3

22

4

22

5

34

6

34

7

45

8

45

9

56

10

56

11

68

12

68

  • 单表占用内存为1440MB,表tokens个数为默认值12,如果单独设置了tokens,则需要单独计算,换算公式为(1440/ 12 )* tokens个数。
  • 上述表个数都是按照普通表计算的,如果开启了流表,一张流表耗费的资源为2.5个普通表。
根据上述计算方式,16U64GB规格节点个数和表个数对应关系,请参见表3
表3 16U64GB规格节点个数和表个数对应关系

实例规格

节点个数

表个数

16U64GB

3

45

4

45

5

68

6

68

7

91

8

91

9

113

10

113

11

136

12

136

  • 单表占用内存1440MB,表tokens个数为默认值12,如果单独设置了tokens,则需要单独计算,换算公式为(1440/ 12 )* tokens个数。
  • 上述表个数都是按照普通表计算的,如果开启了流表,一张流表耗费的资源为2.5个普通表。
根据上述计算方式,32U128GB规格节点个数和表个数对应关系,请参见表4
表4 32U128GB规格节点个数和表个数对应关系

实例规格

节点个数

表个数

32U128GB

3

68

4

68

5

102

6

102

7

136

8

136

9

170

10

170

11

204

12

204

  • 单表占用内存1920MB,表tokens个数为默认值12,如果单独设置了tokens,则需要单独计算。换算公式为 (1920 / 12 )* tokens个数。
  • 上述表个数都是按照普通表计算的,如果开启了流表,一张流表耗费的资源为2.5个普通表。
support.huaweicloud.com/cassandraug-nosql/cassandra_faq_0010.html