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

Nghiên cứu một số vấn đề về đồng bộ dữ liệu trên thiết bị cầm tay

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 (2.21 MB, 125 trang )



ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ




Nguyê
̃
n Đăng Thă
́
ng





NGHIÊN CỨU MÔ
̣
T SÔ
́

́
N ĐÊ
̀

̀

ĐNG B D LIỆU TRÊN THIT B CM TAY










LUẬN VĂN THẠC SĨ















Hà Nội – 2009


ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ





Nguyê
̃
n Đăng Thă
́
ng






NGHIÊN CỨU MÔ
̣
T SÔ
́

́
N ĐÊ
̀

̀

ĐNG B D LIỆU TRÊN THIT B CM TAY






Ngành : Công nghệ Thông tin
Chuyên ngành : Hệ thống Thông tin
Mã số : 60 48 05



LUẬN VĂN THẠC SĨ


NGƢỜI HƢỚNG DẪN KHOA HỌC:
PGS. TS. TRNH NHT TIN








Hà Nội - 2009

ii
MỤC LỤC
Trang
Trang phụ bìa
Lời cam đoan i
Mục lục ii
Bảng ký hiệu và thuật ngữ viết tắt iv
Danh mục hình vẽ vi

MỞ ĐẦU 1
Chƣơng 1: TỔNG QUAN VỀ ĐỒNG BỘ DỮ LIỆU 3
1.1 CÁC KHÁI NIỆM 3
1.2 ĐỒNG BỘ DỮ LIỆU 8
1.2.1 Khái niệm Đồng bộ dữ liệu 8
1.2.2 Các kiểu đồng bộ 9
1.2.3 Các vấn đề của đồng bộ dữ liệu 13
1.3 ĐỒNG BỘ DỮ LIỆU OMA-SYNCML 17
1.3.1 Tổng quan 17
1.3.2 Đồng bộ dữ liệu OMA-SyncML 19
1.3.3 Ứng dụng của đồng bộ dữ liệu OMA-SyncML 20
1.4 CÁC CÔNG NGHỆ LIÊN QUAN 21
1.4.1 Ngôn ngữ XML 21
1.4.2 Ngôn ngữ WML 23
1.4.3 Giao thức WAP 24
Chƣơng 2. KIẾN TRÚC VÀ GIAO THỨC CỦA ĐỒNG BỘ DỮ LIỆU OMA –
SYNCML 27
2.1 KIẾN TRÚC CỦA ĐỒNG BỘ DỮ LIỆU OMA-SYNCML 27
2.2 GIAO THỨC ĐỒNG BỘ OMA - SYNCML 31
2.2.1 Các thực thể sử dụng giao thức đồng bộ 31
2.2.2 Các pha của giao thức đồng bộ dữ liệu 32
2.2.3 Truyền dữ liệu lớn trong đồng bộ OMA-SyncML 37
2.3 GIAO THỨC ĐẶC TẢ OMA-SYNCML 39
2.3.1 Các định danh trong OMA-SYNCML 39
2.3.2 Các phần tử giao thức đặc tả 41
2.4 CÁC MÔ HÌNH ĐỒNG BỘ DỮ LIỆU OMA-SYNCML 44
2.4.1 Đồng bộ hai chiều (Two-way sync) 44
2.4.2 Đồng bộ chậm (slow sync) 46
2.4.3 Đồng bộ một chiều từ phía máy khách (One-way sync) 48
2.4.4 Đồng bộ một chiều từ phía máy chủ (One-way sync) 49

2.4.5 Đồng bộ làm mới từ phía máy khách (Refresh sync from client) 49
2.4.6 Đồng bộ làm mới từ phía máy chủ (Refresh sync from server) 50
2.4.7 Đồng bộ cảnh báo từ máy chủ (Server Alerted Sync) 50
Chƣơng 3: MÔ HÌNH QUẢN LÝ THIẾT BỊ OMA-SYNCML 51
3.1 MÔ HÌNH QUẢN LÝ THIẾT BỊ OMA-SYNCML 51
3.2 CÔNG NGHỆ QUẢN LÝ THIẾT BỊ OMA 53
3.3 GIAO THỨC QUẢN LÝ THIẾT BỊ 55
3.3.1. Quản lý chức năng 55
3.3.2. Các pha của giao thức quản lý thiết bị 58
3.3.3. Các đặc tính bảo mật 59
3.4 KHUNG QUẢN LÝ THIẾT BỊ 60
Chƣơng 4: CƠ CHẾ BẢO MẬT TRONG ĐỒNG BỘ DỮ LIỆU OMA-SYNCML
62

iii
4.1 CƠ CHẾ XÁC THỰC TRONG ĐỒNG BỘ DỮ LIỆU OMA-SYNCML 62
4.1.1 Các vấn đề xác thực 62
4.1.2 Xác thực trong đồng bộ OMA 69
4.2 BẢO MẬT ĐƢỜNG TRUYỀN TRONG ĐỒNG BỘ OMA 70
4.2.1 Bảo mật trong lớp giao vận sử dụng công nghệ SSL 70
4.2.2 Bảo mật lớp giao vận (TLS) 72
4.2.3 Bảo mật trong lớp giao vận mạng không dây (WTLS) 73
4.3 PKI TRONG ĐỒNG BỘ DỮU LIỆU OMA-SYNCML 74
Chƣơng 5: CÀI ĐẶT ỨNG DỤNG MPE (Mobile Push Email) 80
5.1 ĐẶC TẢ YÊU CẦU ỨNG DỤNG 80
5.1.1 Ứng dụng Mobile Push Email 80
5.1.2 Đặc tả yêu cầu 81
5.1.3 Tổng hợp các chức năng hệ thống 83
5.1.4 Từ điển thuật ngữ trong ứng dụng Mobile Push Email 83
5.2 PHÂN TÍCH THIẾT KẾ ỨNG DỤNG MPE 85

5.2.1 Phát triển mô hình ca sử dụng 85
5.2.1 Phân tích ca sử dụng 95
5.2.3 Mô hình phân tích 105
5.2.4 Kiến trúc hệ thống 110
KẾT LUẬN 114
TÀI LIỆU THAM KHẢO viii


iv
Bảng ký hiệu và thuật ngữ viết tắt

Viết tắt
Định nghĩa
2G
Thế hệ di động thứ 2 (Second Generation)
3G
Thế hệ di động thứ 3 (Third Generation)
CDC
Định dạng nối với thiết bị (Connected Device Configuration)
CDMA
Đa truy nhập phân chia kênh theo mã (Code Division Multiple Access)
DTD
Định nghĩa kiểu tài liệu (Document Type Definition)
DDF
Kiến trúc đặc tả thiết bị ( Data Definition Framework)
E-GPRS
Dịch vụ GPRS nâng cao (Enhanced GPRS)
EDGE
Môi trƣờng mạng dữ liệu GSM nâng cấp (Enhanced Data GSM
Environment)

