1. Trang chủ
  2. » Luận Văn - Báo Cáo

Tối ưu hóa truy vấn cơ sở dữ liệu hướng đối tượng

4 645 3

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 4
Dung lượng 232,26 KB

Nội dung

+ Phạm Thị Chanh Đại học Công nghệ Luận văn ThS ngành: Hệ thống thông tin; Mã số: 60 48 01 04 Người hướng dẫn: PGS.TS Đoàn Văn Ban Năm bảo vệ: 2014 Keywords: Thuật toán tối ưu hóa; C

Trang 1

1

Tối ưu hóa truy vấn

cơ sở dữ liệu hướng đối tượng Query Optimization in Object-Oriented Database

NXB H : ĐHCN, 2014 Số trang 70 tr +

Phạm Thị Chanh

Đại học Công nghệ Luận văn ThS ngành: Hệ thống thông tin; Mã số: 60 48 01 04

Người hướng dẫn: PGS.TS Đoàn Văn Ban

Năm bảo vệ: 2014

Keywords: Thuật toán tối ưu hóa; Cơ sở dữ liệu hướng đối tượng; Phương pháp hướng

đối tượng

Content

Chúng ta đang sống trong một thời đại mới, thời đại của Công nghệ thông tin (CNTT) Công nghệ thông tin ngày một phát triển và trở thành một nhu cầu không thể thiếu trong mọi lĩnh vực của đời sống xã hội CNTT là ngành quản lý công nghệ và mở ra nhiều lĩnh vực khác nhau như phần mềm máy tính, phần cứng máy tính, ngôn ngữ lập trình, ….Và cơ sở dữ liệu cũng là một lĩnh vực quan trọng của Công nghệ thông tin Từ khi ra đời cho đến nay, những nghiên cứu

về Cơ sở dữ liệu (CSDL) đã không ngừng phát triển và ngày càng trở nên cần thiết trong các ứng dụng về CNTT

CSDL đã trở thành một bộ phận chủ yếu không thể thiếu trong hầu hết các hệ thống thông tin Hiện nay, các hệ thống thông tin hay các CSDL đều chủ yếu sử dụng một kiểu CSDL truyền thống đó là CSDL quan hệ, một trong những CSDL đã được phát triển và ứng dụng rộng rãi Tuy nhiên với sự phát triển nhanh chóng của CNTT, CSDL quan hệ đã dần bộc lộ những yếu điểm và nhiều hạn chế, đặc biệt là trong việc xây dựng các ứng dụng cơ dữ liệu phức tạp, dữ liệu đa chiều, dữ liệu có nhiều mối quan hệ, hay các dữ liệu đa phương tiện như: hình ảnh, âm thanh, video,…

Ngày nay, phương pháp hướng đối tượng được sử dụng rất phổ biến trong lĩnh vực phát triển phần mềm, vì cho phép lập trình viên tạo ra các đối tượng trong code trừu tượng hóa các đối tượng thực tế trong cuộc sống Trong thế giới thực, đối tượng là thực thể tồn tại như con người, xe, máy tính,…Trong ngôn ngữ lập trình, đối tượng có thể là màn hình, điều khiển,…Kỹ thuật hướng đối tượng là kỹ thuật nhằm vào sự tương tác giữa các đối tượng Mỗi đối tượng có những thuộc tính (thông tin lưu trữ), những phương thức xác định các chức năng của đối tượng

và các đối tượng chỉ được tạo ra và tồn tại trên bộ nhớ chính, còn việc lưu trữ và tương tác dữ liệu dưới dạng các đối tượng trên bộ nhớ thứ cấp vẫn chủ yếu kế thừa từ mô hình quan hệ truyền thống Hiện đã có rất nhiều kết quả nghiên cứu, cho phép chuyển đổi qua lại giữa các bảng trong

mô hình quan hệ sang tập các đối tượng tương ứng Mặc dù kế thừa được tính năng mạnh của hướng đối tượng, nhưng việc chuyển đổi qua lại này càng làm cho mã lệnh của chương trình phức tạp thêm, đồng thời hiệu suất chương trình cũng giảm đi rõ rệt

CSDL hướng đối tượng là giải pháp cho những hạn chế của CSDL quan hệ Trong CSDL hướng đối tượng, dữ liệu được lưu trữ dưới dạng các đối tượng của ngôn ngữ lập trình nên cho phép lưu trữ được các dạng dữ liệu phức tạp, lượng thông tin lớn, đa chiều, đa quan hệ, hay có

Trang 2

2

thể mở rộng lưu trữ các dữ liệu đa phương tiện như hình ảnh, âm thanh, video Trên thế giới, một

số hệ quản trị cơ sở dữ liệu hướng đối tượng được phát triển bởi các nhà phân phối sản phẩm thương mại, tại các phòng nghiên cứu công nghệ và các Viện Đại học như: Gemstone,

