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

tích hợp thông tin người dùng được trích rút từ các trang web cộng đồng vào một cơ sở dữ liệu người dùng chung

92 414 0

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

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 92
Dung lượng 1,81 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Bên cạnh đó, một số doanh nghiệp mong muốn thu thập thông tin về người dùng trên các trang web khác để bổ sung các thông tin mà trang web của họ không có, nhằm mục đích có được thông tin

Trang 1

MỤC LỤC

DANH MỤC THUẬT NGỮ 3

DANH MỤC HÌNH VẼ 5

DANH MỤC BẢNG 6

CHƯƠNG 1: ĐẶT VẤN ĐỀ 7

1.1 Phân tích hiện trạng 7

1.2 Mục đích của đề tài 8

1.3 Bố cục luận văn 9

CHƯƠNG 2: TỔNG QUAN VỀ HỆ TÍCH HỢP THÔNG TIN CÁ NHÂN 10

2.1 Kiến trúc ETL 10

2.2 Hướng tới một hệ tích hợp thông tin cá nhân 13

2.2.1 Biểu diễn người dùng 13

2.2.2 Hệ tích hợp thông tin cá nhân 17

2.3 Thảo luận 18

2.3.1 Ánh xạ dữ liệu 18

2.3.2 Tích hợp dữ liệu vào đích 21

CHƯƠNG 3: CÁC KỸ THUẬT GIẢI QUYẾT BÀI TOÁN 23

3.1 Ngôn ngữ luật 23

3.2 Chuyển đổi dữ liệu 29

3.3 Tải dữ liệu vào đích 33

3.4.1 Tính độ tương quan giữa hai người dùng 35

3.4.2 Giải thuật xác định người dùng và giải quyết xung đột 39

CHƯƠNG 4: CÀI ĐẶT VÀ THỬ NGHIỆM 43

Trang 2

2

4.1 Môi trường cài đặt 43

4.1.1 Chuẩn bị dữ liệu nguồn 43

4.4.2 Xây dựng cấu hình cho hệ tích hợp 47

4.2 Thử nghiệm và đánh giá 52

CHƯƠNG 5: KẾT LUẬN 55

5.1 Các kết quả đạt được 55

5.2 Định hướng phát triển 56

TÀI LIỆU THAM KHẢO 57

PHỤ LỤC 58

Trang 3

ETL là quá trình lấy, trích dữ liệu nguồn, kiểm tra, biến đổi dữ liệu để thực hiện việc lưu trữ dữ liệu vào đích

Kiểm tra tính hợp lệ của dữ liệu, loại

bỏ dữ liệu thô trước khi đưa vào chuyển đổi

Prepare before

transform

Chuẩn bị trước khi chuyển đổi

Chuẩn bị dữ liệu trước khi đưa vào chuyển đổi

hợp lệ trước khi tải

Kiểm tra tính hợp lệ của dữ liệu, loại

bỏ dữ liệu thô trước khi tải vào đích

Prepare before load Chuẩn bị trước khi Chuẩn bị dữ liệu trước khi tải vào đích

Trang 5

5

DANH MỤC HÌNH VẼ

Hình 1: Kiến trúc hệ tích hợp dữ liệu 11

Hình 2: Mô hình ETL cho hệ tích hợp thông tin cá nhân 17

Hình 3: Mô hình ánh xạ 20

Hình 4: Luồng xác định người dùng 34

Hình 5 - Cấu trúc dữ liệu thu thập từ Rồng Bay 43

Hình 6 - Cấu trúc dữ liệu thu thập từ Vật Giá 44

Hình 7 - Cấu trúc dữ liệu thu thập từ Én Bạc 45

Hình 8 - Cấu trúc dữ liệu thu thập từ Violet 46

Hình 9- Cấu trúc dữ liệu thu thập từ Tìm việc nhanh 47

Hình 10 - Giao diện chương trình tích hợp - Loader 52

Hình 11 - Đồ thị tương quan giữa số lượng record ở đích và thời gian thực hiện 54

Trang 6

6

DANH MỤC BẢNG

Bảng 1 - Kết quả chạy chương trình khi không có xung đột dữ liệu 53

Bảng 2 - Kết quả chạy chương trình khi có xung đột dữ liệu 53

Bảng 3 - Bảng trusted-index các nguồn 58

Bảng 4 - Bảng trọng số các trường dữ liệu 59

Trang 7

số thông tin khác như giới tính, tỉnh, nick yahoo, skype… Một người có thể khai báo thông tin trên nhiều trang nhưng không nhất thiết là họ phải khai báo tất cả các thông tin cá nhân trên tất cả các trang web khác nhau Mỗi trang có thể quan tâm đến một vài thông tin nào đó của người dùng, các thông tin của người dùng trên các trang có thể trùng lặp hoặc bổ sung cho nhau Cho nên, nếu chúng ta có thể tổng hợp thông tin người dùng trên các trang này lại thì sẽ thu được thông tin đầy đủ hơn về người dùng Với nhiều tổ chức, doanh nghiệp, nhu cầu thu thập thông tin cá nhân người dùng mạng xuất hiện ngày càng nhiều Nhiều doanh nghiệp cần thu thập, tổng hợp thông tin người dùng mạng để phục vụ mục đích thương mại cụ thể Ví dụ như thống kê, phân loại đối tượng người dùng theo giới tính, độ tuổi hay ở một khu vực cụ thể để đưa ra chiến lược kinh doanh phù hợp Bên cạnh đó, một số doanh nghiệp mong muốn thu thập thông tin

về người dùng trên các trang web khác để bổ sung các thông tin mà trang web của họ không có, nhằm mục đích có được thông tin tổng hợp về người dùng để từ đó có thể đưa ra các thông tin đến từng đối tượng người dùng một cách phù hợp, hiệu quả Các

Trang 8

8

cơ quản quản lý nhà nước hay các tổ chức xã hội cũng có thể có các nhu cầu xây dựng các báo cáo liên quan đến số lượng lớn người dùng mạng Tuy nhiên, việc tìm kiếm được các thông tin phù hợp và có giá trị về người dùng mạng sẽ tốn kém thời gian do

dữ liệu nằm phân tán trên mạng và không được sắp xếp, phân loại như mong muốn Từ

đó nảy sinh nhu cầu tích hợp, hợp nhất các dữ liệu này vào một nguồn chung chứa toàn

bộ thông tin người dùng để tiện quản lý cũng như phục vụ cho các nhu cầu khai thác thông tin người dùng phát sinh hàng ngày

