Tải bản đầy đủ (.ppt) (20 trang)

TIỂU LUẬN MÔN CƠ SƠ DỮ LIỆU NÂNG CAO XQuery và ứng dụng XML trong cơ sở dữ liệu Phả hệ

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (406.51 KB, 20 trang )

Môn học: Cơ sở dữ liệu nâng cao
Giảng viên: TS. Nguyễn Hà Nam
Nhóm thực hiện: Nguyễn Huy Sinh
Nguyễn Thị Hồng Xuân
Đề tài: XQuery và ứng dụng XML trong
cơ sở dữ liệu Phả hệ
1
Nội dung

Tổng quan về XML và cơ sở dữ liệu XML

XQuery – Ngôn ngữ truy vấn cơ sở dữ liệu XML

Bài toán cơ sở dữ liệu phả hệ - ứng dụng XQuery trong cơ sở
dữ liệu XML

Ưu điểm và hướng nghiên cứu mở rộng của XQuery
2
Lịch sử và khái niệm XML

GML – SGML – XML ( do W3C xây dựng)

XML (eXtensible Makeup Language) Ngôn ngữ đánh dấu
mở rộng, XML kết hợp được sức mạnh của SGML và tính
phổ dụng của HTML. XML là một bộ các quy luật về cách
chia một tài liệu ra làm nhiều phần, rồi đánh dấu và ghép
các phần khác nhau lại để dễ nhận diện ra chúng.
3
Tổng quan về XML và cơ sở dữ liệu XML
Đặc điểm của XML


Dễ thích nghi với SGML

Dễ dàng viết chương trình xử lý tài liệu XML

Tài liệu XML dễ đọc và có tính tích hợp cao

XML được xây dựng với sự giảm thiểu những thuộc tính tùy
chọn

XML dễ dàng được sử dụng trên Internet

XML hỗ trợ nhiều ứng dụng và không đặt nặng tính hình thức
trong nội dung thẻ đánh dấu XML
4
Tổng quan về XML và cơ sở dữ liệu XML
Cấu trúc tài liệu XML

XML chứa đựng những đặc tả về cấu trúc dữ liệu chỉ lưu trữ dữ
liệu mà không quan tâm đến trình bày dữ liệu.

Ví dụ: <Thanhvien> nội dung </Thanhvien>

<> và </> cặp thẻ bắt đầu và kết thúc

Phần tử là thành viên

Nội dung có thể là các đoạn text hoặc một thành phần
XML khác.
5
Tổng quan về XML và cơ sở dữ liệu XML

Tầm quan trọng của XML

Khả năng mở rộng kế thừa

Thuận tiện cho việc trao đổi

Người dùng không bị giới hạn cách sử dụng, và không sợ sự
sao chép do XML là một chuẩn công cộng

XML và HTML sẽ là công nghệ tương lai
6
Tổng quan về XML và cơ sở dữ liệu XML
Phương pháp tiếp cận XML database

Cơ sở dữ liệu XML nguyên gốc (Native XML database –
NXD): XML nguyên gốc là cách dùng các công nghệ liên quan
đến XML không pha tạp với các công nghệ phi XML.

Dữ liệu XML được lưu trữ dạng cây nguyên bản và tách khỏi
cơ sở dữ liệu quan hệ.

Các cơ sở dữ liệu thường có thể lưu trữ cả tài liệu không có cấu
trúc và có cấu trúc. Điểm yếu của các cơ sở dữ liệu quan hệ là
việc lưu trữ các tài liệu bán cấu trúc. XML database khắc phục
được những yếu điểm này.
7
Tổng quan về XML và cơ sở dữ liệu XML
Ngôn ngữ truy vấn trong XML database

Tra cứu dữ liệu trong cơ sở dữ liệu luôn là một nhu cầu thiết

thực đối với mỗi cá nhân làm công nghệ và quản lý cơ sở dữ
liệu.

XQuery là ngôn ngữ truy vấn được sử dụng trong việc truy
xuất cơ sở dữ liệu XML. Ngôn ngữ XQuery tìm hiểu là XPath
và biểu thức FLWOR.
8
Tổng quan về XML và cơ sở dữ liệu XML
Giới thiệu về XQuery

