Tải bản đầy đủ (.pdf) (61 trang)

Hệ thống giám sát sự kiện để giám sát nhiệt độ và độ ẩm

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 (1.48 MB, 61 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ TP. HCM

---------------------------

TRẦN MINH THẠNH

HỆ THỐNG GIÁM SÁT SỰ KIỆN
ĐỂ GIÁM SÁT NHIỆT ĐỘ VÀ ĐỘ ẨM
LUẬN VĂN THẠC SĨ
Chuyên ngành : Công nghệ thông tin
Mã số ngành: 60480201
CÁN BỘ HƢỚNG DẪN KHOA HỌC: TS. TÂN HẠNH

TP. HỒ CHÍ MINH, tháng 01 năm 2016


CÔNG TRÌNH ĐƢỢC HOÀN THÀNH TẠI
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ TP. HCM

Cán bộ hƣớng dẫn khoa học : TS. TÂN HẠNH

Luận văn Thạc sĩ đƣợc bảo vệ tại Trƣờng Đại học Công nghệ TP. HCM
ngày 20 tháng 03 năm 2016

Thành phần Hội đồng đánh giá Luận văn Thạc sĩ gồm:
(Ghi rõ họ, tên, học hàm, học vị của Hội đồng chấm bảo vệ Luận văn Thạc sĩ)

TT

Họ và tên



Chức danh Hội đồng

1

PGS.TSKH. Nguyễn Xuân Huy

2

PGS.TS. Vũ Đức Lung

Phản biện 1

TS. Cao Tùng Anh

Phản biện 2

4

TS. Hồ Đắc Nghĩa

Ủy viên

5

TS. Vũ Thanh Hiền

Ủy viên, Thƣ ký

3


Chủ tịch

Xác nhận của Chủ tịch Hội đồng đánh giá Luận sau khi Luận văn đã đƣợc
sửa chữa (nếu có).

Chủ tịch Hội đồng đánh giá LV


TRƢỜNG ĐH CÔNG NGHỆ TP. HCM

CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM

PHÒNG QLKH – ĐTSĐH

Độc lập – Tự do – Hạnh phúc
TP. HCM, ngày..… tháng….. năm 20..…

NHIỆM VỤ LUẬN VĂN THẠC SĨ

Họ tên học viên:

Trần Minh Thạnh

Ngày, tháng, năm sinh: 19/06/1981
Chuyên ngành:

Giới tính:

Nam


Nơi sinh: Sóc Trăng

Công nghệ thông tin

MSHV: 1341860053

I- Tên đề tài:
“HỆ THỐNG GIÁM SÁT SỰ KIỆN ĐỂ GIÁM SÁT NHIỆT ĐỘ VÀ ĐỘ ẨM”
II- Nhiệm vụ và nội dung:
- Tìm hiểu cơ sở lý thuyết về , sự kiện, phát hiện sự kiện, luật ECA.
- Xây dựng hệ thống giám sát sự kiện để giám sát nhiệt độ và độ ẩm.
III- Ngày giao nhiệm vụ: 17/03/2015
IV- Ngày hoàn thành nhiệm vụ: 11/01/2016
V- Cán bộ hƣớng dẫn: TS. TÂN HẠNH

CÁN BỘ HƢỚNG DẪN
(Họ tên và chữ ký)

KHOA QUẢN LÝ CHUYÊN NGÀNH
(Họ tên và chữ ký)


LỜI CAM ĐOAN

Tôi xin cam đoan những nội dung trong luận văn này là do tôi thực hiện dƣới sự
hƣớng dẫn trực tiếp của TS. Tân Hạnh.
Tôi xin cam đoan rằng mọi sự giúp đỡ cho việc thực hiện Luận văn này và mọi
tham khảo dùng trong luận văn đều đƣợc trích dẫn rõ ràng và trung thực tên tác giả,
tên công trình, thời gian, địa điểm công bố.

Học viên thực hiện Luận văn
(Ký và ghi rõ họ tên)

Trần Minh Thạnh


LỜI CẢM ƠN
Em xin gởi lời cảm ơn chân thành đến ban giám hiệu, toàn thể cán bộ nhân viên,
giảng viên trƣờng đại học Hutech, ban lãnh đạo phòng quản lý khoa học và đào tạo
sau đại học, khoa công nghệ thông tin đã tạo điều kiện thuận lợi cho em học tập và
nghiên cứu trong suốt học trình cao học.
Em xin chân thành tri ân đến các thầy cô đã trực tiếp động viên, hƣớng dẫn
chúng tôi trong suốt học trình: PGS.TS Lê Hoài Bắc, PGS.TS Nguyễn Xuân Huy,
PGS.TS Quản Thành Thơ, TS Nguyễn Thị Thanh Sang, TS Võ Đình Bảy, TS Tân
Hạnh, TS Nguyễn Đình Thuân, TS Lê Mạnh Hải, TS Nguyễn Tuấn Đăng, TS Lƣ
Nhật Vinh.
Với lòng tri ân sâu sắc, em xin gởi lời cảm ơn chân thành đến thầy Tân Hạnh đã
rất tận tụy và nghiêm túc hƣớng dẫn em trong quá trình thực hiện nghiên cứu này.
Em cũng xin chân thành cảm ơn ban lãnh đạo phòng quản trị, phòng tổ chức
hành chính, phòng tài chính, trung tâm thƣ viện cùng đồng nghiệp của trƣờng Hutech
đã tạo điều kiện, cho phép, động viên và giúp đỡ em trong suốt quá trình học cao học
và thực hiện nghiên cứu này.


TÓM TẮT

Sự kiện là một yếu tố xuất hiện trong một hệ thống mà nó có ý nghĩa đối với hệ
thống, đối với ngƣời sử dụng hoặc ngƣời quản lý. Sự kiện có những vai trò quan trọng
trong sự vận hành của những hệ thống máy tính, hệ thống giám sát, hệ thống điều
khiển, … Bài toán phát hiện sự kiện đã đƣợc nghiên cứu và ứng dụng trong rất nhiều

lĩnh vực nhƣ: phân tích nhật ký sự kiện trong giao dịch chứng khoán, dự báo thời tiết,
hệ thống báo cháy, nhà thông minh (Smart home), hệ thống tƣới tiêu tự động trong
nông nghiệp. Luận văn này trình bày cơ sở lý thuyết về sự kiện, phát hiện sự kiện và
ứng dụng lý thuyết đó để xây dựng hệ thống giám sát sự kiện để giám sát nhiệt độ và
độ ẩm phục vụ trong nông nghiệp.


ABSTRACT

Event is an element appearing in the system which is not only meaningful to
the system itself but also users or administrators. The event plays an important role
in the operation of the system of computing, monitoring and controlling. The
algorithms in the event detection have been studied and applied in various fields
such as event log analysis of stoke transactions, weather forecasts, fire- alarm
systems, smart houses, automatic irrigation systems in agriculture. This research
paper presents the theoretical basis of the event, event detection, event monitoring
and application of this theory to build event surveillance system to monitor
temperature and humidity in agricultural service


MỤC LỤC
CHƢƠNG 1: GIỚI THIỆU ĐỀ TÀI ...........................................................................1
1.2 Mục tiêu của luận văn: .......................................................................................2
1.3 Đối tƣợng và phạm vi nghiên cứu: ....................................................................3
1.4 Các công trình liên quan: ...................................................................................3
1.4.1 HiPAC ............................................................................................................4
1.4.2 Sentinel ...........................................................................................................5
CHƢƠNG 2: SỰ KIỆN VÀ CƠ CHẾ PHÁT HIỆN SỰ KIỆN .................................7
2.1 Sự kiện ...............................................................................................................7
2.2 Giám sát sự kiện: ...............................................................................................8

2.3 Phân loại sự kiện: .............................................................................................10
2.3.1 Sự kiện đơn: ..................................................................................................10
2.3.2 Sự kiện phức: ................................................................................................15
2.4 Ngôn ngữ đặc tả sự kiện: .................................................................................16
2.4.1 Toán tử hoặc ( Disjunction - Or). .................................................................17
2.4.2 Toán tử và Conjunction – AND ). ...............................................................17
2.4.3 Toán tử tuần tự ( Sequence – Seq ) .............................................................17
2.4.4 Toán tử ANY: ...............................................................................................18
2.4.5 Toán tử không tuần hoàn (A, A*): ................................................................18
2.4.6 Toán tử tuần hoàn (P, P*) : ...........................................................................19
2.4.7 Toán tử NOT (): ............................................................................................19
2.5 Nhật ký sự kiện: .............................................................................................19
2.6 Ngữ pháp cho ngôn ngữ đặc tả sự kiện: ..........................................................22
2.7 Cơ chế phát hiện sự kiện:.................................................................................23
2.7.1 Phát hiện sự kiện và ứng dụng: ....................................................................24
2.7.2 Cơ chế phát hiện sự kiện ..............................................................................26
2.8 Luật ECA: ........................................................................................................29
2.8.1 Sự kiện : ........................................................................................................30
2.8.2 Điều kiện : ..................................................................................................31


