修訂歷史:
20240711:初始表設計,采用sqlite
正文:
關于歷史數據存儲,考慮的是用數據庫來完成,目前考慮使用Sqlite和mysql,先用sqlite來實現,設計表過程如下:
機器總覽表:
ID號 | IP | 主機名 |
1 | 0.11 | Ubuntu1 |
2 | 0.15 | Debian1 |
機器關注程序表:
ID號 | IP | 程序名 | 進程號 | 開始記錄時間 | 結束記錄時間 | 是否已結束 |
1 | 0.11 | System | 123 | 170000000 | 180000001 | 1 |
2 | 0.11 | System | 234 | 190000001 | 0 | |
3 | 0.15 | Sshd | 11 | 160000000 | 180000001 | 1 |
4 | 0.15 | Sshd | 12 | 180000002 | 0 |
機器1的詳細運行情況(CPU,內存,硬盤):
ID號 | IP | CPU占用率(%) | 內存占用率(%) | 硬盤占用率(%) | 記錄時間 |
1 | 0.11 | 1.0 | 2.0 | 3.0 | 180000001 |
2 | 0.11 | 1.0 | 2.0 | 3.0 | 180000002 |
機器2的詳細運行情況(CPU,內存,硬盤):
ID號 | IP | CPU占用率(%) | 內存占用率(%) | 硬盤占用率(%) | 記錄時間 |
1 | 0.15 | 1.0 | 2.0 | 3.0 | 180000001 |
2 | 0.15 | 1.0 | 2.0 | 3.0 | 180000002 |
機器1中程序1的運行情況:
ID號 | IP | 程序名 | 進程號 | CPU占用率(%) | 內存占用率(%) | 記錄時間 |
1 | 0.11 | System | 123 | 1.0 | 2.0 | 180000001 |
2 | 0.11 | System | 123 | 1.0 | 2.0 | 180000002 |
機器1中程序2的運行情況:
ID號 | IP | 程序名 | 進程號 | CPU占用率(%) | 內存占用率(%) | 記錄時間 |
1 | 0.11 | Kde | 123 | 1.0 | 2.0 | 180000001 |
2 | 0.11 | Kde | 123 | 1.0 | 2.0 | 180000002 |
機器2中程序1的運行情況:
ID號 | IP | 程序名 | 進程號 | CPU占用率(%) | 內存占用率(%) | 記錄時間 |
1 | 0.11 | Sshd | 123 | 1.0 | 2.0 | 180000001 |
2 | 0.11 | Sshd | 123 | 1.0 | 2.0 | 180000002 |
機器2中程序1的運行情況:
ID號 | IP | 程序名 | 進程號 | CPU占用率(%) | 內存占用率(%) | 記錄時間 |
1 | 0.11 | Sshd | 124 | 1.0 | 2.0 | 180000001 |
2 | 0.11 | Sshd | 124 | 1.0 | 2.0 | 180000002 |
機器2中程序2的運行情況:
ID號 | IP | 程序名 | 進程號 | CPU占用率(%) | 內存占用率(%) | 記錄時間 |
1 | 0.11 | Kde | 123 | 1.0 | 2.0 | 180000001 |
2 | 0.11 | Kde | 123 | 1.0 | 2.0 | 180000002 |
按多db設計:
按單db設計:
考慮項目數據量情況,決定采用單db方案;在客戶端應用,臨時編輯生成最終效果: