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

Tìm hiểu cơ sở dữ liệu enterprisedb

38 6 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

Định dạng
Số trang 38
Dung lượng 5 MB

Cấu trúc

  • I. Đặc điểm của EnterpriseDB (4)
    • 1. Các đặc trưng cơ bản (4)
      • 1.1. PostgreSQL (4)
      • 1.2. Bảo mật (8)
      • 1.3. Công cụ hỗ trợ (8)
      • 1.4. Hiệu năng (9)
    • 2. Cài đặt, minh họa sử dụng (9)
      • 2.1. Cài đặt EnterpriseDB (9)
      • 2.2. Minh họa sử dụng bằng pgAdmin (16)
    • 3. So sánh đánh giá với 3 HQT CSDL khác tiêu biểu cùng dòng (34)
  • II. Phân tích thiết kế hệ thống (35)
    • 1. Tổng quan hệ thống (35)
    • 2. Các công nghệ dự kiến sử dụng (36)
    • 3. Các chức năng dự kiến (36)
    • 4. Lược đồ CSDL (37)
    • 5. Mô tả các module chính (sơ đồ khối, định dạng dữ liệu vào, ra, giải pháp dự kiến) (37)

Nội dung

Tìm hiểu cơ sở dữ liệu enterprisedb Tìm hiểu cơ sở dữ liệu enterprisedb Tìm hiểu cơ sở dữ liệu enterprisedb Tìm hiểu cơ sở dữ liệu enterprisedb Tìm hiểu cơ sở dữ liệu enterprisedb Tìm hiểu cơ sở dữ liệu enterprisedb Tìm hiểu cơ sở dữ liệu enterprisedb

Đặc điểm của EnterpriseDB

Các đặc trưng cơ bản

 Dựa trên hệ quản trị mã nguồn mở PostgreSQL.

 Tăng hiệu suất, bảo mật và khả năng tương thích cơ sở dữ liệu đối với Oracle.

 Bao gồm các tính năng bổ sung dành cho phát triển và quản trị hệ cơ sở dữ liệu.

 Hỗ trợ bộ công cụ quản lý tích hợp và phân tán có thể triển khai trên nhiều nền tảng truyền thống cũng như trên nền tảng đám mây.

PostgreSQL là một hệ thống cơ sở dữ liệu quan hệ đối tượng mã nguồn mở mạnh mẽ, hỗ trợ lưu trữ và chia tỷ lệ các khối lượng công việc dữ liệu phức tạp một cách an toàn Ra đời từ năm 1986 tại Đại học California, Berkeley, PostgreSQL đã trải qua hơn 30 năm phát triển và xây dựng được danh tiếng vững chắc nhờ vào kiến trúc đáng tin cậy, tính toàn vẹn dữ liệu và khả năng mở rộng Hệ thống này chạy trên tất cả các hệ điều hành chính, tuân thủ tiêu chuẩn ACID và cung cấp các tiện ích bổ sung mạnh mẽ như PostGIS cho cơ sở dữ liệu không gian địa lý.

4 khi PostgreSQL đã trở thành cơ sở dữ liệu quan hệ nguồn mở được nhiều người và tổ chức lựa chọn.

PostgreSQL cung cấp nhiều tính năng hữu ích cho các nhà phát triển, giúp họ xây dựng ứng dụng và quản lý cơ sở dữ liệu một cách hiệu quả Với khả năng bảo vệ tính toàn vẹn của dữ liệu và xây dựng môi trường chịu lỗi, PostgreSQL hỗ trợ người dùng quản lý dữ liệu một cách dễ dàng, bất kể kích thước của tập dữ liệu.

PostgreSQL không chỉ miễn phí và mã nguồn mở mà còn nổi bật với khả năng mở rộng cao Người dùng có thể dễ dàng xác định kiểu dữ liệu riêng, xây dựng các chức năng tùy chỉnh, và viết mã từ nhiều ngôn ngữ lập trình khác nhau mà không cần phải biên dịch lại cơ sở dữ liệu.

PostgreSQL nỗ lực tuân thủ tiêu chuẩn SQL mà không làm ảnh hưởng đến các tính năng truyền thống hoặc dẫn đến quyết định kiến trúc không hợp lý Nhiều tính năng theo tiêu chuẩn SQL được hỗ trợ, mặc dù có thể có sự khác biệt về cú pháp hoặc chức năng.

Dưới đây là danh sách các tính năng được hỗ trợ trong PostgreSQL:

 Kiểu dữ liệu: o Nguyên thủy: Số nguyên, số thực, chuỗi, boolean,