2.8.3 Hành động : ................................................................................................31
Chƣơng 3 CHƢƠNG TRÌNH MÔ PHỎNG .............................................................32
3.1 Mô tả bài toán ................................................................................................32
3.2 Hệ thống chức năng: ......................................................................................33
3.3 Kiến trúc hệ thống: ..........................................................................................33
3.3.1 Mô hình hệ thống: ........................................................................................33
3.3.2 Các module điều khiển và cảm biến:............................................................34
3.3.3 Định nghĩa sự kiện: ......................................................................................40
3.3.4 Cơ sở dữ liệu sự kiện, luật: ...........................................................................42

3.3.5 Môdul phát hiện sự kiện: ............................................................................43
3.3.6 Môdul xử lý sự kiện: ....................................................................................44
3.4 Giao diện chƣơng trình: ...................................................................................45
3.4.1 Giao diện chính của chƣơng trình: ...............................................................45
3.4.2 Giao diện cập nhật sự kiện phức: .................................................................46
3.4.3 Giao diện cập nhật tập luật: ..........................................................................46
Chƣơng 4: KẾT LUẬN .............................................................................................48
TÀI LIỆU THAM KHẢO .........................................................................................49


DANH MỤC THUẬT NGỮ VÀ TỪ VIẾT TẮT
Tiếng Anh:
STT

Viết tắt

Viết rõ

1

ECA

Event Condition Action

2

ACID

atomicity, Consistency, Isolation, Durability


3

DBMS

Database Management System

4

ADBMS

Active Database Management System

5

OODBMS

Object Oriented Database Management System

6

BOB

Begin of block

7

EOB

End of block


8

BNF

Backus Normal Form

9

EOT

End Of Transation

Tiếng Việt:
STT
1

Viết tắt
CSDL

Viết rõ
Cơ sở dữ liệu


DANH MỤC CÁC BẢNG
Bảng 3.1: Chức năng các chân của DTH22 ..............................................................37
Bảng 3.2: Các sự kiện phức của hệ thống .................................................................41
Bảng 3.3: Danh sách các thuộc tính của nhật ký sự kiện ..........................................42
Bảng 3.4: Danh sách các thuộc tính lƣu trữ sự kiện phức ........................................42
Bảng 3.5: Danh sách thuộc tính lƣu trữ thông tin về tập luật ...................................42