EMS
Dịch vụ nhắn tin nâng cấp (Enhanced Messaging Services)
GUID
Định danh toàn cục duy nhất (Global Unique Identifier)
GPRS
Dịch vụ vô tuyến gói tổng hợp đƣợc phát triển trên nền tảng công nghệ
thông tin di động toàn cầu (GSM) (General Packet Radio Service)
GSM
Hệ thống di động toàn cầu, là chuẩn phổ biến cho các thiết bị di động trên
thế giới (Global System for Mobile communications)
HTTP
Giao thức truyền siêu văn bản liên kết (HyperText Transfer Protocol)
IMEI
Định danh quốc tế cho thiết bị di động (Internationl Mobile Equipment
Identifier)
IETF
IETF (Internet Engineering Task Force) tạm gọi là nhóm đặc trách kỹ
thuật internet, là một tổ chức gồm 80 nhóm làm việc có chức năng nghiên
cứu, phát triển, và quyết định các chuẩn dùng trong internet.
J2ME
Java 2 Micro Edition: Ngôn ngữ vi lập trình Java 2
LUID
Định danh cục bộ duy nhất (Local Unique Idenitifer)
MSC
Biểu đồ trình tự thông điệp (Message Sequence Chart)
MSG
Thông điệp (Message)

v
MIDP

Mobile Information Device Profile: Thiết bị lƣu trữ thông tin di động
MMS
Multimedia Messaging Service: là dịch vụ tin nhắn đa phƣơng tiện
OBEX
Giao thức trao đổi đối tƣợng (OBject Exchange protocol)
OMA
Liên minh di động mở (Open Mobile Alliance) là một diễn đàn công
nghiệp đƣợc thành lập năm 2002, tập hợp các nhà cung cấp, sản xuất
mạng, thiết bị đầu cuối, cung cấp dịch vụ và nội dung. Nhiệm vụ của
OMA là phát triển các chuẩn mở về dịch vụ trong lĩnh vực mạng thông
tin di động.
PALM
Tên một thiết bị cầm tay, sử dụng hệ điều hành palm
Palm
Hệ điều hành palm
Pocket PC
Một loại thiết bị máy tính (thiết bị cầm tay) có kích thƣớc nhỏ, sử dụng
hệ điều hành window mobile.
PIM
Dữ liệu quản lý thông tin cá nhân (Personal information management
(PIM))
PDAs
Thiết bị trợ giúp cá nhân số (Personal Device Assistances)
SyncML
Ngôn ngữ đánh dấu mở rộng (Synchronization Markup Language)
SMS
Dịch vụ nhắn tin ngắn (Short Message Service)
SMSC
Trung tâm dịch vụ nhắn tin ngắn (Short Message Service Center)
URI

Là chuỗi định danh tên hoặc nguồn trên internet (Uniform Resource
Identifier)
URL
Là chuỗi dùng để tham chiếu tới tài nguyên internet (Uniform Resource
Locator)
XML
Ngôn ngữ đánh dấu mở rộng (Extensible Markup Language)
WAP
Giao thức ứng dụng không dây (Wireless Application Protocol)
WSP
Giao thức phiên làm việc không dây (Wireless Session Protocol)
W3C
Hiệp hội WWW (World Wide Web Consortium)
WDP
Giao thức gói dữ liệu không dây (Wireless Datagram Protocol)
WLAN
Mạng cục bộ không dây (Wireless Local Area Network)
WML
Wireless Markup Language: Ngôn ngữ đánh dấu không dây


vi
Danh mục hình vẽ


Hình 1. 1 Mô hình một - tới - một 9
Hình 1. 2 Mô hình nhiều - tới - nhiều 10
Hình 1. 3 Mô hình nhiều - tới - nhiều 11
Hình 1. 4 Mô hình lai nhiều - tới - một và nhiều – tới nhiều 12
Hình 1. 5 Xác định một xung đột cập nhật 15

Hình 1. 6 Thị trường đồng bộ dữ liệu bị phân mảnh từ giữa năm 1999 tới 2000 [6] 18
Hình 1. 7 Mô hình tổng quan wap [3] 24

Hình 2. 1 Đồng bộ dữ liệu OMA-SyncML [16] 27
Hình 2. 2 Kiến trúc các lớp của SyncML và vị trí của giao thức đồng bộ trong toàn bộ
khối phần mềm trên các thiết bị mobile và máy chủ mạng. [6] 28
Hình 2. 3 Các thành phần sử dụng giao thức đồng bộ [16] 31
Hình 2. 4 Số các gói trong phiên đồng bộ 32
Hình 2. 5 Biểu đồ tuần tự gửi đối tượng dữ liệu kích thước lớn 37
Hình 2. 6 Biểu đồ tuần tự ví dụ sử dụng nhiều thông điệp trong gói [16] 38
Hình 2. 7 Biểu đồ tuần tự trong đồng bộ 2 chiều 44
Hình 2. 8 Đồng bộ chậm trong môi trường nhiều thiết bị [6] 46
Hình 2. 9 Biểu đồ tuần tự đồng bộ 1 chiều từ phía máy khách 48
Hình 2. 10 Biểu đồ tuần tự đồng bộ 1 chiều từ phía máy chủ 49
Hình 2. 11 Biểu đồ tuần tự đồng bộ cảnh báo từ máy chủ 50

Hình 3. 1 Kiến trúc OMA DM [6] 52
Hình 3. 2 Các pha khởi nạp và các phiên quản lý thiết bị (DM) [6] 52
Hình 3. 3 Các pha khởi nạp [6] 54
Hình 3. 4 Các pha của phiên quản lý thiết bị OMA [6] 58
Hình 3. 5 Các đặc tính bảo mật gắn với các pha quản lý thiết bị OMA [6] 59
Hình 3. 6 Ví dụ các cây quản lý [6] 60

Hình 4. 1 Sơ đồ chữ ký RSA 64
Hình 4. 2 Băm thông điệp 65
Hình 4. 3 Ký trên bảng băm 65
Hình 4. 4 Truyền dữ liệu thông tin cần gửi 65
Hình 4. 5 Xác minh chữ ký 66
Hình 4. 6 Tiến hành băm thông điệp đi kèm 66
Hình 4. 7 Kiểm tra tính toàn vẹn của thông điệp 66

Hình 4. 9 Kỹ thuật đăng ký 4-bước (4-pass) [9] 77
Hình 4. 10 Cây quản lý đối tượng [9] 79

Hình 5. 1 Mô hình tổng quan ca sử dụng 87
Hình 5. 2 Biểu đồ tuần tự thiết lập tài khoản email 95
Hình 5. 3 Biểu đồ lớp phân tích thực thi ca sử dụng thiết lập tài khoản email 95
Hình 5. 4 Biểu đổ tuần tự chức năng quản lý danh bạ 96
Hình 5. 5 Biểu đồ lớp phân tích thực thi ca sử dụng quản lý sổ địa chỉ 96
Hình 5. 6 Biểu đồ tuần tự ca sử dụng gửi email 97
Hình 5. 7 Biểu đồ lớp phân tích thực thi ca sử dụng gửi email 97
Hình 5. 8 Biểu đồ tuần tự hệ thống xử lý tin nhắn (email) 98
Hình 5. 9 Biểu đồ lớp phân tích thực thi ca sử dụng xử lý tin nhắn 99
Hình 5. 10 Biểu đồ tuần tự hệ thống quản lý hộp thư 100

