1. Trang chủ
  2. » Giáo Dục - Đào Tạo

BÁO CÁO MÔN HỌC CƠ SỞ DỮ LIỆU NÂNG CAO

72 52 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Báo Cáo Môn Học Cơ Sở Dữ Liệu Nâng Cao
Tác giả Hoàng Ngọc Thạch
Người hướng dẫn TS. Nguyễn Danh Tú, TS. Nguyễn Tuấn Dũng, TS. Nguyễn Thị Thanh Huyền
Trường học Trường Đại Học Bách Khoa Hà Nội
Chuyên ngành Cơ Sở Dữ Liệu Nâng Cao
Thể loại báo cáo
Năm xuất bản 2019
Thành phố Hà Nội
Định dạng
Số trang 72
Dung lượng 3,47 MB

Cấu trúc

  • Chương 1. Big Data

    • 1.1. Khái niệm Big Data

    • 1.2. Những vấn đề liên quan

      • 1.2.1. Phân tích dữ liệu Big Data

      • 1.2.2. Xây dựng cơ sở hạ tầng hỗ trợ Big Data

      • 1.2.3. Sử dụng phần mềm và công cụ hỗ trợ

      • 1.2.4. Các trường hợp cần sử dụng Big Data

    • 1.3. Sử dụng dữ liệu hiệu quả

  • Chương 2. Cơ sở dữ liệu phân tán

    • 2.1. Khái niệm cơ sở dữ liệu phân tán

    • 2.2. Đánh giá cơ sở dữ liệu phân tán

      • 2.2.1. Ưu điểm và nhược điểm của cơ sở dữ liệu phân tán

      • 2.2.2. Kiến trúc cơ bản của một cơ sở dữ liệu phân tán

      • 2.2.3. Phân loại cơ sở dữ liệu phân tán và so sánh

    • 2.3. Thiết kế cơ sở dữ liệu phân tán

    • 2.4. Tính trong suốt phân tán

  • Chương 3. Hệ quản trị cơ sở dữ liệu Oracle

    • Lecture 1

    • Lecture 2

    • Lecture 3

    • Lecture 4

    • Lecture 5

    • Lecture 6

    • Lecture 8

  • Chương 4. Bài tập kết thúc môn

    • 4.1. Bài 1

    • 4.2. Bài 2

    • 4.3. Bài 3

    • 4.4. Bài 4

    • 4.5. Bài 5

    • 4.6. Bài 6

    • 4.7. Bài 7

    • 4.8. Bài 8

    • 4.9. Bài 9

  • Tài liệu tham khảo

Nội dung

Big Data

Khái niệm Big Data

Big Data được định nghĩa là tập hợp dữ liệu lớn, bao gồm dữ liệu có cấu trúc, không có cấu trúc và cấu trúc không đầy đủ, với khả năng khai thác thông tin chi tiết từ từng dữ liệu Những tập dữ liệu này thường rất lớn và phức tạp, khiến cho các phần mềm xử lý dữ liệu thông thường khó khăn trong việc thu thập, lưu trữ và xử lý trong thời gian hợp lý, với khối lượng có thể lên đến Petabyte hoặc Exabyte.

Thông thường, Big Data được đặc trưng bởi bốn V, bao gồm:

• Volume: độ lớn của dữ liệu

• Variety: độ đa dạng của dữ liệu

• Velocity: tốc độ mà dữ liệu cần được xử lý và phân tích

• Veracity: độ xác thực của dữ liệu

Hình 1: Các đặc trưng của Big data

Big Data được hình thành từ nhiều nguồn khác nhau, bao gồm trang web, mạng xã hội, máy tính để bàn, ứng dụng di động, thí nghiệm khoa học, cảm biến và các thiết bị khác trong hệ sinh thái Internet of Things (IoT).

Những vấn đề liên quan

1.2.1 Phân tích dữ liệu Big Data

Khi sở hữu dữ liệu, việc phân tích chúng trở nên cực kỳ quan trọng để tối ưu hóa lợi ích, bao gồm tăng doanh thu, cải thiện dịch vụ khách hàng, nâng cao hiệu suất và củng cố sức cạnh tranh tổng thể.

