MÔI TRƯỜNG HỆ THỐNG CƠ SỞ DỮ LIỆU

18 0 0
MÔI TRƯỜNG HỆ THỐNG CƠ SỞ DỮ LIỆU

Đ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

Christopher Date (2004) mô tả ba cấp độ kiến trúc của một hệ thống cơ sở dữ liệu (DBS), cụ thể là, cấp độ bên ngoài, cấp độ khái niệm và cấp độ bên trong. Các mức này được minh họa trong Hình 2.1; chúng ta sẽ thảo luận ngắn gọn về từng cái. Cấp độ bên ngoài liên quan đến quan điểm người dùng cá nhân. Do đó, nó thay đổi tùy theo quan điểm người dùng. Cấp độ bên ngoài được xác định bởi lược đồ bên ngoài (external schema)

CHAPTER 2: MÔI TRƯỜNG HỆ THỐNG CƠ SỞ DỮ LIỆU 2.1 Các mức Kiến trúc Christopher Date (2004) mô tả ba cấp độ kiến trúc hệ thống sở liệu (DBS), cụ thể là, cấp độ bên ngoài, cấp độ khái niệm cấp độ bên Các mức minh họa Hình 2.1; thảo luận ngắn gọn 2.1.1 Cấp độ bên Cấp độ bên liên quan đến quan điểm người dùng cá nhân Do đó, thay đổi tùy theo quan điểm người dùng Cấp độ bên xác định lược đồ bên (external schema) Thông thường, sở liệu truy cập thơng qua lược đồ bên ngồi Người lập trình ứng dụng sử dụng ngơn ngữ máy chủ (host language ) ngôn ngữ liệu cấp (data sublanguage ) (DSL) để tạo giao diện người dùng mà người dùng cuối sử dụng để truy cập hệ thống: - DSL ngôn ngữ liên quan cụ thể đến đối tượng hoạt động sở liệu Để minh họa, SQL (ngôn ngữ truy vấn có cấu trúc) DSL tiêu chuẩn ngành Một ví dụ khác DSL ngơn ngữ quản lý truy vấn kiến thức (Knowledge query and management language) (KQML) Một ví dụ cũ khơng cịn phổ biến QUEL (viết tắt “Query Language”) Các ngôn ngữ (SQL QUEL) thảo luận thêm phần sau khóa học - Ngơn ngữ máy chủ ngơn ngữ hỗ trợ DSL ngồi phương tiện phi sở liệu khác chẳng hạn thao tác với biến, tính tốn logic Boolean Ngơn ngữ máy chủ thường ngôn ngữ cấp cao (high-level languages )(HLL); ví dụ bao gồm C++, Java, C#, Python, PHP PL/SQL - Thông thường, DSL bao gồm ngôn ngữ định nghĩa liệu (data definition language)(DDL), ngôn ngữ thao tác liệu (data manipulation language) (DML) ngơn ngữ kiểm sốt liệu (data control language ) (DCL) Các ngôn ngữ này cho phép người dùng (cả người dùng kỹ thuật người dùng cuối) sử dụng DSL để xác định dạng xem logic khác liệu sở liệu Tóm lại, lược đồ bên ngồi giải thích người dùng sở liệu hỗ trợ DSL 2.1.2 Cấp độ khái niệm Mức khái niệm biểu diễn trừu tượng toàn nội dung thơng tin sở liệu Nó định nghĩa lược đồ khái niệm (conceptual schema )(còn gọi lược đồ logic), bao gồm định nghĩa đối tượng bền vững (persistent objects) khác tạo nên sở liệu Đối tượng bền vững nghĩa đối tượng lưu trữ vĩnh viễn sở liệu bị xóa hoàn toàn Lược đồ khái niệm bao gồm việc xác định cấu trúc sở liệu, ràng buộc bảo mật, ràng buộc hoạt động, kiểm tra tính tồn vẹn Nó thể tranh gần cách liệu thực lưu trữ quản lý cấp độ mà hầu hết người dùng kỹ thuật liên quan đến Lược đồ khái niệm phải tuân thủ yêu cầu độc lập liệu Ngồi ra, phải tồn diện đại diện cho việc thực tồn thiết kế sở liệu 2.1.3 Cấp độ bên Còn gọi dạng xem lưu trữ (storage view ), mức bên là mức sở liệu Nó mức mức vật lý, xử lý trang, cylinders theo dõi thiết bị lưu trữ Cấp độ bên xác định lược đồ bên (internal schema ), giải vấn đề loại ghi, mục, biểu diễn trường, trình tự lưu trữ vật lý ghi truy cập liệu viết DDL bên Cuối cùng, lớp vật lý có tác động đáng kể đến hiệu suất kho liệu 2.2 Ánh xạ liên cấp Hình 2.1 minh họa lược đồ khác mối quan hệ qua lại mức kiến trúc DBMS Từ hình vẽ, người ta nhận thấy có hai mức ánh xạ - ánh xạ khái niệm bên ánh xạ khái niệm bên trong: ◾ Ánh xạ khái niệm-bên xác định cách biểu diễn ghi khái niệm cấp độ bên Nếu thay đổi thực cấp độ bên trong, ánh xạ phải cập nhật Thông thường, người quản trị sở liệu (DBA) trì ánh xạ để bảo tồn độc lập liệu Trong hệ thống đại, DBMS tự động cập nhật trì ánh xạ ◾ Ánh xạ khái niệm bên ngồi xác định cách khung nhìn bên liên kết với khái niệm mức độ Trên thực tế, điều đạt nhờ chương trình ứng dụng chế độ xem logic thơng qua ngôn ngữ máy chủ DSL Cần nhớ cấp độ khái niệm trừu tượng tạo điều kiện thuận lợi cho hiểu biết môi trường DBS Là người dùng cuối, bạn không quan sát rõ ràng cấp độ kiến trúc Tuy nhiên, với tư cách kỹ sư phần mềm, thành viên nhóm kỹ sư phần mềm xây dựng trì DBMS kiến thức khái niệm trừu tượng trở nên quan trọng 2.3 Hệ quản trị sở liệu Hệ thống quản lý sở liệu (DBMS) phần mềm hỗ trợ việc tạo quản lý sở liệu Khi người dùng đưa yêu cầu thông qua số DSL (thường SQL), DBMS diễn giải yêu cầu vậy, thực hướng dẫn thích hợp đáp ứng yêu cầu Tùy thuộc vào chất yêu cầu ban đầu, phản hồi chuyển tiếp (bởi DBMS) trực tiếp tới người dùng cuối gián tiếp tới người dùng cuối thông qua chương trình ứng dụng thực thi Các chức hệ thống phần mềm quan trọng bao gồm: ◾ Định nghĩa liệu (quan hệ, phụ thuộc, ràng buộc toàn vẹn, dạng xem, v.v.) ◾ Thao tác liệu (thêm, cập nhật, xóa, truy xuất, xếp lại tổng hợp liệu) ◾ Kiểm tra tính toàn vẹn bảo mật liệu ◾ Quản lý truy cập liệu (bao gồm tối ưu hóa truy vấn), lưu trữ đồng thời ◾ Bảo trì danh mục hệ thống mà người dùng truy cập (từ điển liệu) ◾ Hỗ trợ chức phi sở liệu khác (ví dụ: tiện ích chép) ◾ Hỗ trợ ngôn ngữ lập trình ◾ Quản lý giao dịch (tất thay đổi thực khơng có thay đổi thực hiện) ◾ Dịch vụ lưu phục hồi ◾ Hỗ trợ giao tiếp (cho phép DBMS tích hợp với phần mềm giao tiếp ) ◾ Hỗ trợ khả tương tác bao gồm kết nối sở liệu mở (ODBC), sở liệu Java kết nối (JDBC) vấn đề liên quan khác Hiệu hiệu suất tối ưu đặc điểm bật DBMS tốt Để minh họa tầm quan trọng vai trò DBMS, xem xét bước liên quan chương trình ứng dụng truy cập sở liệu: ◾ Chương trình-A đưa yêu cầu tới DBMS (được thể dạng ngôn ngữ lược đồ con) ◾ DBMS xem xét lược đồ Program-A, lược đồ mô tả vật lý (thông tin lưu trữ bảng) ◾ DBMS xác định cách tối ưu để truy cập liệu, xác định tệp phải được truy cập, ghi tệp cần thiết phương pháp tốt để truy cập lệnh DBMS (các lệnh đọc ghi) vào hệ điều hành ◾ Hệ điều hành truyền liệu ổ đĩa nhớ ◾ Các kiện DBMS chuyển sang trường bắt buộc ◾ DBMS trả lại quyền kiểm sốt cho Chương trình-A (có thể với mã hồn thành) Hình 2.2 cung cấp biểu đồ minh họa, nhớ bước thực tự động theo cách minh bạch người dùng 2.5 Các thành phần DBMS Suite DBMS thực tập hợp phức tạp thành phần phần mềm làm việc cho tập hợp mục tiêu chung Với mục đích minh họa, chúng tơi trình bày thành phần thiết yếu DBMS sau: ◾ Công cụ DBMS ◾ Phân hệ định nghĩa liệu ◾ Phân hệ giao diện người dùng ◾ Phân hệ phát triển ứng dụng ◾ Phân hệ quản trị liệu ◾ Phân hệ từ điển liệu ◾ Trình quản lý truyền thơng liệu ◾ Phân hệ tiện ích Các thành phần chức (được minh họa Hình 2.3) khơng thiết phải xác định rõ ràng, chúng tồn để đảm bảo hiệu suất chấp nhận DBMS Các thành phần chức làm rõ phần 2.5.1 Công cụ DBMS Công cụ DBMS liên kết tất phân hệ khác thiết bị vật lý (máy tính) thơng qua hệ điều hành Một số chức quan trọng sau: ◾ Cung cấp quyền truy cập trực tiếp vào tiện ích chương trình hệ điều hành (ví dụ: đầu vào/đầu yêu cầu, yêu cầu nén liệu, yêu cầu liên lạc, v.v.) ◾ Quản lý truy cập tập tin (và quản lý liệu) thông qua hệ điều hành ◾ Quản lý truyền liệu nhớ (các) đệm hệ thống để thực yêu cầu người dùng ◾ Bảo trì liệu chung siêu liệu lưu trữ từ điển liệu (danh mục hệ thống) 2.5.2 Phân hệ định nghĩa liệu Phân hệ định nghĩa liệu (DDS tương đương) bao gồm công cụ tiện ích để xác định thay đổi cấu trúc sở liệu Cấu trúc bao gồm bảng quan hệ, mối quan hệ, ràng buộc, hồ sơ người dùng, cấu trúc liệu cao, v.v DDL (ngôn ngữ định nghĩa liệu) sử dụng để xác định tất đối tượng sở liệu tạo nên lược đồ khái niệm (quan hệ, quan hệ, ràng buộc, v.v.) DML (ngôn ngữ thao tác liệu) sử dụng để hỗ trợ thao tác thường bao gồm ngôn ngữ truy vấn để chèn, xóa, cập nhật, tìm liệu sở liệu DCL (ngôn ngữ điều khiển liệu) sử dụng để thiết lập điều khiển môi trường để quản lý liệu người dùng cuối Như đề cập trước đó, DDL, DML DCL tạo nên DSL 2.5.3 Phân hệ giao diện người dùng Phân hệ giao diện người dùng (user interface subsystem )(UIS tương đương) cho phép người dùng chương trình truy cập sở liệu thơng qua ngơn ngữ truy vấn tương tác SQL và/hoặc ngôn ngữ máy chủ Ví dụ, giả sử tệp có tên Sinh viên có trường {ID#, SName, FName, Status, DOB, } cho ghi Hai truy vấn SQL có tệp hiển thị Ví dụ đây: // Tạo danh sách sinh viên bắt đầu với tên Bell tiếp tục hết tập tin SELECT ID#, SNAME, FNAME FROM STUDENT WHERE SNAME >= ‘BELL’; // Tạo danh sách sinh viên bắt đầu với ngày sinh 19960101 tiếp tục hết tập tin SELECT ID#, SNAME, DOB FROM STUDENT WHERE DoB >= 19660101; Giao diện truyền thống dựa lệnh; nhiên, xu hướng cung cấp giao diện người dùng đồ họa (GUI) Các DBMS tinh vi sử dụng giao diện ngôn ngữ tự nhiên Giao diện người dùng bao gồm phần mở rộng ngơn ngữ lập trình dành riêng cho DBMS (ví dụ: PL/SQL Oracle) Các phần mở rộng ngôn ngữ liên quan đến DBMS mà chúng sử dụng Ngoài ra, DBMS hỗ trợ nhiều ngơn ngữ cấp cao C++ Java, làm cho linh hoạt thị trường 2.5.5 Phân hệ quản trị liệu Phân hệ quản trị liệu (DAS) bao gồm tập hợp tiện ích hỗ trợ việc quản lý hiệu sở liệu Bao gồm phân hệ phương tiện lưu phục hồi, điều chỉnh sở liệu quản lý lưu trữ Nó thường sử dụng DBA kỹ sư phần mềm 2.5.6 Phân hệ từ điển liệu Từ điển liệu (data dictionary) (DD) thuật ngữ truyền thống để danh mục hệ thống (system catalog) (thường hay sử dụng hơn) nhiều hệ thống Danh mục hệ thống chứa thông tin cấu trúc sở liệu, mối quan hệ đối tượng sở liệu, đặc quyền hệ thống đối tượng, người dùng, ràng buộc toàn vẹn, v.v tự động tạo trì DBMS Danh mục hệ thống chứa tất siêu liệu cho sở liệu Nó truy vấn cách sử dụng câu lệnh dùng để thao tác với liệu nguồn; đó, có giá trị vơ giá DBA kỹ sư phần mềm 2.5.7 Trình quản lý truyền thông liệu Thông thường, hệ thống riêng biệt liên kết với DBMS, trình quản lý truyền thông liệu (DCM) thực chức như: - Xử lý giao tiếp với người dùng từ xa môi trường phân bổ - Xử lý thông báo đến từ DBMS - Giao tiếp với DBMS khác Các hệ thống đại có xu hướng có hệ thống phần khơng thể thiếu DBMS Nói ngắn gọn, trình quản lý truyền thơng liệu đảm bảo sở liệu giao tiếp hiệu với tất yêu cầu khách hàng môi trường dựa máy khách-máy chủ Thông thường, phần dựa máy chủ DBMS chạy máy định làm máy chủ mạng Tất nút khác sau coi nút máy khách yêu cầu dịch vụ sở liệu từ máy chủ Có thể có số máy chủ sở liệu mạng; đồng thời, nút đóng vai trị vừa máy chủ vừa máy khách (miễn thành phần phần mềm thiết yếu đưa ra) 2.5.8 Phân hệ tiện ích Tiện ích chương trình thực nhiệm vụ quản trị khác Phân hệ tiện ích bao gồm chương trình tiện ích khác áp dụng cho mơi trường sở liệu Ví dụ tiện ích sau: - Tải quy trình để tạo phiên ban đầu sở liệu từ tệp sở liệu - Sao chép phương pháp chép thông tin - Các phương pháp xếp lại để xếp lại liệu sở liệu - Các phương pháp xóa tệp - Các phương pháp thống kê để tính tốn lưu trữ số liệu thống kê - Tiện ích lưu phục hồi - Các công cụ để nhập liệu có định dạng khác vào sở liệu xuất liệu từ sở liệu sang định dạng khác - Các tiện ích khác (có thể được) phát triển lập trình viên ứng dụng 2.6 Quan điểm Front-end Back-end Perspectives DBS coi cấu trúc gồm hai phần đơn giản – front-end (giao diện người dùng) back-end Front-end bao gồm người dùng cuối, ứng dụng giao diện lập trình; phần back-end bao gồm DBMS thực tế sở liệu; liên quan đến việc tạo quản lý sở liệu thực tế, hoạt động bên hệ thống, xử lý yêu cầu, quản lý nhớ quản lý đầu vào/đầu (I/O) Hệ thống front-end nằm máy khác với hệ thống back-end, hai kết nối mạng truyền thơng Thơng thường, IDE (mơi trường phát triển tích hợp) hồn thành vai trị hệ thống front-end Các ví dụ phổ biến bao gồm: Delphi (hỗ trợ ngôn ngữ Object Pascal C++); NetBeans (hỗ trợ Java, C++, JavaScript, PHP, XML, HTML, v.v.); Visual Studio (hỗ trợ C#, C++, JavaScript, v.v.); Qt (hỗ trợ C++, C#, Java, Python, Ruby, v.v.) Hệ thống back-end DBMS hàng đầu thị trường — Oracle, DB2, MySQL, SQL Server PostGreSQL Hình 2.4 minh họa khái niệm frontend back-end Figure 2.4 Khái niệm Front-end back-end 2.7 Cấu trúc hệ thống sở liệu Có thể có thêm lợi ích sử dụng máy khác cho hệ thống backend front-end Hình 2.5–2.7 hiển thị ba cấu hình Cũng xin lưu ý cấu trúc liên kết mạng khác áp dụng cho mạng máy tính Trong số ba cấu hình, có lẽ cấu hình sử dụng phổ biến cấu hình yêu cầu back-end nhiều front-end (Hình 2.6) Đó cung cấp linh hoạt phức tạp cấu hình đơn giản Hình 2.5, đồng thời chi phí chi phí chung so với cấu hình phức tạp Hình 2.7 Cơ sở liệu nằm máy chủ sở liệu (máy source) truy cập từ nhiều máy khách 2.8 Phân loại hệ thống quản lý sở liệu Hệ sở liệu phân lớp dựa mơ hình liệu mà hỗ trợ, số lượng người dùng, cấu hình site dựa mục đích sử dụng 2.8.1 Phân loại dựa mơ hình liệu (Data Models) Việc phân loại dựa mơ hình liệu áp dụng số cách tiếp cận truyền thống số cách tiếp cận mang tính chất đại Các phương pháp tiếp cận truyền thống thường coi lỗi thời, cách tiếp cận đại đại diện cho cách tiếp cận tăng trưởng phát triển tích cực thị trường phần mềm Các cách tiếp cận truyền thống mơ hình phân cấp, mơ hình mạng mơ hình danh sách đảo ngược; điều đề cập Chương Mơ hình phân cấp IBM phát triển vào năm 1960 tiêu biểu sản phẩm có tên RAMIS Mơ hình mạng phát triển vào năm 1960, lấy cảm hứng từ dự án khởi xướng General Electric Một sản phẩm bật sáng kiến hệ thống CODASYL Mơ hình danh sách ngược quy định việc xây dựng quản lý mục ánh xạ liệu tới vị trí lưu trữ chúng tệp sở liệu Cách tiếp cận có tác động đáng kể đến cấu hình đại DBMS Hai cách tiếp cận đại chiếm ưu mơ hình quan hệ mơ hình hướng đối tượng, mơ hình quan hệ chiếm phần lớn thị phần Nổi bật mơ hình quan hệ (RDBMS) bao gồm Oracle, DB2, MySQL, SQL Server, Informix, PostGreSQL Sybase (gần tích hợp vào SAP) Cơ sở liệu đối tượng xuất riêng rẻ; chúng thường đóng gói với RDBMS bán thị trường dạng DBMS tổng quát Các sản phẩm hàng đầu Oracle, DB2 Informix thuộc loại Ngồi mơ hình quan hệ mơ hình hướng đối tượng, cách tiếp cận khác chẳng hạn khung Hadoop, mô hình thực thể–thuộc tính–giá trị (EAV) NoSQL ngày ý nhiều 2.8.2 Phân loại dựa số người dùng Các công ty kỹ thuật phần mềm tiếp thị DBMS thường cung cấp phiên người dùng nhất/có giới hạn cho mục đích đánh giá cơng việc có giới hạn Ví dụ, Oracle IBM tiếp thị phiên Express Edition sản phẩm DBMS tương ứng họ Ngược lại với phiên dành cho người dùng giới hạn, công ty công nghệ phần mềm thường tiếp thị DBMS hoàn chỉnh họ (cho phép nhiều người dùng) dạng Phiên doanh nghiệp Ngồi ra, có lựa chọn thay khác hai thái cực 2.8.3 Phân loại dựa cấu hình trang web Một cơng ty cơng nghệ phần mềm tiếp thị DBMS dạng DBS tập trung DBS phân tán Trong hệ thống tập trung, phần mềm DBMS sở liệu nằm máy tất nút khác mạng kết nối với Do gia tăng băng thông viễn thông, sở liệu tập trung trở nên phổ biến đủ cho nhiều môi trường DBS vừa nhỏ Trong DBS phân tán, phần mềm DBMS sở liệu phân phối nhiều máy chủ sở liệu vị trí khác mạng máy tính (xem lại phần trước) Mạng lưới mạng cục (LAN), mạng đô thị (MAN) mạng diện rộng (WAN) Điều cho phép hệ thống linh hoạt có khả chịu lỗi cao áp dụng cho tổ chức lớn, phức tạp với nhiều chi nhánh xuyên bang và/hoặc biên giới quốc gia Nếu vị trí tham gia chạy DBMS, hệ thống cho đồng nhất; khơng khơng đồng Một xu hướng diễn thị trường công ty công nghệ phần mềm cung cấp triển khai DBMS tảng đám mây - phương tiện để định cấu hình lưu trữ sở liệu không gian lưu trữ World Wide Web (WWW) cách liền mạch tẻ nhạt hơn trước Giải pháp thay mang lại lợi ích cải tiến bổ sung chi phí thấp lưu nước ngồi, tính linh hoạt độ tin cậy Thật vậy, phiên gần Oracle DBMS — Oracle 12C — đặt tên để nhấn mạnh chữ “C” cho đám mây Các đối thủ cạnh tranh khác theo đuổi chiến lược thay nhằm kết hợp công nghệ đám mây vào sản phẩm DBMS họ 2.8.4 Phân loại dựa mục đích sở liệu Việc phân loại sở liệu cuối mà thảo luận liên quan đến mục đích sở liệu Cơ sở liệu mơ tả có mục đích chung lưu trữ nhiều dạng liệu khác xác định tệp liệu cấu thành Ngồi ra, sở liệu phân loại theo mục đích cụ thể cấu hình để lưu trữ liệu loại cụ thể Ví dụ: sở liệu sử dụng thiết kế có trợ giúp máy tính (computer-aided design -CAD) và/hoặc sản xuất có hỗ trợ máy tính (computer-aided manufacturing -CAM) cho sở liệu có mục đích cụ thể Một sở liệu phân loại dựa chất q trình xử lý mà cấu hình Từ góc độ này, hai loại sở liệu xử lý giao dịch trực tuyến (online transaction processing -OLTP) kho liệu - Cơ sở liệu OLTP (còn gọi sở liệu vận hành) sở liệu tạo điều kiện cho lượng lớn khối lượng giao dịch đồng thời Cơ sở liệu sử dụng rộng rãi hoạt động kinh doanh nói chung (ví dụ: ngân hàng, sản xuất, bảo hiểm tiếp thị) - Kho liệu sở liệu đọc (trừ cập nhật) được cấu hình để lưu trữ thơng tin tóm tắt rút từ sở liệu vận hành khác Kho liệu gọi sở liệu xử lý phân tích trực tuyến (online analytic processing -OLAP) Chúng cập nhật quy trình đặc biệt gọi quy trình trích xuất-chuyển đổi-tải (extract–transform–load -ETL)

Ngày đăng: 06/09/2023, 09:10

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan