最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

OceanBase建表分區(qū)數(shù)超限報錯解決分析

 更新時間:2023年09月07日 11:27:12   作者:愛可生云數(shù)據(jù)庫  
這篇文章主要為大家介紹了OceanBase建表分區(qū)數(shù)超限報錯解決分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪

背景

OceanBase 單機租戶允許創(chuàng)建的最大分區(qū)數(shù)是多少?作者通過分區(qū)超限錯誤排查,計算出單機允許創(chuàng)建的最大分區(qū)數(shù)量。

ERROR 1499 (HY000): Too many partitions (including subpartitions) were defined

創(chuàng)建表報錯,雖然是內(nèi)部錯誤,但是錯誤信息是指:創(chuàng)建了太多了分區(qū)。

[root@observer04 ~]# mysql -h10.186.64.125 -P2883 -uroot@wenchao_mysql#hwc_cluster:1682755171 -p"xxxx"  
MySQL [lss]> CREATE TABLE `wms_order` (
  `A1` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL COMMENT 'A1',
  `A2` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL COMMENT 'A2',
  `A3` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL COMMENT 'A3',
  `A4` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL COMMENT 'A4',
  `A5` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL COMMENT 'A5',
  `A6` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL COMMENT 'A6',
  `A7` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL COMMENT 'A7',
  `A8` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL COMMENT 'A8',
  `A9` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL COMMENT 'A9',
  `A10` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL COMMENT 'A10'
) DEFAULT CHARSET = utf8mb4 ROW_FORMAT = DYNAMIC COMPRESSION = 'zstd_1.0' REPLICA_NUM = 3 BLOCK_SIZE = 16384 USE_BLOOM_FILTER = FALSE TABLET_SIZE = 134217728 PCTFREE = 0 COMMENT = '物流訂單表'
MySQL [lss]> ERROR 1499 (HY000): Too many partitions (including subpartitions) were defined

接下來我們分析一下問題的原因。

排查

2.1 檢查參數(shù)

  • 檢查每個 OBServer 上可以創(chuàng)建最大的分區(qū)數(shù)量,當前是 500000。
[root@observer04 ~]# mysql -h10.186.64.125 -P2883 -uroot@sys#hwc_cluster:1682755171 -p"xxxx" -A oceanBase
MySQL [oceanBase]> select * from __all_virtual_sys_parameter_stat where name like '%_max_partition_%';
+-------+----------+---------------+----------+-------------------------------+-----------+--------+--------------+---------------------------------------------+-------------+----------+---------------+---------+---------+-------------------+
| zone  | svr_type | svr_ip        | svr_port | name                          | data_type | value  | value_strict | info                                        | need_reboot | section  | visible_level | scope   | source  | edit_level        |
+-------+----------+---------------+----------+-------------------------------+-----------+--------+--------------+---------------------------------------------+-------------+----------+---------------+---------+---------+-------------------+
| zone1 | observer | 10.186.64.122 |     2882 | _max_partition_cnt_per_server | NULL      | 500000 | NULL         | specify max partition count on one observer |        NULL | OBSERVER | NULL          | CLUSTER | DEFAULT | DYNAMIC_EFFECTIVE |
+-------+----------+---------------+----------+-------------------------------+-----------+--------+--------------+---------------------------------------------+-------------+----------+---------------+---------+---------+-------------------+
  • 檢查當前分區(qū)數(shù)量的和,目前并沒有超過這個限制(500000)。
MySQL [oceanBase]> select count(*) from v$partition;
+----------+
| count(*) |
+----------+
|   421485 |
+----------+

2.2 檢查回收站

  • 檢查回收站是否開啟?
[root@observer04 ~]# mysql -h10.186.64.125 -P2883 -uroot@wenchao_mysql#hwc_cluster:1682755171 -p"xxxx"
MySQL [lss]> show variables like '%recy%';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| recyclebin    | ON    |
+---------------+-------+
1 row in set (0.01 sec)
  • 檢查回收站中是否存在未刪除的分區(qū)表?
MySQL [lss]> show recyclebin;
+-----------------------------------------+---------------+-------+----------------------------+
| OBJECT_NAME                             | ORIGINAL_NAME | TYPE  | CREATETIME                 |
+-----------------------------------------+---------------+-------+----------------------------+
| __recycle_$_1682755171_1689139725669688 | mytable_1     | TABLE | 2023-07-12 13:28:45.687379 |
| __recycle_$_1682755171_1689139737584112 | mytable_1     | TABLE | 2023-07-12 13:28:57.584660 |
| __recycle_$_1682755171_1689139750594392 | t1            | TABLE | 2023-07-12 13:29:10.594118 |
+-----------------------------------------+---------------+-------+----------------------------+
3 rows in set (0.01 sec)

如果存在,需要和業(yè)務(wù)側(cè)溝通是否可以清理?;厥照镜谋砬謇砗螅l(fā)現(xiàn)分區(qū)表數(shù)量減少,但是創(chuàng)建表依舊報錯。

