Đăng ký Đăng nhập
Trang chủ Nghiên cứu ứng dụng khung nhìn thực để nâng cao hiệu suất hệ thống thông tin quả...

Tài liệu Nghiên cứu ứng dụng khung nhìn thực để nâng cao hiệu suất hệ thống thông tin quản lý nhân sự tại sở giáo dục và thể thao tỉnh saravan (lào)

.PDF
26
13
98

Mô tả:

ĐẠI HỌC ĐÀ NẴNG TRƢỜNG ĐẠI HỌC SƢ PHẠM SATSAMAY CHANTHAVISOUK NGHIÊN CỨU ỨNG DỤNG KHUNG NHÌN THỰC ĐỂ NÂNG CAO HIỆU SUẤT HỆ THỐNG THÔNG TIN QUẢN LÝ NHÂN SỰ TẠI SỞ GI ỤC VÀ THỂ TH TỈNH S R V NH À Chuyên ngành: Hệ thống thông tin Mã số: 848 0401 TÓM TẮT LUẬN VĂN THẠC SĨ HỆ THỐNG THÔNG TIN Đà Nẵng - Năm 2018 Công trình đƣợc hoàn thành tại Trƣờng Đại học Sƣ phạm- ĐHĐN Ngƣời hƣớng dẫn khoa học: TS. Nguyễn Trần Quốc Vinh Phản biện 1: TS. Phạm Anh Phƣơng Phản biện 2: TS. Trần Thiên Thành Luận văn sẽ đƣợc bảo vệ trƣớc Hội đồng chấm Luận văn tốt nghiệp thạc sĩ Hệ thống thông tin họp tại Trƣờng Đại học Sƣ phạm- ĐHĐN vào ngày 18 tháng 11 năm 2018. Có thể tìm hiểu luận văn tại: Trung tâm Thông tin- Học liệu, Đại học Đà Nẵng Thƣ viện trƣờng Đại học Sƣ phạm, Đại học Đà Nẵng 1 Ở ĐẦU 1. Lý do chọn đề tài Ngày n y, với s ph t triển kh ng ng ng c x hội, tin học đ trở nên vô cùng phổ biến và đ c những bƣớc phát triển vƣợt bậc đƣợc thể hiện qua nhiều lĩnh v c c đời sống xã hội. Tin học đ dần dần trở thành nhu cầu rất cần thiết và không thể thiếu trong cuộc sống c con ngƣời. Ở các quốc gia phát triển hiệu quả do tin học hóa đem lại đ g p phần thiết yếu và chiếm giữ một vị trí quan trọng trong c c lĩnh v c kinh tế, chính trị, văn h , gi o dục… Với số lƣợng nh n vi n c sở Giáo dục và Thể thao tỉnh S r v n ào là hơn một trăm ngƣời và c ng c thể con số này sẽ tăng l n nhiều hơn nữ trong tƣơng l i n n việc quản lý về hồ sơ c ng nhƣ tiền lƣơng c a cán bộ nh n vi n sẽ gặp nhiều kh khăn và tốn kém nhiều thời gi n hơn. Trƣớc đ y, để thu nhận một nhân viên mới, xét duyệt n ng lƣơng, quản lý qu trình c ng t c c ng nhƣ chuyển công tác c a các nhân viên trong Sở, các nhân viên c a Phòng Tổ Chức phải làm việc với số lƣợng sổ sách khá lớn, ghi chép thông tin cho tất cả các nhân viên c a sở phải mất rất nhiều công sức và phải mất một thời gian rất lâu, và s sai xót trong quá trình ghi chép là khó tránh khỏi khi phải làm việc th c ng nhƣ vậy. Nên Ban Gi m Đốc sở muốn tin học hóa việc quản lý nhân s và tiền lƣơng đ với một hệ thống phần mềm quản lý và mong muốn đ đ đƣợc chúng t i đảm nhiệm th c hiện. Nhờ t nh hiệu quả và nhanh chóng do hệ thống mới đem lại làm cho hiệu suất công việc tăng c o, tr o đổi th ng tin đƣợc diễn ra n toàn, đồng bộ, ch nh x c do t nh năng ƣu việt c a hệ thống máy t nh đem lại. Vì thế mà việc tra cứu không còn phải kh khăn, phức tạp nữ vì hệ thống sẽ thống k , quản lý và chúng t c thể tra cứu, tham khảo bất cứ lúc nào khi cần. Do vậy chi phí sẽ giảm thiểu, lợi nhuận tăng c o, t nh hiện đại h đƣợc giải quyết. Xuất ph t t vấn đề n u tr n, t i chọn đề tài Nghiên cứu ứng dụng khung nhìn thực để nâng cao hiệu suất hệ thống thông tin quản lý nhân sự tại sở giáo dục và thể thao tỉnh Saravan (Lào)”, 2. Mục tiêu và nhiệm vụ đề tài  Mục tiêu 2 - Nghiên cứu ứng dụng khung nhìn th c để nâng cao hiệu quản lý nhân s , xây d ng đƣợc các trigger. - Chƣơng trình c khả năng sinh m SQ cài đặt khung nhìn th c, trigger trên các bảng gốc để cập nhật gi tăng, đồng bộ các khung nhìn th c.  Nhiệm vụ - Tìm hiểu c c bi n dịch và sử dụng trigger viết bằng ng n ngữ C trên PostgreSQL. - Tìm hiểu và nghi n cứu cơ sở lý thuyết về cập nhật gi tăng, đồng bộ KNT với truy vấn lồng. - Khai thác các thuật to n CNGT KNT đ c để ứng dụng vào đề tài, đặc biệt là thuật to n CNGT KNT với truy vấn lồng. 3. Đối tƣợng và phạm vi nghiên cứu  Đối tƣợng nghiên cứu - CSDL quan hệ, HQT CSDL quan hệ - Ngôn ngữ lập trình C - Trigger trên các HQT CSDL quan hệ - Truy vấn lồng - Khung nhìn th c - Thuật toán CNGT KNT với truy vấn lồng  Phạm vi nghiên cứu - HQT CSDL PostgreSQL - Kỹ thuật viết trigger cho PostgreSQL bằng ngôn ngữ C - Cách sử dụng trigger đƣợc viết bằng ngôn ngữ C trên PostgreSQL - Các thuật toán CNGT cho KNT trên PostgreSQL - Thuật toán CNGT KNT hỗ trợ truy vấn lồng 4. Phƣơng pháp nghiên cứu Về phƣơng ph p nghi n cứu, tôi sử dụng h i phƣơng ph p chính là nghiên cứu lý thuyết và nghiên cứu th c nghiệm. 5. Ý nghĩa khoa học và thực tiễn của đề tài Đề tài c ý nghĩ kho học vô cùng to lớn, đ ng g p th m phƣơng ph p ứng dụng khung nhìn th c để xây d ng hệ thông thông tin quản lý, nguyên cứu và đề xuất đề tài d a trên lý thuyết đ nghi n cứu, tiến hành xây d ng chƣơng trình sinh t động mã các trigger 3 th c hiện cập nhật gi tăng khung nhìn th c với truy vấn lồng trong hệ cơ sở dữ liệu PostgreSQL; thử nghiệm tr n m y đơn và đ nh gi tốc độ cập nhật dữ liệu trên các bảng gốc (BG) có trigger cập nhật KNT. Đề tài sẽ chọn đƣợc thuật toán phù hợp, có hỗ trợ CNGT cho các KNT sử dụng truy vấn lồng. Đề tài sẽ x y d ng đƣợc phƣơng ph p viết trigger bằng ng n ngữ C, c ch thức bi n dịch và sử dụng hệ thống trigger đ đƣợc tạo để CNGT c c KNT c hỗ trợ truy vấn lồng, c thể ứng dụng vào c c CSD hiện c . 6. Cấu trúc luận văn Luận văn gồm có 04 phần cụ thể nhƣ s u: CHƢƠNG 1: NGHIÊN CỨU TỔNG QUAN CHƢƠNG 2: PHÂN TÍCH THIẾT KẾ HỆ THỐNG THÔNG TIN QUẢN LÝ CHƢƠNG 3:CÀI ĐẶT HỆ THỐNG THÔNG TIN QUẢN LÝ TẠI SỞ GIÁO DỤC VÀ THỂ THAO TỈNH SARAVANH (LÀO) CHƢƠNG 1 NGHIÊN CỨU TỔNG QUAN 1.1. Những vấn đề chung về quản lý nhân sự 1.1.1. Khái niệm về quản lý nhân sự Ngày nay, khi nhân loại bƣớc vào nền kinh tế tri thức, ngƣời ta bắt đầu nói nhiều đến nguồn l c con ngƣời – yếu tố cơ bản để phát triển xã hội, tăng trƣởng kinh tế thì đối với các nhà quản lý ở mọi lĩnh v c, vấn đề quản lý nhân s đƣợc đặt l n hàng đầu. Khi ngƣời ta n i đến một tổ chức, một đơn vị làm ăn thất bại, thua lỗ, không phải vì thiếu vốn, thiếu trang thiết bị, thiếu cơ sở vật chất, mặt bằng … mà ngƣời t nghĩ ng y đến ngƣời l nh đạo, th trƣởng c a đơn vị đ kh ng đ năng l c điều hành công việc, thiếu trang bị về kiến thức quản lý nhân s hoặc thiếu kinh nghiệm trong chiến lƣợc con ngƣời. Phân tích về những thành công c a nền kinh tế Nhật Bản qua nhiều năm cho thấy rằng, sở dĩ đƣ lại S thần kỳ kinh tế Nhật Bản” có nhiều nguy n nh n, nhƣng nguy n nh n nổi bật nhất là chiến lƣợc 4 con ngƣời và chính sách nhân s c a họ. Vậy quản lý nhân s là gì? Ta hiểu thế nào về quản lý nhân s ? Một nhà quản lý kinh tế t ng n i Học vấn kinh do nh cơ bản c a tôi kh ng ngoài b điều: đ là về con ngƣời, tài chính và công việc”. Qu đ mới thấy ngày nay muốn làm đƣợc việc vĩ đại h y thành đạt thì cần phải biết sử dụng nhân tài, phải biết khai thác các nguồn nhân l c và phối hợp s hoạt động c con ngƣời trong sản xuất, kinh do nh, trong nhà trƣờng, trong tổ chức.Yếu tố hạn chế trong hầu hết mọi trƣờng hợp quản lý kém hiệu quả chính là s thiếu thốn về chất lƣợng và sức mạnh c a nhà quản lý, không biết cách khai thác các nguồn l c và s lãng phí không thể tƣởng tƣợng đƣợc về các nguồn nhân l c và vật l c. Đặc biệt trong nhà trƣờng, nguồn vật l c chỉ đ ng v i trò thứ yếu, nguồn l c chính và quan trọng nhất là nguồn nhân l c - đội ng c n bộ, giáo viên, công nhân viên. Cần khai thác, sử dụng, quản lý nguồn nhân l c này nhƣ thế nào để đạt hiệu quả cao nhất? Đ là c u hỏi mà các hiệu trƣởng, các nhà quản lý giáo dục cần phải trả lời. 1.1.2. Tầm quan trọng của công tác quản lý nhân sự Trong mỗi tổ chức giáo dục, mỗi nhà trƣờng, nhân s ch yếu là đội ng gi o vi n. Đ y là l c lƣợng nòng cốt có vai trò vô cùng quan trọng, ảnh hƣởng lớn đến chất lƣợng giáo dục, nhƣ tiến sĩ R j Roy Singh (Ấn Độ đ đƣ r nhận xét: Kh ng một hệ thống giáo dục nào có thể vƣơn c o qu tầm những giáo viên làm việc cho n ”. (Nền giáo dục cho thế kỷ XXI. Những triển vọng c a châu Á – Thái Bình Dƣơng, Viện KHGDVN, Hà Nội 1994, tr 115). Nhiệm vụ c a ngành giáo dục là đào tạo l c lƣợng l o động có phẩm chất tốt, c trình độ văn h , kỹ thuật, có tay nghề… phục vụ công nghiệp hóa, hiện đại h đất nƣớc. Vì vậy nhà trƣờng cần phải có đội ng gi o vi n đ về số lƣợng, đạt chuẩn về chất lƣợng để đào tạo nguồn nhân l c đ p ứng yêu cầu c a s phát triển kinh tế – xã hội. Nghiên cứu quản lý nhân s giúp các nhà quản lý nắm đƣợc cách giao tiếp có hiệu quả với ngƣời khác, biết tìm ra ngôn ngữ chung với cấp dƣới, nhạy cảm hơn, biết đ nh gi cấp dƣới một cách tốt nhất, biết cách lôi cuốn cấp dƣới say mê với công việc… và tr nh đƣợc những sai lầm trong việc tuyển chọn và sử dụng l o động, tạo 5 đƣợc bầu không khí tốt đẹp trong tập thể, nâng cao chất lƣợng công việc, nâng cao hiệu quả c nhà trƣờng. Nhà tƣơng l i học nổi tiếng ngƣời Mỹ Alvin Toffler cho rằng trên thế giới có ba loại sức mạnh: sức mạnh c a bạo l c, sức mạnh c a c a cải và sức mạnh c a tri thức. Sức mạnh c a bạo l c thể hiện ở sức mạnh hùng hậu c v khí, c a những đội qu n đ ng đảo đƣợc trang bị, huấn luyện tốt… đ phát huy tác dụng trong suốt nhiều thế kỷ c a lịch sử nhân loại… Nhƣng ngày n y n đ t ph t huy t c dụng. Bởi bạo l c sẽ đƣợc đ p lại bằng bạo l c. Hiện n y con ngƣời đ c trong t y những sức mạnh cần thiết đ để ngăn chặn bạo l c phát triển. Sức mạnh thứ hai thể hiện ở những khối tiền c a to lớn có thể mu đƣợc tất cả những c ng ty đồ sộ, hay những hầm mỏ, những nguồn tài nguyên thiên nhiên qúi hiếm. Nhƣng s mua bán này chỉ có ý nghĩ khi n đƣợc sử dụng có hiệu quả cao, mà muốn th c hiện đƣợc điều này thì phải cần đến tri thức khoa học kỹ thuật. Ông kết luận: Về lâu dài, máy móc c a công ty không còn là quan trọng, cái quan trọng th c s là năng l c nghiệp vụ, năng l c tổ chức các cấp nghiệp vụ và những sáng kiến ẩn dấu trong vỏ não c a các nhân viên c ng ty” Giải thƣởng Nobel về kinh tế năm 1992 đƣợc trao cho GS.TS Gary Backer bởi công trình khoa học mang tính lý thuyết về Vốn con ngƣời” The Hum n c pit l . Theo ng, nếu đầu tƣ chi tiền lâu dài vào một cá nhân hay một nhóm thì có thể n ng c o đƣợc năng l c hoạt động c đối tƣợng. Ông đề nghị là: C c c ng ty n n t nh to n, phân chia hợp lý cho chăm lo sức khỏe, n ng c o trình độ ngƣời lao động để đạt năng suất cao nhất. Chi phí cho giáo dục – đào tạo, chăm lo sức khỏe nhân viên phải đƣợc xem nhƣ một hình thức đầu tƣ…” S thành công c a nền kinh tế Nhật Bản thể hiện s nhạy bén, sớm du nhập những tinh hoa c văn minh phƣơng T y để kết hợp với những tinh túy c a nền văn minh phƣơng Đ ng và tạo nên những nét đặc thù riêng c a dân tộc Nhật Bản. Trên bình diện quản lý học và cụ thể là quản lý nhân s , ngƣời Nhật đ đạt đƣợc những bƣớc tiến vƣợt bậc do họ đ tiếp thu kỹ thuật quản lý phƣơng T y một cách có chọn lọc và cải tiến cho phù hợp với những nét đặc thù c văn h Nhật 6 trong điều kiện t nhiên khá khắc nghiệt. Họ đ biết đặt vấn đề con ngƣời” vào đúng trung t m c a s chú ý và bằng các triết lý nhân s mang tính dân tộc, s u đ là các chính sách, biện pháp cụ thể tác động mạnh mẽ đến đội ng những ngƣời l o động, tạo n n th i độ tích c c c a họ đối với sản xuất, đối với công ty, tạo ra một đội ng những ngƣời sống – chết” với công ty, hết lòng vì s thành công c a công ty. S thành công trong chiến lƣợc con ngƣời c a các công ty Nhật Bản là một kinh nghiệm qúi báu về chính sách sử dụng, đối nhân xử thế khéo léo c a các nhà quản lý: sử dụng con ngƣời đúng khả năng c a họ, đúng nơi cần họ; đồng thời qu n t m đến cuộc sống sinh hoạt nhiều mặt c a họ và gi đình họ, tạo s gắn b ngƣời lao động với đơn vị bằng th c tế. Không ng ng bồi dƣỡng vốn con ngƣời c đơn vị, tạo điều kiện cho họ ph t huy tài năng, tr s ng tạo phục vụ cho s phát triển c đơn vị, phục vụ chính bản thân họ, tạo cơ hội cho họ thăng tiến trong nghề nghiệp. 1.2. Tổng quan về khung nhìn thực 1.2.1. Khái niệm Khung nhìn th c (KNT) là một kỹ thuật giúp cải thiện và nâng cao tốc độ th c thi đối với các truy vấn phức tạp, có tần suất sử dụng cao trên một lƣợng dữ liệu lớn. Ý tƣởng c a KNT là d a trên các bảng kết quả sẵn c để trả lời truy vấn một cách nhanh chóng mà không cần th c thi lại truy vấn. Đối với những truy vấn phức tạp bao gồm nhiều phép nối và các hàm thống kê, hiệu quả sử dụng KNT càng rõ rệt, đặc biệt khi áp dụng trên một lƣợng dữ liệu đ lớn, do đ bỏ qu c c bƣớc th c thi phép nối và các hàm thống kê vốn là những thành phần chiếm nhiều chi phí trong quá trình th c thi truy vấn. Đến nay, kỹ thuật KNT đ đƣợc triển khai trên các hệ quản trị cơ sở dữ liệu HTQCSD thƣơng mại lớn nhƣ Or cle, Microsoft SQ Server, IBM DB2,… và ngày càng đƣợc ứng dụng rộng rãi. Một khung nhìn view c thể đƣợc xem nhƣ là một bảng ảo” trong cơ sở dữ liệu c nội dung đƣợc định nghĩ th ng qu một truy vấn c u lệnh SE ECT . Điểm kh c biệt giữ khung nhìn và bảng là khung nhìn kh ng đƣợc xem là một cấu trúc lƣu trữ dữ liệu tồn tại trong cơ sở dữ liệu. Th c chất dữ liệu qu n s t đƣợc trong khung 7 nhìn đƣợc lấy t c c bảng th ng qu c u lệnh truy vấn dữ liệu. Ví dụ: Khung nhìn th c DSNV đƣợc m tả nhƣ s u: CREATE VIEW DSNV(manv,hodem,ten,tuoi,tenPB) AS SELECT masv, hodem, ten,DATEDIFF(YY, ngaysinh, GETDATE()), tenpb FROM nhanvien, pban WHERE nhanvien.mapb = lop.mapb Khi khung nhìn đ đƣợc định nghĩ , t c thể sử dụng c u lệnh SE ECT để truy vấn dữ liệu t khung nhìn nhƣ đối với c c bảng. Khi trong c u truy vấn xuất hiện khung nhìn, hệ quản trị CSD sẽ d vào định nghĩ c khung nhìn để chuyển y u cầu truy vấn dữ liệu li n qu n đến khung nhìn và việc truy vấn dữ liệu đƣợc th c hiện bởi y u cầu tƣơng đƣơng tr n c c bảng. Việc sử dụng khung nhìn trong cơ sở dữ liệu đem lại c c lợi ch s u đ y: bảo mật dữ liệu, đơn giản ho c c th o t c truy vấn dữ liệu, tập trung và đơn giản hoà dữ liệu, độc lập dữ liệu. Tuy nhi n, việc sử dụng khung nhìn c ng tồn tại một số nhƣợc điểm: - Do hệ quản trị cơ sở dữ liệu th c hiện việc chuyển đổi c c truy vấn tr n khung nhìn thành những truy vấn tr n c c bảng cơ sở n n nếu một khung nhìn đƣợc định nghĩ bởi một truy vấn phức tạp thì sẽ dẫn đến chi ph về mặt thời gi n khi th c hiện truy vấn li n qu n đến khung nhìn sẽ lớn. - Mặc dù th ng qu khung nhìn c thể th c hiện đƣợc th o t c bổ sung và cập nhật dữ liệu cho bảng cơ sở nhƣng chỉ hạn chế đối với những khung nhìn đơn giản. Đối với những khung nhìn phức tạp thì thƣờng kh ng th c hiện đƣợc; h y n i c ch kh c là dữ liệu trong khung nhìn là chỉ đọc. Một khung nhìn c thể đƣợc cụ thể h bằng c ch lƣu trữ c c bộ dữ liệu c c c khung nhìn trong cơ sở dữ liệu, đƣợc gọi là khung nhìn thực. KNT là hiện th n t nhi n c ý tƣởng t nh to n lại và bộ nhớ đệm trong cơ sở dữ liệu. Th y vì t nh to n một truy vấn t đầu t dữ liệu cơ bản, hệ thống cơ sở dữ liệu c thể sử dụng kết quả đ đƣợc t nh to n, lƣu trữ và duy trì. 8 Giống nhƣ một bộ nhớ c che bộ nhớ đệm – nơi lƣu trữ c c dữ liệu nằm chờ c c ứng dụng h y phần cứng xử lý , một KNT cung cấp truy cập dữ liệu nh nh; s kh c biệt tốc độ c thể là rất qu n trọng trong c c ứng dụng mà tốc độ truy vấn c o và khung nhìn rất phức tạp rằng n kh ng thể t nh to n lại khung nhìn cho mỗi lần truy vấn. KNT là hữu ch trong c c ứng dụng nhƣ kho dữ liệu, m y ch s o chép, bi n ni n sử hoặc c c hệ thống ghi dữ liệu, tr c qu n dữ liệu và hệ thống điện thoại di động. Kiểm tr t nh ràng buộc toàn vẹn và tối ƣu h truy vấn c ng c thể đƣợc lợi ch t KNT. Tuy nhi n, việc sử dụng KNT c ng c những nhƣợc điểm; đ là: KNT làm ti u tốn kh ng gi n lƣu trữ và phải đƣợc cập nhật khi c c bảng chi tiết cơ bản đƣợc sử đổi. 1.2.2. Phân loại Ta có ba loại khung nhìn cơ bản nhƣ s u: - Standard View: View đƣợc tạo bao gồm các cột là các cột c a các bảng hoặc các view khác, - Indexed View: View đƣợc tạo và đƣợc đặt chỉ mục Unique Clustered Index. - Partitioned View: View đƣợc tạo bao gồm các dữ liệu đƣợc phân cụm ngang t một hoặc nhiều bảng. 1.3. Tổng quan về cập nhật gia tăng, đồng bộ khung nhìn thực Bạn đ biết đầu ra c a câu lệnh SELECT là một tập kết quả thể hiện dƣới dạng một bảng ảo, bạn có thể lƣu trữ bảng ảo bằng cách sử dụng View (Khung nhìn). Những bảng t đ khung nhìn đƣợc tạo đƣợc gọi là bảng co sở. Những bảng cơ sở này lại có thể là thuộc về cơ sỡ dữ liệu khác nhau. Mỗi View có thể có tối đ 1024 cột và những hàng và cột c View đƣợc sinh ra ở một dạng động khi View đƣợc tham chiếu. View chỉ áp dụng cho câu lệnh SELECT, các cột c a View c ng có thể đƣợc lấy t các cột c a View khác. Bạn có thể có những th o t c tr n View tƣợng t trên bảng nhƣ SE ECT, INSERT, UPDATE, DE ETE. 1.3.1. Tổng quan về cập nhật gia tăng Một View Khung nhìn c thể đƣợc xem nhƣ là một bảng ảo 9 trong CSD c nội dung đƣợc định nghĩ th ng qu một c u lệnh truy vấn SE ECT . – Nhƣ vậy, một View tr ng giống nhƣ một T ble bảng với một t n khung nhìn và một tập c c dòng, cột. Điểm kh c biệt giữ View và T ble là: View kh ng đƣợc xem là một cấu trúc lƣu trữ dữ liệu tồn tại trong CSDL. – Lợi ch c việc sử dụng View trong CSD : +Bảo mật dữ liệu: Ngƣời sử dụng đƣợc cấp ph t quyền tr n c c View với những phần dữ liệu mà ngƣời sử dụng đƣợc phép -> Hạn chế việc ngƣời sử dụng truy cập tr c tiếp dữ liệu. + Đơn giản h c c th o t c truy vấn dữ liệu: Một View đ ng v i trò nhƣ một đối tƣợng tập hợp dữ liệu t nhiều bảng kh c nh u vào trong một bảng -> Ngƣời sử dụng c thể th c hiện c c y u cầu truy vấn dữ liệu một c ch đơn giản t View th y vì phải đƣ r những c u truy vấn phức tạp. + Tập trung và đơn giản h dữ liệu: Th ng qu View t c thể cung cấp cho ngƣời dùng những cấu trúc đơn giản, dễ hiểu về dữ liệu đồng thời giúp cho ngƣời dùng tập trung hơn tr n những phần dữ liệu cần thiết. + Độc lập dữ liệu: Một View c thể cho phép ngƣời dùng c đƣợc c i nhìn về dữ liệu độc lập với cấu trúc c c c bảng trong CSD cho dù c c bảng cơ sở c bị th y đổi phần nào về cấu trúc. – Một số nhƣợc điểm c việc sử dụng View: + Do hệ quản trị CSD th c hiện chuyển đổi c c truy vấn tr n View thành những truy vấn tr n c c bảng cơ sở n n nếu một View đƣợc định nghĩ bởi một truy vấn phức tạp thì sẽ dẫn đến chi ph về mặt thời gi n khi th c hiện truy vấn li n qu n đến View lớn. + Mặc dù th ng qu View c thể th c hiện đƣợc c c th o t c bổ sung và cập nhật dữ liệu cho bảng cơ sở nhƣng chỉ hạn chế đối với những View đơn giản. Đối với c c View phức tạp thì thƣờng kh ng th c hiện đƣợc, h y n i c ch kh c dữ liệu trong View chỉ là đọc. 1.4. Tổng quan về cập nhật gia tăng, đồng bộ khung nhìn thực Bạn đ biết đầu ra c a câu lệnh SELECT là một tập kết quả thể hiện dƣới dạng một bảng ảo, bạn có thể lƣu trữ bảng ảo bằng cách sử 10 dụng View (Khung nhìn). Những bảng t đ khung nhìn đƣợc tạo đƣợc gọi là bảng co sở. Những bảng cơ sở này lại có thể là thuộc về cơ sỡ dữ liệu khác nhau. Mỗi View có thể có tối đ 1024 cột và những hàng và cột c View đƣợc sinh ra ở một dạng động khi View đƣợc tham chiếu. View chỉ áp dụng cho câu lệnh SELECT, các cột c a View c ng c thể đƣợc lấy t các cột c a View khác. Bạn có thể có những th o t c tr n View tƣợng t trên bảng nhƣ SE ECT, INSERT, UPDATE, DE ETE. 1.4.1. Tổng quan về cập nhật gia tăng Một View Khung nhìn c thể đƣợc xem nhƣ là một bảng ảo trong CSD c nội dung đƣợc định nghĩ th ng qu một c u lệnh truy vấn SE ECT . – Nhƣ vậy, một View tr ng giống nhƣ một T ble bảng với một t n khung nhìn và một tập c c dòng, cột. Điểm kh c biệt giữ View và T ble là: View kh ng đƣợc xem là một cấu trúc lƣu trữ dữ liệu tồn tại trong CSD . – ợi ch c việc sử dụng View trong CSD : + Bảo mật dữ liệu: Ngƣời sử dụng đƣợc cấp ph t quyền tr n c c View với những phần dữ liệu mà ngƣời sử dụng đƣợc phép -> Hạn chế việc ngƣời sử dụng truy cập tr c tiếp dữ liệu. + Đơn giản h c c th o t c truy vấn dữ liệu: Một View đ ng v i trò nhƣ một đối tƣợng tập hợp dữ liệu t nhiều bảng kh c nh u vào trong một bảng -> Ngƣời sử dụng c thể th c hiện c c y u cầu truy vấn dữ liệu một c ch đơn giản t View th y vì phải đƣ r những c u truy vấn phức tạp. + Tập trung và đơn giản h dữ liệu: Th ng qu View t c thể cung cấp cho ngƣời dùng những cấu trúc đơn giản, dễ hiểu về dữ liệu đồng thời giúp cho ngƣời dùng tập trung hơn tr n những phần dữ liệu cần thiết. + Độc lập dữ liệu: Một View c thể cho phép ngƣời dùng có đƣợc c i nhìn về dữ liệu độc lập với cấu trúc c c c bảng trong CSD cho dù c c bảng cơ sở c bị th y đổi phần nào về cấu trúc. – Một số nhƣợc điểm c việc sử dụng View: + Do hệ quản trị CSD th c hiện chuyển đổi c c truy vấn tr n 11 View thành những truy vấn tr n c c bảng cơ sở n n nếu một View đƣợc định nghĩ bởi một truy vấn phức tạp thì sẽ dẫn đến chi ph về mặt thời gi n khi th c hiện truy vấn li n qu n đến View lớn. + Mặc dù th ng qu View c thể th c hiện đƣợc c c th o t c bổ sung và cập nhật dữ liệu cho bảng cơ sở nhƣng chỉ hạn chế đối với những View đơn giản. Đối với c c View phức tạp thì thƣờng kh ng th c hiện đƣợc, h y n i c ch kh c dữ liệu trong View chỉ là đọc. 1.4.2. Cập nhập đồng bộ khung nhìn thực Đối với một số khung nhìn, t c thể tiến hành th c hiện c c th o t c cập nhập,bổ sung và xo dữ liệu. Th c chất, những th o t c này sẽ đƣợc chuyển thành những th o t c tƣơng t tr n c c bảng cơ sở và c t c động đến những bảng cơ sở. Về mặt lý thuyết, để c thể th c hiện th o t c bổ sung, cập nhật và xo , một khung nhìn trƣớc ti n phải thoả m n c c điều kiện s u đ y: • Trong c u lệnh SE ECT định nghĩ khung nhìn kh ng đƣợc sử dụng t kho DISTINCT, TOP, GROUP BY và UNION. • C c thành phần xuất hiện trong d nh s ch chọn c c u lệnh SELECT phải là c c cột trong c c bảng cơ sở. Trong d nh s ch chọn kh ng đƣợc chứ c c biểu thức t nh to n, c c hàm gộp. Qu n điểm c thể đƣợc cập nhật dƣới c c điều kiện nhất định đƣợc đƣ r dƣới đ y:  Mệnh đề SE ECT kh ng đƣợc chứ t kho DISTINCT.  Mệnh đề SE ECT kh ng đƣợc chứ c c hàm t m tắt.  Mệnh đề SE ECT c thể kh ng chứ c c hàm thiết lập.  Mệnh đề SE ECT kh ng đƣợc chứ c c to n tử đƣợc đặt.  Mệnh đề SE ECT kh ng đƣợc chứ mệnh đề ORDER BY.  Mệnh đề FROM kh ng đƣợc chứ nhiều bảng.  Mệnh đề WHERE kh ng đƣợc chứ c c truy vấn phụ.  Truy vấn c thể kh ng chứ GROUP BY hoặc HAVING.  C c cột đƣợc t nh c thể kh ng đƣợc cập nhật.  \Tất cả c c cột NOT NU t bảng cơ sở phải đƣợc b o gồm trong view để truy vấn INSERT hoạt động. 12 1.5. Cập nhật khung nhìn thực bằng Trigger trên C trong PostgreSql 1.5.1. Khái niệm về Trigger Trigger có thể đƣợc xem là một dạng đặc biệt c a th tục nội tại, bởi vì bên trong nội dung c trigger lƣu trữ các câu lệnh dùng để th c hiện một số hành động nào đ mà ngƣời lập trình sẽ chỉ ra. Tuy nhiên khác với th tục nội tại, trigger hoàn toàn không có tham số. Ngoài ra chúng ta không thể gọi th c hiện tr c tiếp trigger bằng lệnh EXECUTE nhƣ th tục nội tại hoặc bằng bất kỳ một lệnh nào kh c, th y vào đ trigger sẽ đƣợc th c hiện một cách t động khi dữ liệu c a bảng c li n qu n đến trigger bị cập nhật.. 1.5.2. Trigger trên các HQT CSDL Để tạo một Trigger, bạn sử dụng c u lệnh CREATE TRIGGER: CREATE TRIGGER trigger_name trigger_time trigger_event ON table_name FOR EACH ROW BEGIN ... END; Trong đ :  Một Trigger đƣợc khởi tạo s u c u lệnh CREATE TRIGGER. Quy tắc đặt t n n n tu n theo nguy n tắc: [trigger time]_[t ble n me]_[trigger event], v dụ before_employees_update.  Thời gi n k ch hoạt : BEFORE hoặc AFTER. Cần phải chỉ định thời gi n k ch hoạc khi bạn x c định đƣợc tiến trình k ch hoạt c n . Sử dụng t kh BEFORE nếu bạn muốn xử lýhành động trƣớc khi th c hiện th y đổi tr n bản và AFTER nếu bạn cần phải xử lý hành động s u khi th y đổi đƣợc th c hiện xong.  S kiện g y r c thể là INSERT, UPDATE, DELETE.  Trình k ch hoạt phải đƣợc li n kết với một bảng cụ thể, sử dụng t kh ON để x c định.  C u lệnh SQ phải đƣợc đặt giữ t kh BEGIN và END. 13 1.5.3. Trigger trong PostgreSQL Để tạo một Trigger, bạn sử dụng c u lệnh CREATE TRIGGER: CREATE [ CONSTRAINT ] TRIGGER name { BEFORE | AFTER | INSTEAD OF } { event [ OR ... ] } ON table [ FROM referenced_table_name ] [ NOT DEFERRABLE | [ DEFERRABLE ] { INITIALLY IMMEDIATE | INITIALLY DEFERRED } ] [ FOR [ EACH ] { ROW | STATEMENT } ] [ WHEN ( condition ) ] EXECUTE PROCEDURE function_name ( arguments ) where event can be one of: INSERT UPDATE [ OF column_name [, ... ] ] DELETE TRUNCATE Hình 1.1. Trigger trong PostgreSQL Trigger sẽ đƣợc liên kết với bảng hoặc khung đƣợc chỉ định và sẽ th c hiện chức năng function_n me đƣợc chỉ định khi xảy ra các s kiện nhất định. Trigger có thể đƣợc chỉ định để kích hoạt trƣớc khi thao tác đƣợc th c hiện trên một hàng trƣớc khi kiểm tra các ràng buộc và INSERT, UPDATE, hoặc DE ETE đƣợc cố gắng); hoặc sau khi hoạt động đ hoàn thành s u khi c c ràng buộc đƣợc kiểm tra và INSERT, UPDATE, hoặc DE ETE đ hoàn thành ; hoặc thay vì hoạt động trong trƣờng hợp chèn, cập nhật hoặc xóa trên một lần xem). Nếu Trigger kích hoạt trƣớc hoặc thay vì s kiện, Trigger có thể bỏ qua hoạt động cho hàng hiện tại hoặc th y đổi hàng đ ng đƣợc chèn (chỉ dành cho thao tác INSERT và UPDATE). Nếu Trigger kích hoạt sau s kiện, tất cả c c th y đổi, bao gồm các hiệu ứng c a các trình 14 kích hoạt khác, là "hiển thị" với Trigger. Một trigger đƣợc đ nh dấu FOR EACH ROW đƣợc gọi là một lần cho mỗi hàng mà thao tác sử đổi. Ví dụ, một DELETE ảnh hƣởng đến 10 hàng sẽ gây ra bất kỳ ON DELETE kích hoạt trên quan hệ đ ch đƣợc gọi là 10 lần riêng biệt, một lần cho mỗi hàng đ x . Ngƣợc lại, một trigger đƣợc đ nh dấu FOR EACH STATEMENT chỉ đƣợc th c hiện một lần cho bất kỳ hoạt động nào, bất kể có bao nhiêu hàng nó sử đổi đặc biệt, một thao tác sử đổi các hàng không sẽ vẫn dẫn đến việc th c hiện bất kỳ áp l c nào đối với mỗi BỘ TRƢỞNG BẢO TỒN) . Trigger hoạt đƣợc chỉ định để kích hoạt INSTEAD OF s kiện kích hoạt phải đƣợc đ nh dấu FOR EACH ROW và chỉ có thể đƣợc định nghĩ tr n chế độ xem. TRƢỚC và sau khi Trigger trên chế độ xem phải đƣợc đ nh dấu là FOR EACH STATEMENT. 1.5.4. Ví dụ tạo Trigger trên C trong PostgreSQL Ví dụ 1: CREATE TRIGGER CheckDiscountUpd ON Products FOR UPDATE AS IF (SELECT discount FROM inserted) > (select max(Maxdisc) from discounts) BEGIN PRINT ‘You c nnot ssign discount gre ter th n m x llowed discount’ ROLLBACK TRANSACTION END Giải thích ví dụ: Giả sử ràng, bảng Products c trƣờng discount, khi cập nhật gi trị discount thì hệ thống kiểm tr xem gi trị discount c nằm trong phạm vi cho phép h y kh ng? Nếu vƣợt qu thì h y việc th y đổi đ . 15 CHƢƠNG 2 PHÂN TÍCH THIẾT KẾ HỆ THỐNG THÔNG TIN QUẢN Ý 2.1. Tổng quan về hệ thống thông tin quản lý Quản lý nh n s ch nh là việc th c hiện chức năng tổ chức c quản trị căn bản, b o gồm c c nội dung cơ bản s u đ y: 1. Hồ sơ nh n vi n tr cứu th ng tin c nh n, vị tr c ng việc, lƣơng, thƣởng, hợp đồng, đào tạo chuy n m n, nghiệp vụ n ng c o, b o c o l nh đạo… 2. Tuyển dụng nh n vi n đăng ký tuyển dụng, th ng tin tuyển dụng, tuyển dụng, đào tạo, sắp xếp vị tr c ng việc, b o c o, thống k c c hồ sơ tuyển dụng,… 3. Tổ chức c c hoạt động, s kiện, đào tạo và n ng c o năng l c chuy n m n cho nh n vi n th ng tin nh n vi n đƣợc đào tạo, hỗ trợ kinh ph đào tạo, vị tr đào tạo, b o c o… 4. N ng c o hiệu quả sử dụng l o động th ng qu việc sử dụng hệ thống quản lý nh n s sắp xếp vị tr , n ng lƣơng, thƣởng, đề nghị khen thƣởng… 5. Quản lý chấm c ng, nghỉ chế độ phép, ốm, th i sản , thời gi n làm việc, đ nh gi mức độ hoàn thành c ng việc theo th ng, năm… 2.1.1 Thực trạng Việc th c hiện quản l nh n s bằng phƣơng ph p th c ng xƣ n y ở Sở Gi o dục và Thể Th oS r v n vẫn còn nhiều kh khăn: 1. Số lƣợng nh n vi n làm việc hiện tại là hàng trăm ngƣời và con số này tăng nh nh theo mỗi năm. 2. Số lƣợng c c giấy tờ, hồ sơ, văn bản, quyết định ban hành mỗi ngày là lớn nhƣng vẫn còn thiếu t nh đồng bộ với nh u thất lạc, lỗi đ nh m y,… 3. Kh khăn trong việc tìm kiếm, tr cứu th ng tin hồ sơ nh n vi n, th ng k c c hồ sơ xin việc, b o c o bảng t nh lƣơng, quản l chấm c ng và c c chế độ. 4. Để vận hành bộ m y quản l nh n s c cần nhiều nh n l c, thời gi n mà t nh ch nh x c lại kh ng đảm bảo. 2.1.2 Đề xuất 16 p dụng công nghệ thông tin vào mô hình quản lí nhân sự của Sở, cụ thể: 1. X y d ng hệ thống cơ sở dữ liệu cho m hình quản l nh n s c Sở phục vụ cho việc vận hành c c chức năng quản l ch nh x c, dễ dàng. 2. Áp dụng KNT để tối ƣu h thời gi n truy cập c c truy vấn nặng 3. X y d ng phần mềm, ứng dụng kh i th c cơ sở dữ liệu đ có. 4. Tiến hành cài đặt, thử nghiệm, đào tạo , hƣớng dẫn sử dụng hệ thống quản l mới đến c c phòng b n, nh n vi n t ng bƣớc chuyển dịch m hình quản l nh n s . 2.2. Sơ đồ U cơ sở dữ liệu 2.2.1 Mô hình thực thể kết hợp T những chức năng và y u cầu quản l nh n s c Sở, t x y d ng m hình th c thể kết hợp nhƣ sau: Hình 2.1. Sơ đồ thực thể kết hợp 17 2.2.2 Mô hình CSDL hoàn chỉnh: Hình 2.2. ô hình cơ sở dữ liệu hoàn chỉnh 1 18 2.3. Thiết kế CSDL qua khung nhìn thực Ta sử dụng KNT để tối ƣu 1 số truy vấn nặng, đƣợc gọi thƣờng xuyên. Qua phân tích, ta cần xây d ng các KNT sau: 1. Khung nhìn thực(mv1)thông tin các hồ sơ tuyển dụng:join sẵn các bảng hồ sơ tuyển dụng, quốc tịch, tôn giáo, ngoai ngữ, trình độ ngoại ngữ, tin học, vị trí tuyển dụng: phục vụ cho việc thống kê, lọc những ứng viên tuyển dụng theo trình độ các cấp, đƣợc sử dụng nhiều lần 2. Khung nhìn thực (mv2)Nhân viên- lƣơng: join sẵn các bảng Nhân viên, hệ số lƣơng, bậc, ngạch, lƣơng nh n vi n: Tính lƣơng, cập nhật hàng tháng cho toàn bộ nhân viên CHƢƠNG 3 CÀI ĐẶT HỆ THỐNG THÔNG TIN QUẢN LÝ TẠI SỞ GIÁO DỤC VÀ THỂ THAO TỈNH SARAVANH (LÀO) 3.1. Xây dựng trigger T đ biết để c thể làm việc tr n khung nhìn th c th y cho c c bảng gốc truyền thống, t cần đảm bảo việc đồng bộ dữ liệu giữ khung nhìn th c và bảng gốc. Ở đ y, t i x y d ng c c trigger viết bằng C cho c c bảng gốc để th c hiện c c cập nhật s th y đổi l n khung nhìn th c 1 c ch nhanh chóng. Quy trình x y d ng 1 trigger: 1. Soạn thảo m nguồn C tr n Visu l Studio hoặc sử dụng Tool sinh m nguồn t động [3] 2. ink m nguồn với c c file libr ry c postgre và bi n dịch thành file .dll 3. Đặt file trigger .dll vào thƣ mục lib c HQT Postgre SQ 4. Cài đặt trigger l n c c bảng sử dụng cú ph p:  Tạo hàm gọi trigger từ file dll đã biên dịch Create function hamGoiTriggerTuDLL() returns trigger as Tenfilebiendich.dll', 'TenHamXuLyTriggerVietTrongC' language c strict; -Trigger th c thi hàm v tạo khi c th y đổi l n bảng
- Xem thêm -

Tài liệu liên quan

Tài liệu vừa đăng

Tài liệu xem nhiều nhất