Phân tích dữ liệu là quá trình kiểm tra các tập dữ liệu để rút ra thông tin chi tiết, nhận diện xu hướng và dự đoán hoạt động tương lai Qua đó, dữ liệu có thể được ứng dụng hiệu quả trong việc lựa chọn thời gian và địa điểm quảng cáo sản phẩm và dịch vụ, hỗ trợ các công ty trong việc triển khai các chiến dịch quảng bá theo thời điểm.

• Phân tích dữ liệu thăm dò (để xác định các mẫu và mối quan hệ trong dữ liệu)

• Phân tích dữ liệu xác nhận (áp dụng các kỹ thuật thống kê để tìm hiểu xem giả định về một tập dữ liệu cụ thể có đúng không)

• Phân tích dữ liệu định lượng (so sánh thống kê)

• Phân tích dữ liệu định tính (tập trung vào dữ liệu phi số như video, hình ảnh và văn bản)

1.2.2 Xây dựng cơ sở hạ tầng hỗ trợ Big Data

Để khai thác Big Data hiệu quả, cần xây dựng cơ sở hạ tầng mạnh mẽ cho việc thu thập và lưu trữ dữ liệu, đảm bảo quyền truy cập và bảo mật thông tin Điều này bao gồm các hệ thống lưu trữ, máy chủ, phần mềm quản lý, tích hợp và phân tích dữ liệu Các trung tâm dữ liệu lớn và dịch vụ điện toán đám mây đóng vai trò quan trọng trong việc đáp ứng những yêu cầu này.

Dữ liệu hiện nay được thu thập từ nhiều nguồn khác nhau, bao gồm ứng dụng web, kênh truyền thông xã hội, ứng dụng di động và lưu trữ email Sự bùng nổ của IoT cũng đóng góp vào việc tạo dựng và chuyển hóa dữ liệu thông qua các cảm biến trong sản phẩm Để lưu trữ lượng dữ liệu khổng lồ này, các giải pháp phổ biến bao gồm kho dữ liệu truyền thống, hồ dữ liệu và lưu trữ đám mây.

Để đảm bảo an ninh cho hệ thống và dữ liệu, việc xây dựng cơ sở hạ tầng bảo mật là rất cần thiết Điều này bao gồm mã hóa dữ liệu, xác thực người dùng, quản lý quyền truy cập, giám sát hệ thống, thiết lập tường lửa và triển khai các sản phẩm bảo vệ khác.

1.2.3 Sử dụng phần mềm và công cụ hỗ trợ Để có thể khai thác hiệu quả Big Data, cần có những công nghệ và công cụ hỗ trợ cần thiết, bao gồm:

Hadoop là nền tảng chính trong các dự án Big Data, cho phép xử lý các tập dữ liệu lớn một cách phân tán qua các cụm máy tính Thư viện phần mềm này được thiết kế với mô hình lập trình đơn giản, có khả năng mở rộng từ một máy chủ lên hàng nghìn máy, mỗi máy chủ cung cấp năng lực tính toán và lưu trữ cục bộ.

Dự án bao gồm một số mô-đun:

• Hadoop Common, các tiện ích phổ biến hỗ trợ các mô-đun Hadoop khác

• Hadoop Distributed File System, cung cấp quyền truy cập thông lượng cao vào dữ liệu ứng dụng

• Hadoop YARN, một nền tảng cho việc lập kế hoạch công việc và quản lý tài nguyên cụm

• Hadoop MapReduce, một hệ thống dựa trên YARN để xử lý song song các tập dữ liệu lớn

Apache Spark là nền tảng mã nguồn mở quan trọng cho việc xử lý Big Data trong Hadoop Với khả năng triển khai linh hoạt, Spark đã trở thành công cụ chủ chốt trong xử lý dữ liệu phân tán Nó hỗ trợ các ngôn ngữ lập trình như Java, Scala và Python, đặc biệt là Python Anaconda, giúp lập trình viên dễ dàng phát triển ứng dụng.

R (R đặc biệt phù hợp với dữ liệu lớn), đồng thời cũng hỗ trợ SQL, dữ liệu luồng, machine learning và xử lý đồ thị