Tích hợp thông tin người dùng chính là việc kết hợp dữ liệu người dùng nằm ở nhiều nguồn khác nhau và cung cấp cho chúng ta cái nhìn tổng thể về thông tin cá nhân người dùng Quá trình này càng trở nên khó khăn bởi dữ liệu người dùng trên các nguồn thường không đồng nhất về cấu trúc cũng như giá trị Thêm nữa, dữ liệu không phải lúc nào cũng sạch và được làm sạch nên ảnh hưởng đến chất lượng của quá trình tích hợp Toàn bộ quá trình xử lý phải diễn ra trong một cửa sổ thời gian xác định nên ảnh hưởng đến hiệu năng khi tích hợp thông tin Sự phát triển của các nguồn dữ liệu cũng gây khó khăn khi tích hợp và lưu trữ tại đích Từ đó, bài toán đặt ra là làm thế nào

để tích hợp dữ thông tin cá nhân người dùng vào trong một cơ sở dữ liệu duy nhất mang đầy đủ thông tin người dùng để từ đó có thể xây dựng các dịch vụ web cho phép kết xuất các dữ liệu thống kê

1.2 Mục đích của đề tài

Mục đích của đề tài là tích hợp thông tin người dùng được trích rút từ các trang web cộng đồng vào một cơ sở dữ liệu người dùng chung Việc trích rút thông tin đã được thực hiện ngoài phạm vi luận văn này

Thông tin đã được trích rút từ các nguồn trên web, lưu vào các cơ sở dữ liệu nguồn, và nhiệm vụ của đề tài là tích hợp các cơ sở dữ liệu nguồn này vào một cơ sở dữ liệu chung mang đầy đủ thông tin về người dùng nhất

Trang 9

9

Trong quá trình tích hợp, các nguồn có thể cung cấp các thông tin trùng lặp, dư thừa hay các thông tin bổ sung cho nhau Vì vậy cơ sở dữ liệu chung phải linh hoạt trong lưu trữ và có khả năng thêm các thuộc tính

1.3 Bố cục luận văn

Phần tiếp theo của luận văn được tổ chức như sau:

Chương 2: Tổng quan về hệ tích hợp thông tin cá nhân

Chương này trình bày sơ lược lý thuyết tích hợp dữ liệu và tổng quan về ETL Từ đó phân tích và đưa ra mô hình tổng quan của hệ tích hợp thông tin cá nhân, chi tiết hoạt động của nó cũng như các khía cạnh liên quan để hiểu rõ hơn bài toán đề ra

Chương 3: Các kỹ thuật giải quyết bài toán

Trình bày chi tiết các kỹ thuật giải quyết những vấn đề đã nêu ở chương trước

Chương 4: Cài đặt và thử nghiệm

Chương này trình bày chi tiết cách cài đặt hệ thống, các bước xây dựng công cụ tích hợp dữ liệu Chú tới sẽ trình bày một số kết quả thu được từ thử nghiệm thực tế và rút

ra một số đánh giá cho hệ thống

Chương 5: Kết luận

Trình bày tóm lược kết quả đồ án đã đạt được đồng thời đưa ra phương hướng phát triển cho đề tài

Trang 10

lý về tích hợp dữ liệu theo cách tiếp cận kho dữ liệu đó là ETL Tiếp theo chúng ta sẽ

đi vào tìm hiểu kiến trúc tổng quan về ETL

2.1 Kiến trúc ETL

ETL (viết tắt của Extract – Transform – Load) là quá trình lấy, trích dữ liệu nguồn, kiểm tra, biến đổi dữ liệu để thực hiện việc lưu trữ dữ liệu vào đích [4] Dưới đây là kiến trúc ETL tổng quát:

Trang 11

11

Hình 1: Kiến trúc hệ tích hợp dữ liệu

Hình 1 trình bày các thành phần cơ bản của một hệ tích hợp dữ liệu, trong đó:

 Source (Nguồn): Các cơ sở dữ liệu cục bộ

kết nối tới nguồn, đọc dữ liệu và chuyển đổi dữ liệu và tải dữ liệu vào đích

 Stage (Bảng tạm): Dùng để lưu thông tin tạm thời

 DQ (Data Quality / Chất lượng dữ liệu): Bộ kiểm tra chất lượng dữ liệu

 Destination (Đích): Cơ sở dữ liệu đích

 Control + Audit (Điều khiển + Kiểm soát): Bộ điều khiển và kiểm soát dữ liệu

 Metadata (Siêu dữ liệu): Bộ huấn luyện dữ liệu

Dữ liệu từ các nguồn khác nhau được trích chọn, biến đổi và lưu tạm thời vào các bảng tạm qua quá trình ETL Sau đó, dữ liệu được đưa vào bộ kiểm tra chất lượng dữ liệu

Dữ liệu đạt tiêu chuẩn sẽ được đưa vào đích Dữ liệu không đạt tiêu chuẩn sẽ được đẩy vào cơ sở dữ liệu của Bộ kiểm tra chất lượng để được ghi nhận xử lý và sau đó chuẩn hóa tại nguồn Dữ liệu này cũng có thể được tự động chuẩn hóa hoặc được cho phép

Trang 12

12

trong một giới hạn chấp nhận nào đó Trong quá trình ETL, dữ liệu được kiểm soát bởi

bộ Điều khiển + Kiểm soát dựa trên các kết luận, các luật và được lưu trữ logic trong metadata Metadata là cơ sở dữ liệu chứa thông tin về cấu trúc dữ liệu, ý nghĩa của dữ liệu, sử dụng dữ liệu, các luật kiểm tra chất lượng dữ liệu và các thông tin khác về dữ liệu

Quá trình tích hợp bao gồm 3 bước đó là: trích chọn dữ liệu (Extract), chuyển đổi dữ liệu (Transform) và tải dữ liệu (Load)

Bước 1: Trích chọn Mục đích của trích chọn là khai thác, thu thập hoặc trích xuất dữ

liệu từ những nguồn dữ liệu Trong bước này, chúng ta cũng sẽ thực hiện luôn thao tác lọc dữ liệu, loại bỏ, giảm bớt các bản ghi lỗi để giảm thiểu cho quá trình chuyển đổi

Độ phức tạp của dữ liệu nguồn cũng như sự phong phú, đa dạng về dữ liệu muốn thu thập sẽ ảnh hưởng trực tiếp tới độ phức tạp của quá trình trích chọn dữ liệu

