日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

BenchmarkSQL配置参数介绍

發布時間:2023/12/8 数据库 54 豆豆
生活随笔 收集整理的這篇文章主要介紹了 BenchmarkSQL配置参数介绍 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

props配置文件的參數說明:

配置文件重要參數如下:

?? ?? ? 1)warehouse:(每個倉庫負責十個區域的供貨,每個區域 3000 個客戶服務,每個倉庫維護 100000 種商品的庫存紀錄,每個倉庫至多有10個終端)

?? ??? ?? ? BenchmarkSQL數據庫每個warehouse大小大概是100MB,如果該參數設置為10,那整個數據庫的大小大概在1000MB。建議將數據庫的大小設置為服務器物理內存的2-5倍,如果服務器內存為16GB,那么warehouse設置建議在328~819之間。

?? ?? ? 2)terminals:

?? ??? ?? ? terminals指的是并發連接數,建議設置為服務器CPU總線程數的2-6倍。如果服務器為雙核16線程(單核8線程),那么建議配置在32~96之間。

配置文件詳解:

1.db=mysql?? ?//數據庫類型,postgres/oracle/mysql/firebird/goldilocks

2.driver=org.mariadb.jdbc.Driver??//客戶端驅動

conn=jdbc:mysql://192.168.18.32:3306/bmsdb??//mysql數據庫連接字符串

user=bms? ? //數據庫登錄用戶名,需要我們提前在數據庫中建立benchmarksql用戶

password=bms? ? //如上用戶密碼

3.warehouses=1? ? //倉庫數量,每個warehouse大小大概是100MB

4.loadWorkers=4? ? //用于在數據庫中初始化數據的加載進程數量,默認為4,實際使用過程中可以根據實際情況調整,加載速度會隨worker數量的增加而有所提升

5.terminals=1? ? //終端數,即并發客戶端數量,通常設置為CPU線程總數的2~6倍

6.?runTxnsPerTerminal=10

//To run specified transactions per terminal- runMins must equal zero

//每個終端(terminal)運行的固定事務數量,例如:如果該值設置為10,意味著每個terminal運行10個事務,如果有32個終端,那整體運行320個事務后,測試結束。該參數配置為非0值時,下面的runMins參數必須設置為0

  • ?runMins=0
  • //To run for specified minutes- runTxnsPerTerminal must equal zero

    //要測試的整體時間,單位為分鐘,如果runMins設置為60,那么測試持續1小時候結束。該值設置為非0值時,runTxnsPerTerminal參數必須設置為0。這兩個參數不能同時設置為正整數,如果設置其中一個,另一個必須為0,主要區別是runMins定義時間長度來控制測試時間;runTxnsPerTerminal定義事務總數來控制時間。

  • limitTxnsPerMin=300
  • 測試吞吐量時,需要將此值設置極大(無限大),這樣就能夠保證不會出現某個終端sleep現象。

    //每分鐘事務總數限制,該參數主要控制每分鐘處理的事務數,事務數受terminals參數的影響,如果terminals數量大于limitTxnsPerMin值,意味著并發數大于每分鐘事務總數,該參數會失效,想想也是如此,如果有1000個并發同時發起,那每分鐘事務數設置為300就沒意義了,上來就是1000個并發,所以要讓該參數有效,可以設置數量大于并發數,或者讓其失效,測試過程中目前采用的是默認300。

    //測試過程中的整體邏輯通過一個例子來說明:假如limitTxnsPerMin參數使用默認300,termnals終端數量設置為150并發,實際會計算一個值A=limitTxnsPerMin/terminals=2(此處需要注意,A為int類型,如果terminals的值大于limitTxnsPerMin,得到的A值必然為0,為0時該參數失效),此處記住A=2;接下來,在整個測試運行過程中,軟件會記錄一個事務的開始時間和結束時間,假設為B=2000毫秒;然后用60000(毫秒,代表1分鐘)除以A得到一個值C=60000/2=30000,假如事務運行時間B<C,那么該事務執行完后,sleep C-B秒再開啟下一個事務;假如B>C,意味著事務超過了預期時間,那么馬上進行下一個事務。在本例子中,每分鐘300個事務,設置了150個并發,每分鐘執行2個并發,每個并發執行2秒鐘完成,每個并發sleep 28秒,這樣可以保證一分鐘有兩個并發,反推回來整體并發數為300/分鐘。

    9.terminalWarehouseFixed=true

    ?//終端和倉庫的綁定模式,設置為true時可以運行4.x兼容模式,意思為每個終端都有一個固定的倉庫。設置為false時可以均勻的使用數據庫整體配置。TPCC規定每個終端都必須有一個綁定的倉庫,所以一般使用默認值true。

    10.newOrderWeight=45

    paymentWeight=43

    orderStatusWeight=4

    deliveryWeight=4

    stockLevelWeight=4

    //下面五個值的總和必須等于100,默認值為:45, 43, 4, 4 & 4 ,與TPC-C測試定義的比例一致,實際操作過程中,可以調整比重來適應各種場景。

    11.resultDirectory=my_result_%tY-%tm-%td_%tH%tM%tS

    //測試數據生成目錄,默認無需修改,默認生成在run目錄下面,名字形如my_result_xxxx的文件夾。

    12.osCollectorScript=./misc/os_collector_linux.py

    //操作系統性能收集腳本,默認無需修改,需要操作系統具備有python環境

    13.??osCollectorInterval=1

    //操作系統收集操作間隔,默認為1秒

    14.//osCollectorSSHAddr=user@dbhost

    //操作系統收集所對應的主機,如果對本機數據庫進行測試,該參數保持注銷即可,如果要對遠程服務器進行測試,請填寫用戶名和主機名。

    15.osCollectorDevices=net_eth0 blk_sda

    //操作系統中被收集服務器的網卡名稱和磁盤名稱,例如:使用ifconfig查看操作系統網卡名稱,找到測試所走的網卡,名稱為enp1s0f0,那么下面網卡名設置為net_enp1s0f0(net_前綴固定);使用df -h查看數據庫數據目錄,名稱為(/dev/sdb????????????????33T???18T???16T???54% /hgdata),那么下面磁盤名設置為blk_sdb(blk_前綴固定)

    參考:https://blog.csdn.net/fuqiangnxn/article/details/98758707

    總結

    以上是生活随笔為你收集整理的BenchmarkSQL配置参数介绍的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。