Cơ sở dữ liệu NoSQL cho phép lưu trữ và quản lý dữ liệu một cách linh hoạt, đồng thời xử lý với tốc độ cao Khác với cơ sở dữ liệu SQL, nhiều hệ thống NoSQL có khả năng mở rộng theo chiều ngang trên hàng trăm hoặc hàng nghìn máy chủ.

❖ Cơ sở dữ liệu bộ nhớ trong

Cơ sở dữ liệu bộ nhớ trong (IMDB) là hệ thống quản lý dữ liệu chủ yếu sử dụng bộ nhớ chính để lưu trữ, mang lại tốc độ nhanh hơn so với cơ sở dữ liệu trên đĩa IMDB là lựa chọn quan trọng cho phân tích Big Data và xây dựng kho dữ liệu hiệu quả.

1.2.4 Các trường hợp cần sử dụng Big Data

Big Data có thể được áp dụng cho nhiều trường hợp khác nhau, dưới đây là vài ví dụ:

Phân tích khách hàng là quá trình nghiên cứu dữ liệu để cải thiện trải nghiệm của khách hàng, từ đó nâng cao tỷ lệ mua hàng và gia tăng sự gắn bó của họ với thương hiệu.

• Phân tích hoạt động: Big Data có thể giúp nâng cao năng suất cũng như hiệu suất công việc của tổ chức

Phòng chống gian lận là một nhiệm vụ quan trọng, và việc phân tích dữ liệu có thể giúp các tổ chức phát hiện các hành động đáng ngờ, từ đó giảm thiểu rủi ro hiệu quả.

Các công ty có thể tận dụng Big Data để tối ưu hóa giá cả cho sản phẩm và dịch vụ, từ đó gia tăng doanh thu một cách hiệu quả.

Dữ liệu là yếu tố then chốt trong việc ra quyết định thông qua phân tích từ các phần mềm chuyên dụng Sự sai lệch trong dữ liệu có thể dẫn đến những quyết định và chiến lược sai lầm Mặc dù việc xây dựng cơ sở hạ tầng phần cứng và phần mềm để xử lý lượng dữ liệu lớn có thể phức tạp và tốn kém, nhưng điều này chỉ là một phần nhỏ so với thách thức trong việc thu thập và quản lý dữ liệu một cách đáng tin cậy và hiệu quả.

Sử dụng dữ liệu hiệu quả

Để sử dụng Big Data hiệu quả, bước đầu tiên là xác định rõ nhu cầu sử dụng dữ liệu Việc này không chỉ giúp tìm ra các loại dữ liệu cần thiết để hỗ trợ quyết định mà còn xác định cách thức thao tác với dữ liệu và quy trình phân tích, từ đó tạo ra cái nhìn tổng quát cuối cùng Tiếp theo, cần xác định nguồn dữ liệu phù hợp để đảm bảo chất lượng và tính khả thi của các phân tích.

Mặc dù không thể xác định tất cả các nguồn dữ liệu cần thiết cho nhu cầu của chúng ta, nhưng việc xác định các nguồn dữ liệu chính là rất quan trọng Điều này không chỉ giúp chúng ta nhận diện loại dữ liệu cần thiết mà còn tạo điều kiện thuận lợi cho việc phân lọc dữ liệu sau này Bên cạnh đó, việc tìm kiếm đối tác phân tích dữ liệu chuyên nghiệp cũng là một yếu tố quan trọng trong quá trình này.

Các đối tác doanh nghiệp cần công nghệ cung cấp giải pháp phù hợp với các loại dữ liệu đã xác định, đồng thời hỗ trợ nền tảng tương thích với các công cụ phân tích hiện có Việc đánh giá và bổ sung dữ liệu cần thiết cũng là yếu tố quan trọng trong quá trình này.

Việc đánh giá và bổ sung dữ liệu cần thiết là rất quan trọng để ứng dụng Big Data một cách hiệu quả, vì không thể xác định trước tất cả các tập dữ liệu cần thiết cho quá trình xử lý.

9 e) Xác định các công cụ hỗ trợ phù hợp

