Oracle自治事务处理数据库OCPU可扩展性测试
生活随笔
收集整理的這篇文章主要介紹了
Oracle自治事务处理数据库OCPU可扩展性测试
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
簡介
本文是Autonmous Transaction Processing的操作過程。
創建云實例并安裝Swing Bench
建立yum metadata cache:
$ sudo yum makecache fast Loaded plugins: langpacks, priorities, ulninfo, versionlock ol7_UEKR5 | 2.8 kB 00:00 ol7_addons | 2.8 kB 00:00 ol7_developer | 2.8 kB 00:00 ol7_developer_EPEL | 3.4 kB 00:00 ol7_developer_golang113 | 2.8 kB 00:00 ol7_developer_nodejs10 | 2.8 kB 00:00 ol7_developer_php72 | 2.8 kB 00:00 ol7_ksplice | 2.8 kB 00:00 ol7_latest | 3.4 kB 00:00 ol7_oci_included | 2.9 kB 00:00 ol7_optional_latest | 2.8 kB 00:00 ol7_oracle_instantclient | 2.8 kB 00:00 ol7_software_collections | 2.8 kB 00:00 (1/27): ol7_UEKR5/x86_64/updateinfo | 23 kB 00:00 (2/27): ol7_developer/x86_64/primary_db | 454 kB 00:00 (3/27): ol7_developer_EPEL/x86_64/group_gz | 87 kB 00:00 (4/27): ol7_developer_EPEL/x86_64/updateinfo | 4.9 kB 00:00 (5/27): ol7_developer/x86_64/updateinfo | 71 B 00:00 (6/27): ol7_developer_golang113/x86_64/updateinfo | 71 B 00:00 (7/27): ol7_developer_golang113/x86_64/primary_db | 8.2 kB 00:00 (8/27): ol7_developer_nodejs10/x86_64/updateinfo | 71 B 00:00 (9/27): ol7_developer_nodejs10/x86_64/primary_db | 40 kB 00:00 (10/27): ol7_developer_php72/x86_64/updateinfo | 71 B 00:00 (11/27): ol7_addons/x86_64/primary_db | 139 kB 00:00 (12/27): ol7_addons/x86_64/updateinfo | 75 kB 00:00 (13/27): ol7_developer_php72/x86_64/primary_db | 408 kB 00:00 (14/27): ol7_ksplice/updateinfo | 5.0 kB 00:00 (15/27): ol7_UEKR5/x86_64/primary_db | 5.5 MB 00:00 (16/27): ol7_developer_EPEL/x86_64/primary_db | 11 MB 00:00 (17/27): ol7_ksplice/primary_db | 459 kB 00:00 (18/27): ol7_latest/x86_64/group_gz | 148 kB 00:00 (19/27): ol7_latest/x86_64/updateinfo | 2.6 MB 00:00 (20/27): ol7_oracle_instantclient/x86_64/updateinfo | 71 B 00:00 (21/27): ol7_oracle_instantclient/x86_64/primary_db | 10 kB 00:00 (22/27): ol7_latest/x86_64/primary_db | 18 MB 00:00 (23/27): ol7_optional_latest/x86_64/updateinfo | 883 kB 00:00 (24/27): ol7_oci_included/x86_64/primary_db | 81 kB 00:00 (25/27): ol7_optional_latest/x86_64/primary_db | 4.0 MB 00:00 (26/27): ol7_software_collections/x86_64/updateinfo | 8.7 kB 00:00 (27/27): ol7_software_collections/x86_64/primary_db | 4.8 MB 00:00 Metadata Cache Created安裝JDK:
$ sudo yum install java-1.8.0-openjdk-headless.x86_64 Loaded plugins: langpacks, priorities, ulninfo, versionlock 9 packages excluded due to repository priority protections Excluding 2 updates due to versionlock (use "yum versionlock status" to show them) Package 1:java-1.8.0-openjdk-headless-1.8.0.232.b09-0.el7_7.x86_64 already installed and latest version Nothing to do安裝swingbench:
curl http://www.dominicgiles.com/swingbench/swingbenchlatest.zip -o swingbench.zip unzip swingbench.zip cd swingbench創建 ATP實例并利用Swing Bench導入數據
創建一個自治交易數據庫ATPDB,過程略。
下載Client Credentials,文件名為wallet_ATPDB.zip,并上傳到剛才創建的云實例中。目標目錄為默認,即opc用戶的home目錄(/home/opc)。
在目標數據庫中創建schema并導入數據,挺快,2分多鐘:
$ cd ~/swingbench/bin $ export DB_PASSWORD=******** $ ./oewizard -cf ~/wallet_ATPDB.zip -cs ATPDB_medium -ts DATA -dbap $DB_PASSWORD -dba ADMIN -u soe -p $DB_PASSWORD -async_off -scale 0.1 -hashpart -create -cl -v Operation is successfully completed. Operation is successfully completed. SwingBench Wizard Author : Dominic Giles Version : 2.6.0.1124Running in Lights Out Mode using config file : ../wizardconfigs/oewizard.xml Connecting to : jdbc:oracle:thin:@ATPDB_medium Connected Running script ../sql/soedgcreateuser.sql Script completed in 0 hour(s) 0 minute(s) 0 second(s) 334 millisecond(s) Starting run Dec 23, 2019 3:23:16 AM oracle.simplefan.impl.FanManager configure SEVERE: attempt to configure ONS in FanManager failed with oracle.ons.NoServersAvailable: Subscription time out Starting script ../sql/soedgdrop2.sql Script completed in 0 hour(s) 0 minute(s) 0 second(s) 75 millisecond(s) Starting script ../sql/soedgcreatetableshash2.sql Script completed in 0 hour(s) 0 minute(s) 0 second(s) 701 millisecond(s) Starting script ../sql/soedgviews.sql Script completed in 0 hour(s) 0 minute(s) 0 second(s) 26 millisecond(s) Starting script ../sql/soedgsqlset.sql Script completed in 0 hour(s) 0 minute(s) 0 second(s) 96 millisecond(s) Inserting data into table PRODUCT_INFORMATION Inserting data into table INVENTORIES Inserting data into table ADDRESSES_75001 Inserting data into table ADDRESSES_2 Completed processing table PRODUCT_INFORMATION in 0:00:00 Inserting data into table CUSTOMERS_50001 Completed processing table ADDRESSES_2 in 0:00:09 Inserting data into table CUSTOMERS_2 Completed processing table ADDRESSES_75001 in 0:00:09 Inserting data into table ORDER_ITEMS_71490 Inserting data into table ORDERS_71491 Completed processing table CUSTOMERS_50001 in 0:00:09 Completed processing table INVENTORIES in 0:00:13 Inserting data into table ORDER_ITEMS_1 Inserting data into table ORDERS_2 Completed processing table CUSTOMERS_2 in 0:00:05 Completed processing table ORDERS_71491 in 0:00:17 Inserting data into table CARD_DETAILS_75001 Completed processing table ORDER_ITEMS_71490 in 0:00:19 Inserting data into table CARD_DETAILS_2 Completed processing table ORDERS_2 in 0:00:16 Inserting data into table LOGON_119151 Completed processing table CARD_DETAILS_75001 in 0:00:03 Inserting data into table LOGON_2 Completed processing table ORDER_ITEMS_1 in 0:00:18 Inserting data into table PRODUCT_DESCRIPTIONS Completed processing table PRODUCT_DESCRIPTIONS in 0:00:00 Inserting data into table WAREHOUSES Completed processing table CARD_DETAILS_2 in 0:00:03 Completed processing table WAREHOUSES in 0:00:00 Completed processing table LOGON_2 in 0:00:05 Connection cache closed Starting script ../sql/soedganalyzeschema2.sql Script completed in 0 hour(s) 0 minute(s) 56 second(s) 915 millisecond(s) Starting script ../sql/soedgconstraints2.sql Script completed in 0 hour(s) 0 minute(s) 5 second(s) 448 millisecond(s) Starting script ../sql/soedgindexes2.sql Script completed in 0 hour(s) 0 minute(s) 8 second(s) 16 millisecond(s) Starting script ../sql/soedgsequences2.sql Script completed in 0 hour(s) 0 minute(s) 0 second(s) 743 millisecond(s) Starting script ../sql/soedgpackage2_header.sql Script completed in 0 hour(s) 0 minute(s) 0 second(s) 207 millisecond(s) Starting script ../sql/soedgpackage2_body.sql Script completed in 0 hour(s) 0 minute(s) 0 second(s) 187 millisecond(s) Starting script ../sql/soedgsetupmetadata.sql Script completed in 0 hour(s) 0 minute(s) 0 second(s) 449 millisecond(s)============================================ | Datagenerator Run Stats | ============================================ Connection Time 0:00:00.004 Data Generation Time 0:00:35.730 DDL Creation Time 0:01:43.236 Total Run Time 0:02:18.973 Rows Inserted per sec 33,983 Data Generated (MB) per sec 3.3 Actual Rows Generated 2,120,670 Commits Completed 126 Batch Updates Completed 10,625Connecting to : jdbc:oracle:thin:@ATPDB_medium ConnectedPost Creation Validation Report =============================== The schema appears to have been created successfully.Valid Objects ============= Valid Tables : 'ORDERS','ORDER_ITEMS','CUSTOMERS','WAREHOUSES','ORDERENTRY_METADATA','INVENTORIES','PRODUCT_INFORMATION','PRODUCT_DESCRIPTIONS','ADDRESSES','CARD_DETAILS' Valid Indexes : 'PRD_DESC_PK','PROD_NAME_IX','PRODUCT_INFORMATION_PK','PROD_SUPPLIER_IX','PROD_CATEGORY_IX','INVENTORY_PK','INV_PRODUCT_IX','INV_WAREHOUSE_IX','ORDER_PK','ORD_SALES_REP_IX','ORD_CUSTOMER_IX','ORD_ORDER_DATE_IX','ORD_WAREHOUSE_IX','ORDER_ITEMS_PK','ITEM_ORDER_IX','ITEM_PRODUCT_IX','WAREHOUSES_PK','WHS_LOCATION_IX','CUSTOMERS_PK','CUST_EMAIL_IX','CUST_ACCOUNT_MANAGER_IX','CUST_FUNC_LOWER_NAME_IX','ADDRESS_PK','ADDRESS_CUST_IX','CARD_DETAILS_PK','CARDDETAILS_CUST_IX' Valid Views : 'PRODUCTS','PRODUCT_PRICES' Valid Sequences : 'CUSTOMER_SEQ','ORDERS_SEQ','ADDRESS_SEQ','LOGON_SEQ','CARD_DETAILS_SEQ' Valid Code : 'ORDERENTRY' Schema Created驗證schema創建成功:
$ ./sbutil -soe -cf ~/wallet_ATPDB.zip -cs ATPDB_medium -u soe -p $DB_PASSWORD -tables Operation is successfully completed. Operation is successfully completed. Order Entry Schemas Tables ---------------------------------------------------------------------------------------------------------------------- |Table Name | Rows| Blocks| Size| Compressed?| Partitioned?| ---------------------------------------------------------------------------------------------------------------------- |CUSTOMERS | 100,000| 32,192| 256.0MB| | Yes| |ORDERS | 142,979| 32,192| 256.0MB| | Yes| |ORDER_ITEMS | 436,120| 32,192| 256.0MB| | Yes| |CARD_DETAILS | 150,000| 32,192| 256.0MB| | Yes| |ADDRESSES | 150,000| 32,192| 256.0MB| | Yes| |LOGON | 238,299| 32,192| 256.0MB| | Yes| |INVENTORIES | 900,272| 2,386| 19.0MB| Disabled| No| |PRODUCT_DESCRIPTIONS | 1,000| 35| 320KB| Disabled| No| |PRODUCT_INFORMATION | 1,000| 28| 256KB| Disabled| No| |ORDERENTRY_METADATA | 0| 0| 64KB| Disabled| No| |WAREHOUSES | 1,000| 5| 64KB| Disabled| No| ----------------------------------------------------------------------------------------------------------------------Total Space 1.5GB配置Swing Bench負載生成器
cd ~/swingbench/configs vi SOE_Server_Side_V2.xml做如下修改并保存:
... <LogonGroupCount>4</LogonGroupCount> ... <LogonDelay>300</LogonDelay> ... <WaitTillAllLogon>false</WaitTillAllLogon> ...確認:
$ grep Logon SOE_Server_Side_V2.xml<LogonGroupCount>4</LogonGroupCount><LogonDelay>300</LogonDelay><WaitTillAllLogon>false</WaitTillAllLogon>生成負載:
cd ~/swingbench/bin ./charbench -c ../configs/SOE_Server_Side_V2.xml -cf ~/wallet_ATPDB.zip -cs ATPDB_medium -u soe -p $DB_PASSWORD -v users,tpm,tps,vresp -intermin 0 -intermax 0 -min 0 -max 0 -uc 128 -di SQ,WQ,WA -rt 0:30.30然后輸出如下,其中第3列是TPM,第4列是TPS:
將ATPDB的OCPU由1調整到4,然后TPS和TPM大約變為以前的4倍:
最后清理環境。
遺留問題
第一個問題是,Auto Scaling是默認開啟的,為何沒有自動由1變為4?
第二個問題,Number of OCPUs allocated需要在Service Console中看,但只顯示1。是不是表示,雖然我分配了4,但實際只用到1呢?
后來發現是需要等一段時間,才會在圖上反映。
總結
以上是生活随笔為你收集整理的Oracle自治事务处理数据库OCPU可扩展性测试的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: yolov4评估自己的模型
- 下一篇: android 图片热点区域,Andro