ObjectStores, IRIS, Orion, Extra, Oracle, Db4o,… Một mô hình dữ liệu đối tượng chuẩn ODMG

đã được phát triển và dựa vào đó để thiết lập một số khái niệm cơ sở được gọi là mô hình hạt nhân cho mô hình CSDL hướng đối tượng Mô hình hạt nhân đủ mạnh để thỏa mãn nhiều đòi hỏi của các ứng dụng mới, hơn nữa còn được dùng làm cơ sở để xác định những khác biệt chính giữa

mô hình dữ liệu hướng đối tượng và các mô hình dữ liệu truyền thống khác Hệ thống hướng đối tượng là tập các lớp đối tượng có mối quan hệ với nhau, trao đổi thông tin với nhau để thực hiện những nhiệm vụ đặt ra của bài toán ứng dụng trong thực tế

Một trong những hướng nghiên cứu quan trọng được đề cập trong các hệ thống CSDL hướng đối tượng là tối ưu hoá truy vấn hướng đối tượng Với một câu truy vấn, sẽ tồn tại nhiều phương án mà hệ thống CSDL cho phép xử lý và đưa ra kết quả cuối cùng tương đương nhau, việc tối ưu hóa câu truy vấn sẽ cho chúng ta lựa chọn phương án nào có tổng thời gian thực hiện truy vấn hiệu quả hơn, tức là chọn phương án có chi phí ước lượng nhỏ nhất Hiện nay, các nhà nghiên cứu đã đề xuất rất nhiều kỹ thuật tối ưu hoá truy vấn hướng đối tượng khả thi và đáp ứng được các yêu cầu này như: Scott Lee Vanderberg (1993), J Fong (1997), C Ramanathan and J Hodges (1997), Clement Yu, Yi Zhang, Weiyi Meng, Wom Kim, Gaoming Wang, Tracy Pham

and Son Daop (1997): Giới thiệu giải thuật chuyển đổi các truy vấn hướng đối tượng sang truy

vấn quan hệ để tận dụng các kỹ thuật tối ưu hoá truy vấn đã có trên mô hình quan hệ; Jia Liang

Han (1998): “Optimizing Relational Queries in Connection Hypergraph: Nested Queries, Views,

and Binding Propagations”; Ullman and Jeffrey D (1999), Lê Mạnh Thạnh và Hoàng Bảo Hùng

(2009): Phương pháp tối ưu hóa truy vấn đối tượng bằng các phép biến đổi biểu thức đại số đối

tượng OQL; Lê Mạnh Thạnh, Đoàn Văn Ban và Hoàng Bảo Hùng (2005): Phương pháp dùng ký pháp siêu đồ thị để biểu diễn và tối ưu hoá các truy vấn trong CSDL hướng đối tượng Tuy nhiên đối với các truy vấn lồng, khi phân tích ước lượng chi phí của biểu thức đại số lồng thì việc định giá sẽ cho chi phí chưa đạt hiệu quả như mong muốn Vì vậy, luận văn tập trung

nghiên cứu việc làm phẳng các truy vấn con trong truy vấn lồng nhờ phương pháp dùng ký pháp

siêu đồ thị để biểu diễn và tối ưu hoá các truy vấn trong CSDL hướng đối tượng Từ đó, xây

dựng thuật toán ước lượng chi phí xử lý truy vấn đối tượng trên cơ sở ước lượng các siêu cạnh trong siêu đồ thị để đạt được mức chi phí nhỏ hơn cho mỗi truy vấn Chính vì lý do trên mà tôi

chọn đề tài “TỐI ƯU HOÁ TRUY VẤN CƠ SỞ DỮ LIỆU HƯỚNG ĐỐI TƯỢNG” làm luận

văn tốt nghiệp

Mục tiêu của luận văn là nghiên cứu các mô hình CSDL hướng đối tượng để giải bài toán

tối ưu hóa truy vấn đối tượng Đây là vấn đề luôn được các nhà khoa học quan tâm nghiên cứu

Trong khuôn khổ của luận văn, tôi tập trung nghiên cứu vào phương pháp tối ưu hóa truy vấn mà hay được sử dụng nhất đặc biệt là đối với các truy vấn lồng đó là sử dụng phương pháp siêu đồ thị Nghiên cứu các đặc trưng trong mô hình dữ liệu hướng đối tượng; Tìm hiểu các kỹ thuật xử

lý truy vấn, sự biểu diễn câu truy vấn bằng ngôn ngữ truy vấn đối tượng OQL; Giới thiệu ký pháp siêu đồ thị [10] trong biểu diễn truy vấn Từ đó, sử dụng phương pháp này để tối ưu hóa truy vấn cho lớp các truy vấn lồng trong CSDL hướng đối tượng [3]