Thị trường hiện nay cung cấp nhiều công cụ hỗ trợ phân tích dữ liệu, từ các công cụ thống kê đơn giản đến ứng dụng tiên tiến dựa trên Machine Learning Mỗi công cụ yêu cầu mức độ hiểu biết và độ chi tiết dữ liệu khác nhau; ví dụ, phần mềm Machine Learning có khả năng xử lý dữ liệu phức tạp, trong khi công cụ thống kê cần dữ liệu đã được lọc kỹ càng Việc lựa chọn công cụ phù hợp sẽ giúp giảm tải và tăng tốc quá trình phân tích dữ liệu Hơn nữa, mở rộng việc chuẩn bị dữ liệu để kết hợp dữ liệu mới và cũ cũng là một yếu tố quan trọng.

Hiện tại, nhiều tập dữ liệu ở trong trạng thái luôn chuyển động và có sự kết nối lẫn nhau

Khi phát hiện hoặc sẵn sàng tích hợp dữ liệu mới vào tập dữ liệu hiện có, việc chuẩn bị dữ liệu là cần thiết để đảm bảo tính khả dụng của nó.

Cơ sở dữ liệu phân tán

Khái niệm cơ sở dữ liệu phân tán

Cơ sở dữ liệu phân tán (Distributed Database) là tập hợp dữ liệu có mối quan hệ logic, được phân bố trên nhiều máy tính trong một mạng Hệ quản trị cơ sở dữ liệu phân tán là phần mềm quản lý những cơ sở dữ liệu này, cung cấp các cơ chế truy xuất giúp người dùng không cần quan tâm đến sự phân tán của dữ liệu.

Hệ cơ sở dữ liệu phân tán (Distributed Database System):

Hình 2: Mô hình cơ sở dữ liệu phân tán.

Đánh giá cơ sở dữ liệu phân tán

2.2.1 Ưu điểm và nhược điểm của cơ sở dữ liệu phân tán Ưu điểm của cơ sở dữ liệu phân tán:

• Phù hợp với cấu trúc của tổ chức

• Nâng cao khả năng chia sẻ và tính tự trị địa phương

• Nâng cao tính sẵn sàng

• Nâng cao tính tin cậy

Nhược điểm của cơ sở dữ liệu phân tán

• Thiết kế cơ sở dữ liệu phức tạp hơn

• Khó điều khiển tính nhất quán dữ liệu

• Khó phát hiện và xử lý lỗi

2.2.2 Kiến trúc cơ bản của một cơ sở dữ liệu phân tán

• Lược đồ toàn cục (global schema): Định nghĩa tất cả dữ liệu được chứa trong cơ sở dữ liệu phân tán.

• Đoạn (fragment): Mỗi quan hệ toàn cục có thể được phân chia thành nhiều phần nhỏ không giao nhau.

• Lược đồ phân đoạn (fragmentation schema): Ánh xạ giữa quan hệ toàn cục và các đoạn.

• Lược đồ định vị (allocation schema): Định vị các nút chứa một đoạn.

• Lược đồ ánh xạ cục bộ (local mapping schema): Phụ thuộc và loại Hệ quản trị cơ sở dữ liệu.

2.2.3 Phân loại cơ sở dữ liệu phân tán và so sánh

CSDLPT không thuần nhất Heterogeneous DB

• Tất cả các nút cùng sử dụng một loại hệ quản trị cơ sở dữ liệu

• Các nút có thể thực hiện trên các hệ quản trị cơ sở dữ liệu khác nhau

• Thuận lợi cho việc tăng trưởng và cho phép nâng cao hiệu năng

• Xảy ra khi các nút đã cài đặt cơ sở dữ liệu riêng

• Có được bằng cách chia một cơ sở dữ liệu thành một tập cơ sở dữ liệu cục bộ

• Có được bằng cách tích hợp các cơ sở dữ liệu cục bộ đã có

Thiết kế cơ sở dữ liệu phân tán

Các yếu tố cơ bản:

Cơ sở dữ liệu bao gồm nhiều quan hệ, trong đó các khung nhìn được xem như các tập con của các quan hệ này Tuy nhiên, việc quản lý các quan hệ này đòi hỏi một chi phí truyền thông đáng kể.

