Thực nghiệm và đ nh gi

Một phần của tài liệu 28052_1712202001926898SatsamayChanthavisouk_LuanVan (Trang 56 - 73)

CHƢƠNG 1 NGHIÊN CỨU TỔNG QUAN

3.3. Thực nghiệm và đ nh gi

- TVG đã được thay thế bằng câu lệnh s l ct đơn giản truy vấn đến bảng KNT nên tốc độ thực hiện TVG x m như đạt đến mức tối đa. Tuy vậy, ở các BG, những trigger cập nhật gia tăng đồng bộ cho KNT làm cho thao tác cập nhật KNT trở thành một phần trong quá trình cập nhật dữ liệu trên BG, cho nên, thao tác cập nhật dữ liệu trên BG s bị chậm đi tỉ lệ thuận với khối lượng dữ liệu trên các G độ phức tạp của TVG và số lượng KNT được sử dụng. Phần đánh giá này s giúp ước lượng được phần nào thời gian bị chậm đi khi cập nhật dữ liệu trên BG có trigger cập nhật KNT.

- Thử nghiệm nhằm đánh giá hiệu quả và ảnh hưởng của trigg r được sinh ra, thực hiện trên máy tính cá nhân có cấu hình CPUcấu hình Intel G4600 4x3.6Ghz, Ram 8 GB, hệ điều hành Windows 10 64bit, HQT CSDL PostgreSQL 10 64bit. Sau khi tiến hành đo đạc thời gian thực thi truy vấn, các thao tác dữ liệu trong a trường hợp: i) Khơng có KNT, ii) có KNT – trigger CNGT KNT theo thuật tốn được trình bày trong mục 1.4.3.2.b. Thử nghiệm

cho mỗi trường hợp i) và ii) trên các bản ghi ngẫu nhiên trong bản và tính giá trị trung ình thu được kết quả so sánh như trên ảng 1 thông qua công cụ quản trị CSDL pgAdminIII 1.18.1. Mỗi thử nghiệm thao tác dữ liệu được thực hiện 20 lần và tính kết quả của các lần 11-20 với giả định thao tác chỉ s được HQT CSDL thực thi ổn định” sau một số thử nghiệm, cụ thể là 10.

 Thực hiện v ụ mv2 KNT thống kê lương của các ph ng an

Câu truy vấn gốc: iệt kê mã ph ng tên ph ng số lượng nhân viên trong

ph ng tổng lương các nhân viên lương nhân viên cao nhất lương nhân viên thấp nhất lương trung ình của nhân viên

Đây là câu truy vấn nặng thực hiện các phép toán thống kê sum max min avg trên 1 lượng lớn ữ liệu là lương toàn ộ nhân viên của Sở G nên cần được sử ụng knt để gia tăng tốc độ thực hiện áo cáo thống kê.

select maphong, tenpb, count (nhanvien.manv) as soluongnv, sum(luongnhanvien.luongthuclinh) as tongluongnhanvien, max(luongnhanvien.luongthuclinh) as luongcaonhatcuaphong, min(luongnhanvien.luongthuclinh) as luongthapnhatcuaphong, avg(luongnhanvien.luongthuclinh) as luongtbcuaphong

from phongban join nhanvien on phongban.mapb=nhanvien.maphong join luongnhanvien on nhanvien.manv=luongnhanvien.manv

group by maphong, tenpb

B1 Tạo khung nhìn thực với các cột tương ứng để chứa ữ liệu

create table mv2(

maphong character varying(250), tenpb character varying(250), soluongnv int, tongluongnhanvien int, luongcaonhatcuaphong int, luongthapnhatcuaphong int, luongtbcuaphong float )

B2:

Chèn ữ liệu vào KNT Insert into mv2

select maphong, tenpb, count (nhanvien.manv) as soluongnv, sum(luongnhanvien.luongthuclinh) as tongluongnhanvien, max(luongnhanvien.luongthuclinh) as luongcaonhatcuaphong, min(luongnhanvien.luongthuclinh) as luongthapnhatcuaphong, avg(luongnhanvien.luongthuclinh) as luongtbcuaphong