Bước 2: Chuyển đổi Dữ liệu nguồn được lưu trữ dưới các định dạng khác nhau tùy

vào mục đích, cách thức sử dụng tại mỗi nguồn Đây là lý do vì sao chúng ta phải chuyển đổi dữ liệu thu thập được sang một định dạng thích hợp và đồng nhất trước khi thực hiện tải vào cơ sở dữ liệu đích Để chuyển đổi dữ liệu cần phải thực hiện ánh xạ

dữ liệu giữa nguồn và đích Ánh xạ liệu chính là việc xác định xem thuộc tính nào ở nguồn tương ứng với một thuộc tính ở đích Đồng thời bước này cũng thực hiện làm sạch, loại bỏ các bản ghi lỗi để chuẩn bị dữ liệu cho bước tải dữ liệu sau đó Các bản ghi lỗi thường xuất hiện trong các trường hợp cơ sở dữ liệu nguồn thiếu những trường cần thiết mà cơ sở dữ liệu đích yêu cầu, hoặc các bản ghi từ dữ liệu nguồn không đủ thông tin Số lượng thao tác chuyển đổi phụ thuộc vào định dạng dữ liệu nguồn và dữ liệu đích Nếu hai định dạng sử dụng các tiêu chuẩn giống hoặc gần giống nhau, thì số lượng thao tác chuyển đổi sẽ giảm đi đáng kể; hoặc ngược lại số lượng thao tác sẽ trở nên rất lớn nếu định dạng của nguồn và đích là khác nhau

Trang 13

13

Bước 3: Tải Bước này liên quan đến việc tải dữ liệu đã qua trích chọn và chuyển đổi

vào một cơ sở dữ liệu đích Một số quy trình tải vào thực chất là chèn thêm bản ghi (record) mới hoặc cập nhật thêm thông tin cho một bản ghi nào đó

Trong hệ tích hợp dữ liệu, một vấn đề nổi lên đó là cần phải phân tích định dạng dữ liệu để đưa ra cách biểu diễn dữ liệu ở đích một cách hợp lý Biểu diễn dữ liệu đích ảnh hưởng đến việc lưu trữ cũng như quá trình chuyển đổi và tải dữ liệu

2.2 Hướng tới một hệ tích hợp thông tin cá nhân

2.2.1 Biểu diễn người dùng

Do bài toán của ta là tích hợp dữ liệu người dùng từ nhiều nguồn vào một cơ sở dữ liệu chung gọi là dữ liệu đích, cho nên việc phân tích để biểu diễn dữ liệu đích về một định dạng chung là rất quan trọng, cần thiết phải làm

Dữ liệu ở đây được hiểu là thông tin cá nhân của người dùng Có rất nhiều thông tin về người dùng, ví dụ như số chứng minh thư nhân dân, họ tên, địa chỉ email, số hộ chiếu, giới tính, tuổi… Một số thông tin chỉ thể hiện cho một người duy nhất, ví dụ như số chứng minh thư nhân dân hay số hộ chiếu Nếu thông tin người dùng trên hai nguồn có cùng một số chứng minh thư thì nhất định đó là hai thể hiện của cùng một người (giả thiết dữ liệu có tính nhất quán, không có thay đổi về dữ liệu như trong trường hợp cấp đổi số chứng minh thư hoặc số hộ chiếu khác) Từ một địa chỉ email cũng có thể nhận biết ra một người dùng nhưng một người lại có thể có nhiều email khác nhau Do đó, từ hai email khác nhau thì chưa đủ cơ sở để đoán nhận đó là một hay hai người dùng Các giá trị khác như họ tên, giới tính, tuổi là các thông tin bình thường, có thể xuất hiện ở nhiều người khác nhau Do đó, biểu diễn và phân loại dữ liệu là hết sức quan trọng, ảnh hưởng lớn đến bài toán đặt ra

Biểu diễn dữ liệu bao gồm việc xác định tiêu chuẩn cho dữ liệu để định ra các thuộc tính cần có cũng như tính chất, vai trò, vị trí của nó trong cơ sở dữ liệu đích Xác định

Trang 14

14

xem thành phần nào là cần có, thành phần nào không cần thiết để có thể loại bỏ, thứ tự

ưu tiên và độ lớn của bộ nhớ cho các thành phần cũng cần được xác định Dữ liệu của người dùng ở cơ sở dữ liệu đích sẽ được chia nhỏ thành các thuộc tính (hay trường dữ liệu) khác nhau với một quy chuẩn riêng xác định dựa trên tính duy nhất của giá trị thuộc tính đối với người dùng Dữ liệu được sắp xếp, phân loại theo từng nhóm thể hiện mức độ phân biệt người dùng Độ "mạnh" của dữ liệu càng lớn, khả năng phân biệt người dùng càng cao Từ đó, tập thuộc tính của một người dùng chia làm 3 loại:

có vai trò trong việc xác định cho một người dùng Ví dụ như họ tên, quê quán, giới tính, hay năm sinh

Trong trường hợp sử dụng dữ liệu trong tập SK để phân biệt người dùng với nhau, thì mỗi người dùng sẽ có một giá trị nhất quán đối với thuộc tính trong tập SK Mối quan

hệ giữa thuộc tính trong tập SK và người dùng là mối quan hệ Một - Một Tức là một người dùng chỉ có một giá trị thuộc tính duy nhất và từ một giá trị thuộc tính chỉ có thể tìm ra một người dùng duy nhất tương ứng với giá trị đó

Trong khi một giá trị của thuộc tính thuộc tập SK có thể phân biệt một người dùng xác định, thì đối với các thuộc tính thuộc tập WK, mức độ phân biệt người dùng là yếu hơn Hai đối tượng có WK giống nhau thì là một người Giá trị WK khác nhau thì khả năng cao là hai người khác nhau Tuy nhiên trong một số trường hợp một người có

Trang 15

15

nhiều giá trị cho một WK, khi đó mặc dù là hai giá trị WK khác nhau nhưng vẫn có khả năng là một người Ví dụ như một email quy định cho một người, nhưng một người lại có thể có nhiều email khác nhau được lấy trên nhiều trang nguồn khác nhau Hay như số điện thoại cũng vậy, một số điện thoại thuộc về một người nhưng người

đó lại có thể có nhiều hơn một số điện thoại

NF là các thuộc tính thông thường mà người dùng nào cũng có thể nhận giá trị đó NF

sẽ bao gồm các trường chứa các thông tin mang tính tổng quát riêng cho người dùng,