vii
Hình 5. 11 Biểu đồ lớp phân tích thực thi ca sử dụng quản lý hòm thư 100
Hình 5. 12 Biểu đồ tuần tự hệ thông quản lý tài khoản 101
Hình 5. 13 Biểu đồ lớp phân tích thực thi ca sử dụng quản lý tài khoản 101
Hình 5. 14 Biểu đồ tuần tự hệ thống kiểm tra email mới 102
Hình 5. 15 Biều đồ lớp phân tích thực thi ca sử dụng kiểm tra email (polling email) 102
Hình 5. 16 Biều đồ tuần tự ca sử dụng push email 103
Hình 5. 17 Biều đồ lớp phân tích thực thi ca sử dụng push email 103
Hình 5. 18 Biểu đồ tuần tự ca sử dụng gửi email tới máy chủ bên ngoài 104
Hình 5. 19 Biểu đồ lớp phân tích thực thi ca sử dụng gửi email tới máy chủ bên ngoài 104
Hình 5. 20 Mô hình quan hệ thực thể (ERD) 105
Hình 5. 21 Mô hình logic triển khai ứng dụng MPE 112







1
MỞ ĐẦU

Trong nhiều năm trở lại đây, các thiết bị điện thoại với hạn chế về dung
lƣợng lƣu trữ, khả năng xử lý dữ liệu đang dần trở lên phổ dụng vì tính tiện dụng
và nhu cầu, thông tin liên lạc của ngƣời dùng. Cùng với xu hƣớng phát triển của
công nghệ, các thiết bị này cũng đang phát triển, đƣa ra rất nhiều tính năng và tiện
ích. Giờ đây, các thiết bị điện thoại cầm tay không chỉ hỗ trợ các tính năng nghe,
gọi, nhắn tin, lƣu trữ danh bạ, mà ngày càng trở thành các công cụ quản lý, nhƣ
quản lý thông tin cá nhân (PIM): danh bạ, sổ địa chỉ, lịch làm việc, tích hợp các
ứng dụng gửi nhận mail, trình duyệt, …
Cùng với đó, nhu cầu công việc đòi hỏi tính nhanh, tiện dụng, di động, mọi
lúc mọi nơi đã thúc đẩy các doanh nhân, nhân viên văn phòng và doanh nghiệp,
thậm chí là những cá nhân hay tƣ doanh nhỏ tìm cách sử dụng các tiện ích trên trên
những thiết bị cầm tay nhƣ điện thoại di động, máy tính xách tay có kết nối
internet để giao dịch với đối tác, liên hệ với nhân viên, đàm phán với khách
hàng
Chính vì nhu cầu của ngƣời sử dụng, và sự phát triển nhanh chóng của các
thiết bị đầu cuối, đặt ra những yêu cầu cho các nhà cung cấp dịch vụ trong việc hỗ
trợ, cung cấp nhiều ứng dụng, tiện ích phục vụ nhu cầu đa dạng của ngƣời dùng.
Có thể nói, giao tiếp giữa internet và thiết bị mobile nhằm trao đổi, chia sẻ, xử lý
thông tin, thực hiện các giao dịch, tác vụ vào bất cứ thời gian, địa điểm nào đang là
chìa khóa mở ra nhiều tiềm năng phát triển các dịch vụ, tiện ích cả về giải trí lẫn
thƣơng mại, và đem lại nhiều giá trị sử dụng cho ngƣời dùng đầu cuối.
Xuất phát từ nhu cầu thực tế, và yêu cầu của đơn vị đang công tác nhằm đẩy
mạnh nghiên cứu, triển khai các ứng dụng, áp dụng các công nghệ trên thiết bị di
động, luận văn này đƣợc thực hiện với mục đích:
 Tìm hiểu, các khái niệm, định nghĩa, các mô hình của đồng bộ dữ liệu

 Nghiên cứu giao thức, kiến trúc đặc tả của đồng bộ dữ liệu OMA-SyncML
 Nghiên cứu đặc tả, giao thức quản lý thiết bị trong đồng bộ dữ liệu OMA-
SyncML
 Nghiên cứu cơ chế đảm bảo an toàn thông tin trong đồng bộ dữ liệu OMA-
SyncML
Áp dụng các kết quả nghiên cứu và thực hiện cài đặt ứng dụng trên các thiết
bị cầm tay sử dụng công nghệ đồng bộ dữ liệu OMA-SyncML, đó là: Xây dựng
ứng dụng MPE (Mobile Push Email), cung cấp các tính năng giúp ngƣời dùng thực
hiện gửi, nhận, quản lý, đồng bộ email trên các thiết bị điện thoại di động.


2
Với giới hạn những vấn đề tìm hiều và nghiên cứu nhƣ trên, luận văn bao
gồm 5 chƣơng:
Chƣơng 1: Tổng quan về đồng bộ dữ liệu
Giới thiệu các khái niệm về đồng bộ dữ liệu, các kiểu đồng bộ dữ liệu, các
vấn đề phát sinh trong quá trình đồng bộ dữ liệu; Giới thiệu khái niệm đồng bộ dữ
liệu OMA-SyncML, các ứng dụng của đồng bộ dữ liệu OMA-SyncML; Giới thiệu
một số công nghệ, vấn đề liên quan tới đồng bộ dữ liệu.
Chƣơng 2: Kiến trúc và giao thức của đồng bộ dữ liệu OMA-SyncML:
Trình bày kiến trúc đồng bộ dữ liệu OMA-SyncML; Giao thức của đồng bộ
OMA-SyncML; Giao thức đặc tả của OMA-SyncML; Các mô hình đồng bộ
OMA-SyncML;
Chƣơng 3: Mô hình quản lý thiết bị OMA-SyncML:
Trình bày mô hình quản lý thiết bị OMA-SyncML; Công nghệ quản lý thiết
bị OMA-SyncML; Giao thức quản lý thiết bị OMA-SyncML; Khung quản lý thiết
bị OMA-SyncML.
Chƣơng 4: Cơ chế bảo mật trong đồng bộ dữ liệu OMA-SyncML
Trình bày cơ chế xác thực trong đồng bộ OMA-SyncML; Các vấn đề về bảo
mật đƣờng truyền trong đồng bộ dữ liệu OMA; PKI trong đồng bộ dữ liệu OMA-

SyncML.
Chƣơng 5: Cài đặt ứng dụng MPE (Mobile Push Email)
Trình bày đặc tả yêu cầu ứng dụng; Phân tích thiết kế hệ thống ứng dụng MPE
(Mobile Push Email).


3
Chƣơng 1: TỔNG QUAN VỀ ĐỒNG BỘ DỮ LIỆU
1.1 CÁC KHÁI NIỆM
 Giao thức hỏi- đáp không đồng bộ (Unsynchronous request-response protocol):