Cấu trúc dữ liệu bao gồm các thành phần như ngày/giờ, mảng, phạm vi và UUID Tài liệu có thể được lưu trữ dưới các định dạng như JSON, JSONB, XML và key-value Các hình học cơ bản bao gồm điểm, đường thẳng, hình tròn và đa giác Ngoài ra, người dùng có thể tùy chỉnh kiểu dữ liệu bằng câu lệnh “CREATE TYPE”.

PostgreSQL đảm bảo toàn vẹn dữ liệu thông qua các ràng buộc như khóa chính, khóa ngoại, ràng buộc duy nhất và ràng buộc not null, chỉ cho phép lưu trữ dữ liệu hợp lệ Hệ thống này hỗ trợ đầy đủ các thuộc tính ACID và sử dụng kiểm soát phiên bản đồng thời (MVCC) để phân tách giao dịch hiệu quả, giúp tránh tình trạng các luồng dữ liệu chặn nhau Điều này có nghĩa là các giao dịch đọc không bao giờ chặn các giao dịch ghi và ngược lại.

PostgreSQL hỗ trợ đa luồng và hiệu suất cao thông qua việc cấu hình các tham số GUC (Grand Unified Configuration Settings) để tối ưu hóa hiệu suất Hệ quản trị cơ sở dữ liệu này tận dụng kiến trúc bộ xử lý đa lõi hiện đại, cho phép thực hiện truy vấn song song, giúp hiệu suất tăng trưởng gần như tuyến tính khi số lượng lõi tăng lên Kể từ phiên bản 9.6, PostgreSQL đã hỗ trợ xử lý đồng thời dữ liệu, nâng cao khả năng xử lý và hiệu quả làm việc.

Phiên bản 10 cho phép đọc song song, bao gồm quét chỉ mục, nối và tổng hợp dữ liệu Trong khi đó, phiên bản 11 hỗ trợ hoàn toàn cho nối băm song song Đặc biệt, phiên bản 12 mang đến khả năng song song hóa truy vấn ở mức cách ly có thể tuần tự hóa, cùng với việc biên dịch JIT các truy vấn, giúp tăng tốc độ hoạt động bằng cách tối ưu hóa tài nguyên phần cứng và nhiều cải tiến khác.

Độ tin cậy và khả năng khôi phục sau lỗi được nâng cao nhờ vào hệ thống kiểm soát phiên bản đồng thời, cho phép lưu trữ và quản lý các phiên bản dữ liệu hiệu quả Hệ thống cung cấp nhiều phương thức sao chép, bao gồm đồng bộ, không đồng bộ và logic, giúp người dùng linh hoạt trong việc bảo vệ dữ liệu Ngoài ra, việc lưu trữ nhật ký thay đổi giúp kiểm soát các phiên bản một cách dễ dàng hơn Quản lý dữ liệu lưu trữ thông qua tablespace cũng đảm bảo việc truy xuất dữ liệu diễn ra nhanh chóng và thuận tiện.

PostgreSQL cung cấp kết nối SSL an toàn và nhiều phương pháp xác thực, bao gồm xác thực mật khẩu (SCRAM), chứng chỉ ứng dụng khách, và các dịch vụ xác thực như LDAP, RADIUS, PAM, và Kerberos Để quản lý người dùng và kiểm soát truy cập cơ sở dữ liệu, PostgreSQL cho phép tạo và quản lý người dùng mới cùng với vai trò nhóm, kiểm soát truy cập dựa trên vai trò và nhóm đối với các đối tượng cơ sở dữ liệu, cũng như bảo mật cấp hàng và cấp cột, đồng thời hỗ trợ SELinux thông qua chức năng SE.

PostgreSQL cung cấp nhiều loại chỉ mục khác nhau, bao gồm B-tree truyền thống và các phương pháp truy cập khác như chỉ mục băm, chỉ mục GiST, SP-GiST, GIN, RUM, BRIN và Bloom Chỉ mục băm dựa vào hàm băm, chỉ cho phép kiểm tra bình đẳng nhưng có thể hiệu quả hơn trong một số trường hợp GiST là một cây tìm kiếm cân bằng tổng quát, phù hợp cho dữ liệu không thể sắp xếp, trong khi SP-GiST chia phạm vi tìm kiếm thành các phân vùng lồng nhau không giao nhau GIN là chỉ số đảo ngược tổng quát, thường được sử dụng trong tìm kiếm toàn văn bản, trong khi RUM là phiên bản cải tiến của GIN giúp tăng tốc độ tìm kiếm cụm từ BRIN cung cấp sự cân bằng giữa kích thước chỉ mục và hiệu quả tìm kiếm, rất hữu ích cho các bảng lớn Cuối cùng, chỉ mục Bloom dựa trên bộ lọc Bloom, cho phép lọc nhanh các bộ giá trị nhưng cần kiểm tra lại các bộ còn lại.