do đó mức độ phân biệt người dùng của NF là rất thấp Giá trị của các thuộc tính thuộc tập NF thường giống nhau ở một số nhóm người sử dụng Ví dụ cho thuộc tính thuộc nhóm NF có thể là quê quán, giới tính, hay năm sinh những thuộc tính này thường xuất hiện ở nhiều đối tượng khác nhau

Chúng ta đã sử dụng các thuộc tính trong các tập dữ liệu nói trên để đánh giá mức độ phân biệt người dùng từ những giá trị của nó, vậy cũng cần có một giá trị để biểu diễn

mức độ đó của các thuộc tính Ở đây, chúng ta dùng một trọng số gọi là w để biểu diễn

điều này Trọng số w càng lớn, thì độ phân biệt người dùng của thuộc tính đó càng cao

Và ngược lại, nếu trọng số w nhỏ, thì ta khó có thể xác định được một người dùng cụ thể từ giá trị của một thuộc tính Thông thường với trọng số w nhỏ, ta sẽ thu được một tập gồm nhiều người dùng có chung giá trị của thuộc tính đó

Theo định nghĩa trên, các thuộc tính có khả năng phân biệt người dùng càng cao thì giá trị của trọng số w càng lớn, do vậy các giá trị w của SK lớn hơn w của WK rất nhiều và

w của WK lớn hơn w của NF rất nhiều và w của NF xấp xỉ 0

Chúng ta đã có giá trị trọng số w để đánh giá mức độ của các thuộc tính Tương tự như vậy, chúng ta cũng cần có thêm một chỉ số nhằm đánh giá mức độ tin tưởng của vào độ chính xác của dữ liệu trên website đó so với dữ liệu thực tế của người dùng Trên thực

tế, một người dùng có thể tạo nhiều tài khoản có nội dung khác nhau tại nhiều website khác nhau tùy thuộc vào mức độ sử dụng của chính người dùng với website đó Ví dụ

Trang 16

16

như nếu thông tin kết quả học tập của một khóa học trong nhà trường sẽ bao gồm các

dữ liệu gần như chính xác tuyệt đối, hơn so là với thông tin của người dùng tự khai báo trên các trang mạng xã hội Trọng số tin tưởng ở đây chúng ta nhắc đến tạm gọi là

trọng số t – trusted-index Giả thiết trọng số này được người tích hợp chỉ định trong

Trang 17

17

2.2.2 Hệ tích hợp thông tin cá nhân

Dựa trên kiến trúc ETL và những phân tích biểu diễn người dùng, chúng ta xây dựng

hệ tích hợp thông tin cá nhân với một vài biến đổi để phù hợp với bài toán đặt ra Để đơn giản hóa quá trình tích hợp, hệ thống được xây dựng theo mô hình như hình dưới đây:

Hình 2: Mô hình ETL cho hệ tích hợp thông tin cá nhân

Hình 2 mô tả các thành phần cấu thành nên hệ tích hợp và luồng hoạt động của nó Mô hình tích hợp bao gồm 7 thành phần được nhóm vào trên cơ sở mô hình ETL ở trên Thông tin đầu vào được lấy từ cơ sở dữ liệu nguồn (Source) và được đưa qua một loạt các thành phần xử lý như trong quá trình ETL để tải dữ liệu vào đích (Person DB) Chi tiết các thành phần xử lý như sau:

 Extract (E): Trích chọn dữ liệu

Trang 18

18

o Validate before transform: Xác thực dữ liệu đầu vào, loại bỏ phân loại các dữ liệu không hợp lệ Tạo ra những nguồn dữ liệu có độ chính xác cao hơn cho quá trình chuyển đổi

o Prepare before transform: Chuẩn bị dữ liệu - đưa dữ liệu về đúng định dạng tiêu chuẩn trước khi chuyển sang quá trình tiếp theo – transform

 Transform (T): Chuyển đổi dữ liệu

o Transform: Thực hiện quá trình biến đổi dữ liệu từ nguồn đã thu thập thành dạng tiêu chuẩn chúng ta cần

o Validate before load: Xác thực, loại bỏ bớt dữ liệu không hợp lệ sau quá trình chuyển đổi ở bước trước đó Tránh trường hợp dữ thừa các dữ liệu lỗi xảy ra trong quá trình chuyển đổi

o Prepare before load: Chuẩn bị dữ liệu cho quá trình load

 Load (L): Tải dữ liệu

o Load: Thực hiện tải dữ liệu vào cơ sở dữ liệu đích

Các thao tác này lặp lại với những bộ dữ liệu khác nhau của người dùng trên các nguồn khác nhau Do đó, để quá trình tích hợp được linh hoạt trên các nguồn, ta đưa thêm cấu hình (config) vào cùng với cơ sở dữ liệu nguồn làm đầu vào cho xử lý bên trong tích hợp Mỗi nguồn sẽ cần đưa vào một cấu hình khác nhau thay đổi theo cấu trúc dữ liệu của nguồn

2.3 Thảo luận

Hai vấn đề nổi lên trong quá trình tích hợp thông tin người dùng đó là việc thực hiện ánh xạ dữ liệu trong Transform và việc tải dữ liệu vào đích

2.3.1 Ánh xạ dữ liệu

Quá trình Transform trong mô hình ETL chính là thực hiện chuyển đổi dữ liệu từ cơ sở

dữ liệu nguồn vào cơ sở dữ liệu đích Để làm được việc này chúng ta cần thông qua

Trang 19

Có nhiều cách thức để thực hiện việc ánh xạ dữ liệu, tuy nhiên ánh xạ lược đồ sử dụng XML là một cách thức được chú ý đến gần đây vì tính đơn giản, linh hoạt của nó Dưới đây là mô hình ánh xạ được sử dụng trong bài toán:

Trang 20

từ nguồn vào đích Việc chuyển đổi dữ liệu từ nguồn vào đích sẽ sử dụng tập lệnh để biến đổi nguồn thành một đối tượng trung gian (Middle Object) trước khi tải vào đích Đối tượng trung gian cần đảm bảo đồng nhất với cơ sở dữ liệu đích cả về cấu trúc lẫn giá trị

Tổng quát hóa lên, một lược đồ các ánh xạ là một chuỗi nhất định các quan hệ R = {R1, R2 … Rk} Ri là một quan hệ hay một luật quy định để thực hiện chuyển đổi dữ liệu

Trang 21

21

