expdp impdp 速度估算shell指令碼

2021-08-04 07:39:38 字數 3989 閱讀 9774

需求:在資料遷移專案中,經常需要計算大批量匯出、匯入的速度,以估算遷移專案的時間視窗是否滿足要求。

例如有如下impdp log檔案,需要估算本次

impdp

過程的速度:

1. $more impdp.log

2. import: release 11.2.0.3.0 - productionontue mar 26 20:16:27 201

73. 

4. and/or

its affiliates.  

allrights reserved. 

5. 6. 

connectedto: oracledatabase11g enterprise edition release 11.2.0.3.0 - 64bit production 

7.withthe partitioning, olap, data mining 

andreal

8. starting 

"system"

."sys_import_schema_01"

:  system/******** directory=dump logfile=scott_impdp.log remap_schema=scott:

ljgnetwork_link=power1  

9. estimate 

inprogress using blocks method... 

10. 

processing object type schema_export/table/table_data 

11. 

total estimation using blocks method: 

10.129 gb 

12. 

processing object type schema_export/

user

13. 

processing object type schema_export/system_grant 

14. 

processing object type schema_export/role_grant 

15. 

processing object type schema_export/default_role 

16. 

processing object type schema_export/pre_schema/procact_schema 

17. 

processing object type schema_export/table/table

18. 

. . imported 

"ljg".

"test"

3.91 gb

19096576rows

19. 

. . imported 

"ljg".

"dept"

1.91 gb

220000

4rows

20. 

. . imported 

"ljg".

"emp"

1.01 gb

10000

14rows

21. 

. . imported 

"ljg".

"salgrade"

2.03 gb

23000

5rows

22. 

. . imported 

"ljg".

"bonus"

1.11 gb

334009

0rows

23. 

. . imported 

"ljg".

"bonus1"

1.11 mb

334009

0rows

24. 

. . imported 

"ljg".

"bonus2"

1.11 mb

334009

0rows

25. 

26. 

27. 

processing object type schema_export/procedure/procedure

28. 

processing object type schema_export/procedure/alter_procedure 

29. 

ora-39082: object type alter_procedure:

"ljg".

"bbw_insert"

createdwithcompilation warnings 

30. 

processing object type schema_export/table/index/index

31. 

processing object type schema_export/table/constraint/constraint

32. 

processing object type schema_export/table/index/statistics/index_statistics 

33. 

processing object type schema_export/table/constraint/ref_constraint 

34. 

processing object type schema_export/table/statistics/table_statistics 

35. 

job 

"system"

."sys_import_schema_01"

completedwith1 error(s)at20:

19:27

簡單一點的方案就是直接複製3.91,

1.91......

這些資料到

excel

中,利用

excel

計算總資料量。

但是,如果匯入的表有幾千張,用excel就太不方便了!!

這時我們可以利用awk shell指令碼,對

gb所在的列進行加總求和,計算出總的資料量。

$cat import.log |grep gb|awk 『 end 』

10.97

得到本次匯入gb級表資料

10.97gb

$cat import.log |grep mb|awk 『 end 』

2.22

得到本次匯入mb級表資料

2.22mb

將上面兩個資料單們統一為1099mb,再除以總時間(

20:19:27 -20:16:27=3

分鐘),得出匯入速度為每分鐘

366mb。

注意:由於shell指令碼不支援小數點的浮點數運算,需要引入

awk進行計算。

Linux Makefile與shell指令碼區別

在makefile可以呼叫shell指令碼,但是makefile和shell指令碼是不同的。本文試著歸納一下makefile和shell指令碼的不同。1 shell中所有引用以 打頭的變數其後要加 而在makefile中的變數是以 打頭的後加 例項如下 makefile path data subp...

C函式呼叫shell腳

c程式呼叫shell指令碼共有三種方式 system popen exec系列函式 1 system shell命令或shell指令碼路徑 執行過程 system 會呼叫fork 產生子程序,由子程序來呼叫 bin sh c string來執行引數string 字串所代表的命令,此命令執行完後隨即返...

linux shell環境以及shell指令碼

1.的區別,中的變數會被解析 中所有的都被當成字串 執行系統命令 2.自定義的變數預設是區域性變數,環境變數是全域性變數。3.export可以把乙個或者多個變數設定為全域性變數 4.父shell中要使用子shell中的變數,必須用export將變數設定為全域性變數 5.常用的環境變數 6.使用者工作...