Trong quản lý cơ sở dữ liệu, việc thực hiện các giao tác truy xuất trên các phần khác nhau của quan hệ có thể dẫn đến những thách thức về điều khiển ngữ nghĩa dữ liệu, đặc biệt là trong việc duy trì các ràng buộc toàn vẹn Khi các khung nhìn không được định nghĩa trên một mảnh riêng lẻ, yêu cầu xử lý sẽ trở nên phức tạp hơn, đòi hỏi sự chú ý đặc biệt từ các nhà phát triển và quản trị viên.

Phân đoạn dữ liệu là quá trình chia nhỏ cơ sở dữ liệu thành các đoạn (fragments), cho phép tách một đối tượng thành nhiều phần Thông tin về phân đoạn dữ liệu được lưu trữ trong catalog của hệ thống phân tán, và phần mềm xử lý giao tác sẽ truy cập thông tin này để đáp ứng yêu cầu của người dùng Có ba loại phân đoạn chính: phân đoạn ngang, phân đoạn dọc và phân đoạn hỗn hợp Mỗi đoạn được xác định thông qua một biểu thức quan hệ, trong đó các toán hạng là các quan hệ tổng thể và kết quả là các đoạn dữ liệu.

• Phân đoạn ngang: Dùng phép chọn để phân đoạn

• Phân đoạn dọc: Dùng phép chiếu để phân đoạn

• Phân đoạn hỗn hợp: Dùng cả phép chọn và chiếu để phân đoạn

• Phân đoạn ngang suy diễn: Dùng phép nửa nối để phân đoạn.

Tính trong suốt phân tán

Các tính trong suốt phân tán của cơ sở dữ liệu phân tán:

Tính trong suốt phân đoạn (fragmentation transparency) là mức độ cao nhất của tính trong suốt trong cơ sở dữ liệu, cho phép người dùng cuối và lập trình viên không cần biết về sự phân tán của dữ liệu Điều này có nghĩa là họ không cần quan tâm đến tên và vị trí của các đoạn dữ liệu, giúp tối ưu hóa trải nghiệm sử dụng và lập trình.

Tính trong suốt định vị trong cơ sở dữ liệu cho phép người dùng và lập trình viên không cần biết vị trí phân bố của các đoạn dữ liệu, chỉ cần biết tên và cách phân chia của chúng Điều này giúp đơn giản hóa quá trình truy cập và quản lý dữ liệu, nâng cao hiệu quả sử dụng hệ thống.

• Tính trong suốt đối với ánh xạ địa phương (local mapping transparency): người dùng cuối hoặc người lập trình biết tên các đoạn và vị trí của các đoạn

Giới thiệu chung về Oracle và cách cài đặt.

Câu 1: Tạo bảng DEPT Xác nhận bảng được tạo

(id NUMBER(7) CONSTRAINT dept_department_id PRIMARY KEY, name VARCHAR2(25));

Câu 2: Điền vào bảng DEPT với dữ liệu từ bảng Department Chỉ bao gồm các cột cần sử dụng

Câu 3: Tạo bảng EMP Xác nhận bảng được tạo

(id NUMBER(7) CONSTRAINT emp_employee_id PRIMARY KEY, last_name VARCHAR2(25), first_name VARCHAR2(25), dept_id NUMBER(7) CONSTRAINT empdept_fk1 REFERENCES dept (id));

Create the EMPOYEES2 table based on the structure of the EMPLOYEES table, including only the columns EMPLOYEE_ID, FIRST_NAME, LAST_NAME, SALARY, and DEPARTMENT_ID Rename the columns in the new table to ID, FIRST_NAME, LAST_NAME, SALARY, and DEPT_ID.

Nhân viên phòng nhân sự muốn tạo một View tên là EMPLOYEES_VU để ẩn một số dữ liệu trong bảng EMPLOYEES View này sẽ bao gồm các thông tin về số nhân viên, tên nhân viên và số phòng ban, trong đó tên nhân viên sẽ được hiển thị với tiêu đề là EMPLOYEE.

Câu 2: Hiển thị view đã tạo từ câu 1

Câu 3: Sử dụng view EMPLOYEES_VU, viết truy vấn cho bộ phận nhân sự để hiển thị tất cả tên nhân viên và số phòng ban