Gọi S = {S1, , Sn} và T = {T1, , Tm} là hai lược đồ nguồn và đích Giả thiết I là thể hiện của S và J là một thể hiện của T Khi đó tìm thể hiện K trên tập lược đồ {S,T} sao cho SKi = SIi và TKj = TJj (với 1 ≤ i ≤ n và 1 ≤ j ≤ m)

Như vậy một ánh xạ lược đồ là bộ M = (S, T, ∑st) với S, T là hai lược đồ và ∑st là tập các luật trên {S, T}

Nếu M = (S, T, ∑st) là một ánh xạ lược đồ, thì một thể hiện của M là một thể hiện (I, J) trên (S, T) thỏa mãn tất cả các luật trong ∑st

Tuy nhiên sau ánh xạ này, dữ liệu không được chuyển trực tiếp vào đích mà còn phải qua một bước trung gian đó là đồng bộ hóa toàn bộ dữ liệu với đích Các trường có giá trị sẽ được đưa về cùng kiểu giá trị với đích, những trường không có dữ liệu sẽ được gán giá trị mặc định

Khi thu được một đối tượng trung gian các giá trị của một người thì thực hiện đẩy dữ liệu vào đích

2.3.2 Tích hợp dữ liệu vào đích

Quá trình tích hợp dữ liệu là quá trình tải dữ liệu trong ETL Quá trình này thực hiện đẩy từng bộ dữ liệu biểu diễn cho từng người vào tập dữ liệu ở đích, nếu không tìm thấy người dùng nào giống với với nguồn thì thực hiện insert nguồn, nếu tìm thấy thì thực hiện merge hai người dùng này để đẩy dữ liệu chính xác hơn vào đích Để làm được như thế, chúng ta cần giải quyết hai vấn đề sau:

 Xác định đối tượng người dùng

Xác định đối tượng người dùng là tìm ra người dùng ở đích có tương quan với nguồn nhất để thực hiện merge nguồn với đích Độ tương quan ở đây được hiểu là mức độ giống nhau giữa hai bộ dữ liệu đại diện cho nguồn và một đối tượng trong đích Độ tương quan càng cao thì hai đối tượng này càng có nhiều khả năng là một và ngược lại

Trang 22

22

 Xung đột dữ liệu

Khi tìm thấy một người dùng trong đích thỏa mãn một tiêu chí nào đó (SK giống hoặc

WK giống với nguồn), khi đó xảy ra xung đột dữ liệu giữa người dùng này với dữ liệu người dùng ở nguồn đưa vào

Một người dùng được biểu diễn bởi các SK, WK hay NF với trọng số giảm dần, trong

đó các SK là quan trọng nhất để thể hiện một người, WK cũng gây ảnh hưởng lớn trong biểu diễn người dùng Xung đột có thể xảy ra trên các SK, WK, NF khi thực hiện merge dữ liệu Ví dụ hai người dùng có một SK giống nhau nhưng lại có một vài SK khác hay có một vài WK hoặc NF khác

Xung đột xảy ra cần tìm cách giải quyết sao cho dữ liệu chuyển về đích có độ chính xác cao nhất Để giải quyết xung đột cần xem xét dựa trên trọng số của trường dữ liệu, chỉ số tin tưởng của nguồn chứa dữ liệu và dữ liệu được cập nhật hơn

Trang 23

23

CHƯƠNG 3: CÁC KỸ THUẬT GIẢI QUYẾT BÀI TOÁN

Có nhiều vấn đề nổi lên khi thực hiện tích hợp thông tin người dùng từ nhiều nguồn, một trong các vấn đề đó là các đối tượng dữ liệu có thể tồn tại trong những định dạng không nhất quán, gây khó khăn cho việc xác định đối tượng khớp nhau Để quá trình tích hợp được linh hoạt, dễ dàng đáp ứng được với nhiều nguồn dữ liệu khác nhau, một giải pháp đưa ra là sử dụng một ngôn ngữ luật để thực hiện cấu hình cho các nguồn Mỗi nguồn sẽ có một file cấu hình riêng cho toàn bộ quá trình tích hợp Quá trình chuyển đổi dữ liệu cũng cần sử dụng các luật để tạo các ánh xạ dữ liệu giữa cơ sở dữ liệu nguồn và đích Thêm nữa, khi thực hiện tải dữ liệu vào đích cũng cần giải quyết một số vấn đề như đối tượng ở nguồn đã tồn tại trong đích hay chưa, và nếu tồn tại thì làm cách nào để thực hiện đồng nhất nguồn và đích

3.1 Ngôn ngữ luật

Toàn bộ quá trình tích hợp dữ liệu từ nguồn vào đích được cấu hình trong config xml

sử dụng ngôn ngữ luật Ngôn ngữ luật cần đáp ứng đầy đủ các yêu cầu của hệ thống như các kết nối tới dữ liệu nguồn, các xử lý về mặt giá trị cũng như ánh xạ dữ liệu từ nguồn tới đích và các thao tác trong việc tải dữ liệu vào đích

Định dạng của config xml này bao gồm 7 thành phần dựa vào cấu trúc mô hình tích hợp đã trình bày ở trên (tham chiếu đến mô hình ETL cho hệ tích hợp thông tin cá nhân

ở hình 2 – trang 17):

 data-source: chứa thông tin về chuỗi kết nối, câu query lấy dữ liệu và chỉ số tin tưởng của nguồn

 validate: kiểm tra dữ liệu nguồn để loại bỏ các bản ghi không hợp lệ

 prepare: chuẩn bị dữ liệu cho transform

 transform: xây dựng các hàm để định nghĩa và xử lý các trường dữ liệu

Trang 24

 load: liệt kê các trường (input) để load vào destination

Trong đó bắt buộc: source, transform và load

Các thành phần chính trong cấu trúc DTD của file cấu hình:

<! DOCTYPE loader-config [

<! ELEMENT loader-config data-source , validate ?, prepare ?, transform , validate ?, prepare ?, load )

<! ELEMENT data-source source , destination )

<! ELEMENT source connection-string , query-data )

<! ELEMENT destination connection-string , db-collection )

<! ELEMENT validate (( require | match range compare in )+)>

<! ELEMENT prepare (( default format )+)>

<! ELEMENT transform (( if for foreach while fire set unset math string

| date extract single-value query is array xml )+)>

<! ELEMENT load field +)>

]>