from phongban join nhanvien on phongban.mapb=nhanvien.maphong join luongnhanvien on nhanvien.manv=luongnhanvien.manv

group by maphong, tenpb

B3: Tạo mã Nguồn C xử lí trigger

Hình 3.1: Tạo mã Nguồn C

Hình 3.2: Tạo trigger cho các bảng nguồn B5: Kiểm tra hiệu năng:

 Đánh giá thời gian thực thi câu lệnh S l ct:

Đối với các lệnh Select Thời gian thực thi khi không ng KNT trung ình ao động từ 180-200 ms; thời gian thực thi khi có ng KNT trung ình ao động từ 20-40ms.

 Đánh giá thời gian thực thi các thao tác cập nhật trên G:

Đối với các lệnh ins rt/delete (1 row) Thời gian thực thi khi không có trigg r trung ình ao động từ 90-110 ms; thời gian thực thi khi có trigg r cập nhật KNT trung ình ao động từ 130-140ms.

Hình 3.5. Tốc độ thực thi lệnh delete 1 row hơng d ng câu lệnh trigger

Hình 3.6. Tốc độ thực thi lệnh delete 1 row d ng câu lệnh trigger

 Đối với các lệnh up at (1 row) Thời gian thực thi khi khơng có trigg r trung ình ao động từ 80-100 ms; thời gian thực thi khi có trigg r cập nhật KNT trung ình ao động từ 130-140ms.

Hình 3.7. Tốc độ thực thi lệnh update 1 row hông d ng câu lệnh trigger

Hình 3.8. Tốc độ thực thi lệnh update 1 row có d ng câu lệnh trigger

 Đối với các lệnh up at (1000 row) Thời gian thực thi khi khơng có trigg r trung ình ao động từ 170-180 ms; thời gian thực thi khi có trigg r cập nhật KNT trung ình ao động từ 3400-3700 ms.

Hình 3.10. Tốc độ thực thi lệnh update 996 row có d ng câu lệnh trigger

Qua các đánh giá trên cho thấy rõ sự hiệu quả của việc sử ụng KNT được rõ rệt khi ta sử ụng các câu truy vấn s l ct để đọc . Tuy nhiên việc sử ụng knt s phải ràng uộc thêm công việc cập nhật lại KNT lên các hành vi ghi lên ảng gốc ins rt l t up at ; đặc iệt trong trường hợp phải up at thơng tin tồn ộ nhân viên ảng gốc 994 row thì trigg r s phải t nh toán lương lại 994 lần ứng với mỗi 1 row thay đổi trong ảng nhân viên th o tưởng của thuật toán cập nhật gia tăng làm cho thời gian thực hiện up at khá lâu; c n chênh lệch về tốc độ cập nhật trên 1 lượng nhỏ đơn vị ữ liệu là không đáng kể. Vì thực tế hiếm khi cập nhật với 1 lượng lớn toàn ộ ữ liệu và tần suất sử ụng các câu lệnh cập nhật là không thường xuyên so với truy vấn s l ct để đọc ữ liệu nên có thể ỏ qua yếu tố tốc độ khi ta thực hiện các hành vi cập nhật trên 1 lượng lớn giữ liệu. Nếu truy vấn là đủ phức tạp trên lượng ữ liệu lớn đặc iệt trong trường hợp tần suất sử ụng truy vấn là cao và tần suất cập nhật ữ liệu ằng các lệnh ins rt up at l t là thấp thì hiệu quả s được nhân lên gấp ội.

KẾT LUẬN

Việc Nghiên cứu ứng dụng khung nhìn thực để nâng cao hiệu suấthệ thống thông tin quản l tại sở giáo ục và thể thao tỉnh Saravan ào Kết luận như sau 1. Kết quả đạt được

Luận văn đã trình ày nghiên cứu của tơi về khung nhìn thực và cách cài đặt nó để nâng cấp hệ thống quản lí thơng tin nhân sự của Sở giáo dục và Thể thao Saravanh (Lào), cụ thể:

+ Tìm hiểu về các loại khung nhìn thực

+ Biết cách xây dựng trigger bằng C để đảm bảo đồng bộ giữa khung nhìn thực và các bảng dữ liệu