DANH MỤC CÁC HÌNH
Hình 2.1: Cấu trúc giám sát sự kiện ............................................................................8
Hình 2.2: Quá trình giám sát sự kiện ..........................................................................9
Hình 2.3: phân loại sự kiện .......................................................................................10
Hình 2.4: Thứ tự xuất hiện các sự kiện thành phần và cây biểu thức sự kiện ..........25
Hình 2.5: Phát hiện sự kiện sử dụng ngữ cảnh recent ...............................................27
Hình 2.5: Phát hiện sự kiện sử dụng ngữ cảnh chronicle..........................................27
Hình 2.6: Phát hiện sự kiện sử dụng ngữ cảnh Continuous ......................................28
Hình 2.7: Phát hiện sự kiện sử dụng ngữ cảnh Cumulative ......................................28
Hình 3.1: mô hình hệ thống giám sát sự kiện nhiệt độ và độ ẩm..............................33
Hình 3.2: Môdul Arduino Uno ..................................................................................35
Hình 3.3: Arduino IDE ..............................................................................................36
Hình 3.4: cảm biến DTH22 .......................................................................................37
Hình 3.5: Sơ đồ ứng dụng cho môdul DTH22 ..........................................................38
Hình 3.6: Môdul mạng ..............................................................................................38
Hình 3.7: Môdul mạng kết nối với module arduino..................................................39
Hình 3.8: Sơ đồ kết nối cảm biến DTH22 với môdul mạng sau đi đã gắn vào môdul
arduino uno................................................................................................................39
Hình 3.9: Module điều khiển ....................................................................................40
Hình 3.10: Lƣu đồ hoạt động của môdul xử lý sự kiện ............................................44
Hình 3.11: Giao diện chính của chƣơng trình ...........................................................45
Hình 3.12: Giao diện cập nhật sự kiện phức .............................................................46
Hình 3.13: Giao diện cập nhật tập luật......................................................................46


1

CHƢƠNG 1: GIỚI THIỆU ĐỀ TÀI
1.1 Giới thiệu chung:

Sự kiện là một yếu tố xuất hiện trong một hệ thống mà nó có ý nghĩa đối với hệ
thống, đối với ngƣời sử dụng hoặc ngƣời quản lý. Sự kiện có những vai trò quan trọng
trong sự vận hành của những hệ thống máy tính, hệ thống giám sát, hệ thống điều
khiển, … Bài toán phát hiện sự kiện đã đƣợc nghiên cứu và ứng dụng trong rất nhiều
lĩnh vực nhƣ: phân tích nhật ký sự kiện trong giao dịch chứng khoán, dự báo thời tiết,
hệ thống báo cháy, nhà thông minh (Smart home), hệ thống tƣới tiêu tự động trong
nông nghiệp, ... Ngoài ra, việc phát hiện sự kiện cũng rất hữu ích khi giám sát những
hệ thống phức tạp nhƣ: mạng viễn thông, giao thông hàng không. Việc phát hiện sự
kiện kịp thời, đồng thời thỏa một số điều kiện nhất định, sẽ "kích" hệ thống có phản
ứng, hành động thích hợp để đảm bảo sự vận hành tốt, an toàn của hệ thống đáp ứng
yêu cầu của ngƣời dùng.
Để phát hiện một sự kiện cần phải phân loại và định nghĩa kiểu/loại sự kiện: sự
kiện nguyên thủy (sự kiện đơn) hay sự kiện phức hợp (sự kiện tổng hợp). Một sự kiện
đơn là một đơn vị sự kiện (không thể tách rời). Một sự kiện phức hợp là một tổ hợp
các sự kiện nguyên thủy hay phức hợp theo một trật tự xác định, đƣợc đặc tả bởi một
biểu thức sự kiện tuân theo một ngôn ngữ sự kiện. Việc phát hiện sự kiện nguyên thủy
hay sự kiện phức hợp đƣợc thực hiện tuân theo thứ tự xuất hiện của chúng hoặc theo
cơ chế phát hiện sự kiện phức. Sau khi một sự kiện nguyên thủy hoặc phức hợp đƣợc
phát hiện và đồng thời thỏa điều kiện xác định thì hệ thống sẽ thực thi hành động thích
hợp nhƣ cảnh bảo ngƣời sử dụng, điều khiển các thành phần, thiết bị vận hành, ... đáp
ứng yêu cầu của hệ thống hoặc ngƣời sử dụng. Đây là nội dung mà học viên tập trung
nghiên cứu và triển khai ứng dụng mô phỏng trên nền tảng lý thuyết về sự kiện, ngôn
ngữ sự kiện, cơ chế phát hiện sự kiện và luật thực thi sự kiện ECA
(Event-Condition-Action).


2

1.2 Mục tiêu của luận văn:
Xây dựng hệ thống điều khiển tƣới tiêu nông nghiệp dựa trên việc giám sát sự

kiện về nhiệt độ và độ ẩm. Các giá trị của các sự kiện này đƣợc thu thập từ các cảm
biến (sensor) nhiệt độ và độ ẩm.
Về yêu cầu:
 Hệ thống đáp ứng yêu cầu cầu thu thập các thông tin về giá trị, trạng thái
của môi trƣờng (nhiệt độ, độ ẩm) đƣợc các cảm biến liên tục truyền về cho
hệ thống. Khi hệ thống phát hiện giá trị của sự kiện mà cảm biến gởi về
vƣợt qua ngƣỡng đƣợc quy định trƣớc, hệ thống xử lý sẽ ngay lập tức phát
tín hiệu để cảnh báo hoặc điều khiển các thiết bị khác đáp ứng yêu cầu của
hệ thống.
 Hệ thống cho phép ngƣời quản trị định nghĩa loại sự kiện, biểu thức sự