Để chuẩn bị dữ liệu cho tích hợp, cần phải thực hiện cấu hình cho data-source để lấy thông tin về nguồn và đích Đồng thời thực hiện validate trước khi transform để loại bỏ thông tin không hợp lệ và prepare để chuẩn bị dữ liệu trước khi transform Quá trình transform chính là pha nặng nhất trong toàn bộ quá trình ETL Mà số lượng các bản ghi lưu thông tin về người dùng tại nguồn là rất lớn, có thể chứa nhiều dữ liệu không hợp

lệ Do đó, trước transform, loại bỏ dữ thô là hết sức quan trọng, có thể giảm thiểu được rất nhiều cho pha transform Dữ liệu thô chính là những dữ liệu mà nhìn vào chúng ta

có thể thấy là không hợp lệ ngay Chẳng hạn như một số trường bắt buộc phải có, hoặc một số trường có định dạng không hợp lệ

Dưới đây là các cấu hình cho các thành phần trên:

Trang 25

25

 Cấu hình config – data-source:

 source: Thông tin nguồn dữ liệu

o connection-string: Chuỗi kết nối tới nguồn

o query: Câu truy vấn lấy ra dữ liệu

o trusted-index: Chỉ số tin tưởng của nguồn

 destination: Thông tin đích

o connection-string: Chuỗi kết nối tới đích

o db-collection: Collection chứa dữ liệu

Ví dụ:

< data-source >

< source storage-type = Table"

< connection-string >Data Source=(localdb)\v11.0;Initial

Catalog=P_VatGia;Integrated

Security=True;Encrypt=False;TrustServerCertificate=False</ connection-string > < query >Select

name,gender,province,address,skype,email,mobilephone,joinedDate,lastCrawled from tbl_VatGia</ query >

Trang 26

26

Tương tự như cơ sở dữ liệu nguồn, cơ sở dữ liệu đích cũng được khai báo chuỗi kết nối và tên collection mà dữ liệu load tới

 Cấu hình config – validate (before transform):

Chi tiết các thành phần trong validate:

o Bao gồm các luật kiểm tra dữ liệu

o Mỗi luật nhận một trường đầu vào + các tham số liên quan đến luật validate

o Các luật đều trả về đúng/sai cho biết dữ liệu có hợp lệ không

o Danh sách các luật validate:

 Yêu cầu email là trường bắt buộc:

< require field = email"/>

Các thành phần của lệnh:

- Lệnh: require

- Trường cần kiểm tra: email Lệnh này kiểm tra dữ liệu trường email bắt buộc trường này phải có giá trị

 Match để validate email hợp lệ:

< match field = email" pattern = ^[\w.-]+@([\w-]+.)\w{2,4}" />

Trang 27

- Trường cần kiểm tra: gender

- Tập giá trị thành phần của gender: Nam, Nữ, “”

Lệnh này kiểm tra xem giá trị của trường gender có nằm trong tập giá trị {Nam, Nữ, “” } hay không

 Lấy các record có giá trị trường province là “hà nội”

< compare field = province" to = hà nội" ignore-case = True"/>

Các thành phần của lệnh:

- Lệnh: compare

- Trường cần kiểm tra: province

- Bỏ qua kiểm tra chữ hoa chữ thường: true Lệnh này kiểm tra xem giá trị của trường province có là “hà nội” hay không

Trang 28

28

 Cấu hình config – prepare (before transform):

 Bao gồm các thao tác chuẩn bị dữ liệu:

o Gán giá trị mặc định nếu null hoặc rỗng

 Định dạng lại dữ liệu trường birthday:

< format field = birthday"

Trang 29

29

3.2 Chuyển đổi dữ liệu

Quá trình chuyển đổi dữ liệu bao gồm các thao tác transform, validate before load và prepare before load để làm sạch và định dạng lại dữ liệu trước khi thực hiện load Cụ thể cấu hình các thành phần như sau:

 Cấu hình config – transform:

o string: thao tác với chuỗi

o math: thao tác với số

o date: xử lý với ngày tháng

Ví dụ về cấu hình transform trường gender:

Trang 30

o Ví dụ về transform cho trường email:

< string input = email" operator = ToLower" output = email"/>

 Cấu hình config – validate (before load):

 Kiểm tra dữ liệu hợp lệ cho load

before transform

Ví dụ:

 Kiểm tra field mark nằm trong khoảng 0.0 đến 10:

< range field = mark" min = 0.0" max = 10.0"/>

Các thành phần của lệnh:

- Lệnh: range

- Trường cần validate: mark

- Giá trị nhỏ nhất của khoảng giá trị: min

- Giá trị lớn nhất của khoảng giá trị: max

Trang 31

31

Lệnh này kiểm tra xem mark có nằm trong khoảng [0.0, 10.0] hay không

 Cấu hình config – prepare (before load):

 Làm sạch, chuẩn bị dữ liệu cho load

 Danh sách các luật sử dụng cho prepare before load giống với prepare before transform

Ví dụ:

 Định dạng lại kiểu dữ liệu của trường age:

< format field = age" data-type = Long" format-string = 0.0"/>

 Giới thiệu KVS Processor sử dụng trong transform

KVS Processor (Key-Value String Processor) là một bộ xử lý chuỗi dùng xml để biểu diễn [8]

Giới thiệu

KVS Processor nhận đầu vào là một tập Key-Value (K-V), trong đó

 Các K là phân biệt nhau và là duy nhất

Trang 32

Tập lệnh

Các lệnh chia thành 2 nhóm chính dựa trên chức năng:

Nhóm lệnh điều khiển – Controller

Các lệnh điều khiển có nhiệm vụ điều hướng, ra lệnh, ra quyết định đối với tiến trình đang thực hiện xử lý chuỗi Các lệnh điều khiển:

 Lệnh kiểm tra dữ liệu: is

Trang 33

 Lấy giá trị đơn: single-value

 Thực thi truy vấn: query

3.3 Tải dữ liệu vào đích

Quá trình tải dữ liệu vào đích được thực hiện dựa trên quá trình xác định người dùng

và giải quyết xung đột trên từng trường dữ liệu (SK, WK, NF) nếu có xung đột xảy ra Dưới đây là lược đồ luồng xác định đối tượng người dùng để tải dữ liệu vào đích:

Trang 34

34

Hình 4: Luồng xác định người dùng

Khởi tạo luồng là người dùng I (User I) và tập dữ liệu đích (Des)

không insert I vào Des

người dùng có tất cả các SK giống với I

o Nếu tìm thấy: thực hiện merge I với người tìm được

với I

Trang 35

35