Với mục tiêu của luận văn như vậy, bố cục của luận văn gồm: phần mở đầu, ba chương nội dung và phần kết luận

Chương 1: Giới thiệu các khái niệm, định nghĩa cơ bản như: lớp, đối tượng, định danh đối

tượng trong mô hình CSDL hướng đối tượng; kế đến, trình bày sự mở rộng ngữ nghĩa của mô hình như hệ thống phân cấp và quan hệ kế thừa Tìm hiểu kỹ thuật xử lý truy vấn và các thay đổi

so với kỹ thuật xử lý truy vấn quan hệ Để thực hiện được các câu truy vấn đối tượng một cách hiệu quả và tiếp tục nghiên cứu các vấn đề về tối ưu hoá truy vấn trong các CSDL hướng đối tượng, ngôn ngữ truy vấn OQL là ngôn ngữ truy vấn được chọn giới thiệu trong chương này

Chương 2: Trình bày khái niệm siêu đồ thị kết nối đối tượng Sau đó sử dụng ký pháp siêu

đồ thị để biểu diễn truy vấn OQL Xây dựng giải thuật khởi tạo siêu đồ thị trong các trường hợp

Trang 3

3

truy vấn đối tượng đơn và lồng Đưa ra giải thuật ước lượng siêu cạnh cho các trường hợp tách biệt hay liên thông của các siêu đồ thị con hợp thành siêu đồ thị mà biểu diễn cho một truy vấn đối tượng lồng Cuối chương, là mở rộng thuật toán tối ưu hóa truy vấn trên cơ sở xây dựng danh sách các bước thực thi câu truy vấn theo quy tắc có thứ tự loại bỏ siêu cạnh

Chương 3: Giới thiệu về hệ quản trị CSDL đối tượng DB4O Phát biểu bài toán quản lý

nhân sự trong công ty, đó là bài toán được áp dụng trong các ví dụ cho thuật toán tối ưu hóa truy vấn Đưa ra kết quả thực nghiệm cho bài toán tối ưu hóa truy vấn CSDL hướng đối tượng dựa trên siêu đồ thị Cuối cùng là kết luận và hướng phát triển của đề tài

Nội dung cơ bản của luận văn đã được trình bày, thảo luận tại xêmina khoa học ở Bộ môn

Hệ thống thông tin, khoa Công nghệ Thông tin, trường Đại học Công nghệ - Đại học Quốc gia

Hà nội

References

Tài liệu tiếng Việt

[1] Đoàn Văn Ban (1999), “Một số tính chất của quá trình thừa kế kiểu trong mô hình cơ sở dữ

liệu hướng đối tượng”, Tạp chí Tin học và điều khiển học, 15(3), tr.1-7

[2] Đoàn Văn Ban (2000), Tính đúng đắn của lược đồ cơ sở dữ liệu hướng đối tượng, Tạp chí

Tin học và Điều khiển học, 16 (3), tr 7– 15

[3] Lê Mạnh Thạnh, Hoàng Bảo Hùng (2010), “ Siêu đồ thị kết nối đối tượng – một cách tiếp cận trong tối ưu hóa câu truy vấn đối tượng lồng nhau”, Tạp chí khoa học, Đại học Huế, số

58

[4] Đoàn Văn Ban, Lê Mạnh Thạnh và Hoàng Bảo Hùng (2004), “Sự tương đương trong biểu

diễn giữa ngôn ngữ truy vấn OQL và đại số đối tượng”, Tạp chí Tin học và Điều khiển học,

T.20 S.3, tr 257–269

[5] Lê Mạnh Thạnh, Hoàng Bảo Hùng (2009) “Phương pháp tối ưu hóa truy vấn đối tượng bằng

các phép biến đổi biểu thức đại số đối tượng OQL”, Tạp chí khoa học, Đại học Huế, số 53 [6] Hoàng Bảo Hùng (2007), Truy vấn và tối ưu hoá truy vấn trong cơ sở dữ liệu hướng đối

tượng, Luận án Tiến sĩ Toán học, Viện Công nghệ Thông tin, Viện Khoa học và Công nghệ

Việt Nam, Hà Nội

[7] Hoàng Bảo Hùng (2001), Một vài vấn đề về tối ưu hoá truy vấn trong cơ sở dữ liệu hướng

đối tượng, Luận văn tốt nghiệp Thạc Sĩ chuyên ngành Công nghệ thông tin, Đại học Bách

khoa Hà Nội

[8] Lê Mạnh Thạnh, Hoàng Bảo Hùng (2006), “Mô hình ước lượng chi phí xử lý truy vấn đối

tượng trong cơ sở dữ liệu hướng đối tượng”, Kỷ yếu Hội thảo Quốc gia, lần thứ VIII, Một số