kiện, cơ chế phát hiện sự kiện và luật thực thi sự kiện. Đồng thời cho phép
thay đổi giá trị ngƣỡng (nhiệt độ và độ ẩm) đƣợc quy định trƣớc, do vậy
tạo nên một sự mềm dẻo trong việc giám sát hệ thống.
 Hệ thống nhận đƣợc báo động do các cảm biến gửi về, hệ thống sẽ tự động
đƣa ra những đáp ứng kịp thời, thích hợp với luật thực thi ECA tƣơng ứng.
Ví dụ nhƣ hệ thống nhận đƣợc thông tin báo là nhiệt độ tại một cảm biến
nào đó vƣợt quá ngƣỡng cho phép, hệ thống sẽ tự động gửi tín hiệu điều
khiển hệ thống bơm nƣớc, ...
Do đó, đề tài tập trung nghiên cứu, xây dựng một hệ thống giám sát sự kiện dự
trên việc phát hiện các sự kiện và xử lý chúng dựa trên tập luật ECA (Event Condition
Action) để ứng dụng vào việc giám sát nhiệt độ và độ ẩm từ đó điều khiển hệ thống
bơm phun sƣơng và hệ thống quạt gió, đƣợc ứng dụng trong việc phục vụ tƣới tiêu
trong nông nghiệp.


3

1.3 Đối tƣợng và phạm vi nghiên cứu:
Đối tƣợng nghiên cứu: nghiên cứu để đƣa ra cơ chế phát hiện các sự kiện, các
khái niệm cũng nhƣ các đối tƣợng cần nghiên cứu nhƣ sau :

 Sự kiện, loại sự kiện;
 Ngôn ngữ sự kiện (Event language);
 Cơ chế phát hiện sự kiện;
 Luật thực thi sự kiện ECA (Event Condition Action).
Cài đặt mô phỏng một hệ thống giám sát sự kiện đến từ các cảm biến (nhiệt
độ và độ ẩm) nhằm ứng dụng thiết lập một hệ thống điều khiển máy bơm nƣớc và quạt
thông gió.
Phạm vi nghiên cứu: luận văn chỉ tập trung nghiên cứu xử lý trên nhật ký sự kiện
đƣợc lƣu trữ trong CSDL nghĩa là không xử lý trực tuyến luồng sự kiện.
1.4 Các công trình liên quan:
Trong các hệ quản trị cơ sở dữ liệu quan hệ (database management systems
DBMSs) thông thƣờng, dữ liệu đƣợc tạo, cập nhật, xóa và tìm kiếm đảm bảo các tính
chất ACID của giao tác: tính nguyên tố, nhất quán, biệt lập và bền vững. Hệ quản trị
cơ sở dữ liệu quan hệ chỉ phục vụ chính cho mục tiêu lƣu trữ và tìm kiếm dữ liệu. Các
hệ quản trị này chỉ đáp ứng cho những thao tác (thêm, xóa, sửa và tìm kiếm dữ liệu)
đƣợc thực hiện bởi ngƣời sử dụng hoặc những chƣơng trình ứng dụng. Cơ chế dựa
trên yêu cầu (demand-based mechanism) này có nhiều hạn chế khi phải đáp ứng đƣợc
những đòi hỏi của những ứng dụng giám sát và điều khiển dựa trên sự kiện nhƣ: quan
sát những thay đổi trạng thái của cơ sở dữ liệu hoặc nhận biết đƣợc các biến cố hoặc
những sự kiện cần quan tâm mà chúng nằm bên ngoài phạm vi của DBMSs đồng thời
khởi động những hành động tƣơng ứng với các sự kiện/biến cố đó.
Những hệ quản trị cơ sở dữ liệu chủ động (active database management systems)
tập trung chính vào việc quản trị sự kiện, phát hiện sự kiện và thực thi các hành động


4

thích hợp với các sự kiện đƣợc phát hiện và khi những điều kiện đƣợc thỏa mãn.
Những tập luật ECA (Event-Condition-Action) đƣợc định nghĩa để xử lý: khi một sự
kiện đƣợc phát hiện, một điều kiện đƣợc thỏa thì một hành động đƣợc thực thi.

Cho phép định nghĩa tập luật, sự kiện, chọn lựa cơ chế phát hiện sự kiện và thực
thi hành động là một số đặc tính mới đƣợc cung cấp bởi ADBMS.
Có nhiều công trình nghiên cứu về những hệ quản trị cơ sở dữ liệu chủ động tập
trung vào chức năng chủ động trong ngữ cảnh của cả các DBMSs quan hệ và hƣớng
đối tƣợng. Phần sau đây, một giới thiệu một số DBMS chủ động:
1.4.1 HiPAC
HiPAC là một hệ quản trị cơ sở dữ liệu chủ động hƣớng đối tƣợng (OOADBMS)
mà cung cấp những khả năng CSDL chủ động thông qua tập luật ECA. HiPAC đề
xuất 3 loại sự kiện nguyên thủy:
Sự kiện thao tác dữ liệu, có liên quan đến phƣơng pháp thực thi trên nhiều đối
tƣợng. Hai bộ điều chỉnh sự kiện bắt đầu và kết thúc đƣợc sử dụng để chuyển đổi một
khoảng thời gian tùy ý thành hai sự kiện logic (logical events).
Sự kiện thời gian, có thể là tuyệt đối, tƣơng đối hay theo định kỳ. Một sự kiện
tuyệt đối đƣợc đề cập đến một thời điểm tuyệt đối cụ thể (ví dụ : 2:30:30, 1/6/2011).
Sự kiện tham chiếu xác định khoảng thời gian trống để tham chiếu đến những sự kiện
(Ví dụ : 45 giây sau khi sự kiện E1 xuất hiện ). Sự kiện định kỳ đƣợc quy định bởi một
sự kiện tham chiếu và thời gian định kỳ mà xuất hiện một cách định kỳ.
Sự kiện ngoài External Events), mà đƣợc định nghĩa và cung cấp rõ bởi những
ngƣời sử dụng hoặc những chƣơng trình ứng dụng.
Kiểu sự kiện phức hợp đƣợc hỗ trợ bởi HiPAC. Chúng đƣợc mô tả bằng cách
dùng ba toán tử: phân tách (disjunction), trình tự (sequence), và bao đóng closure).
Phân tách của hai sự kiện E1 và E2 đƣợc đƣa ra khi một trong hai sự kiện E1 hoặc


5

E2 xuất hiện.Trình tự của hai sự kiện E1 và E2 đƣợc đƣa ra nếu sự kiện E1 đã xảy ra
trƣớc khi sự kiện E2 xuất hiện. Bao đóng của sự kiện E1, đƣợc mô tả là [E1*;E2]
đƣợc đƣa ra khi E1 đã đƣợc xuất hiện một số lần tùy ý trƣớc khi sự kiện E2 xuất hiện.
1.4.2 Sentinel

Sentinel là một hệ quản trị cơ sở dữ liệu hƣớng đối tƣợng chủ động mà có hỗ trợ
những quy tắc ECA cả trong môi trƣờng tập trung và phân tán. Một ngôn ngữ đặc tả
sự kiện (SNOOP) đã đƣợc phát triển dùng để mô tả những sự kiện bao gồm: những sự
kiện cục bộ (những sự kiện nguyên thủy và phức hợp cục bộ), những sự kiện toàn cục
(những sự kiện nguyên thủy và phức hợp toàn cục). Cơ chế phát hiện hai loại sự kịên,
cụ thể là: Bộ phát hiện sự kiện cục bộ, Bộ phát hiện sự kiện toàn cục là đƣợc thực thi
để quan sát những hành vi của những sự kiện cục bộ cũng nhƣ những sự kiện toàn cục
thông qua ứng dụng.
Có 3 loại sự kiện nguyên thủy đƣợc hỗ trợ bởi Sentinel :
Sự kiện thao tác cơ sở dữ liệu, mà tƣơng ứng với những tác vụ trên cơ sở dữ
liệu. Mỗi thao tác trên một đối tƣợng có khả năng sẽ tạo ra một sự kiện nguyên thủy,
và chúng đƣợc chuyển thành những sự kiện dùng hai bộ mô tả sự kiện: bắt đầu và kết
thúc.
Sự kiện thời gian, mà bao gồm những sự kiện thời gian tuyệt đối và những sự
kiện thời gian tƣơng đối. Một sự kiện thời gian tuyệt đối đƣợc xác định nhƣ một giá
trị tuyệt đối của thời gian. Một sự kiện thời gian tƣơng đối đƣợc xác định bởi một sự
kiện tham chiếu và một khoảng thời gian.
Sự kiện ngoài External Events), nghĩa là những sự kiện đƣợc định nghĩa bởi
ngƣời sử dụng hoặc những chƣơng trình ứng dụng và đƣợc đăng ký với hệ thống.
Những sự kiện này cũng đƣợc gọi là những sự kiện toàn cục mà hỗ trợ những quy tắc
xử lý ECA trong hệ thống phân bố. Những sự kiện mở rộng đƣợc giả định là sẽ đƣợc
phát hiện bên ngoài hệ thống nhƣng đƣợc xuất hiện trong hệ thống với những thông
số của nó.


6

Những sự kiện phức hợp đƣợc tạo bằng cách áp dụng một tập hợp những toán tử
vào những sự kiện nguyên thủy và những sự kiện phức hợp đã đƣợc định nghĩa trƣớc.
Để hỗ trợ việc phát hiện sự kiện toàn cục, một định nghĩa sự kiện phức hợp cho phép

sự kết hợp của những sự kiện từ những ứng dụng khác nhau.
Những sự kiện và luật có thể đƣợc định nghĩa ở mức độ lớp (bên trong định nghĩa
một lớp) cũng nhƣ ở mức độ đối tƣợng ( bên ngoài của định nghĩa lớp). Một sự kiện
và luật ở mức lớp đƣợc áp dụng cho mọi đối tƣợng của lớp này, trong khi một sự kiện
và luật ở mức đối tƣợng là chỉ áp dụng cho các trƣờng hợp đối tƣợng đối tƣợng cụ thể.
Những thông số của sự kiện nguyên thủy là những thông số của hàm mà sự kiện
nguyên thủy này khai báo dựa trên thời điểm mà sự kiện xuất hiện. Những thông số
của sự kiện phức hợp là sự kết hợp những thông số của những thành phần cấu thành
những sự kiện. Bốn ngữ cảnh, cơ chế đƣợc hỗ trợ trong Sentinel để phát hiện sự kiện
phức hợp là: Recent, Chronicle, Continuous, Cumulative.
Trong Sentinel, tập luật đƣợc thực thi, những thực thi của luật đƣợc lồng vào
nhau và việc tính ƣu tiên để thực thi luật là đƣợc hỗ trợ. Hai chế độ ghép nối
(coupling) là trực tiếp (immediate) và trì hoãn (deferred) là đƣợc thực thi.
Cả 2 nghiên cứu trên HiPAC, Sentinel) đều hỗ trợ những chức năng cơ sở dữ liệu
chủ động. OODBMS chủ động đƣợc phát triển để đặc tả sự kiện và luật dựa trên
những sự kiện liên quan đến ứng dụng . Mục tiêu của luận văn này là ứng dụng những
công việc đã làm từ trƣớc với Sentinel, xây dựng bộ phát hiện sự kiện phức hợp, cũng
nhƣ cung cấp cho cho ngƣời dùng khả năng thêm tập luật từ ngoài ứng dụng và thực
thi những hành vi tƣơng ứng dựa với luật trên.


7

CHƢƠNG 2: SỰ KIỆN VÀ CƠ CHẾ PHÁT HIỆN SỰ KIỆN
2.1 Sự kiện
“Sự kiện” là một điều gì đó xảy ra tại một thời điểm (Ví dụ: chuyến bay VN-123
hạ cánh lúc 16 giờ, thao tác chèn một mẫu tin vào quan hệ R) mà có ý nghĩa đối với
ngƣời sử dụng. “sự kiện” đơn giản chỉ là sự xuất hiện mà nó đƣợc so sánh ngay lập
tức với mốc thời gian cụ thể đã đƣợc chọn. Sự xuất hiện của “Sự kiện” đƣợc diễn đạt
bằng việc dùng chi tiết thời gian. Do vậy, nó đƣợc ánh xạ đến những thời điểm khác

nhau trên dòng thời gian.
Một sự kiện đƣợc biểu diễn bởi một bộ dữ liệu nhƣ sau: thời điểm xuất hiện sự
kiện, định danh, các tham số của sự kiện.
Một sự kiện đƣợc rời rạc hóa và gắn liên với 1 thời điểm. Nếu một sự kiện bất kỳ
đƣợc phát hiện tại thời điểm to nằm giữa 2 giây liên tiếp tsn và tsn+1 sẽ đƣợc gán thời
điểm tsn+1.
Thƣờng một sự kiện nhƣ là “ấn một nút” có nhiều sự xuất hiện tƣơng ứng với
những thời điểm khác nhau liên quan đến nút đƣợc ấn. Do vậy, sự xuất hiện của các
sự kiện thuộc một loại sự kiện cho trƣớc có thể đƣợc mô tả nhƣ một quan hệ mà ánh
xạ loại sự kiện đó cho sự xuất hiện của nó. Nói cách khác, sự kiện cũng có thể đƣợc
diễn đạt nhƣ một hàm đúng với đối tƣợng sự kiện và thời gian xuất hiện.
Điều quan trọng là phải phân biệt những điều kiện từ những “Sự kiện”. Điều kiện
là một hàm đúng sai cho giá trị của đối tƣợng, nhƣ là “nhiệt độ trên 500F”. Một điều
kiện là đúng trong 1 khoảng thời gian.Ví dụ : Nhiệt độ duy trì trên 50oC từ 1h – 3h
pm, vào ngày 1/8/2011. Những điều kiện xác định „trạng thái‟ và do đó đƣợc dùng
trong những quy luật ECA nhƣ cảnh báo sự chuyển đổi. Khởi động sự chuyển đổi khi
những sự kiện của nó xuất hiện nhƣng chỉ khi điều kiện cảnh báo là thỏa.
Ví dụ : Khi 1 ngƣời ngồi vào xe hơi Sự kiện), nếu nhiệt độ trên 80‟F Điều kiện),
khi đó bật máy điều hòa hành động này dẫn đến trạng thái khác).


8

Một sự kiện có ba khía cạnh :
+ Xuất hiện là khi dữ liệu có ý nghĩa tƣơng ứng với nó đƣợc thu thập
+ Phát hiện là lúc mà hệ thống nhận ra sự hiện diện của các dữ liệu tƣơng ứng
với sự kiện đó
+ Báo hiệu là việc gởi một ngắt interrupt) đến bộ đánh giá điều kiện để thông
báo rằng sự kiện đã xuất hiện và yêu cầu xử lý nó.
2.2 Giám sát sự kiện:

Giám sát sự kiện có chức năng cảm nhận, thu thập và phân tích dữ liệu. Giám sát
sự kiện chủ yếu là thu thập các dữ liệu về sự kiện, nhận đƣợc hoặc đƣợc nạp từ cảm
biến, quá trình thu thập này còn đƣợc gọi là quan sát và lƣu trữ vào cơ sở dữ liệu có
tên là nhật ký lọc sự kiện. Nhật ký lọc sự kiện là tập hợp con của lịch sử sự kiện. Lịch
sử sự kiện bao gồm tất cả các quan sát của sự kiện. Nếu giám sát sự kiện nhận dữ liệu
sự kiện từ cảm biến thì gọi là phản ứng (reactive). Ngƣợc lại nếu giám sát sự kiện tìm
nạp dữ liệu sự kiện từ cảm biến thì gọi là chủ động (proactive). Giám sát sự kiện có
thể đƣợc thực hiện bằng phần mềm, phần cứng hoặc lai giữa phần cứng và phầm
mềm.
Cảm biết là một thiết bị dùng để đo đạt giá trị của đối tƣợng cần đƣợc giám sát.

Hình 2.1: Cấu trúc giám sát sự kiện


9

Các quan sát đƣợc phân tích và cung cấp kết quả cho các thành phần xử lý khác.
Các thành phần xử lý này có hành động phụ thuộc vào kết quả phân tích. Hình 2.1 thể
hiện hai xu hƣớng của giám sát sự kiện. Trong (a), giám sát off-line là giám sát sự
kiện không thực hiện phân tích, trong khi đó ở (b) giám sát on-line là giám sát sự kiện
thực hiện tất cả các phân tích. Trƣờng hợp (c) giám sát lai giữa phân tích on-line và
off-line, trong đó giám sát sự kiện thực hiện một số phân tích.