查看回收站中中對象保留天數(shù)。

MySQL [lss]> SHOW PARAMETERS LIKE 'recyclebin_object_expire_time'\G;
*************************** 1. row ***************************
   zone: zone1
  svr_type: observer
 svr_ip: 10.186.64.122
  svr_port: 2882
   name: recyclebin_object_expire_time
 data_type: NULL
  value: 0s
   info: recyclebin object expire time, default 0 that means auto purge recyclebin off. Range: [0s, +∞)
section: ROOT_SERVICE
  scope: CLUSTER
 source: DEFAULT

row in set (0.02 sec)

配置項 recyclebin_object_expire_time 的取值說明如下:

  • 當其值為 0s 時,表示關(guān)閉自動 Purge 回收站功能。
  • 當其值不為 0s 時,表示回收一段時間前進入回收站的 Schema 對象。

2.3 檢查租戶內(nèi)存

找到分區(qū)數(shù)最多的 10 個租戶。

[root@observer04 ~]# mysql -h10.186.64.125 -P2883 -uroot@sys#hwc_cluster:1682755171 -p"xxxx"
// 1. 找到分區(qū)數(shù)最多的 10 個租戶
SELECT t2.tenant_name,t2.tenant_id, t1.replica_count
FROM
 (SELECT tenant_id, COUNT(*) AS replica_count
  FROM __all_virtual_partition_info
  GROUP BY tenant_id
  ORDER BY replica_count DESC
  LIMIT 10) t1
JOIN
 (SELECT tenant_id, tenant_name
  FROM __all_tenant) t2
ON t1.tenant_id=t2.tenant_id
ORDER BY replica_count DESC;
+-------------------+-----------+---------------+
| tenant_name       | tenant_id | replica_count |
+-------------------+-----------+---------------+
| wenchao_mysql     |      1100 |        107853 |
| wenchao_01        |      1088 |         99846 |
| wenchao_02        |      1104 |         15873 |
| wenchao_03        |         1 |          3867 |
| wenchao_04        |      1044 |          3270 |
| wenchao_05        |      1066 |          2811 |
| wenchao_06        |      1079 |          2658 |
| wenchao_07        |      1103 |          2103 |
| wenchao_08        |      1057 |          2040 |
| wenchao_09        |      1016 |          1950 |

rows in set (0.13 sec)

  • 查找租戶有多少表。
select count(*),svr_Ip from __all_virtual_meta_table where tenant_id=1100 and role=1 group by svr_ip;
+----------+-------------+
| count(*) | svr_Ip      |
+----------+-------------+
|   11921  |10.186.64.103|
|   11868  |10.186.64.104|
|   12013  |10.186.64.105|
+----------+-------------+
3 rows in set (0.35 sec)
  • 計算租戶需要擴容內(nèi)存大小。
  • 租戶當前分區(qū)總數(shù) num=107853/副本數(shù)
  • 租戶可用內(nèi)存上限=(1-memstore_limit_percentage)*租戶 unit 的內(nèi)存大小 =(1-0.8)*24GB=4.8GB
  • 單個副本分區(qū)所需總內(nèi)存 partition_mem=128k*(107853/3)+max(1000,(107853/3)/10)*400k=5.75GB

注意:單個副本分區(qū)所需總內(nèi)存 > 租戶可用內(nèi)存上限,租戶所需內(nèi)存超限,需要對租戶內(nèi)存進行擴容。

  • 根據(jù)租戶內(nèi)存計算最大分區(qū)數(shù)量。
  • 單機租戶允許創(chuàng)建的最大分區(qū)數(shù)量=(max_memory-memstore_limit)/partition_mem_n
  • 單機租戶允許創(chuàng)建的最大分區(qū)數(shù)量=(24-24*0.8)/(5.75/(107853/3))=4.8/(5.75/(107853/3))=30011
  • partition_mem_n:指的是單個分區(qū)所需總內(nèi)存

臨時處理方案: 擴容租戶內(nèi)存。

根源治理: 不可能無限擴內(nèi)存;給出業(yè)務(wù)方合理的分區(qū)數(shù)量限制,建議業(yè)務(wù)側(cè)合理使用分區(qū)表,制定合理的定期清理策略。

總結(jié)

根據(jù)上述計算得出:單機租戶允許創(chuàng)建的最大分區(qū)數(shù)量為 30011,建議業(yè)務(wù)側(cè)注意控制分區(qū)數(shù)量,以免超限,對業(yè)務(wù)造成影響。