XQuery là một ngôn ngữ truy vấn được tạo ra nhằm mục đích
truy vấn trong cơ sở dữ liệu XML.

XQuery hỗ trợ các biểu thức đường dẫn để định vị trí trong cấu
trúc phân cấp XML.

XQuery hỗ trợ cả dữ liệu có kiểu và dữ liệu không có kiểu.

XQuery không chứa giá trị Null vì tài liệu XML bỏ đi những dữ
liệu thiếu hay không xác định. XQuery trả về một chuỗi các dữ
liệu XML.
9
Xquery – Ngôn ngữ truy vấn cơ sở dữ liệu XML
Cấu trúc thể hiện XQuery

Một giá trị trong mô hình dữ liệu XQuery là một chuỗi gồm
không hoặc nhiều hơn một danh mục. Một danh mục trong
XQuery có thể là:

Giá trị nguyên tử bất kỳ


Một nút XML như phần tử, thuộc tính hoặc một nút
văn bản.

Một tài liệu XML
10
XPath – Biểu thức đường dẫn
Một số ký hiệu trong XPath

“/”: thể hiện thành phần phía dưới nó.

“@” dùng để chỉ thuộc tính

“*” thay thế cho bất kỳ tên thẻ nào tính từ cấp con ngay sau
của thành phần trước ký hiệu

“//” dùng để chỉ việc lấy thông tin từ đây trở xuống.

[] điều kiện để lọc lấy một thông tin mà theo điều kiện được
đặt trong vị từ đó.
11
Xquery – Ngôn ngữ truy vấn cơ sở dữ liệu XML
XPath – Biểu thức đường dẫn(tt)

Một số biểu thức và ý nghĩa trong XPath

boolean() Xét những đối tượng như là các đối số của nó và được trả
về giá trị kiểu Boolean.

false() Không mang đối số và trả về giá trị sai


count() Mang một đối số là tập các node, kết quả trả về là số node
trong tập node đó.

number() Mang một chuỗi, Boolean hoặc một tập các node và trả về
một số

sum() Mang một tập các node là đối số và trả về tổng các giá trị của
mỗi node sau khi chuyển đổi giá trị của các loại số nếu có thể.

concat() Mang 2 hoặc nhiều hơn 2 chuỗi là đối số và kết quả trả về là
xâu ghép của các đối số đó theo thứ tự.

string() Đối số là một số, một giá trị kiểu Boolean, một tập các node,
kết quả trả về là một chuỗi.


12
Xquery – Ngôn ngữ truy vấn cơ sở dữ liệu XML
Đặc điểm của node trong XPath

Root node: Node gốc là đỉnh của tài liệu phân cấp

Element node: Node phần tử là một phần tử trong XPath

Atribute node: Thuộc tính node

Text node: Nội dung của phần tử node được thể hiện trong
XPath là một text node


Namespace node: Một nút cụ thể thì chỉ thuộc về một không
gian tên nhất định.

Comment node: đây là nút có chức năng như là ghi chú,
giải thích

Processing instruction node: Các node lệnh xử lý
13
Xquery – Ngôn ngữ truy vấn cơ sở dữ liệu XML
Biểu thức FLWOR

For Thể hiện một vòng lặp với một chuỗi các giá trị đầu vào
và được liên kết lần lượt một biến với mỗi danh mục đầu vào.

Let Khai báo một biến và gán cho nó một giá trị, có thể là
một danh sách các mục, tuy nhiên Let khác với For về cách
duyệt.

Where Cũng giống như SQL mệnh đề này xác định điều kiện
để lọc các kết quả truy vấn.

Order by Xác định trật tự kết quả trả về.

Return Xác định kết quả được trả về.
For – let - where – Order by - Return
14
Xquery – Ngôn ngữ truy vấn cơ sở dữ liệu XML
So sánh XQuery và SQL
XQuery SQL
Hỗ trợ các biểu thức đường dẫn để