mãn và chọn lấy người dùng có độ tương quan lớn nhất để thực hiện merge

 Nếu độ tương quan này nhỏ hơn một ngưỡng quy định: coi I là một người dùng mới và thực hiện insert I vào Des

 Nếu độ tương quan này lớn hơn ngưỡng: thực hiện merge với I

thực hiện tìm các người dùng có một trong số các WK thỏa mãn

 Nếu tìm thấy: tìm một người có độ tương quan lớn nhất để so sánh

và thực hiện tương tự như trên SK

 Nếu không tìm thấy: coi I là người mới và insert vào Des

3.4.1 Tính độ tương quan giữa hai người dùng

Trong quá trình tìm đối tượng người dùng thích hợp và gần giống với nguồn nhất sẽ có trường hợp trả về một tập các bản dữ liệu thỏa mãn một tính chất tìm kiếm nào đó, chẳng hạn như có SK hay WK giống nhau Khi đó giải pháp đưa ra là tính toán độ tương quan giữa hai người dùng

Độ tương quan giữa hai người dùng là mức độ giống nhau giữa hai người hay chính là hai bộ dữ liệu Độ tương quan càng lớn chứng tỏ hai người càng giống nhau nhiều và ngược lại, độ tương quan thấp hơn một khoảng giới hạn thì có thể coi như hai người này là hai người khác nhau

Coi dữ liệu của mỗi người dùng được mô tả bởi một mô men véc tơ nhiều chiều

Để mô tả mức độ giống nhau giữa hai người dùng thực chất là chúng ta đi ước tính độ tương quan giữa hai biến mô men này Để làm điều đó chúng ta dùng hệ số tương quan (coefficient of correlation) [9] Và để hiểu “cơ chế” của hệ số tương quan, chúng ta cần làm quen với khái niệm hiệp biến (covariance) Chúng ta biết rằng với một biến X

Trang 36

36

hay Y, có ba thông số thống kê mô tả: số cỡ mẫu, số trung (mean), và phương sai (variance) Nhưng để mô tả mối tương quan giữa hai biến X và Y, chúng ta cần đến hiệp biến

Có thể hiểu hiệp biến qua hình học lượng giác như sau Giả thiết cho một tam giác vuông, nếu gọi cạnh huyền là c và hai cạnh còn lại là a và b Định lí Pythagoras cho biết bình phương cạnh huyền bằng tổng bình phương hai cạnh kia:

var(X + Y) = var(X) + var(Y)

Trong đó, “var” là viết tắt của phương sai (variance) Chú ý rằng X+Y là một biến mới Chúng ta cũng chú ý rằng công thức này tương đương với Định lí Pythagoras cho tam giác vuông

Nếu hai biến X và Y có tương quan nhau, thì công thức trên được thay thế bằng một công thức khác với hiệp biến:

var(X + Y) = var(X) + var(Y) + 2.Cov(X,Y)

Trong đó, “Cov” là viết tắt của hiệp biến (tức covariance) Chúng ta chú ý rằng công thức này tương đương với công thức của tam giác thường, và cũng chú ý rằng công thức trên giống như nhị thức:

Trang 37

37

Trên đây là khái niệm Bây giờ để đi vào chi tiết toán, chúng ta cần một số kí hiệu để viết tắt các chỉ số trên Gọi xi và yi là hai biến quan sát được của X và Y cho cá nhân i Giả sử chúng ta có n đối tượng thì i = 1, 2, 3, …., n Gọi ̅ và ̅ là hai số trung bình của biến quan sát được x và y; và lần lược là phương sai của hai biến, được định nghĩa như sau:

Do đó, nếu X và Y độc lập, chúng ta có thể viết:

Nhưng nếu X và Y có liên hệ với nhau, công thức trên không đáp ứng được vấn đề mô

tả Chúng ta cần tìm một chỉ số khác mô tả mối liên hệ giữa hai biến, bằng cách nhân

độ lệch của biến x từ số trung bình, (xi - ̅), cho độ lệch của biến y, (yi - ̅), thay vì bình phương độ lệch từng biến riêng lẻ như công thức [1] Nói cách khác, tích

số hai độ lệch chính là hiệp biến Đối với mỗi cá nhân, hiệp biến là:

Nhưng ở đây chúng ta có n đối tượng, cho nên cần phải cộng tất cả lại và chia cho số đối tượng:

Công thức [2] chính là định nghĩa của hiệp biến Từ hai công thức trên, chúng ta có thể rút ra một vài nhận xét:

Trang 38

38

 Phương sai lúc nào cũng là số dương, bởi vì chúng được tính toán từ bình phương, nhưng hiệp biến có thể âm mà cũng có thể dương vì được ước tính từ tích của hai độ lệch

 Một hiệp biến là số dương có nghĩa là độ lệch từ số trung bình của x tuân theo chiều hướng thuận với y

 Một hiệp biến là số âm có nghĩa là độ lệch từ số trung bình của x tuân theo chiều hướng nghịch với y

 Nếu hiệp biến là 0, thì hai biến x và y độc lập nhau, tức không có tương quan gì với nhau

Một cách để “chuẩn hóa” hiệp biến và phương sai là lấy tỉ số của hai chỉ số này, và đó chính là định nghĩa củahệ số tương quan Hệ số tương quan thường được kí hiệu bằng r:

(Chú ý rằng căn số bậc hai của phương sai là độ lệch chuẩn, tức là:

cho nên công thức trên được mô tả bằng độ lệch chuẩn, thay vì phương sai) Với vài thao tác đại số, có thể viết lại công thức [3] như sau:

Công thức còn được biết đến như là hệ số Pearson (Pearson’s correlation coefficient)

Trang 39

= y Nếu r = 0, hai biến x và y hoàn toàn độc lập, tức không có liên hệ với nhau

Áp dụng phương pháp tính độ tương quan giữa hai bộ dữ liệu để tính toán độ giống nhau giứa hai người dùng bằng cách quy đổi bộ dữ liệu về bộ các value dựa vào tính chất của mỗi thuộc tính:

Giá trị của mỗi trường = w * t * C(field)

 C = 1 nếu giá trị field đó = giá trị của field tương ứng trong I

 C = c (0 <= c < 1) nếu field đó <> giá trị của field tương ứng trong I

 C = 0 nếu field null

Một số phương pháp tính giá trị của c tùy thuộc vào từng đặc tính của trường dữ liệu Chẳng hạn như dựa vào so khớp chuỗi trên từng trường dữ liệu

3.4.2 Giải thuật xác định người dùng và giải quyết xung đột