Giao thức trao đổi thông điệp giữa 2 máy tính trong đó một máy đƣa ra câu
hỏi (request) và máy kia trả lời, và máy đƣa ra câu hỏi có thể không cần phải có
câu trả lời ngay lập tức. Ví dụ SMTP là giao thức hỏi đáp không đồng bộ [6]
 Giao thức hỏi đáp đồng bộ (Synchronous request-response protocol):
Giao thức trao đổi thông điệp giữa 2 máy tính trong đó một máy đƣa ra câu
hỏi và một máy trả lời. Máy đƣa ra câu hỏi sẽ chờ đến khi nhận đƣợc câu trả
lời. Ví dụ HTTP là giao thức hỏi đáp đồng bộ [6]
 Khởi động (Bootstrapping):
Tiến trình trong đó thiết bị cầm tay (chƣa thiết lập cấu hình) chuyển từ trạng
thái ban đầu tới trạng thái thiết lập cấu hình cơ bản nhất.[6]
 Định dạng nội dung (Content Format):
Định dạng của nội dung, ví dụ: vCard hoặc vCalendar [6]
 Kho lƣu trữ (Datastore):
Vị trí lƣu trữ dữ liệu (cơ sở dữ liệu, file).
 Máy khách quản lý thiết bị (DM Client):
Máy khách cài đặt giao thức quản lý thiết bị SyncML
 Máy chủ quản lý thiết bị (DM Server):
Máy chủ cài đặt giao thức quản lý thiết bị SyncML
 Đồng bộ cục bộ (Local Synchronization):
Đồng bộ cục bộ qua kết nối trong phạm vi nhỏ, qua cáp, bluetooth hoặc

hồng ngoại. Kiểu đồng bộ này thƣờng là giữa một máy điện thoại và máy tính
cá nhân. [6]
 Đồng bộ nhiều – tới - một (Many-to-one):
Mô hình đồng bộ này bao gồm nhóm hai hay nhiều thực thể, trong đó chỉ có
một thực thể đồng bộ dữ liệu với các thực thể khác. Mô hình này còn gọi là mô
hình sao. [6]
 Đồng bộ nhiều – tới - nhiều (Many-to-many):
Mô hình đồng bộ bao gồm nhóm hai hay nhiều thực thể, trong đó bất kỳ
thực thể nào cũng có thể đồng bộ với các thực thể còn lại. [6]
 Đồng bộ một chiều (One-way Synchronization):
Đồng bộ dữ liệu giữa 2 thực thể, trong đó chỉ có một thực thể thông báo cho
thực thể còn lại cập nhật dữ liệu. [6]

4
 Đồng bộ 2 chiều (Two-way Synchronization):
Đồng bộ dữ liệu giữa hai thực thể, trong đó các thực thể trao đổi thông tin
về dữ liệu thay đổi trên mỗi thực thể [6]
 Đồng bộ từ xa (Remote Synchronization):
Đồng bộ dữ liệu qua kết nối mạng với khoảng cách xa [6]
 Nhà cung cấp dịch vụ (Service Provider):
Cung cấp các ứng dụng internet nhƣ quản lý email, sổ địa chỉ, lịch làm việc,
ghi chú,
 Đồng bộ chậm (Slow Synchronization):
Tiến trình đồng bộ trong đó một thực thể trao đổi các giá trị của tất cả các
phần tử trong kho lƣu trữ với thực thể khác. Mục đích là để thực hiện khôi phục
lại dữ liệu khi có sự cố. [6]
 Nhà cung cấp đồng bộ (Synchronization Vendor):
Một nhà cung cấp và phát triển chuyên biệt phần mềm đồng bộ dữ liệu giữa
các ứng dụng trên các máy tính khác nhau. [6]
 Thẻ sync (Sync Anchor):

Một bộ đánh dấu tích hợp với một kho lƣu trữ và một trong số đối tác đồng
bộ của nó. Mục đích là xác định thời điểm cuối cùng đồng bộ với thực thể đồng
bộ với nó. [6]
 Kiểu đồng bộ (Sync Type):
Một trong những kiểu đồng bộ đƣợc sử dụng: đồng bộ một chiều, đồng bộ 2
chiều, đồng bộ chậm, [6]
 Máy khách đồng bộ (OMA-SyncML Client):
Một cài đặt giao thức đồng bộ dữ liệu đóng vai trò là máy khách (client) [6]
 Máy chủ đồng bộ (OMA-SyncML Server):
Một cài đặt giao thức đồng bộ dữ liệu đóng vai trò là máy chủ (server) [6]
 Thực thể OMA-SyncML (OMA-SyncML Entity):
Một thiết bị cài đặt đặc tả OMA-SyncML (hoặc client hoặc server) [6]
 Hạ tầng SyncML (SyncML Framework):
Hạ tầng bao gồm giao thức đặc tả, giao thức đồng bộ, ràng buộc giao vận
(transport binding) và bộ giao tiếp SyncML (SyncML Adapter). [6]
 Thông điệp SyncML (SyncML Message):
Một thông điệp theo định dạng chuẩn XML. Thông điệp SyncML đƣợc sử
dụng để trao đổi trong quá trình đồng bộ. [6]
 Gói SyncML (SyncML Package):
Phiên đồng bộ bao gồm các gói SyncML đƣợc trao đổi giữa máy chủ và
máy khách. Một gói SyncML có thể chứa nhiều thông điệp SyncML. [6]
 Liên kết giao vận (Transport Binding):
Đặc tả một giao thức mức cao sử dụng giao thức giao vận nhƣ thế nào. [6]


5
 Ứng dụng (Application):
Ứng dụng SyncML cung cấp các giao thức đồng bộ dữ liệu. Ứng dụng có
thể là tự khởi tạo hoặc nhận các câu lệnh giao thức SyncML. Ứng dụng có thể
đóng vai trò nhƣ một máy khách (client) hoặc một máy chủ (server) đồng bộ dữ

liệu OMA. [16]
 Khả năng trao đổi (Capabilities exchange):
Khả năng đồng bộ dữ liệu OMA, trong đó cho phép một máy khách và máy
chủ trao đổi các thông số cấu hình thiết bị, các đặc tính và ứng dụng. [16]
 Máy khách (Client):
Máy khách đồng bộ dữ liệu OMA đề cập đến vai trò giao thức khi ứng dụng
đƣa ra các thông điệp “yêu cầu” SyncML. [16]
 Câu lệnh (Command):
Câu lệnh SyncML là phần tử cơ bản của giao thức. Mỗi câu lệnh SyncML
xác định một tác vụ riêng lẻ đƣợc thực hiện. Ví dụ: Add, Alert, Atomic, Copy,
Delete, [17]
 Dữ liệu (Data):
Đơn vị thông tin trao đổi, mã hóa để truyền qua mạng trong ĐBDL [17]
 Tập dữ liệu (Data collection):
Một phần tử dữ liệu đóng vai trò nhƣ một bộ chứa các phần tử khác, (ví dụ:
{c {{i1, data1}, {in, datan}}}). Trong ĐBDL OMA, các tập dữ liệu đƣợc
đồng bộ với nhau. [17]
 Phần tử dữ liệu (data element):