+ Phân tích hệ thống thơng tin quản lí nhân sự của Sở giáo dục và Thể thao Saravanh ào và định ra các chức năng để áp dụng khung nhìn thực.

+Thực nghiệm để thấy được lợi ch mà KNT đ m lại (tốc độ) 2. Giới hạn của luận văn

+ Khối lượng dữ liệu cịn nhỏ nên kết quả lợi ích của việc áp dụng khung nhìn thực là chưa thể hiện rõ ràng

+ Chỉ áp dụng KNT thực hiện trên các truy vấn đơn giản do nhu cầu truy vấn quản lí nhân sự của Sở là khơng thực sự phức tạp

+ Việc thực hiện và cài đặt KNT vẫn cịn diễn ra 1 cách thủ cơng và phức tạp, tơi chưa tìm ra và áp ụng được bộ sinh mã trigger cho KNT 1 cách tự động.

o khó khăn về ngơn ngữ, thời gian, kiến thức và kinh nghiệm nên tơi khơng tránh mắc phải những sai sót trong việc hồn thành luận văn rất mong nhận được sự đóng góp chân thành của q thầy cơ để luận vặn của tơi được hồn thiện hơn.

3. Đề xuất phương hướng phát triển tiếp theo

+ Phát hiện, sửa chữa và nâng cấp hệ thống csdl hiệu quả hơn.

+ Phát sinh được khung nhìn thực cho nhiều phép truy vấn và chức năng hơn. + Tự động hóa q trình sinh và cài đặt KNT.

TÀI LIỆU THAM KHẢO Tiếng Việt:

[1] Nguyễn Trần Quốc Vinh, Nguyễn Văn Qu 2013. Nghiên cứu xây dựng và tích hợp mơ-đun viết lại truy vấn hỗ trợ khung nhìn thực trong PostgreSQL, Tạp chí Khoa học và Công nghệ Đại học Đà Nẵng, số 8(69)-2013.

[2] Nguyễn Trần Quốc Vinh, Nghiên cứu xây dựng chương trình sinh mã tự động các

trigger phục vụ cập nhật gia tăng khung nhìn thực Đề tài NCKH cấp Đại học Đà

Nẵng, mã số Đ2012-04-19.

[3] Nguyễn Trần Quốc Vinh, Trần Trọng Nhân, Nghiên cứu xây dựng mô-đun sinh tự

động mã nguồn trigger trong ngôn ngữ C cập nhật gia tăng, đồng bộ các khung nhìn thực trong PostgreSQL, Kỷ yếu Hội nghị Quốc gia lần thứ VII về Nghiên

cứu ứng dụng Công nghệ thông tin, 2014.

[4] Nguyễn Trần Quốc Vinh, ứng dụng khung nhìn thực để nâng cao thực thị truy vấn.

Tiếng Anh:

[1] T.Kyte. Expert one-on-one Oracle. Apress, 2003.

[2] T. Rizzo, A. Machanic, J. Skinner, L. Davidson, R. Dewson, J. Narkiewicz, J. Sack, R. Walters. Pro SQL Server 2005. Apress, 2006.

[3] Quoc Vinh Nguyen Tran, A.B. Kungurtsev, Blashko A.A. Comparison of queries in r lational ata as s to construct mat rializ vi ws. Праці УНДІРТ. Одеса 2004. – 3(39). – с. 35-38.

[4] A.Y.Levy. Answering Queries Using Views: A Survey // www.cs.washington.edu/homes/alon/site/files/view-survey.ps

[5] A.Y. Levy, A.O. Mendelzon, Y. Sagiv. Answering Queries Using Views // . (17/01/2009). www.cs.washington.edu/homes/alon/site/files/pods95-views.ps [6] High precision time measuring in SQL Server 2005 with the help from CLR and unsafe code. http://weblogs.sqlteam.com/mladenp/archive/2006/11/29/ 35688.aspx. (11/12/2008).

Một phần của tài liệu 28052_1712202001926898SatsamayChanthavisouk_LuanVan (Trang 56 - 73)

Tải bản đầy đủ (PDF)

(73 trang)