Để đáp ứng nhu cầu truy cập dữ liệu nhân viên của Department 50, hãy tạo một view có tên DEPT50 View này sẽ bao gồm số nhân viên, họ của nhân viên và số phòng ban cho tất cả nhân viên trong Department 50 Các cột trong view cần được đặt tên là EMPNO, EMPLOYEE và DEPTNO Đặc biệt, để đảm bảo tính bảo mật, không cho phép nhân viên được chỉ định lại cho bộ phận khác thông qua view này.

Để tạo một Sequence cho cột khóa chính của bảng DEPT, bạn cần thiết lập Sequence bắt đầu từ 200, có giá trị tối đa là 1000 và bước nhảy là 10 Hãy đặt tên cho Sequence này một cách phù hợp để dễ nhận diện.

Để kiểm tra Sequence DEPT_ID_SEQ vừa tạo, hãy sử dụng câu lệnh chèn hai hàng vào bảng DEPT với Sequence cho cột ID Thêm hai bộ phận là Giáo dục và Hành chính.

Câu 6: Tạo một Synonyms cho bảng EMPLOYEES, đặt tên là EMP

Câu 1: Bộ phận nhân sự cần một truy vấn để hiển thị tất cả các mã công việc không vị lặp từ bảng EMPLOYEES

Bộ phận nhân sự đã yêu cầu một báo cáo tổng hợp từ tất cả nhân viên, bao gồm last_name và jobs_ID của họ Kết quả sẽ hiển thị last_name và jobs_ID, được phân tách bằng dấu phẩy và dấu cách, và cột sẽ được đặt tên là "Employee and Title".

Các phòng nhân sự cần tìm kiếm nhân viên với mức lương cao và thấp Cụ thể, hiển thị tên họ (last_name) và mức lương (salary) của những nhân viên có thu nhập từ 5.000 đến 12.000 đô la, thuộc bộ phận 20 hoặc 50 Các cột dữ liệu sẽ được dán nhãn tương ứng là Nhân viên và Lương hàng tháng.

Để tạo một báo cáo hiển thị họ, lương và hoa hồng của tất cả nhân viên, cần sắp xếp dữ liệu theo thứ tự giảm dần của lương và hoa hồng.

Câu 5: Hiển thị last name của tất cả nhân viên có chứ cái ‘a’ và ‘e’ trong họ của họ

Hiển thị họ, chức vụ và mức lương của tất cả nhân viên có công việc là SA_REP hoặc ST_CLERK, đồng thời có mức lương không phải là 2.500 đô la, 3.500 đô la hoặc 7.000 đô la.

Viết truy vấn để hiển thị họ (last name) với chữ cái đầu tiên viết hoa và các chữ cái còn lại viết thường, cùng với độ dài của họ cho tất cả nhân viên có tên bắt đầu bằng các chữ cái J, A hoặc.

M Đặt cho mỗi cột một nhãn thích hợp Sắp xếp kết quả theo tên nhân viên

Bộ phận nhân sự cần xác định thời gian làm việc của từng nhân viên bằng cách hiển thị họ (last name) và tính số tháng giữa ngày hiện tại và ngày thuê của nhân viên Kết quả sẽ được dán nhãn cột là MONTHS_WORKED và sắp xếp theo số tháng làm việc, với số tháng được làm tròn đến số nguyên gần nhất.

Hiển thị thông tin của mỗi nhân viên bao gồm tên, họ, ngày thuê và ngày xem xét lương, diễn ra vào thứ Hai đầu tiên sau sáu tháng làm việc Cột này được dán nhãn là REVIEW và định dạng ngày cần hiển thị theo kiểu “Thứ Hai, ngày Ba mươi mốt tháng Bảy, năm 2000”.

Để tạo một truy vấn hiển thị họ và hoa hồng của nhân viên, bạn cần sử dụng câu lệnh SQL phù hợp Nếu một nhân viên không có hoa hồng, hãy hiển thị "No commission" Đặt tên cột là COMM để dễ nhận diện.

Sử dụng hàm DECODE để viết truy vấn hiển thị cấp bậc của tất cả nhân viên dựa trên giá trị của cột JOB_ID.

AD_PRES A ST_MAN B IT_PROG C SA_REP D ST_CLERK E