以上就是OceanBase建表分區(qū)數(shù)超限報錯解決分析的詳細內(nèi)容,更多關(guān)于OceanBase建表分區(qū)數(shù)超限報錯的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 達夢數(shù)據(jù)庫(DM數(shù)據(jù)庫)的查詢與操作指南

    達夢數(shù)據(jù)庫(DM數(shù)據(jù)庫)的查詢與操作指南

    達夢數(shù)據(jù)庫是一款具有自主知識產(chǎn)權(quán)的高性能數(shù)據(jù)庫管理系統(tǒng),這篇文章詳細介紹了其基本操作、數(shù)據(jù)表操作、數(shù)據(jù)查詢操作及其他常用操作,幫助讀者更好地掌握和使用這款數(shù)據(jù)庫,需要的朋友可以參考下
    2025-02-02
  • 關(guān)系型數(shù)據(jù)庫和非關(guān)系型數(shù)據(jù)庫概述與優(yōu)缺點對比

    關(guān)系型數(shù)據(jù)庫和非關(guān)系型數(shù)據(jù)庫概述與優(yōu)缺點對比

    這篇文章介紹了關(guān)系型數(shù)據(jù)庫和非關(guān)系型數(shù)據(jù)庫概述與優(yōu)缺點對比,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-03-03
  • SQL語句詳細說明[部分]

    SQL語句詳細說明[部分]

    比較不錯的sql實例分析,比較詳細,建議學(xué)習(xí)sql的朋友看看
    2008-09-09
  • JetBrains DataGrip安裝和使用的詳細教程

    JetBrains DataGrip安裝和使用的詳細教程

    日常開發(fā)中少不了各種可視化數(shù)據(jù)庫管理工具。本文介紹另一個十分好用且強大的工具:DataGrip。具有一定的參考價值,感興趣的可以了解一下
    2021-09-09
  • 最新Navicat?16??Mac版安裝永久激活教程(親測有效)

    最新Navicat?16??Mac版安裝永久激活教程(親測有效)

    這篇文章主要介紹了最新Navicat?16??Mac版安裝永久激活教程(親測有效),本文通過圖文并茂的形式給大家介紹的非常詳細,對Navicat?16?永久激活教程感興趣的朋友一起看看吧
    2022-08-08
  • 高性能分析數(shù)據(jù)庫StarRocks的安裝與使用詳解

    高性能分析數(shù)據(jù)庫StarRocks的安裝與使用詳解

    在大數(shù)據(jù)時代,選擇一個高性能的分析數(shù)據(jù)庫對業(yè)務(wù)的成功至關(guān)重要,StarRocks作為一款次世代MPP數(shù)據(jù)庫,以其卓越的實時分析和多維分析能力而聞名,下面小編就來和大家聊聊它的具體安裝與使用吧
    2025-03-03
  • Navicat11全系列激活教程圖文詳解(Navicat注冊機)

    Navicat11全系列激活教程圖文詳解(Navicat注冊機)

    這篇文章主要介紹了Navicat11全系列激活教程圖文詳解(注冊機),本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-11-11
  • 數(shù)據(jù)庫rank()分組排序函數(shù)的具體使用

    數(shù)據(jù)庫rank()分組排序函數(shù)的具體使用

    RANK()是MySQL數(shù)據(jù)庫中的一個窗口函數(shù),它可以根據(jù)指定的排序列對數(shù)據(jù)進行排序,并為相同的值分配相同的排名,文中通過示例代碼介紹的非常詳細,感興趣的可以了解一下
    2024-11-11
  • Navicat卡住一直在執(zhí)行中的簡單解決辦法

    Navicat卡住一直在執(zhí)行中的簡單解決辦法

    眾所周知Navicat是我們常用的連接MYSQL工具,非常方便好用,其實日常中我們也常常會遇到運行時間很長甚至幾乎跑不完卡死的情況,這篇文章主要給大家介紹了關(guān)于Navicat卡住一直在執(zhí)行中的簡單解決辦法,需要的朋友可以參考下
    2023-11-11
  • Dbeaver如何從一個數(shù)據(jù)庫復(fù)制表到另外一個數(shù)據(jù)庫

    Dbeaver如何從一個數(shù)據(jù)庫復(fù)制表到另外一個數(shù)據(jù)庫

    在數(shù)據(jù)庫管理中,導(dǎo)出表是一項常見操作,可以通過特定的工具或數(shù)據(jù)庫自帶的功能實現(xiàn),步驟包括:1.在數(shù)據(jù)庫管理軟件中找到需導(dǎo)出的表,右鍵選擇導(dǎo)出數(shù)據(jù),2.選擇目標數(shù)據(jù)庫,并進行表映射設(shè)置,3.根據(jù)需求調(diào)整導(dǎo)出參數(shù),4.執(zhí)行操作完成數(shù)據(jù)導(dǎo)出
    2024-10-10

最新評論

赣州市| 永德县| 宜宾县| 昌吉市| 三台县| 孟州市| 福泉市| 中西区| 建湖县| 乃东县| 建平县| 兴安盟| 萍乡市| 芜湖县| 长白| 徐闻县| 乌兰县| 长顺县| 阿坝县| 偃师市| 诸城市| 新乡市| 大余县| 白河县| 安陆市| 海原县| 宁津县| 白沙| 铁岭市| 内黄县| 长岛县| 天水市| 新乡市| 上思县| 内乡县| 喀喇沁旗| 永福县| 富宁县| 大埔区| 阜宁县| 栾城县|