Quá trình nhập dữ liệu cho một người vào cơ sở dữ liệu đích, ta cần đánh giá xem người dùng đó là người mới hay là một người đã tồn tại trong dữ liệu đích Để làm được điều đó, chúng ta phải đi xác định xem có đối tượng người dùng nào trong đích phù hợp với đối tượng người dùng ở nguồn hay không Nếu không tìm được ta có thể

Trang 40

40

đối tượng người dùng nguồn này là một người mới và chỉ cần insert vào cơ sở dữ liệu đích Trong một số trường hợp khác, chúng ta lại tìm được một số đối tượng thỏa mãn một tiêu chí nào đấy mà từ đó có thể quy định cho một người Khi đó ta dùng thuật toán về hệ số tương quan để đánh giá mức độ giống nhau của một số người dùng đó với đối tượng người dùng nguồn được load vào Và khi có xung đột dữ liệu xảy ra cần giải quyết xung đột để lựa chọn dữ liệu chính xác nhất có thể Dưới đây là chi tiết thuật toán để thực hiện nhiệm vụ trên

Xây dựng hàm ImportPerson truyền vào nguồn I để thực hiện import một đối tượng

người dùng vào cơ sở dữ liệu đích

ImportPerson(I)

Tìm person P sao cho V(SKi, P) = V(SKi, I)

o Với mỗi WKi của I: ImportField(WKi,I, P)

o Với mỗi NFi của I: ImportField(NFi, I, P)

 Nếu không tìm thấy, tìm các Person {P1, P2 … Pq} sao cho V(SKi, Pj)=V(SKi, I)

o Nếu q > 0 (q luôn <= n)

 Tính độ tương quan giữa Pi trong {P1, P2 … Pq} và I: r(Pi, I)

o -1 < r(Pi, I) < 1

 Tính r = max{ r(Pi, I) } (1 <= i <= q) giả sử đạt max tại Pk

 Nếu r < ngưỡng: coi I là new person và insert vào DB là 1 object mới

 Ngược lại: merge I với Pk sử dụng ImportField

thấy P nào thỏa mãn cho WK thì không import được I

Chi tiết hàm ImportField được sử dụng trong ImportPerson(I):

ImportField(Field, P src , P des )

Ngày đăng: 23/11/2016, 04:14

HÌNH ẢNH LIÊN QUAN

Hình 1: Kiến trúc hệ tích hợp dữ liệu - tích hợp thông tin người dùng được trích rút từ các trang web cộng đồng vào một cơ sở dữ liệu người dùng chung
Hình 1 Kiến trúc hệ tích hợp dữ liệu (Trang 11)
Hình 2: Mô hình ETL cho hệ tích hợp thông tin cá nhân - tích hợp thông tin người dùng được trích rút từ các trang web cộng đồng vào một cơ sở dữ liệu người dùng chung
Hình 2 Mô hình ETL cho hệ tích hợp thông tin cá nhân (Trang 17)
Hình 3: Mô hình ánh xạ - tích hợp thông tin người dùng được trích rút từ các trang web cộng đồng vào một cơ sở dữ liệu người dùng chung
Hình 3 Mô hình ánh xạ (Trang 20)
Hình 4: Luồng xác định người dùng - tích hợp thông tin người dùng được trích rút từ các trang web cộng đồng vào một cơ sở dữ liệu người dùng chung
Hình 4 Luồng xác định người dùng (Trang 34)
Hình 5 - Cấu trúc dữ liệu thu thập từ Rồng Bay - tích hợp thông tin người dùng được trích rút từ các trang web cộng đồng vào một cơ sở dữ liệu người dùng chung
Hình 5 Cấu trúc dữ liệu thu thập từ Rồng Bay (Trang 43)
Hình 6 - Cấu trúc dữ liệu thu thập từ Vật Giá - tích hợp thông tin người dùng được trích rút từ các trang web cộng đồng vào một cơ sở dữ liệu người dùng chung
Hình 6 Cấu trúc dữ liệu thu thập từ Vật Giá (Trang 44)
Hình 7 - Cấu trúc dữ liệu thu thập từ Én Bạc - tích hợp thông tin người dùng được trích rút từ các trang web cộng đồng vào một cơ sở dữ liệu người dùng chung
Hình 7 Cấu trúc dữ liệu thu thập từ Én Bạc (Trang 45)
Hình 9 mô tả dữ liệu người dùng trên nguồn Tìm việc nhanh. Trong đó,  các trường mang thông tin cần thiết lấy ra đó là: name, email, birthday,   gender,  phone,  district,  jobPosition,  educationCertificate,  experience,  itGrade, currentSalary, lastCraw - tích hợp thông tin người dùng được trích rút từ các trang web cộng đồng vào một cơ sở dữ liệu người dùng chung
Hình 9 mô tả dữ liệu người dùng trên nguồn Tìm việc nhanh. Trong đó, các trường mang thông tin cần thiết lấy ra đó là: name, email, birthday, gender, phone, district, jobPosition, educationCertificate, experience, itGrade, currentSalary, lastCraw (Trang 47)
Hình 10 - Giao diện chương trình tích hợp - Loader - tích hợp thông tin người dùng được trích rút từ các trang web cộng đồng vào một cơ sở dữ liệu người dùng chung
Hình 10 Giao diện chương trình tích hợp - Loader (Trang 52)
Bảng 1 - Kết quả chạy chương trình khi không có xung đột dữ liệu - tích hợp thông tin người dùng được trích rút từ các trang web cộng đồng vào một cơ sở dữ liệu người dùng chung
Bảng 1 Kết quả chạy chương trình khi không có xung đột dữ liệu (Trang 53)
Hình 11 - Đồ thị tương quan giữa số lượng record ở đích và thời gian thực hiện - tích hợp thông tin người dùng được trích rút từ các trang web cộng đồng vào một cơ sở dữ liệu người dùng chung
Hình 11 Đồ thị tương quan giữa số lượng record ở đích và thời gian thực hiện (Trang 54)
Bảng 3 - Bảng trusted-index các nguồn - tích hợp thông tin người dùng được trích rút từ các trang web cộng đồng vào một cơ sở dữ liệu người dùng chung
Bảng 3 Bảng trusted-index các nguồn (Trang 58)
Bảng 4 - Bảng trọng số các trường dữ liệu - tích hợp thông tin người dùng được trích rút từ các trang web cộng đồng vào một cơ sở dữ liệu người dùng chung
Bảng 4 Bảng trọng số các trường dữ liệu (Trang 59)

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w