Hình 2.2: Quá trình giám sát sự kiện
Một khía cạnh khác về giám sát sự kiện đƣợc mô tả trong hình. 2.2. Thành phần
giám sát sự kiện là quá trình thu thập các sự kiện (từ nguồn phát sự kiện), phân tích
chúng và báo hiệu cho thành phần xử lý sự kiện khi sự kiện xảy ra, mỗi bộ phận
(nguồn phát sự kiện, giám sát sự kiện, thành phần xử lý) có thể nằm trong một không
gian địa chỉ riêng biệt, hoặc có thể đƣợc tách ra trên các thành phần vật lý khác nhau
nằm trong một hệ thống phân tán.

Một dạng phân tích on-line đƣợc dùng trong phát hiện sự kiện on-line là phát
hiện các mẫu trong quá trình quan sát. Phát hiện dựa trên mẫu sự kiện này chính là
phát hiện sự kiện trong cơ sở dữ liệu hoạt động active databases). Trong cơ sở dữ liệu
hoạt động, các thành phần sự kiện đại diện là các quá trình thực hiện phát hiện mẫu sự
kiện, sự kiện tổng hợp xuất hiện thì đƣợc cấu tạo bởi sự xuất hiện của các sự kiện
thành phần.
Mẫu sự kiện đơn giản nhất bao gồm các đặc điểm của duy nhất một sự kiện xuất
hiện, trong đó phân tích có thể đƣợc loại bỏ bằng cách cho phép thu thập dữ liệu thông
báo các hành động trực tiếp khi xảy ra sự kiện nguyên thủy.


10

Mục đích của việc giám sát sự kiện là để xác định những sự kiện cần quan sát.
Trong cơ sở dữ liệu tích cực, các sự kiện trong cơ sở dữ liệu đƣợc giám sát. Nếu một
sự kiện đƣợc phát hiện, thì sau đó các luật có liên quan đƣợc kích hoạt. Những luật
này có thể đƣợc sử dụng để đảm bảo tính nhất quán của một giao dịch trong cơ sở dữ
liệu. Những hành động có thể đƣợc thực hiện ví dụ nhƣ hủy bỏ một giao dịch nếu nó
làm phá vở tính nhất quán của cơ sở dữ liệu.
2.3 Phân loại sự kiện:
Sự kiện đƣợc phân loại thành các loại sự kiện đơn và sự kiện phức nhƣ sau:
Sự kiện

Sự kiện đơn

BOB

EOB

Giao

dịch

Truy
xuất

Sự kiện
CSDL

Thêm
mới

Sự kiện phức

Sự kiện
thời gian

Xóa

Cập
nhật

Sự kiện
chi tiết

Tuyệt
đối

Tƣơng
đối


Hình 2.3: phân loại sự kiện
2.3.1 Sự kiện đơn:
Là những sự kiện đƣợc xác định trƣớc trong hệ thống. Bao gồm: những sự kiện
cơ sở dữ liệu, khối bắt đầu (BOB), khối kết thúc (EOB), những sự kiện thời gian,
những sự kiện chi tiết. BOB và EOB là những sự kiện mà xuất hiện bắt đầu và kết
thúc của việc thực thi một khối câu lệnh.


11

Những sự kiện cơ sở dữ liệu: liên quan đến những thao tác trên cơ sở dữ liệu
nhƣ: giao dịch, truy cập, thêm mới, cập nhật và xóa.
- Truy xuất (access): sự kiện này xuất hiện khi dữ liệu đƣợc truy xuất. Những
tham số của sự kiện truy xuất “bắt đầu” bao gồm (tên liên quan, thuộc tính). Những
tham số của sự kiện truy xuất “kết thúc” bao gồm (tên liên quan, những bộ đƣợc truy
xuất).
- Thêm mới (insert): Xuất hiện khi ta insert dữ liệu vào CSDL. Những tham số
bắt đầu insert, kết thúc insert (tên liên quan, dữ liệu đƣợc insert).
- Xóa (delete): Xuất hiện khi xóa dữ liệu từ CSDL. Những tham số của “Bắt
đầu” xóa (tên liên quan, thuộc tính xóa). Những tham số của sự kiện “Kết thúc” xóa
(tên liên quan, dữ liệu bị xóa).
- Cập nhật (update): Xuất hiện khi cập nhật dữ liệu trong CSDL.Về lý thuyết,
có thể giả sử thao tác cập nhật là “xóa” và “chèn”. Tuy nhiên, “cập nhật” là một sự
kiện đơn bởi vì cập nhật không phải là xóa dữ liệu trong CSDL chỉ đơn giản là ghi đè.
Nhƣ vậy, thao tác cập nhật ngụ ý rằng mã đối tƣợng (có hoặc không có giá trị) vẫn
không bị thay đổi. Tuy nhiên, nó có thể đƣợc thay thế bởi một trình tự là “xóa” xong
rồi “thêm mới”.
Ví dụ : một khối câu lệnh [Bắt đầu giao dịch, delete, insert, Kết thúc giao dịch] để
mô phỏng thao tác cập nhật. Tham số của sự kiện bắt đầu cập nhật, và kết thúc cập
nhật bao gồm tên quan hệ, và dữ liệu đƣợc cập nhật.