Để tìm mức lương cao nhất, thấp nhất, tổng và trung bình của tất cả nhân viên, bạn cần dán nhãn các cột tương ứng là Maximum, Minimum, Summary và Average Hãy làm tròn kết quả của bạn đến số nguyên gần nhất.

Câu 7: Sửa đổi truy vấn trong câu 6 để hiển thị mức lương tối thiểu, tối đa, tổng và trung bình cho từng loại công việc

Để xác định số lượng người quản lý mà không cần liệt kê cụ thể, bạn hãy dán nhãn cột "Số lượng người quản lý" và sử dụng cột "Manager_ID" để tính toán số lượng này.

Tạo báo cáo hiển thị số lượng người quản lý và mức lương của nhân viên có mức lương thấp nhất mà họ quản lý, loại trừ những người quản lý không xác định Không bao gồm các nhóm có mức lương tối thiểu 6.000 đô la trở xuống và sắp xếp kết quả theo thứ tự giảm dần của mức lương.

Phòng nhân sự cần tổng hợp báo cáo cho tất cả nhân viên, bao gồm họ, số phòng ban và tên bộ phận Truy vấn cần thiết để hiển thị thông tin này sẽ giúp cung cấp cái nhìn tổng quan về nhân sự trong tổ chức.

Để tạo báo cáo hiển thị họ tên và số nhân viên cùng với người quản lý, hãy dán nhãn các cột là Employee, Emp#, Manager, và Mgr# Báo cáo cần bao gồm tất cả nhân viên, bao gồm cả King, người không có người quản lý Cuối cùng, sắp xếp kết quả theo số nhân viên để dễ dàng theo dõi.

Bộ phận nhân sự cần thu thập thông tin về tên và ngày thuê của tất cả nhân viên trước khi họ được quản lý, bao gồm cả họ tên và ngày thuê của người quản lý.

Hiển thị danh sách nhân viên bao gồm số nhân viên, họ và mức lương của tất cả những người có thu nhập cao hơn mức lương trung bình, đồng thời làm việc trong một bộ phận với bất kỳ nhân viên nào có họ chứa chữ cái 'u'.

Câu 5: Bộ phận nhân sự cần một báo cáo với các thông số sau:

- Họ và tên bộ phận của tất cả các nhân viên trong bảng EMPLOYEES, bất kể dù cho họ không thuộc về một bộ phận nào

Tất cả các phòng ban, bao gồm cả những phòng ban không có nhân viên làm việc, đều được liệt kê với ID phòng ban và tên bộ phận từ bảng DEPARTMENTS.

Tạo báo cáo liệt kê ID nhân viên và job_ID của những nhân viên đã quay lại chức danh công việc ban đầu sau khi thay đổi công việc.

Câu 7: Bộ phận nhân sự cần một danh sách các vùng không có bộ phận nào trong đó Hiển thị

ID của vùng và tên của các vùng Sử dụng bộ toán tử để tạo báo cáo này.

Câu 1: Viết truy vấn để hiển thị thông tin sau cho những nhân viên mà người quản lý của họ có

• Job_ID và tổng tiền lương cho mỗi job_ID cho nhân viên báo thuộc cùng quản lý

• Tổng tiền lương của những người quản lý

• Tổng tiền lương của những người quản lý, không phân biệt job_ID

Để xác định xem các giá trị NULL trong các cột tương ứng với các biểu thức GROUP BY có phải do hàm ROLLUP gây ra hay không, bạn cần viết truy vấn sử dụng hàm GROUPING Quan sát đầu ra từ câu hỏi trước để phân tích và đánh giá các kết quả.

Sau khi sử dụng GROUPING ta nhận thấy các giá trị NULL không phải do ROLLUP gây ra

Câu 3: Viết truy vấn để hiển thị thông tin sau cho những nhân viên mà người quản lý có ID dưới 120:

• Công việc và tổng tiền lương cho mọi công việc cho nhân viên có cùng một người quản lý

• Tổng tiền lương của những người quản lý

• Các giá trị lập bảng chéo để hiển thị tổng tiền lương cho mọi công việc, không phân biệt quản lý

• Tổng tiền lương không phân biệt tất cả các chức danh công việc

Câu 4: Sử dụng GROUPING SET, viết truy vấn để hiển thị các nhóm sau:

