Mạng đổi mới hoàn toàn cách cư dân mạng liên kết với nhau vàtrở thành một phần tất yếu của mỗi ngày cho hàng trăm triệu thành viên khắp thế giới.Các dịch vụ này có nhiều phương cách để c
Trang 1ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
CHƯƠNG TRÌNH ĐÀO TẠO THẠC SĨ CNTT QUA MẠNG
-TÌM HIỂU MẠNG XÃ HỘI XÂY DỰNG ỨNG DỤNG DEMO
Bộ môn : Cơ Sở Dữ Liệu Nâng Cao GVHD : PGS-TS Đỗ Phúc
Thực hiện : Nguyễn Khánh Ngọc
CH1001117
Trang 2Thành phố Hồ Chí Minh - Tháng 08 Năm 2011
Trang 3NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN
Trang 4
MỤC LỤC Phần 1: Giới Thiệu Mạng Xã Hội
I Khái niệm 1
II Lịch sử 1
III Cấu trúc và mục tiêu cảu mạng xã hội 2
IV Phân tích mạng xã hội 3
IV Biện pháp phân tích mạng xã hội 4
Phần 2: Đồ thị và lưu trữ đồ thị trong cơ sơ dữ liệu quan hệ I Định nghĩa đồ thị 9
II Các thuật toán trong đồ thị 10
III Lưu trữ đồ thị trong cơ sở dữ liệu quan hệ 12
IV Cài đặt ứng dụng Demo mạng xã hội 16
1.Chức năng vẽ đồ thị 16
2 Chức năng thêm node, xóa node trực quan trên giao diện 17
3 Chức năng phân tích mạng xã hội, tìm key player 18
4 Xem và chỉnh sửa thông tin cá nhân của person trong mạng xã hội 20
5 Chức năng kết bạn và tìm những người có chung bạn bè với mình 20
6 Chức năng tìm kiếm những người có chung sở thích 21
Phần 3: Kết luận Tài liệu tham khảo 22
Trang 5Phần I: Mạng xã hội
I. Khái niệm
Mạng xã hội, hay gọi là mạng xã hội ảo,(social network) là dịch vụ nối kết cácthành viên cùng sở thích trên Internet lại với nhau với nhiều mục đích khác nhaukhông phân biệt không gian và thời gian
Mạng xã hội có những tính năng như chat, e-mail, phim ảnh, voice chat, chia sẻfile, blog và xã luận Mạng đổi mới hoàn toàn cách cư dân mạng liên kết với nhau vàtrở thành một phần tất yếu của mỗi ngày cho hàng trăm triệu thành viên khắp thế giới.Các dịch vụ này có nhiều phương cách để các thành viên tìm kiếm bạn bè, đối tác: dựatheo group (ví dụ như tên trường hoặc tên thành phố), dựa trên thông tin cá nhân (nhưđịa chỉ e-mail hoặc screen name), hoặc dựa trên sở thích cá nhân (như thể thao, phimảnh, sách báo, hoặc ca nhạc), lĩnh vực quan tâm: kinh doanh, mua bán
Hiện nay thế giới có hàng trăm mạng mạng xã hội khác nhau, với MySpace vàFacebook nổi tiếng nhất trong thị trường Bắc Mỹ và Tây Âu; Orkut và Hi5 tại NamMỹ; Friendster tại Châu Á và các đảo quốc Thái Bình Dương Mạng xã hội khác gặthái được thành công đáng kể theo vùng miền như Bebo tại Anh Quốc, CyWorld tạiHàn Quốc, Mixi tại Nhật Bản và Yahoo! 360 tại Việt Nam
II. Lịch sử
Mạng xã hội xuất hiện lần đầu tiên năm 1995 với sự ra đời của trang Classmate vớimục đích kết nối bạn học, tiếp theo là sự xuất hiện của SixDegrees vào năm 1997 vớimục đích giao lưu kết bạn dựa theo sở thích
Năm 2002, Friendster trở thành một trào lưu mới tại Hoa Kỳ với hàng triệu thànhviên ghi danh Tuy nhiên sự phát triển quá nhanh này cũng là con dao hai lưỡi: servercủa Friendster thường bị quá tải mỗi ngày, gây bất bình cho rất nhiều thành viên.Năm 2004, MySpace ra đời với các tính năng như phim ảnh (embedded video) vànhanh chóng thu hút hàng chục ngàn thành viên mới mỗi ngày, các thành viên cũ củaFriendster cũng lũ lượt chuyển qua MySpace và trong vòng một năm, MySpace trởthành mạng xã hội đầu tiên có nhiều lượt xem hơn cả Google và được tập đoàn NewsCorporation mua lại với giá 580 triệu USD
Năm 2006, sự ra đời của Facebook đánh dấu bước ngoặt mới cho hệ thống mạng xãhội trực tuyến với nền tảng lập trình "Facebook Platform" cho phép thành viên tạo ranhững công cụ (apps) mới cho cá nhân mình cũng như các thành viên khác dùng.Facebook Platform nhanh chóng gặt hái được thành công vược bực, mang lại hàngtrăm tính năng mới cho Facebook và đóng góp không nhỏ cho con số trung bình 19phút mà các thành viên bỏ ra trên trang này mỗi ngày
Trang 6III. Cấu trúc và mục tiêu của một mạng xã hội.
mà các nút được biểu diễn bởi các điểm còn các liên kết được biểu diễn bởi các đoạnthẳng
2. Mục tiêu
Tạo ra một hệ thống trên nền Internet cho phép người dùng giao lưu và chia sẻthông tin một cách có hiệu quả, vượt ra ngoài những giới hạn về địa lý và thời gian.Xây dựng lên một mẫu định danh trực tuyến nhằm phục vụ những yêu cầu côngcộng chung và những giá trị của cộng đồng
Nâng cao vai trò của mỗi công dân trong việc tạo lập quan hệ và tự tổ chức xoayquanh những mối quan tâm chung trong những cộng đồng thúc đẩy sự liên kết các tổchức xã hội
Sự ra đời ồ ạt của các mạng xã hội (Social Network) thời gian gần đây ở Việt Nam
cũng như trên toàn thế giới đã tạo ra một làn sóng mới kích thích sự phát triển củakênh truyền thông cộng đồng
Điểm nổi bật của Social Network mà ai cũng nhận thấy đó là tính kết nối và chia sẻ
rất mạnh mẽ Nó phá vỡ những ngăn cách về địa lý, ngôn ngữ, giới tính lẫn quốc gia.Những gì bạn làm, bạn nghĩ, cả thế giới có thể chia sẻ với bạn chỉ trong tích tắc
Social Network site hay mạng xã hội là mạng được tạo ra để tự thân nó lan rộng trong
cộng đồng thông qua các tương tác của các thành viên trong chính cộng đồng đó Mọithành viên trong mạng xã hội cùng kết nối và mỗi người là một mắt xích để tạo nênmột mạng lưới rộng lớn truyền tải thông tin trong đó Về cơ bản, mạng xã hội giốngnhư một trang web mở với nhiều ứng dụng khác nhau Mạng xã hội khác với trangweb thông thường ở cách truyền tải thông tin và tích hợp ứng dụng Trang web thôngthường cũng giống như truyền hình, cung cấp càng nhiều thông tin, thông tin càng hấpdẫn càng tốt còn mạng xã hội tạo ra các ứng dụng mở, các công cụ tương tác để mọingười tự tương tác và tạo ra dòng tin rồi cùng lan truyền dòng tin đó
Trang 7IV. Phân tích mạng xã hội
Một mạng xã hội là một cấu trúc xã hội tạo ra từ các cá nhân (hoặc tổ chức) gọi là
"nút", được gắn liền (kết nối) bằng một hoặc nhiều loại hình cụ thể của phụ thuộc lẫnnhau , chẳng hạn như tình bạn , họ hàng , quan tâm, trao đổi tài chính, không thích,hoặc mối quan hệ về niềm tin hoặc uy tín
Phân tích mạng xã hội xem mối quan hệ xã hội về mặt lý thuyết mạng lưới baogồm các nút và các mối quan hệ (còn gọi là các cạnh, liên kết, hoặc kết nối) Nodes lànhững diễn viên cá nhân trong mạng lưới, và quan hệ là những mối quan hệ giữa cácdiễn viên Kết quả là đồ thị dựa trên cấu trúc thường rất phức tạp Có thể có nhiềuloại quan hệ giữa các nút Nghiên cứu ở một số lĩnh vực học thuật đã chỉ ra rằng cácmạng xã hội hoạt động trên nhiều cấp độ, từ gia đình đến mức của các quốc gia, vàđóng một vai trò quan trọng trong việc xác định cách các vấn đề được giải quyết, tổchức đang chạy, và mức độ mà các cá nhân thành công trong việc đạt được mục tiêucủa họ
Trong dạng đơn giản nhất, một mạng xã hội là một bản đồ của quan hệ quy định,chẳng hạn như tình bạn, giữa các nút đang được nghiên cứu Các nút mà một cá nhân
là như vậy, kết nối là các địa chỉ liên lạc xã hội của cá nhân Mạng cũng có thể được
sử dụng để đo vốn xã hội - giá trị mà một cá nhân nhận được từ các mạng xã hội Những khái niệm này thường được hiển thị trong một sơ đồ mạng xã hội, nơi mà cácnút là các điểm và các mối quan hệ là những đường liên kết giữa các nút
Phân tích mạng xã hội (liên quan đến mạng lưới lý thuyết ) đã nổi lên như một kỹthuật hiện đại quan trọng trong xã hội học Nó cũng đã thu được một lượng đáng kểtrong nhân chủng học , sinh học , nghiên cứu truyền thông , kinh tế , địa lý , khoa họcthông tin , nghiên cứu tổ chức , tâm lý xã hội , và sociolinguistics , và đã trở thành mộtchủ đề phổ biến của đầu cơ và nghiên cứu
Mạng xã hội phân tích đã chuyển từ một phép ẩn dụ gợi ý để phân tích một cáchtiếp cận để mô hình, với báo cáo của chính lý thuyết, phương pháp của nó, phần mềmphân tích mạng xã hội , và các nhà nghiên cứu Các nhà phân tích lý do từ cả mộtphần, từ cấu trúc liên quan đến cá nhân, từ hành vi thái độ Họ thường hoặc mạng lướinghiên cứu toàn bộ (còn gọi là mạng lưới hoàn chỉnh), tất cả các mối quan hệ có quan
hệ xác định, hoặc các mạng cá nhân, các mối quan hệ mà mọi người quy định có,chẳng hạn như "cộng đồng cá nhân của họ " Một số phân tích xu hướng phân biệtphân tích mạng xã hội:
Không có giả định rằng các nhóm là những khối xây dựng của xã hội: tiếp cậnđược mở ra để nghiên cứu ít bị giới hạn hệ thống xã hội, từ nonlocal cộng đồng để liênkết giữa các trang web
Trang 8Thay vì điều trị cá nhân (người, tổ chức, quốc gia) là đơn vị riêng biệt của phântích, nó tập trung vào cách cấu trúc của mối quan hệ ảnh hưởng đến cá nhân và cácmối quan hệ của họ
Trái ngược với phân tích mà cho rằng xã hội hoá thành các chỉ tiêu xác định hành
vi, mạng lưới phân tích vẻ để xem mức độ mà các cấu trúc và thành phần của mối quan
hệ ảnh hưởng đến chỉ tiêu
Hình dạng của một mạng xã hội sẽ giúp xác định tính hữu dụng của một mạng lướicho các cá nhân của mình Nhỏ hơn, chặt chẽ hơn mạng có thể được ít hữu ích cho cácthành viên của họ hơn so với các mạng với nhiều kết nối lỏng lẻo cho các cá nhân bênngoài mạng chính Mạng cởi mở hơn, có quan hệ nhiều và các kết nối xã hội, có nhiềukhả năng để giới thiệu những ý tưởng mới và cơ hội cho các thành viên của họ hơn sovới các mạng khép lại với nhiều mối quan hệ dự phòng Nói cách khác, một nhómbạn, những người chỉ làm việc với nhau đã cùng chia sẻ những kiến thức và cơ hội Một nhóm các cá nhân với các kết nối đến thế giới xã hội khác có thể có truy cập vàomột phạm vi rộng hơn của thông tin Nó là tốt hơn cho sự thành công cá nhân để cócác kết nối đến một loạt các mạng kết nối nhiều hơn là trong một mạng đơn Tương tựnhư vậy, cá nhân, tập thể dục có thể ảnh hưởng hoặc làm môi giới trong các mạng xãhội của họ bằng cách cầu nối hai mạng mà không phải trực tiếp liên kết (được gọi làlàm đầy lỗ cấu trúc)
Sức mạnh của phân tích mạng xã hội bắt nguồn từ sự khác biệt của nó từ truyềnthống nghiên cứu khoa học xã hội, mà cho rằng đó là thuộc tính của vật chất diễn viên,cho dù họ có thân thiện hay không thân thiện, thông minh hay ngu ngốc, vv, mà cánhân Phân tích mạng xã hội tạo ra một cái nhìn khác, các thuộc tính của các cá nhân
ít quan trọng hơn mối quan hệ và quan hệ của họ với các diễn viên khác trong hệthống Phương pháp này hóa ra là hữu ích cho việc giải thích nhiều hiện tượng trongthế giới thực, nhưng lá phòng ít hơn cho cơ quan cá nhân, khả năng cho các cá nhângây ảnh hưởng đến thành công của họ, bởi vì rất nhiều của nó nằm bên trong cấu trúcmạng của họ
Mạng xã hội cũng đã được sử dụng để kiểm tra xem các tổ chức tương tác vớinhau, mô tả các kết nối nhiều thức liên kết với nhau điều hành, cũng như các hiệp hội
và các kết nối giữa người lao động cá nhân tại các tổ chức khác nhau Ví dụ, trong các
tổ chức quyền lực thường đi kèm nhiều hơn từ mức độ mà một cá nhân trong mộtmạng là trung tâm của mối quan hệ nhiều hơn so với tiêu đề công việc thực tế Mạng
xã hội cũng đóng một vai trò quan trọng trong tuyển dụng, trong kinh doanh thànhcông, và hiệu suất công việc Networks cung cấp cách cho các công ty để thu thậpthông tin, ngăn chặn cạnh tranh, và thông đồng trong giá thiết hoặc chính sách
Trang 9V. Biện pháp trong phân tích mạng xã hội
Phân tích mạng xã hội là đo lường, đánh giá mối quan hệ giữa các cá nhân, nhómhay những tổ chức Các nút trong mạng là những cá nhân hay nhóm người, còn cácđường liên kết để chỉ mối quan hệ giữa các cá nhân, nhóm người và tổ chức với nhau.Phân tích mạng xã hội dựa trên phân tích trực quan và toán học trong mối quan hệ giữacon người với nhau
Để hiểu được mạng xã hội, chúng ta phải đánh giá vị trí của các thành phần trongmạng Phân tích mạng là tìm ra mức độ trung tâm của một nút Điều này cho chúng tamột cái nhìn tổng quan về vai trò khác nhau của các tác nhân tham gia vào mạng xãhội Tác nhân nào người kết nối, tác nhân nào là lãnh đạo, tác nhân nào là cầu nối, tácnhân nào có ảnh hưởng lớn trong một mạng xã hội, tác nhân nào là tác nhân ngoạibiên(ít ảnh hưởng tới mạng)
Hãy xem xét mạng xã hội trên, 2 nút được kết nối với nhau nếu họ thường xuyênnói chuyện với nhau hay tương tác với nhau theo một cách thức nào đó Andre thườngliên lạc với Carol nhưng không liên lạc với Ike, vì thế giữa Andre và Carol có mộtđường liên kết trực tiếp, không có liên kết trực tiếp giữa Andre và Ike
Trang 10Có 3 cách đo lường mức độ trung tâm của tác nhân trong mạng xã hội.
1. Degree Centrality
Những người nghiên cứu mạng xã hội đo lường hoạt động một nút trong mạngbằng cách xem xét số lượng kết nối trực tiếp mà nút đó có Trong mạng xã hội trên,Diane có nhều kết nối trực tiếp nhất, cô ấy là mốt thành viên tích cực của mạng Trongmạng xã hội, những cá nhân hay tổ chức có nhiều kết nối thì càng có nhiều sức ảnhhưởng Nhưng đôi lúc chỉ số Degree cũng chưa phản ảnh được mức độ quan trọng củamột nút trong mạng Ví dụ trong mạng Xã hội trên Diane có nhiều kết nối nhất, nhưngnếu xem xét kỹ, chúng ta có thể nhận ra rằng cô ấy kết nối tới những người mà nhưngngười này đêu kết nối với nhau Điều này co nghĩa là, họ chung một tổ chức xãhội(người thân, bạn bè …) Dù không có Diane thì nhưng người này vẫn có thể liên lạcđược với nhau Vì vậy để xét mức độ quan trọng của một nút trong mạng xã hội, chúng
ta cần kiểm tra thêm chỉ số betweennes
Cho đồ thị G: = (V,E) với n đỉnh, chỉ số degree centrality C D (v) cho đỉnh v là:
Công thức dạng chuẩn:
2. Betweenness Centrality
Mức độ mà một nút nằm giữa các nút khác trong mạng Biện pháp này có tính đếncác kết nối của các nút láng giềng của nút, cho một giá trị cao hơn cho các nút khác Biện pháp này phản ánh số lượng người một người là kết nối gián tiếp thông qua liênkết trực tiếp của họ
Trong khi Diane có nhiều kết nối chặt, Heather có ít kết nối hơn Nhưng Heather lạinắm giữ một vai trò quan trọng trong mạng xã hội này, cô ấy có một vị trí đặc biệttrong mạng, là cầu nối giữa trong mạng, thông qua Heather, Ike và Jane mới có thểtương tác với các thành viên còn lại trong mạng xã hội trên Nếu không có Heather thiIke và Jane sẽ bị tách biệt ra khỏi mạng xã hội, không thể liên lạc được với nhưngngười khác trong mạng Một nút có chỉ số “betweenness” cao sẽ có ảnh hưởng lớn và
có thể tác động đến toàn mạng xã hội
Cho đồ thị G: = (V,E) với n đỉnh, chỉ số betweenness C B (v) cho đỉnh v được tính như
sau:
Trang 111 Cho mỗi cặp đỉnh (s,t), tính tất cả các đường đi ngắn nhất của chúng.
2 Với mỗi cặp đỉnh (s,t), xem xét tất cả các đường đi ngắn nhất đi qua đỉnh v
3 Cộng tất cả các đường đi ngắn nhất này lại và chia cho tổng số các đường đi ngắn nhất giữa các cặp đỉnh (s,t)
Fernando và Garth có ít kết nối hơn Diane, nhưng với những kết nối gián tiếp vàtrực tiếp của họ, cho phép Fernando và Grath liên lạc với tất các các thành viên còn lạinhanh hơn những người khác Họ có đường đi ngắn nhất đến những người khác trongmạng, họ ở gần những người khác Tóm lại nhưng thông tin lan truyền torng mạng xã
Trang 12hội này sẽ thường xuyên đi qua Fernando và Garth, 2 người này thường xuyên giámsát, nắm bắt được thông tin lan truyền trong mạng xã hội trên.
Cho đồ thị G: = (V,E) với n đỉnh, chỉ số closeness C C (v) cho đỉnh v được tính như
sau: nghịch đảo của tổng chiều dài các đường đi ngắn nhất từ v đến các đỉnh khác,nghịch đảo là 1 hình thức tính ra giá trị tốt nhất cũng chính là giá trị lớn nhất
Ngoài ra còn được tính bằng công thức sau
Công thức dạng chuẩn:
Trang 13PHẦN II: Đồ Thị và lưu trữ đồ thị trong cơ sở dữ liệu quan hệ
I. Khái niệm đồ thị
Đồ thị là một tập các đối tượng, được gọi là các nút hay đỉnh, một số nút được kếtnối bởi các liên kết, được gọi là các cạnh Mỗi nút có thể có một tên, ví dụ một tênngười hay tổ chức nếu các nút đại diện cho con người hay tổ chức Mỗi cạnh đi từ mộtnút đến một nút khác biểu diễn mối quan hệ tương tác giữa các nút với nhau
• E, tập các cặp không thứ tự chứa các đỉnh phân biệt, được gọi là cạnh Hai đỉnh
thuộc một cạnh được gọi là các đỉnh đầu cuối của cạnh đó
Trong nhiều tài liệu, tập các cạnh bao gồm cả các cặp đỉnh không phân biệt, các
cạnh này được gọi là các khuyên V (và E) thường là các tập hữu hạn, phần lớn các kết
quả nghiên cứu đã biết không đúng (hoặc khác) khi áp dụng cho đồ thị vô hạn (infinitegraph) vì nhiều luận cứ không dùng được trong trường hợp vô hạn
Đồ thị có hướng
Đồ thị có hướng G là một cặp có thứ tự G:=(V, A), trong đó