Một trong những lợi thế chính của kiến trúc

PostgreSQL nổi bật với khả năng mở rộng linh hoạt, cho phép người dùng thêm nhiều tính năng mà không cần thay đổi mã hệ thống cốt lõi Người dùng có thể định nghĩa kiểu dữ liệu mới, tạo ra các chức năng và toán tử hỗ trợ cho kiểu dữ liệu đó, cũng như phát triển các phương pháp truy cập bảng và chỉ mục Hơn nữa, PostgreSQL hỗ trợ nhiều ngôn ngữ lập trình máy chủ như PL/PGSQL, Perl và Python, cùng với khả năng kết nối với cơ sở dữ liệu bên ngoài thông qua giao diện SQL/MED tiêu chuẩn.

( Nguồn tham khảo: https://www.postgresql.org/about https://edu.postgrespro.ru/introbook_v6_en.pdf )

EDB không hoàn toàn phụ thuộc vào nhà phát triển hoặc các tầng ứng dụng khách để thực hiện chính sách bảo mật, nhằm đảm bảo tuân thủ các tiêu chuẩn như GDPR, PCI và HIPAA.

Chính sách bảo mật của EDB được đảm bảo thông qua:

 Chính sách quản lý tài khoản, mật khẩu người dùng.

 Kiểm tra thẻ phiên sử dụng.

 Bảo vệ tấn công trực tiếp từ truy vấn SQL.

 Bảo vệ mã ở phía máy chủ.

Hệ thống công cụ EDB Postgres Enterprise Manager (PEM) hỗ trợ doanh nghiệp trong việc thích ứng với môi trường kinh doanh PEM cung cấp nhiều tính năng quản lý bổ sung, giúp bạn quản lý, phân tích, tối ưu hóa và triển khai các chức năng của Postgres một cách hiệu quả.

PEM giám sát và quản lý các máy chủ, thu thập thông tin để phân tích Qua đó, PEM tạo ra các trang tổng quan cung cấp thông tin hữu ích và thống kê chi tiết về máy chủ cũng như cơ sở dữ liệu.

 Trình quản lý nhật ký của PEM giúp bạn ghi lại nhật ký, và giúp bạn phân tích nội dung tệp nhật ký một cách khéo léo.

 Chuyên gia Postgres phân tích cấu hình máy chủ và đề xuất các thay đổi cải thiện hiệu suất, bảo mật hoặc độ tin cậy.

Cài đặt, minh họa sử dụng

 Click https://www.enterprisedb.com/software-downloads-postgres để tới home download của EDB.

Chọn vào phần download Databases: EDB Postgres Advanced Server Tại đây sẽ hiện ra các version và hệ điều hành tương thích với từng máy.

To install the downloaded file edb-as12-server-12.4.5-1-windows-x64.exe, click on it Please note that administrator access is required for the system The installation process will begin, and you should click the Next button to proceed.

Đọc các yêu cầu của hệ thống, và click accept -> Next

Chọn thư mục nơi mà EDB Postgres Advanced Server sẽ được cài đặt -> Next

Chọn những component hỗ trợ mà bạn muốn sử dụng Bỏ chọn nếu bạn không muốn cài đặt nó Sau khi chọn xong click button Next để tiếp tục.

Chọn thư mục nơi sẽ lưu trữ data directory và write-ahead long(WAL) directory Click button Next.

Chọn cấu hình mong muốn EDB có thể được cấu hình bởi một trong 2 ‘Dialects’ là Oracle và Postgres Click phím Next để tiếp tục

Cài đặt password Click button Next.

Sau đó cài đặt port number và locale.

Chọn loại máy chủ để xác định lượng tài nguyên hệ thống có thể được sử dụng Click phím Next để tiếp tục.

Chọn loại công việc mà server được sử dụng Sau đó click phím Next.

Hệ thống sẽ hiển thị các thiết lập mà người dùng đã chọn, cho thấy rằng chúng đã sẵn sàng để bắt đầu cài đặt EDB trên máy tính Nhấn phím Next để tiến hành cài đặt.

Hệ thống bắt đầu trong quá trình cài đặt EDB.

At this point, the machine will contain a directory with programs that the user has just installed This directory may include: Documentation-12, EDB-PSQL-12, Edit pg_hba.conf-12, Edit pg-ident-conf-12, Edit postgresql.conf-12, pgAdmin 4, Reload Configuration, and StackBuilder Plus.

StackBuilder Plus: Phần mềm sẽ giúp người dùng cài đặt và cập nhật phần mềm PostgreSQL và EnterpriseDB Avanced Server

2.2 Minh họa sử dụng bằng pgAdmin

 Nhập password vừa cài đặt để bắt đầu sử dụng hệ thống.

 Dưới đây là màn hình bắt đầu của pgAdmin.

 Nhập password cho user ‘postgres’ để kết nối với server ‘EDB Postgres Advanced Server 12’.

 Dưới đây là màn hình quản lý của hệ thống, databases, login/group roles, resource Groups,…

Query Tool là một công cụ hữu ích cho việc soạn thảo SQL, cung cấp cho người dùng không gian làm việc để nhập truy vấn một cách thủ công, sao chép từ nguồn khác hoặc đọc từ tệp Trình soạn thảo SQL đi kèm với tính năng tô màu cú pháp và autocomplete, giúp nâng cao trải nghiệm lập trình Để sử dụng tính năng autocomplete, người dùng chỉ cần bắt đầu nhập truy vấn và nhấn tổ hợp phím Ctrl+Space để nhận gợi ý về tên đối tượng hoặc lệnh tiếp theo Sau khi hoàn tất việc nhập truy vấn, người dùng có thể chọn biểu tượng để thực hiện truy vấn và nhận kết quả.

Excute/Refresh từ thanh công cụ Toàn bộ nội dung sẽ được gửi đến server để thực thi. o Bảng được chia làm 3 phần rõ rệt:

 Phía trên là thanh công cụ, hỗ trợ trong quá trình chạy, thực thi, lưu trữ,… chương trình.

 Ở giữa bao gồm Query Editor (viết câu lệnh truy vấn) và Query History (Xem lại lịch sử truy vấn)

 Output bao gồm các Data Output (Dữ liệu đầu ra), Explain (), Messages(), Notifications( Thông báo)

 Mọi cơ sở dữ liệu được liên kết với một người dùng hoặc một nhóm người dùng cụ thể

 Click phải chuột vào login/group roles -> chọn create -> click on login/group roles… để bắt đầu tạo new user.

 Create dialog sẽ xuất hiện trên màn hình hệ thống: Name, Comments setup tên user và comments Giả sử đặt tên new user là ‘admin_user’.

 Click vào tab Definition để thiết lập cho new user Nhập password cho user.

 Để set tất cả các quyền cho ‘admin_user’ chọn các đặc quyền trong tab Privileges là Yes Click button Save để hoàn tất quá trình tạo user mới.

 New user ‘admin_user’ sẽ được hiển thị trong phần Login/Group Roles của chương trình.

 Create new database and create new table

Cách 1: Sử dụng template có sẵn trong pgAdmin

1 Click phải chuột vào Databases -> Create-> Database… sau đó sẽ xuất hiện danh sách các tab, các tùy chọn cho new database.

2 Điền các thông tin tương ứng như: Database(tên database) , Owner(User) và Comment Giả sử tạo new database có tên

‘library’ và có owner là ‘admin_user’.

3 Click button Save để kết thúc quá trình tạo database New Database sẽ được hiển thị trong Databases section

Cách 2: Sử dụng các câu lệnh để create new database

1 Click vào biểu tượng trên màn hình

2 Viết câu truy vấn ‘ CREATE DATABASE employees ‘ trong tab Query Editor.

4 New database đã được cài đặt thành công.

In the 'library' database, there are two tables: 'book_type' and 'book_list' The 'book_type' table consists of three fields: an automatically incrementing numeric 'id' for the category type, and two string fields for 'category' and 'type' The 'id' serves as the primary key, and all fields are mandatory (not null).

The 'book_list' table in the BBA Finance database consists of five fields: id, book_name, author_name, edition, and type_id Among these, id, book_name, author_name, and type_id are mandatory fields (not null), while the edition field can be null The id serves as the primary key, and type_id acts as a foreign key referencing another table For example, a record in this table could be represented as follows: id E001, book_name 'Java: The Complete Reference', author_name [author's name], edition [edition number], type_id [type identifier].

Cách 1: Sử dụng template có sẵn trong pgAdmin

1 Click on ‘Schemas’ trong ‘library’ database Trong phần mở rộng của phần ‘public’ tìm danh mục ‘Tables’

2 Chuột phải vào mục ‘Tables’ -> ‘Create’ -> ‘Tables…’ options.

3 Sau đó sẽ xuất hiện một hộp thoại để tạo một bảng mới Nhập tên của bảng vào ô ‘Name’,… Giải sử tạo bảng có tên ‘book_type’

4 Chọn vào tab ‘Columns’ và click vào button ’ ’ để cài đặt + các trường cho bảng.

5 Như ví dụ đã nêu ở trên, cài đặt 3 trường cho table

‘book_type’ bao gồm id, category, type Chọn các điều kiện phù hợp với yêu cầu

6 Click button ‘Save’ để hoàn tất quá trình tạo table.

7 Tạo table ‘book_list’ tương tự như tạo table ‘book_type ’ đến step 4.

8 Click tab ‘Constraints’ để cài đặt primary key và foreign keys Trong tab này sẽ có 5 mục khác nhau Đầu tiên là

‘Primary Key’ Trong tab này sẽ hiển thị thông tin primary key của bảng Người dùng có thể add or remove primary key trong tab này.

9 Click tab ‘Foreign Key’ để xác định các Foreign Key của bảng Click on ‘+’ button để thêm foreign key.

10 Click on symbol Edit button để mở tab tạo foreign key

11 Điền thông tin của foreign key trong trường ‘Name’ Ở đây, ‘book_type’ được đặt tên của khóa ngoại Sau đó, click tab Columns

12 Chọn Local Column, References Referencing và từ các dropdown list Trong bảng này, type_id là foreign key và được đặt làm Local Column ‘book_type’ được cài làm

References và trong ‘book_type’ được chọn là id Referencing Sau khi cài đặt xong, click button ‘+’ để thêm foreign key vào bảng.

13 Thông tin của foreign key đã thêm được add và hiển thị dưới bảng Click on ‘Action’ để thêm hành động cụ thể cho việc update và delete data của bảng tham chiếu.

14 Chọn ‘CASCADE’ option cho cả update và delete Khi giá trị của id trong bảng book_type update hoặc xóa thì sẽ kéo theo tác động tới bảng book_list Sau đó click ‘Save’ button để hoàn thành quá trình tạo bảng.

15 Sau khi hoàn thành các bước ở trên, phần Tables sẽ chứa 2 bảng ‘book_list’ và ‘book_type’ Nếu người dùng muốn thay đổi cấu trúc của bảng thì nhấp chuột phải vào tên bảng đó để mở hộp thoại sửa đổi cấu trúc của bảng.

Cách 2: Sử dụng câu lệnh truy vấn tạo bảng

( id serial primary key, category character varying(50) NOT NULL, type character varying(50) NOT NULL

The database schema includes a primary key identified as 'id', which is of serial type, ensuring each entry is unique It captures essential book details such as 'book_name' and 'author_name', both of which are mandatory and can contain up to 100 characters Additionally, an 'edition' field allows for a maximum of 5 characters, while 'type_id' is a required field of bigint type, linking to the 'book_type' table This relationship is enforced through a foreign key constraint that supports cascading updates and deletions.

 SỬ DỤNG CÂU LỆNH TRUY VẤN TRONG QUERY EDITOR o SELECT: Truy vấn dữ liệu từ các bảng cơ sở dữ liệu cụ thể.

Ex: Select * from book_type; o DISTINCT: loại bỏ các dữ liệu trùng lặp

DISTINCT column1 FROM table_name;

The SQL command "SELECT DISTINCT author_name FROM book_list" allows for the retrieval of unique author names from the book list Additionally, the "ORDER BY" clause enables the sorting of query results based on one or more columns, either in ascending or descending order.

ORDER BY [sort_expression1] [ASC | DESC],

To sort data in SQL, use the syntax [sort_expression] [ASC | DESC], such as "SELECT * FROM book_list ORDER BY book_name DESC." The WHERE clause allows you to select specific rows that meet certain conditions, enabling you to filter records based on defined criteria.

Ex: Select * from book_list where author_name = 'Nguyen Nhat Anh' o LIMIT: Giới hạn số lượng kết quả.

Ex: SELECT * from book_list LIMIT 5; o GROUP BY: Được sử dụng để gộp các bản ghi có cùng giá trị tại một hay nhiều cột thành một tập hợp

Truy vấn: SELECT column1, column2,

Câu lệnh SQL SELECT count(*) FROM book_list GROUP BY author_name; sử dụng HAVING để lọc các nhóm bản ghi hoặc kết quả từ hàm nhóm HAVING thường đi kèm với GROUP BY và được áp dụng cho các nhóm bản ghi, trong khi WHERE chỉ áp dụng cho từng bản ghi riêng lẻ.

Ex: SELECT depno, SUM(sal) as total FROM emp GROUP BY deptno HAVING SUM(sal)

Ngày đăng: 31/03/2022, 22:51

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

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

TÀI LIỆU LIÊN QUAN