Một mảnh dữ liệu và một định danh tích hợp cho dữ liệu (ví dụ {i, data}).
 Phần tử dữ liệu tƣơng đƣơng (Data element equivalence):
Khi hai phần tử dữ liệu đƣợc đồng bộ. Các ngữ nghĩa chính xác đƣợc định
nghĩa bằng một mô hình đồng bộ dữ liệu đã cho. [17]
 Trao đổi dữ liệu (Data exchange):
Đƣợc biết nhƣ các tác vụ gửi, yêu cầu, nhận tập phần tử dữ liệu.
 Định dạng dữ liệu (Data format):
Sử dụng mã hóa để định dạng một kiểu dữ liệu. Ví dụ, các ký tự hoặc số
nguyên đƣợc mã hóa dữ liệu binary. [17]
 Kiểu dữ liệu (Data type):
Giản đồ đƣợc sử dụng để thể hiện một đối tƣợng dữ liệu (ví dụ: kiểu nội
dung text/calendar MIME sử dụng cho đặc tả iCalendar, hoặc kiểu nội dung

text/directory MIME sử dụng cho đặc tả vCard). [17]
 Đồng bộ dữ liệu (Data synchronization):
Đóng vai trò thiết lập sự tƣơng đƣơng giữa 2 tập dữ liệu, trong đó các phần
tử dữ liệu của 1 tập đƣợc ánh xạ tới các phần tử dữ liệu trong tập kia. [16]



6
 Giao thức đồng bộ dữ liệu (Data synchronization protocol):
Đặc tả bắt buộc để hoàn thành đồng bộ các phần tử dữ liệu trên tập dữ liệu
ban đầu hoặc tập dữ liệu nhận đƣợc. [16]
 Thông điệp (Message):
Thông điệp SyncML là các nội dung chính của một gói SyncML. Nó chứa
các câu lệnh SyncML cũng nhƣ dữ liệu liên quan và thông tin mô tả (meta-
information). [16]
 Tác vụ (Operation):
Một tác vụ SyncML đề cập đến giao dịch đạt đƣợc bởi các câu lệnh
SyncML xác định trong gói SyncML. Ví dụ, "đồng bộ sổ địa chỉ cá nhân với sổ
địa chỉ công khai ". [17]
 Thiết bị khởi tạo (Originator):
Thiết bị mạng khởi tạo một yêu cầu SyncML [16]
 Gói (Package):
Một gói SyncML là một tập đầy đủ các câu lệnh và các phần tử dữ liệu liên
quan, đƣợc trao đổi giữa một thiết bị khởi tạo và một thiết bị nhận. Gói
SyncML có thể chứa một hoặc nhiều thông điệp SyncML. [16]
 Phân tích (Parser):
Đề cập đến một bộ phân tích XML (XML parser). Một bộ phân tích XML
không hoàn toàn cần thiết để hỗ trợ SyncML. Tuy nhiên, một đặc tả đồng bộ dữ
liệu OMA tích hợp một bộ phân tích XML có thể làm tăng giá trị của nó. [16]
 Thiết bị nhận (Recipient):

Thiết bị mạng nhận yêu cầu SyncML, xử lý yêu cầu và gửi kết quả trở lại.
 Giao thức đặc tả (Representation protocol):
Định dạng chuẩn cho việc trao đổi mẫu thông tin xác định. SyncML là một
giao thức đặc tả cho việc truyền dữ liệu đồng bộ và các tác vụ quản lý thiết bị.
 Máy chủ (Server):
Một máy chủ đồng bộ dữ liệu OMA đề cập tới vai trò giao thức khi một ứng
dụng đƣa ra các thông điệp “trả lời”.
 Dữ liệu đồng bộ (Synchronization data):
Đề cập tới các phần tử dữ liệu trong một câu lệnh SyncML. [17]
 Máy đồng bộ (Synchronization Engine):
Một thành phần của máy chủ đồng bộ dữ liệu OMA có thể phân tích tập dữ
liệu và những thay đổi liên quan tới nó. Máy đồng bộ sẽ cài đặt các chính sách
để sự nhận biết và xử lý xung đột cập nhật. [16]
 Thông điệp SyncML yêu cầu (SyncML request message):
Thông điệp SyncML khởi tạo, đƣợc gửi bởi thiết bị khởi tạo tới thiết bị
nhận trên mạng. [17]
 Thông điệp SyncML trả lời (SyncML response message):
Thông điệp phúc đáp đƣợc gửi bởi thiết bị nhận tới thiết bị gửi yêu cầu. [17]

7

 Định danh duy nhất toàn cục GUID (Global Unique Identifier):
Một định danh đƣợc gán tới một đối tƣợng trong một cơ sở dữ liệu. Các giá
trị GUID không bao giờ đƣợc sử dụng lại. [16]
 Định danh duy nhất cục bộ LUID (Locally Unique Identifier):
Một định danh đƣợc gán tới một đối tƣợng trong một cơ sở dữ liệu. Các giá
trị LUID chỉ là duy nhất cục bộ. [16]

8
1.2 ĐỒNG BỘ DỮ LIỆU

1.2.1 Khái niệm Đồng bộ dữ liệu
Công nghệ tính toán di động (Mobile computing) cho phép tất cả mọi ngƣời
có thể sử dụng các thiết bị nhƣ PDAs (Personal Digital Assistants), smart phones,
điện thoại di động (mobile phones), và máy tính xách tay (laptops) để truy cập tới
dữ liệu cơ quan, dữ liệu cá nhân ở mọi nơi, mọi lúc.
Tuy nhiên, khi kết nối trực tuyến tới kho lƣu trữ dữ liệu thì không thể thực
hiện đƣợc vì tại đó thiếu các thiết bị kết nối mạng. Thậm chí nếu có kết nối mạng,
việc sử dụng kết nối này chƣa chắc đã nhanh và hiệu quả cho ứng dụng. Khi đó,
“đồng bộ dữ liệu (data synchronization)” nổi lên là công nghệ chính, nhằm khắc
phục những thiếu sót trên.
Đồng bộ dữ liệu là gì?
Đồng bộ dữ liệu là tiến trình chia sẻ các bản sao của dữ liệu gốc một cách
nhất quán giữa hai hay nhiều máy tính.[6]
Nhƣ vậy, đồng bộ dữ liệu (ĐBDL) cho phép sao chép nguyên bản nhiều
loại dữ liệu từ kho dữ liệu trung tâm hoặc kho của nhà cung cấp dịch vụ lƣu trữ dữ
liệu. Do đó, nó cho phép tham chiếu hoặc thực hiện thay đổi trên dữ liệu cục bộ
(dữ liệu là bản sao) của thiết bị, mà không đòi hỏi một giao dịch kết nối trực tuyến
tới dữ liệu gốc của kho lƣu trữ đó.
Trƣờng hợp đơn giản nhất là ngƣời dùng lấy dữ liệu cho bản sao chép cục
bộ của anh ta. Ở đây, ứng dụng chỉ cần lấy những thay đổi từ dữ liệu gốc tới bản
sao cục bộ, mà không phải sao chép toàn bộ dữ liệu lƣu trữ đó. Quá trình đồng bộ
trở lên phức tạp hơn khi nhiều ngƣời dùng thực hiện thay đổi dữ liệu trên các bản
sao so với bản gốc. Và nhiệm vụ đặt ra là phải làm cho những thay đổi này đồng
nhất trên tất cả các bản sao.
ĐBDL là công nghệ dùng để lƣu trữ tất cả những bản sao phân tán của dữ
liệu một cách nhất quán. Quá trình đƣợc thực hiện bằng cách truyền những thay
đổi dữ liệu giữa các bản sao, đồng thời giải quyết các xung đột có thể xảy ra.
Những xung đột này thƣờng do những thay đổi không nhất quán trên các bản sao
khác nhau của cùng một dữ liệu gốc.