• department_id, manager_id, job_id

37 Truy vấn sẽ tính tổng tiền lương cho mỗi nhóm này

Bài tập kết thúc môn

Bài 1

Câu 1: Kiểm tra 1 sinh viên đã đủ điều kiện tốt nghiệp chưa biết rằng các điều kiện để một sinh viên tốt nghiệp là:

1 Tích lũy đủ số tín chỉ

2 Điểm phẩy tốt nghiệp không nhỏ hơn 1.0, biết bảng đổi điểm như sau:

Bài 2

Thủ tục SP_LOC_DU_LIEU cho phép người dùng nhập tên trường và giá trị tương ứng, ví dụ: SP_LOC_DU_LIEU 'dept_name', 'Physics' Kết quả trả về sẽ là dữ liệu phù hợp với tiêu chí đã nhập.

Kết quả lọc theo giá trị trường dữ liệu sẽ bao gồm các thông tin sau: Mã sinh viên, Họ tên sinh viên, Năm học, Kỳ học, Khóa học, Thời gian học, Phòng học, Giảng viên và Khoa viện.

Bài 3

Thủ tục SP_LOC_DU_LIEU cho phép nhập một biến kiểu table với hai trường: tên trường và giá trị của trường Kết quả trả về là dữ liệu đã được lọc theo danh sách giá trị của các trường đó Bảng kết quả sẽ bao gồm các trường: Mã sinh viên, Họ tên sinh viên, Năm học, Kỳ học, Khóa học, Thời gian học, Phòng học, Giảng viên, và Khoa viện.

Bài 4

Câu 4: Sinh viên A muốn học môn ‘Mobile Computing’ hỏi A cần phải học qua những môn gì? Bài làm:

Bài 5

Cài đặt Trigger để kiểm tra số lượng sinh viên đăng ký có vượt quá sức chứa của phòng học hay không Nếu số lượng vượt quá, hệ thống sẽ thông báo không thành công khi sinh viên đăng ký môn học Trong trường hợp có lỗi xảy ra, hệ thống sẽ thực hiện rollback để đảm bảo dữ liệu không bị sai lệch.

Bài 6

Để viết thủ tục cho việc tra cứu kết quả học tập của sinh viên, đầu vào là mã sinh viên Kết quả đầu ra bao gồm mã sinh viên, tên sinh viên, số tín chỉ tích lũy, điểm trung bình học kỳ và điểm trung bình tích lũy theo từng học kỳ.

Bài 7

Để đánh giá kết quả học tập của một sinh viên, thủ tục sẽ nhận đầu vào là mã sinh viên và trả về hai kết quả: xếp hạng trình độ sinh viên và xếp hạng học lực của sinh viên Thủ tục này sẽ phân tích dữ liệu học tập của sinh viên dựa trên điểm số, thành tích và các yếu tố liên quan để đưa ra đánh giá chính xác về năng lực học tập của họ.

Câu 8: Đánh chỉ mục các bảng takes, student, advisor So sánh tốc độ truy vấn sau khi đã thực hiện đánh chỉ mục

Để cho phép sinh viên đăng ký khóa học với lựa chọn phòng và thời gian cụ thể, cần xây dựng một thủ tục đăng ký hiệu quả Thủ tục này phải bao gồm các TRANSACTION nhằm đảm bảo toàn vẹn dữ liệu trong quá trình thực hiện Đồng thời, hệ thống cần cung cấp thông báo lỗi rõ ràng khi có sự cố xảy ra, giúp sinh viên nắm bắt tình hình và thực hiện các bước cần thiết.

Ngày đăng: 14/02/2022, 13:25

HÌNH ẢNH LIÊN QUAN

Hình 1: Các đặc trưng của Big data. - BÁO CÁO MÔN HỌC CƠ SỞ DỮ LIỆU NÂNG CAO
Hình 1 Các đặc trưng của Big data (Trang 5)
Hình 2: Mô hình cơ sở dữ liệu phân tán. - BÁO CÁO MÔN HỌC CƠ SỞ DỮ LIỆU NÂNG CAO
Hình 2 Mô hình cơ sở dữ liệu phân tán (Trang 11)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w