cho phép các lập trình viên sử dụng
dễ dàng hơn thông qua cấu trúc
phân cấp của XML
Không hỗ trợ các biểu thức đường
dẫn
Hỗ trợ cả hai dữ liệu có định kiểu
và không định kiểu
Luôn luôn được định nghĩa với một
kiểu cụ thể
Không cần các giá trị NULL vì các
tài liệu XML bỏ qua dữ liệu thiếu
hoặc không được biết đến
Sử dụng các giá trị NULL để thể
hiện các giá trị thiếu hoặc không
được biết đến
Trả về các chuỗi dữ liệu XML Trả về các tập hợp kết quả của các
kiểu dữ liệu SQL khác nhau
15
Tính thực tế và yêu cầu của bài toán

Nhu cầu thực tế việc lưu trữ dữ liệu về các thế hệ trong một
dòng tộc

Nhu cầu về kỹ thuật triển khai trước đây chưa đáp ứng tốt nhất
khả năng lưu trữ

Yêu cầu phả hệ với các đặc điểm sau:

Node gốc mô tả cây tên cây phả hệ


Mỗi thành viên là một node con và ID riêng

Phả hệ tuân theo quy tắc phụ hệ (con theo cha)

Các thành viên là “vợ” cũng thuộc cây, thành viên là con gái
thì không thể hiện con cái họ

Thành viên có thể có một trường thông tin nào đó hoặc không
có nó.
16
Cơ sở dữ liệu phả hệ ứng dụng XQuery
Hướng giải quyết và triển khai ứng dụng

Tạo form thực hiện chức năng:Thêm mới một thành viên

Tạo form thực hiện chức năng: Sửa thông tin của một thành viên
như là đính chính tên, tuổi

Tạo form thực hiện chức năng Tìm kiếm thông tin thành viên

Tạo báo cáo, thống kê

Triển khai ứng dụng
17
Cơ sở dữ liệu phả hệ ứng dụng XQuery
Ưu điểm của Xquery

Tính biểu cảm: XQuery có thể truy vấn nhiều cấu trúc dữ
liệu khác nhau và tính chất đệ quy của nó làm cho nó lý
tưởng cho các truy vấn cấu trúc cây và đồ thị .


Tính ngắn gọn: XQuery báo cáo ngắn hơn so với các
chương trình tương tự như SQL, XSLT.

Tính linh hoạt: XQuery có thể truy vấn dữ liệu phân cấp
và bảng

Tính nhất quán: XQuery có cú pháp phù hợp và có thể
được sử dụng với các tiêu chuẩn khác chẳng hạn như XML
Schema cho kiểu dữ liệu XML.
18
Ưu điểm và hướng nghiên cứu mở rộng của XQuery
Tối ưu hóa XQuery

XQuery còn là một tiêu chuẩn khá trẻ và có nhiều vấn đề liên quan đến
tối ưu hóa cần giải quyết. Công việc này sẽ tập trung vào ba khía cạnh
của tối ưu hóa trong cơ sở dữ liệu XML là: xóa bỏ bản sao, đại số và
các chỉ số XML. Đây là những nghiên cứu được phát triển bởi nhóm
Galax XQuery Engine từ AT & Labs và Lucent – Bell Labs.

Nhóm đầu tiên, cộng đồng tài liệu chủ yếu quan tâm tới việc thay đổi
định dạng của XML. Họ đang tiếp tục tìm kiếm cho sự phát triển này
của công cụ mới cho phép dễ dàng thao tác và chuyển đổi các tài liệu
XML tương đối nhỏ.

Nhóm thứ hai, cộng đồng dữ liệu chủ yếu quan tâm tới việc định dạng
lưu trữ dữ liệu XML. Trọng tâm phần này là thiết kế ngôn ngữ truy vấn
và lưu trữ cú pháp để chọn dữ liệu từ khối lượng lớn dữ liệu XML một
cách hiệu quả.


Đây là hướng nghiên cứu mở rộng cho đề tài này.
19
Ưu điểm và hướng nghiên cứu mở rộng của XQuery
Chân thành cảm ơn sự theo dõi
của thầy giáo và các bạn!
20

×