9
1.2.2 Các kiểu đồng bộ
Những thay đổi trên các bản sao khác nhau của một kho dữ liệu có thể đƣợc
nhân bản ra các bản sao khác theo nhiều cách khác nhau. Các kiểu đồng bộ đƣa ra
luồng logic những thay đổi xảy ra trên mạng máy tính. Có 4 kiểu nhƣ sau:
 Một - tới - một (One-to-one)
 Nhiều - tới - một (Many-to-one)
 Nhiều - tới - nhiều (Many-to-many)
 Lai của nhiều - tới - một và nhiều - tới - nhiều (Hybrid)
a/. Một - tới - một
Mô hình một - tới - một là trƣờng hợp đơn giản nhất. Dữ liệu chỉ đƣợc chia
sẻ giữa một máy chủ (server) và một máy khách (client). Ứng dụng của mô hình
này có thể là sao lƣu dữ liệu. Tất cả những thay đổi xảy ra với máy khách, đều
đƣợc gửi tới máy chủ, để đảm bảo tính nhất quán của dữ liệu.

Hình 1. 1 Mô hình một - tới - một

Mô hình này dùng để đồng bộ dữ liệu giữa máy PDA (đóng vai trò client)
và máy tính cá nhân PC (đóng vai trò server). Ứng dụng trên máy PDA thay đổi
trên bản sao của dữ liệu và gửi những thay đổi này tới PC. Có thể ngay tại thời
điểm đó, ứng dụng trên máy PC cũng thực hiện thay đổi dữ liệu trên chính nó.
Điều này dẫn đến xung đột. Trong trƣờng hợp này, xung đột đƣợc xác định nhờ
máy tính PC và đƣợc xử lý trực tiếp trên PC. Một số trƣờng hợp xung đột đƣợc
đánh dấu lại và ngƣời quản trị sẽ thực hiện xử lý.

Server

Client

10

b/. Nhiều - tới - một
Trong mô hình này, dữ liệu đƣợc truyền từ một chủ thể trung tâm tới các
thực thể khác nhau chứa các bản sao của dữ liệu.

Hình 1. 2 Mô hình nhiều - tới - nhiều

Các máy khách trao đổi dữ liệu đƣợc thực hiện thông qua máy chủ trung
tâm, 2 máy khách không thể trao đổi dữ liệu trực tiếp, phải có máy chủ trung tâm
làm cầu nối. Với đặc tính này, các xung đột chỉ có thể xảy ra phía máy chủ trung
tâm, vì thế máy chủ cần nhận biết và xử lý chúng.
Một ví dụ của mô hình này là khi máy PDA, điện thoại cầm tay, và máy
tính cá nhân thực hiện chia sẻ ứng dụng, máy điện thoại cầm tay và PDA đều đƣợc
đồng bộ với máy tính cá nhân (nhƣng không đồng bộ trực tiếp giữa chúng).
Trƣờng hợp này, máy tính cá nhân đóng vai trò máy chủ trung tâm.
Nhƣợc điểm của mô hình này nằm ở máy chủ trung tâm. Nó trở thành nút
cổ chai xử lý nhiều tác vụ liên quan tới đồng bộ, có thể làm cho hệ thống bị tê liệt
khi có sự cố.

Client

Client

Client

Client

Client

Server


11
c/. Nhiều - tới - nhiều
Trong mô hình nhiều - tới - nhiều, không có chủ thể trung tâm. Mỗi máy
khách đều là 1 máy chủ. Sự đồng nhất máy khách/máy chủ trên mỗi thiết bị trong
mô hình nhiều - tới - nhiều dẫn tới chúng chỉ đƣợc gọi là máy khách. Mô hình này
còn gọi là mô hình ngang hàng.

Hình 1. 3 Mô hình nhiều - tới - nhiều

Mỗi máy khách cập nhật và gửi những thay đổi tới các máy khách khác.
Sau khi một bản ghi trên một máy khách đƣợc cập nhật, máy khách này chịu trách
nhiệm cập nhật các bản sao của dữ liệu trên tất cả các máy khách khác, để đảm bảo
tính đồng nhất của dữ liệu phân tán. Điều này có thể đƣợc thực hiện trực tiếp tới
các máy khách khác, hoặc bằng cách gửi những cập nhật tới các máy khách ở gần,
và sau đó sẽ đƣợc nhân rộng ra.
Một cách tự nhiên, mọi máy khách đều có thể nhận biết và xử lý xung đột.
Điều này đòi hỏi phần mềm tính toán phức tạp hơn trên mỗi máy khách, và sẽ làm
tăng chi phí cài đặt, đặc biệt là trên các thiết bị cầm tay có bộ nhớ hạn chế nhƣ
mobile phone.
Một thuân lợi của mô hình ngang hàng (peer to peer - p2p) là không có chủ
thể trung tâm, vì thế không có điểm chết. Mọi máy khách có một bản sao của dữ
liệu và đóng vai trò nhƣ là một chủ thể trung tâm. Các máy khách có thể tiếp tục
làm việc và trao đổi dữ liệu khi xảy ra lỗi trên các phần khác của mạng. Máy khách
có thể cập nhật thay đổi từ những chủ thể gần nhất trong mạng, đảm bảo việc truy
cập nhanh nhất tới dữ liệu đƣợc lƣu trữ từ xa

Client

Client


Client

Client

Client

12
d/. Mô hình lai của nhiều - tới - một và nhiều - tới - nhiều (Hybrids)
Nhằm kết hợp các ƣu điểm của mô hình nhiều - tới - một và nhiều - tới -
nhiều, một mô hình lai chứa các đặc tính của cả 2 mô hình trên đƣợc đƣa ra sử
dụng nhƣ hình sau:

Hình 1. 4 Mô hình lai nhiều - tới - một và nhiều – tới nhiều

Phân cụm bao gồm cấu trúc 2 mức của bản sao.
 Mức đỉnh gồm các cụm máy chủ.
 Tất cả máy chủ chứa các bản sao của dữ liệu và đƣợc tái tạo lẫn nhau trong