Bắt đầu và kết thúc của khối (BOB và EOB):
BOB và EOB là những sự kiện mà tƣơng ứng với việc bắt đầu và kết thúc của
một khối lệnh. Khối lệnh: là bao gồm những hàm, thủ tục, giao dịch. Thông thƣờng
nó là những lệnh trong CSDL nhƣ: truy xuất, thêm mới, xóa, và sửa hoặc là một giao
dịch hoặc một thủ tục bất kỳ.
Tham số của sự kiện nguyên thủy là (loại sự kiện, time-stamp, block-id, tham


12

số của chính block đó). Nhƣ là, những tham số BOB chính là những tham số đầu vào,
những tham số EOB chính là tham số đầu ra của khối đó. Block-id chính là tham số
mà xác định loại thao tác nhƣ: chèn, xóa, hoặc tên của thủ tục. Trong trƣờng hợp nó là
một giao dịch thì giá trị của nó xác định đó là giao dịch duy nhất.
Hầu hết những thao tác trên CSDL nhƣ: thêm vào, xóa v.v…không diễn ra
ngay lập tức mà mất một khoảng thời gian để nó thực thi. Bởi vậy, không thể xem nó
nhƣ là một sự kiện nguyên thủy hoặc một sự kiện đã đƣợc hoàn tất. Việc dùng BOB
và EOB, giúp chúng ta có thể xác định đƣợc hai sự kiện, bắt đầu và kết thúc của mỗi
thao tác hoặc nhiều thao tác liên tiếp nhau bất kỳ (ví dụ: giao dịch) đã đƣợc xác định.
Tƣơng ứng với “pre” và “post” của những hệ thống khác nhƣ OSAM*.
“Bắt đầu” là một điểm trƣớc thao tác đầu tiên và sau khi đã vào khối lệnh và
“Kết thúc” là một điểm sau thao tác cuối cùng nhƣng trƣớc khi ra khỏi khối lệnh hoặc
chuỗi những thao tác. Bất kỳ lúc nào, việc gọi thao tác thực thi thì xuất hiện “Sự kiện”
bắt đầu, khi thực hiện thành công thì xuất hiện “Sự kiện” kết thúc. Tuy nhiên, trong
trƣờng hợp thao tác bị hủy, thao tác bị ngƣng mà không xuất hiện “Sự kiện” kết
thúc.Ta cũng quy định rằng khi một thao tác không có “Sự kiện” bắt đầu và kết thúc
thì giả định là xuất hiện “Sự kiện” kết thúc.
Những sự kiện thời gian: đề cập đến thời gian, gồm có hai loại: những sự kiện
tuyệt đối và tƣơng đối.
Những sự kiện tuyệt đối: là một thời điểm, thời gian tuyệt đối. Ví dụ: 5p.m.

Những sự kiện tƣơng đối: đƣợc xác định với việc tham chiếu đến khoảng thời gian cụ
thể. Ví dụ: 5 giây sau khi xuất hiện sự kiện E mà E là sự kiện nguyên thủy hay phức
hợp.
Sự kiện thời gian là một đối tƣợng của lớp “Sự kiện” thời gian. Để xác định
“Sự kiện” thời gian, chúng ta cần phải xác định điểm tƣơng ứng trên mốc thời gian.
Bởi vì nó là mốc vô hạn, bất kỳ điểm nào trên nó chỉ đƣợc xác định bằng điểm đƣợc
tham chiếu mà đã đƣợc xác định trƣớc.


13

Ví dụ: “Lịch” đã đƣợc sử dụng để nói đến thời gian và có một thời điểm tham
chiếu rõ ràng. Nó có thể có những “lịch” với những thời điểm tham chiếu khác nhau
Tƣơng tự: những đơn vị thời gian nhƣ là ngày, tháng, năm).
Chuỗi thời gian bao gồm những đơn vị thời gian và đƣợc dùng để chỉ định
một điểm trên mốc thời gian. Ví dụ: (h,m,s)mm/dd/yy là một chuỗi thời gian.
Ngoài ra, một dạng chuỗi thời gian bất kỳ có thể đƣợc dùng cho tập luật của
lịch và đƣợc định nghĩa trƣớc trong hệ thống.Ví dụ: (h:m:s)dd/mm/yy là một chuỗi
thời gian đƣợc sử dụng ở Châu âu.
Một cách tiếp cận khác để đặc tả thời gian là cung cấp một thời điểm tham
chiếu cũng nhƣ để trống những đơn vị thời gian khác. Thời điểm tham chiếu nên đƣợc
chọn là thời điểm bất kỳ trên mốc thời gian. Ví dụ: nó có thể ngay lập tức khi sự kiện
diễn ra, hoặc có thể ngay khi “lịch” đƣợc bắt đầu.
Nhƣ vậy chuỗi thời gian có thể là giá trị thời gian tuyệt đối của mốc thời gian
hoặc nó có thể trình bày khoảng thời gian trống.
Những “Sự kiện” tuyệt đối:
“Sự kiện” tuyệt đối là đƣợc quy định với giá trị thời gian tuyệt đối và đƣợc
trình bày nhƣ sau: <time string>, định dạng nhƣ sau : < hh/mm/ss)mm/dd/yy>
Ví dụ 1: Ngày 8 hàng tháng có thể đƣợc đặc tả nhƣ sau : < 00:00:00)08/*/*>
Ví dụ 2 : 2 p.m, vào 15/3/2011 là đƣợc viết nhƣ sau : <(14:00:00)03/15/2011>

Trong việc trình bày một sự kiện thời gian tuyệt đối, một trƣờng trong chuỗi
thời gian có thể chứa 1 dấu “*” tƣơng ứng với giá trị bất kỳ cho trƣờng đó. Điều này
đặc biệt có ích trong việc chỉ ra những sự kiện có nhiều thời điểm trên dòng thời gian.
Ví dụ 3: Trong ứng dụng tại Quỹ Trợ Vốn CEP, để in những báo cáo ở chi
nhánh lúc 5h mỗi ngày. Đặc tả sự kiện nhƣ sau : < 17:00:00)*/*/*>


×