vấn đề chọn lọc về CNTT và truyền thông, chủ đề “Mã nguồn mở, 25/8-27/8/2005, Hải

Phòng, Nhà xuất bản Khoa học và Kỹ thuật, Hà nội, tr 568-579

[9] Lê Mạnh Thạnh, Đoàn Văn Ban, Hoàng Bảo Hùng (2005), “Phương pháp ước lượng các truy

vấn lồng trong cơ sở dữ liệu hướng đối tượng bằng siêu đồ thị kết nối”, Chuyên san Tạp chí

Bưu chính Viễn thông và Công nghệ thông tin, Các công trình nghiên cứu - Triển khai Viễn thông và Công nghệ thông tin, ISSN 0866-7039, 14, tr 43–49

[10] Lê Mạnh Thạnh, Hoàng Bảo Hùng (2001), “Ngôn ngữ truy vấn hướng đối tượng và tối ưu

hoá truy vấn trên cơ sở dữ liệu hướng đối tượng bằng phương pháp biến đổi đại số”, Hội nghị

khoa học kỷ niệm 25 năm thành lập Viện Công nghệ thông tin, Hà Nội

[11] Đoàn Văn Ban, Nguyễn Thị Tĩnh, Giáo trình phân tích, thiết kế hệ thống hướngđối tượng

bằng UML, Nhà xuất bản Đại học Sư Phạm 2011

Trang 4

4

[12] Ullman, Jeffrey D (1999), Nguyên lý các hệ cơ sở dữ liệu và cơ sở tri thức, Tập 1, 2, Trần

Đức Quang biên dịch, Nhà xuất bản Thống kê

Tài liệu tiếng Anh

[13] Caixue Lin, Object-Oriented Database Systems: A Survey, April 3, 2003,

http://users.soe.ucsc.edu/~lcx/courses/cmps277/cmps277-project.pdf

[14] Cattel R.G.G., Barry D.K (2000), The Object Database Standard: ODMG 3.0, Morrgan

Kaufmann, San Francisco, CA

[15] Francois Bancilhon, Guy Ferran (2007), ODMG-93: “The Odject Database Standard, O 2

Technology”, 2685 Marine Way - Suite 1220, Mountain View, California 94043

[16] Han, Jia Liang (1998), “Optimizing Relational Queries in Connection Hypergraph: Nested

Queries, Views, and Binding Propagations”, The VLDB Journal, 7, pp.1-11

[17] A.Trigoni and G.M.Bierman (2001), “Inferring the Principal Type and the Schema

Requirements of and OQL Query”, In 18th British National Conference on Databases

(BNCOD), pages.185-201

[18] Scott Lee Vanderberg (1993), Algebras for Object - Oriented Query Languages, A thesis

submitted in partial fulfilment of the requirements for the degree of Doctor of Philosophy (Computer Sciences), at the University of Winconsin-Madison

[19] G.M Bierman and A.Trigoni (2000), “Towards A Formal Type System For ODMG OQL”,

Technical Report 497, University of Cambridge, Computer Laboratory

[20] A.Trigoni, Agathoniki (2002), Semantic Optimization of OQL Queries, Technical Report,

Number 547, University of Cambridge, Computer Laboratory, USCAM-CL-TR-547, ISSN 1476-2986

[21] Won Kim (1991), Introduction to Object - Oriented Databases, Massachusetts Institute of

Technology, 2th Ed

[22] Michael L Horowitz, An Introduction to Object-Oriented Databases and Database

Systems, Carnegie Mellon University, 1991

[23] Gardarin G., J.-R Gruser and Z.-H Tang (1995), “A Cost Model for Clustered

Object-Oriented Databases”, Proceedings of the 21 st

VLDB Conference, Switzerland, pp 323 – 334

[24] Bierman G.M and Trigoni A (2000), Towards A Formal Type System For ODMG OQL,

Technical Report 497, University of Cambridge, Computer Laboratory

[25] Elmasri Navathe (2007) Fundamentals Database Systems 5th Edition, the United States of America

[26] Yu, T.Clement, Meg, Weiyi (1998), “Principles of Databases Query Processing for

Advanced Applications”, Morgan Kaufmann Publishers, Inc San Francisco, California

[27] Cluet, Sophie and Moerkotte, Guido (1995) Nested Queries In Object Bases, In Fifth

International Workshop on Database Programming Languages, Italy

[28] Vanderberg, Scott Lee (1993), Algebras for Object - Oriented Query Languages, Ph.D

Dissertation, University of Winconsin-Madison

[29] Jim Paterson, Stefan Edlich, Henrik Horning, and Reidar Horning (2006), “The Definitive

Guide to db4o”

Ngày đăng: 25/08/2015, 12:21

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w