cụm, nhƣng với mỗi đối tƣợng dữ liệu chỉ một máy chủ giữ bản sao với đầy
đủ quyền. Các máy chủ khác không bị tác động bởi lỗi của một trong số
chúng.
































Phân cụm
Cây phân cấp

13
1.2.3 Các vấn đề của đồng bộ dữ liệu
Công nghệ đồng bộ dữ liệu là một phần quan trọng cho phép sử dụng dữ
liệu không trực tuyến (offline), nhƣng nó cũng đặt ra những thách thức cần phải
giải quyết, để cung cấp một giải pháp chấp nhận đƣợc. Những vấn đề đó là:
 Xung đột cập nhật (Conflicting Updates).

 Xung đột xóa dữ liệu (Conflict deletion).
 Giải quyết xung đột (Conflict resolution).
Một vấn đề đặt ra với đồng bộ dữ liệu là cần tuân theo một định dạng chuẩn
nội dung cho việc trao đổi dữ liệu. Ví dụ, đối với dữ liệu quản lý cá nhân (PIM),
ngôn ngữ đánh dấu đồng bộ SyncML (Synchronization Markup Language) yêu cầu
cung cấp các định dạng nội dung để đảm bảo đồng bộ thành công.
a/. Xung đột cập nhật
Trong đồng bộ dữ liệu, nơi mà các bản sao của cùng một nguồn dữ liệu gốc
nằm trên các thiết bị khác nhau, nó giống nhƣ cùng một dữ liệu đƣợc xử lý trên
nhiều thiết bị.
* Xung đột ghi – ghi
Ví dụ: Trong một công ty bán hàng, dữ liệu đƣợc lƣu trữ tại máy chủ trung
tâm của công ty. Hàng ngày, nhân viên bán hàng có thể thực hiện cập nhật dữ liệu
qua các ứng dụng cài đặt trên các thiết bị đầu cuối khác nhau. Dữ liệu thay đổi này
sau đó sẽ đƣợc đồng bộ tới dữ liệu trung tâm của công ty.
Trong lần gặp khách hàng, ngƣời bán hàng đã thay đổi số fax theo yêu cầu
cho khách hàng “Văn A” là “12345” trên PDA của anh ta (ngƣời bán hàng), tuy
nhiên dữ liệu chƣa đƣợc đồng bộ với trung tâm dữ liệu của công ty. Cùng ngày,
phòng quan hệ khách hàng nhận đƣợc bức thƣ từ ông “Văn A” thông báo số fax đã
thay đổi. Nhân viên phòng quan hệ khách hàng đã cập nhật bản ghi dữ liệu của ông
“Văn A” tại dữ liệu trung tâm, nhƣng không may bị nhầm lẫn với số fax là
“92345”. Điều này sẽ dẫn đến xung đột khi có 2 sự thay đổi khác nhau trên 2 bản
dữ liệu.
Nếu máy chủ đồng bộ không nhận biết xung đột, nó có thể gửi bản cập nhật
đã nhận từ phòng quan hệ khách hàng tới PDA của ngƣời bán hàng, và cũng cập
nhật kho dữ liệu gốc với những thay đổi mà ngƣời bán hàng đã thực hiện. Kết qủa
là, nội dung của 2 bản sao sẽ không chứa cùng dữ liệu – kho dữ liệu gốc sẽ có số
fax “12345”, và dữ liệu trên PDA của ngƣời bán hàng chứa “92345”.
Xung đột cập nhật nhƣ ví dụ trên gọi là xung đột ghi – ghi. Thay đổi một
trƣờng dữ liệu tại cùng thời điểm trên 2 bản sao khác nhau của kho dữ liệu.




14
* Xung đột đọc – ghi:
Ví dụ: Ngƣời bán hàng nhập một đơn hàng cho khách hàng có tên “Văn A”
và thay đổi số fax của ông Văn A từ “98765” tới “12345” trên dữ liệu trong PDA
của ngƣời bán hàng. Cùng thời điểm, phòng marketing công ty tạo danh sách số
fax của khách hàng. Ngƣời bán hàng vẫn chƣa đồng bộ dữ liệu trên PDA của
mình, và do đó, kho dữ liệu tập trung chứa số fax của khách hàng Văn A vẫn là
“98765”, mà đáng lẽ “12345” mới là số chính xác.
Có một cách nhằm ngăn chặn xung đột liên quan tới cập nhật (đặc biệt là
các xung đột đọc - ghi) là độc quyền truy cập tới một đối tƣợng trƣớc khi cập nhật
nó. Điều này là khả thi trong môi trƣờng mạng rộng lớn, nhƣng không phải là một
tùy chọn tốt với các thiết bị cầm tay. Các thiết bị cầm tay có thể ngoài vùng phủ
sóng. Ngoài ra, cài đặt một kết nối mạng không dây, ví dụ qua GSM (Global
System for Mobile communications), sẽ mất thời gian và có thể khá đắt tiền. Do
đó, đây không phải là phƣơng pháp khả thi trong thực tế, vì vây, máy chủ đồng bộ
phải có khả năng nhận biết và xử lý các xung đột.
Các xung đột đã đề cập ở trên đều thuộc nhóm xung đột kỹ thuật, bởi vì các
thay đổi đồng thời đều ảnh hƣởng tới cùng bản ghi. Tuy nhiên, có thể xảy ra
trƣờng hợp khi một ông A lập một cuộc hẹn với một khách hàng từ 8h tới 10h
sáng, trong khi cô thƣ ký của ông A chọn thời gian từ 9h tới 10h30 cho một cuộc
hẹn khác giữa ông A với ngƣời quản lý. Từ một cái nhìn trực quan kỹ thuật đồng
bộ thì không có xung đột. Tất cả bản ghi đều đƣợc thêm mới vào danh mục lịch
làm việc. Nhƣng ông A phải tham dự 2 cuộc họp từ 9h tới 10h, đây là xung đột
ngữ nghĩa mà ông A phải giải quyết. Trong trƣờng hợp này, ứng dụng có thể hỗ
trợ ngƣời dùng bằng cách cho phép nhận biết và thông báo về xung đột đó.

15

b/. Nhận biết xung đột
Nhận biết xung đột là việc quan trọng để giữ các kho dữ liệu khác nhau sau
khi thực hiện “đồng bộ”, dữ liệu trong các kho đó nhất quán với nhau.
Một vấn đề đầu tiên của ĐBDL là khả năng định danh duy nhất bản ghi
trong kho dữ liệu. CSDL quan hệ sử dụng khóa chính phục vụ mục đích này.
Trong các loại kho dữ liệu khác, chúng sử dụng PIMs (Personal Information
Management), UIDs (Unique Identifiers) làm định danh. Định danh duy nhất
(UIDs) trong kho dữ liệu của chủ thể trung tâm thƣờng đƣợc gọi là định danh toàn
cục (GUIDs - Globally Unique Identifiers). Mỗi bảo sao của kho dữ liệu trên một
máy khách có một định danh cục bộ (LUIDs - Locally Unique Identifiers).
Chủ thể trung tâm chứa kho dữ liệu để lƣu trữ LUID [6], định danh mỗi bản
ghi của mọi máy khách thực hiện đồng bộ với nó. Khi đồng bộ, chủ thể trung tâm
sử dụng LUID để thông báo cho máy khách biết bản ghi nào đang sửa.
Một phiên đồng bộ thƣờng bắt đầu với việc máy khách gửi danh sách các
bản ghi đã thay đổi tính từ lần đồng bộ trƣớc so với kho dữ liệu trên máy chủ. Tiếp
theo, chủ thể trung tâm đƣa ra danh sách các bản ghi thay đổi trong thời gian tƣơng
ứng. Để nhận biết xung đột, máy chủ thực hiện so sánh 2 danh sách và các định
danh mọi LUID/GUID sẵn có trong cả 2 danh sách.

