備庫搭建
每個備庫的observer需要用t-oceanbase-antman做初始化,詳見安裝文檔。
添加主機(這里要注意NTP時間)
在OCP創建集群界面選擇備集群
選擇需要同步的主集群名稱,以及Observer,集群選擇方式手動分配
提醒:機器選擇方式此處截圖有誤!
確認提交信息
觀察任務完成進度
也可以從系統管理-任務界面查看進度
備集群創建成功,查看集群性能
性能壓測
本次使用benchmarkSQL測試數據庫在管理類系統下的性能。
下載地址:
https://sourceforge.net/projects/benchmarksql/
下載后放在tmp目錄下,并進行解壓
unzip benchmarksql-5.0.zip
這里測試的是Oracle租戶
create user test identified by oracle;
grant dba to test;
OBServer內核
? root@sys
mysql -uroot@sys#test_cluster -P2883 -h192.168.9.146 -p -c -A Doceanbase
alter system set cpu_quota_concurrency=4;
alter system set enable_pg=true;
alter system set enable_early_lock_release=false tenant=all;
alter system set _max_trx_size=600M;
? 測試租戶(Oracle)obclient -h192.168.9.148 -usys@tenant_oracle#test_cluster -p
set global ob_query_timeout=3600000000;
set global ob_trx_timeout=3600000000;
set global max_allowed_packet=67108864;
set global ob_sql_work_area_percentage=100;
set global parallel_max_servers=300;
set global parallel_servers_target=300;
set global ob_create_table_strict_mode=off;
? proxy參數obclient -h192.168.9.148 -P2883 -uroot@proxysys -p
alter proxyconfig set slow_proxy_process_time_threshold=5s;
alter proxyconfig set proxy_mem_limited=8G;
alter proxyconfig set enable_metadb_used=false;
alter proxyconfig set enable_strict_kernel_release=false;
alter proxyconfig set work_thread_num=64;
alter proxyconfig set automatic_match_work_thread=false;
alter proxyconfig set enable_compression_protocol=false;
alter proxyconfig set syslog_level=info;
alter proxyconfig set enable_async_log=true;
db=oracle
driver=com.alipay.oceanbase.obproxy.mysql.jdbc.Driver
// conn=jdbc:oceanbase://xxx.xxx.xxx.xxx:2883/icbc?useUnicode=true&characterEncoding=utf-8
conn=jdbc:oceanbase://xxx.xxx.xxx.xxx:2883/test?useUnicode=true&characterEncoding=utf-8
user=test@tenant_oracle#test_cluster
password=xxxxxx
warehouses=10
loadWorkers=20
//fileLocation=/data/temp/
terminals=10
//To run specified transactions per terminal- runMins must equal zero
runTxnsPerTerminal=0
//To run for specified minutes- runTxnsPerTerminal must equal zero
runMins=1
//Number of total transactions per minute
limitTxnsPerMin=0
//Set to true to run in 4.x compatible mode. Set to false to use the
//entire configured database evenly.
terminalWarehouseFixed=true
//The following five values must add up to 100
newOrderWeight=45
paymentWeight=43
orderStatusWeight=4
deliveryWeight=4
stockLevelWeight=4
// Directory name to create for collecting detailed result data.
// Comment this out to suppress.
resultDirectory=my_result_%tY-%tm-%td_%tH%tM%tS
osCollectorScript=./misc/os_collector_linux.py
osCollectorInterval=1
//osCollectorSSHAddr=user@dbhost
//osCollectorDevices=net_eth0 blk_sda
說明:
倉庫數(warehouses )決定了數據量。正式的壓測倉庫數一般在10000以上。
Loadworkers 數決定了數據加載的性能。如果OceanBase租戶資源很小(尤其是內存資源),那加載速度也不要太快;否則容易把租戶內存打爆。
并發數(terminals )是后期做TPC-C測試的客戶端并發數。這個每次測試都可以調整,以方便不同壓力下的性能。
壓測時間(runMin)是每次測試時間,越長測試結果越好且穩定。因為有時候數據訪問有個預熱過程,效果會體現內存命中率上。
注意:
建表語句中的分區數目可以根據實際情況調整,跟集群節點數有關。
如果集群是3臺(1-1-1),建議是6個或者6的倍數;如果集群是6臺(2-2-2),建議是12個或者12的倍數;如果集群是(3-3-3),建議是36或者36的倍數。這樣是方便后期彈性伸縮測試的時候盡可能保證每個節點的分區均衡。
1)修改分區數
cd /tmp/benchmarksql-5.0/run/sql.common
cp tableCreates.sql tableCreates.sql.bak
vi tableCreates.sql
把里面的partitions 180改為partitions 6
2) 建表
Cd /tmp/benchmarksql-5.0/run
./runSQL.sh props.ob ./sql.common/tableCreates.sql
3)加載數據
./runLoader.sh props.ob
數據庫性能
主機性能
建索引
./runSQL.sh props.ob ./sql.common/indexCreates.sql
驗證數據
select select /*+ parallel(8) */ count(1) from ||table_name||; from user_tables;
select /*+ parallel(8) */ count(1) from BMSQL_CONFIG ;
select /*+ parallel(8) */ count(1) from BMSQL_WAREHOUSE ;
select /*+ parallel(8) */ count(1) from BMSQL_DISTRICT ;
select /*+ parallel(8) */ count(1) from BMSQL_CUSTOMER ;
select /*+ parallel(8) */ count(1) from BMSQL_HISTORY ;
select /*+ parallel(8) */ count(1) from BMSQL_NEW_ORDER ;
select /*+ parallel(8) */ count(1) from BMSQL_OORDER ;
select /*+ parallel(8) */ count(1) from BMSQL_ORDER_LINE;
select /*+ parallel(8) */ count(1) from BMSQL_ITEM ;
select /*+ parallel(8) */ count(1) from BMSQL_STOCK ;
./runBenchmark.sh props.ob
重點關注QPS/TPS、以及相應的RT、增量內存的增加和總量占比等。此外還能看出測試過程中還是有不少物理讀IO。
登錄test用戶執行tableDrops.sql
cd /tmp/benchmarksql-5.0/run/sql.common
obclient -h192.168.9.148 -utest@tenant_oracle#test_cluster -p -P2883
source tableDrops.sql
更多精彩干貨分享
點擊下方名片關注
IT那活兒
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/129820.html
摘要:年月日,遷移服務解決方案在城市峰會中正式發布。遷移服務向分布式架構升級的直接路徑基于上述問題和挑戰,同時經過螞蟻十年數據庫架構升級的先進經驗,螞蟻金服為客戶打造了這款一站式數據遷移解決方案遷移服務,簡稱。 2019年1月4日,OceanBase遷移服務解決方案在ATEC城市峰會中正式發布。螞蟻金服資深技術專家師文匯和技術專家韓谷悅共同分享了OceanBase遷移服務的重要特性和業務實踐...
摘要:年月日,遷移服務解決方案在城市峰會中正式發布。遷移服務向分布式架構升級的直接路徑基于上述問題和挑戰,同時經過螞蟻十年數據庫架構升級的先進經驗,螞蟻金服為客戶打造了這款一站式數據遷移解決方案遷移服務,簡稱。 2019年1月4日,OceanBase遷移服務解決方案在ATEC城市峰會中正式發布。螞蟻金服資深技術專家師文匯和技術專家韓谷悅共同分享了OceanBase遷移服務的重要特性和業務實踐...
摘要:技術成就劃時代的分布式數據庫通過核心業務的不斷上線,螞蟻金服幫助渡過了自研基礎軟件產品最艱難的應用關。年天貓雙十一,支付寶創造了萬筆每秒支付峰值的業界新紀錄,這對于數據庫來說,意味著每秒需要同時運行萬條。 技術成就:劃時代的分布式數據庫 通過核心業務的不斷上線,螞蟻金服幫助OceanBase渡過了自研基礎軟件產品最艱難的應用關。OceanBase不只是被研發出來的,更是被用出來的,是在...
閱讀 1346·2023-01-11 13:20
閱讀 1684·2023-01-11 13:20
閱讀 1132·2023-01-11 13:20
閱讀 1858·2023-01-11 13:20
閱讀 4100·2023-01-11 13:20
閱讀 2704·2023-01-11 13:20
閱讀 1385·2023-01-11 13:20
閱讀 3597·2023-01-11 13:20