Hình 1. 5 Xác định một xung đột cập nhật
5
8
17
23
4
5
14
19
Xung đột
ghi - ghi

Thay đổi
phía Client
Thay đổi
phía Server

16
c/. Giải quyết xung đột
Giải pháp giải quyết xung đột là các tác vụ mà máy chủ phải thực hiện, khi
một xung đột đƣợc phát hiện. Đối với dữ liệu PIM (Personal Information
Management) việc giải quyết các xung đột là tƣơng đối dễ dàng. Tuy nhiên, với
CSDL quan hệ thì điều đó trở lên phức tạp hơn vì giữa các bản ghi có những mỗi
liên quan với nhau và cần phải đƣợc thực hiện chính xác để không ảnh hƣởng đến
các mối quan hệ, và ràng buộc của các bản ghi trong quá trình đồng bộ. Có nhiều
phƣơng pháp có thể sử dụng để giải quyết các xung đột:
 Cách dễ nhất là sao lại các mục và đánh dấu chúng là đang bị xung đột rồi
thông báo cho ngƣời quản trị xử lý chúng. Điều này sẽ tránh mất mát dữ
liệu, nhƣng sẽ đẩy gánh nặng việc xử lý xung đột cho ngƣời quản trị.
 Khả năng tiếp theo là xác định một trong hai bản ghi xung đột đƣợc thay
đổi và xóa bản ghi còn lại. Quyết định giữ lại bản nào dựa trên lựa chọn ƣu
tiên của ngƣời dùng nhƣ:
 Cập nhật trên máy khách luôn đƣợc ƣu tiên.
 Cập nhật trên máy chủ luôn đƣợc ƣu tiên.
 Cập nhật sau cùng luôn đƣợc ƣu tiên
 Phƣơng pháp thứ 3 để giải quyết xung đột là trộn 2 bản xung đột vào làm
một. Phƣơng pháp này đƣợc thực hiện trong trƣờng hợp khi các bản ghi đã
hoàn thành đồng bộ. Thêm nữa, nó đòi hỏi máy chủ đồng bộ phải hiểu cấu
trúc của dữ liệu đƣợc đồng bộ và có thể xác định trƣờng bên trong cấu trúc
đã thay đổi. Tuy nhiên, việc này là không thể đối với các bản ghi chỉ chứa
một trƣờng và máy chủ đồng bộ không thể thông dịch dữ liệu trên trƣờng
đó.


17
1.3 ĐỒNG BỘ DỮ LIỆU OMA-SYNCML
1.3.1 Tổng quan
Trong khoảng hơn 10 năm trở lại đây, với sự phát triển mạnh mẽ của công
nghệ viễn thông và vi tính. Các thiết bị cầm tay và thiết bị điện thoại với khả năng
truyền dữ liệu đang ngày càng thông dụng. Ứng dụng quản lý thông tin cá nhân,
nhƣ lịch làm việc và sổ địa chỉ đƣợc sử dụng rộng rãi, các ứng dụng phục vụ trong
ngành thƣơng mại, thanh toán cũng dần xuất hiện. Trong các ứng dụng đó, dữ liệu
lƣu trữ trên các thiết bị cầm tay đã đáp ứng đƣợc yêu cầu giống nhƣ dữ liệu lƣu trữ
trên máy tính cá nhân hoặc máy chủ mạng.
Nhu cầu đồng bộ một máy tính cầm tay hoặc một điện thoại cầm tay với
một máy tính cá nhân đã phổ biến. Các ứng dụng trên máy Palm (thiết bị điện tử
cầm tay sử dụng hệ điều hành palm) và các máy PocketPC (thiết bị điện tử cầm tay
sử dụng hệ điều hành Microsoft Window Mobile) đƣợc đồng bộ với các bản sao
của chúng trên máy tính cá nhân. Đồng bộ cục bộ nhƣ vậy đƣợc thực hiện qua kết
nối cáp hoặc kết nối hồng ngoại.
Các ứng dụng này thƣờng đƣợc sử dụng cho cả thiết bị cầm tay và máy
tính. Các nhà cung cấp cũng kiểm soát các giao thức đồng bộ tích hợp dữ liệu và
các định dạng dữ liệu.
Mô hình phát triển này làm việc tƣơng đối hiệu quả trong thực tế, bởi vì nó
chỉ hạn chế cho các ứng dụng quản lý dữ liệu cá nhân (PIM), dữ liệu đƣợc tích hợp
với một ứng dụng đơn lẻ. Kỹ thuật truyền tin chủ yếu là theo hàng (serial), và số
lƣợng các thiết bị cầm tay chuẩn (platforms) thƣơng mại tƣơng đối nhỏ.
Lợi ích của truyền thông không dây là cho phép các máy tính xách tay hỗ
trợ kết nối không dây, các điện thoại đời mới, cấu hình cao có thể truy cập và sử
dụng các dịch vụ mạng.
Mặc dù các lợi ích liên quan của nó, nhƣng mô hình đồng bộ trên các thiết
bị cầm tay vẫn chƣa đƣợc áp dụng nhiều trong thực tế. Mô hình đòi hỏi đồng bộ dữ
liệu từ xa trên các thiết bị cầm tay với dữ liệu trong kho lƣu trữ của các máy chủ

mạng. Không giống đồng bộ cục bộ, các nhà cung cấp ứng dụng khó có thể điều
khiển hoàn toàn tiến trình đồng bộ.
Nguyên nhân có thể do nhiều điện thoại không đƣa ra giao diện (interface)
lập trình ứng dụng. Một lý do khác là nhà cung cấp dịch vụ mạng và nhà sản xuất
thiết bị cầm tay thƣờng là các đơn vị kinh doanh khác nhau, và rất khó để tích hợp
cùng nhau trên cùng một hệ thống đồng bộ này.
Chính vì vậy, rất nhiều các nhà cung cấp dịch vụ đồng bộ đã xuất hiện với
tƣ cách là “cầu nối” giữa nhà cung cấp ứng dụng máy chủ và nhà cung cấp ứng
dụng thiết bị cầm tay. Các nhà cung cấp này thƣờng kết hợp với các với nhà cung
cấp hạ tầng (platform) thiết bị cầm tay và nhà cung cấp dịch vụ mạng hoặc nhà

×