1. Trang chủ
  2. » Giáo Dục - Đào Tạo

LUẬN VĂN KHOA HỌC MÁY TÍNH VỀ DỮ LIỆU MỞ

126 23 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 126
Dung lượng 5,05 MB

Nội dung

ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA KHOA HỌC VÀ KĨ THUẬT MÁY TÍNH LUẬN VĂN TỐT NGHIỆP ĐẠI HỌC XÂY DỰNG NỀN TẢNG ỨNG DỤNG VỀ DỮ LIỆU TRÊN HỆ THỐNG DỮ LIỆU MỞ Ngành: Khoa học máy tính TP HỒ CHÍ MINH, 2020 Tóm tắt luận văn Nội dung thực bao gồm phần: • Phần một: Mở đầu Giới thiệu mục tiêu đề tài luận văn • Phần hai: Tổng quan Những khái niệm, kiến thức liên quan đến đề tài luân văn • Phần ba: Kiến trúc hệ thống Hiện thực cho kiến trúc hệ thống liệu mở • • • • • công nghệ sử dụng cho hệ thống Phần bốn: Tích hợp tính triển khai chia sẻ ứng dụng CKAN Phần cung cấp phương pháp thiết kế phần mở rộng cho tính triển khai chia sẻ ứng dụng CKAN Phần năm: Hệ thống xây dựng thực thi ứng dụng Phân tích, thiết kế thực hệ thống xây dựng thực thi ứng dụng Phần sáu: Quản lý nhật ký, thống kê theo dõi hệ thống Xây dựng hệ thống thu thập nhật ký, số liệu phương thức theo dõi hệ thống Phần bảy: Kết đánh giá hệ thống Kết thử nghiệm đánh giá hệ thống thông qua ứng dụng triển khai hệ thống Phần tám: Tổng kết hướng phát triển Khái quát nội dung, ý nghĩa hệ thống, hướng phát triển cho luân văn tới i Mục lục Tóm tắt luận văn i Danh sách hình vẽ iv Thuật ngữ từ viết tắt vi Mở đầu 1.1 Giới thiệu đề tài 1.2 Mục tiêu đề tài 1 2 Tổng quan 2.1 Giới thiệu liệu mở 2.2 Ứng dụng liệu liệu mở 2.3 Tính triển khai ứng dụng tảng liệu mở 2.4 Tính chia sẻ ứng dụng tảng liệu mở 2.5 Hệ thống quản lý liệu CKAN 2.6 Thực thi ứng dụng người dùng cung cấp 2.7 Quản lý theo dõi hệ thống 4 9 12 29 Kiến trúc hệ thống 3.1 Kiến trúc tổng thể 3.2 Kiến trúc phân rã 3.3 Thiết kế sở liệu 34 34 36 41 Tích hợp tính triển khai chia sẻ ứng dụng CKAN 4.1 Thiết kế phần mở rộng CKAN 4.2 Chức vụ quyền hạn liên quan đến triển khai ứng dụng 4.3 Chức vụ quyền hạn liên quan đến chia sẻ ứng dụng 4.4 Chức vụ quyền hạn liên quan đến quản lý hệ thống 43 43 60 65 67 ii 4.5 4.6 Các tính cổng thông tin liệu mở liên quan đến triển khai chia sẻ ứng dụng API triển khai sử dụng ứng dụng Hệ thống xây dựng thực thi ứng dụng 5.1 Phân tích vấn đề 5.2 Thiết kế hệ thống 5.3 Ghi liệu đầu ứng dụng 5.4 Hiện thực hệ thống Quản lý nhật ký, thống kê theo dõi hệ thống 6.1 Giới thiệu chung 6.2 Thành phần 6.3 Định dạng log ghi 6.4 Quy trình 6.5 Tính 68 84 87 87 91 94 96 99 99 100 100 101 103 Kết đánh giá hệ thống 107 7.1 Kết 107 7.2 Đánh giá 109 7.3 So sánh 109 Tổng kết hướng phát triển đề tài 8.1 Tổng kết 8.2 Khó khăn hạn chế 8.3 Hướng phát triển Tài liệu tham khảo 114 114 115 115 116 Danh sách hình vẽ 2.1 2.2 2.3 2.4 2.5 2.6 Kiến trúc code CKAN1 Logo Docker Kiến trúc Docker Engine [11] Các tầng Docker image container [19] Logo AppArmor Cơ chế hoạt động ELK 11 14 14 25 27 31 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 3.10 3.11 3.12 Kiến trúc phân lớp hệ thống Minh họa kiến trúc hệ thống Bản vẽ chuỗi: Tạo ứng dụng Bản vẽ chuỗi: Tạo dự án Bản vẽ chuỗi: Tìm kiếm ứng dụng dự án Bản vẽ chuỗi: Đọc ứng dụng, dự án lần gọi Bản vẽ chuỗi: Tạo gọi ứng dụng Bản vẽ chuỗi: Tùy chỉnh ứng dụng dự án Bản vẽ chuỗi: Thu thập nhật ký hệ thống ứng dụng Bản vẽ chuỗi: Tạo trang quản lý nhật ký Bản vẽ chuỗi: Tạo trang quản lý nhật ký Biểu đồ ER 34 36 36 37 37 38 39 39 40 40 41 42 4.1 4.2 4.3 4.4 4.5 4.6 4.7 4.8 4.9 4.10 4.11 4.12 Giao diện thành viên tổ chức Giao diện bổ nhiệm nhân Bản vẽ use case triển khai thực thi ứng dụng Chi tiết quyền hạn cho chức vụ chế độ STOP ứng dụng Chi tiết quyền hạn cho chức vụ chế độ DEBUG ứng dụng Chi tiết quyền hạn cho chức vụ chế độ START ứng dụng Bản vẽ use case chia sẻ ứng dụng ứng dụng Bản vẽ use case quản lý hệ thống Tạo ứng dụng CKAN bước Tạo ứng dụng CKAN bước hai Tạo ứng dụng CKAN bước ba Tìm kiếm ứng dụng 60 61 62 63 63 63 66 67 69 69 70 71 iv 4.13 4.14 4.15 4.16 4.17 4.18 4.19 4.20 4.21 4.22 4.23 4.24 4.25 4.26 4.27 4.28 4.29 4.30 4.31 4.32 Xem thông tin thực thi ứng dụng Xem thông tin thực thi ứng dụng Danh sách kết lần gọi theo cá nhân Kết lần gọi Xem báo cáo thích Quản lý mã nguồn Nhật ký ứng dụng Thống kê lần gọi Tùy chỉnh ứng dụng Tìm kiếm viết Đọc viết Tạo viết CKAN bước Tạo viết CKAN bước hai Tạo viết CKAN bước ba Quản lý ứng dụng Quản lý viết Quản lý nhật ký hệ thống Quản lý tài nguyên hệ thống Quản lý tài nguyên hệ thống Ứng dụng VNCOVID 72 72 73 73 74 75 76 77 77 78 79 80 81 81 82 82 83 83 84 86 Danh sách bảng 2.1 Các định nghĩa liệu mở 5.1 Các kiểu tham số 94 5.2 Các kiểu liệu đầu 95 7.1 Kết triển khai hai ứng dụng 108 7.2 Kết thực thi hai ứng dụng 108 7.3 Khả đáp ứng tối đa 109 7.4 Đặc điểm triển khai ứng dụng tảng containerization triển khai ứng dụng máy chủ vật lý không sử dụng tảng containerization110 vi Thuật ngữ từ viết tắt CSDL Cơ sở liệu Portal Cổng thơng tin Search engine Cơng cụ tìm kiếm vii Chương Mở đầu 1.1 Giới thiệu đề tài Hiện liệu động lực mạnh mẽ cho lĩnh lực đời sống Trong kinh tế , liệu nguồn tài nguyên đem đến cho doanh nghiệp công cụ để theo dõi thị trường hiểu rõ khách hàng họ Trong nghiên cứu khoa học, liệu nguồn đầu vào cho AI, data mining, tiền đề cho phát tri thức Vì mục đích cộng đồng, có nhiều nguồn liệu đơn vị tổ chức, cá nhân công khai từ tạo mối liên hệ người chia sẻ liệu người cần liệu Nhu cầu thực tế đặt vấn đề làm cách để chia sẻ liệu, tiếp cận liệu để sử dụng cách hiệu Để giải vấn đề ấy, nhiều quốc gia giới sử dụng tảng cổng thông tin liệu mở để lưu trữ, chia sẻ liệu song song phương thức để truy cập đến liệu Tuy nhiên có khuyết điểm mà tảng có tập người dùng nhỏ liệu chưa thể tính ứng dụng Điều làm cho tảng liệu mở trở nên giống với nơi để lưu trữ liệu giá trị cốt lõi mang lại lợi ích cho cộng đồng Về tập người dùng, người dùng tảng nhà cung cấp liệu, người hiểu liệu, nhà phát triển nhà khoa học Chính muốn mang liệu đến với người dùng khơng có kiến thức liệu cơng nghệ nhà lập trình bên ngồi hệ thống, nhóm tác giả phát Chương Mở đầu triển tính bổ sung tảng liệu mở tính triển khai chia sẻ ứng dụng Hệ thống cho phép lưu trữ ứng dụng với số lượng lớn đảm bảo đáp ứng yêu cầu người dùng thời điểm dịch vụ Hệ thống cung cấp công cụ, quy tắc phương pháp triển khai ứng dụng Hệ thống cho phép tổ chức triển khai ứng dụng mở, cá nhân tổ chức khác tham gia triển khai ứng dụng Tính phù hợp cho cá nhân, tổ chức có ý tưởng ứng dụng liệu khơng thể triển khai độc lập lý chủ quan hay khách quan đơn giản muốn chia sẻ cho cộng đồng Đối với ứng dụng triển khai bên ngồi chia sẻ đến với cộng đồng cách đăng viết dự án ứng dụng, viết mô tả dự án có liên quan đến liệu ứng dụng chủ đạo từ liệu Đây hướng hệ thống liệu mở có Sáng kiến triển khai chia sẻ ứng dụng hệ thống liệu mở hứa hẹn bước ngoặt thúc đẩy sáng kiến liệu quan tâm liệu cá nhân, tổ chức phủ 1.2 Mục tiêu đề tài Mục tiêu đề tài phát triển thêm tính liên quan đến triển khai chia sẻ ứng dụng dựa vào tảng liệu mở có sẵn Hệ thống cho phép nhà lập trình hay nhà triển khai hệ thống tận dụng nguồn liệu phong phú, đa dạng, độ tin cậy cao dễ dàng tiếp cận hệ thống liệu mở để tạo ứng dụng có tính thiết thực với đời sống xã hội, tạo sáng kiến liệu tri thức Với khả ấy, mục tiêu hệ thống nơi tập trung liệu mà nơi tập trung ứng dụng liên quan đến liệu, cụ thể mục tiêu hệ thống bao gồm thành phần sau đây: • Cổng thơng tin liệu mở có tích hợp tính triển khai chia sẻ ứng dụng thơng qua giao diện web • Máy chủ ứng dụng cho phép xây dựng ảnh docker thực thi ứng dụng • Cơng cụ giám sát ứng dụng cho người quản trị hệ thống công cụ theo dõi nhật ký thống kê cho người quản trị chủ sở hữu ứng dụng Chương Quản lý nhật ký, thống kê theo dõi hệ thống 20 } 21 if [loglevel]== "INFO" 22 { 23 kv { 24 source => "datalog" 25 field_split => "&" 26 value_split => "=" 27 } 28 mutate { 29 remove_field => [ "message", "datalog"] 30 31 } } 32 mutate { 33 remove_field => ["headers","@version"] 34 } 35 if "_grokparsefailure" in [tags] { 36 37 drop { } } 38 } 39 40 # This output block will send all events of type "rsyslog" to Elasticsearch at the configured 41 # host and port into daily indices of the pattern, "rsyslog-YYYY.MM.DD" 42 43 output { 44 elasticsearch { 45 hosts => ["0.0.0.0:9200"] 46 index => "%{server}-%{+YYYY.MM.dd}" 47 } 48 } 6.5.2 Tạo Index pattern Log gửi đến logstash xử lí đánh index - đây, log server ngày đánh index giống - gửi đến elasticsearch 104 Chương Quản lý nhật ký, thống kê theo dõi hệ thống Tạo index pattern nhằm mục đích nhóm index nhóm lại với nhau, từ dễ sử dụng Ví dụ : xem log server tháng API sử dụng: POST createIndex(index_name) index_name: tên đại diện cho index cần quan tâm, index elasticsearch hợp với index_name gom để hiển thị(visualize) cơng cụ Kibana 6.5.3 Tạo dashboard cho tìm kiếm log Việc tìm kiếm, lọc log cần theo dõi cần thiết người quản lí hệ thống việc giám sát tình trạng hoạt động máy chủ Ví dụ: Tìm log máy chủ có host: 192.168.0.11 API sử dụng: POST createDashboardSearch/name Body request: { "index":"index_name", "fields": ["fieldA","fieldB","fieldB"], "condition": "fieldA:value" } Trong đó: • name: tên dashboard • index_name: tên index_dex pattern tạo • fields: chứa trường cần theo dõi • condition: điều kiện để lọc, rỗng 6.5.4 Tạo dashboard thống kê Việc thống kê giúp người quản lý có nhìn tổng quản hệ , hỗ trợ việc đưa định Ví dụ: Người quản lý muốn biết số lần chạy ứng dụng A 105 Chương Quản lý nhật ký, thống kê theo dõi hệ thống API sử dụng: POST createDashboardStat/name { "index":"index_name", "condition": "field:value" } Trong đó: • name: tên dashboard • index_name: tên index_dex pattern tạo • condition: điều kiện để thống kê 6.5.5 Quản lý tài nguyên hệ thống đựa vào log thu thập từ metricbeat Sử dụng metricbeat để thu thập metric từ máy chủ (host) Với giải pháp triển khai ứng dụng Docker việc giám sát thống kê container chạy máy chủ cần thiết Metricbeat thu thập metric container chạy máy chủ cách đọc trực tiếp thông tin cgroups từ file proc hệ thống Các metric cấu hình để thu thập: • System: – cpu – load – network – process – diskio • Docker: – container – cpu – diskio – event – info – memory – network 106 Chương Kết đánh giá hệ thống 7.1 Kết 7.1.1 Giới thiệu chung Kết đánh giá dựa ứng dụng Covid By Country App (covid-global) Arxaas (arxaas) triển khai hệ thống: Covid By Country App (covid-global): Đây ứng dụng cho phép người dùng nhập tên quốc gia để lấy thông tin số ca nhiễm virus covid-19 tính đến thời điểm • Thư viện sử dụng: ckanapplib, pandas, ckanapi thư viện phụ thuộc • Phương pháp thực: lấy tập liệu covid-19 CKAN sau lọc theo tên quốc gia ghi vào tệp đầu cho người dùng • Xếp loại tiêu thụ CPU: thấp • Xếp loại tiêu thụ Memory: cao • Dung lượng ảnh: nhỏ Arxaas (arxaas): Đây ứng dụng cho phép người dùng ẩn danh hóa liệu • Thư viện sử dụng: ckanapplib, pyarxaas, ckanapi thư viện phụ thuộc • Phương pháp thực: dùng giải thuật ẩn danh hóa liệu thư viện pyarxaas để đánh giá, phân tích thay đổi liệu người dùng • Xếp loại tiêu thụ CPU: cao 107 Chương Kết đánh giá hệ thống • Xếp loại tiêu thụ Memory: cao • Dung lượng ảnh: nhỏ Cấu hình hệ thống docker: • Memory: 16 GiB • CPU: Intel Core i5-8250U CPU @ 1.60GHz x • Bộ nhớ file: 220,3 GB 7.1.2 Kết triển khai Xem thời gian ghi vào database không đáng kể, kết sau: Covid By Country App Arxaas Thời gian xây dựng ảnh docker không cache 15 s 25 s Thời gian xây dựng ảnh docker có cache 4s 5s Bảng 7.1: Kết triển khai hai ứng dụng 7.1.3 Kết thực thi Covid By Country App (thử nghiệm với đầu 7kB, tiêu thụ CPU không đáng kể) Ứng dụng triển khai trực 0.3 s tiếp máy chủ vật lý Đối với ứng dụng triển s khai CKAN Arxaas (thử nghiệm với đầu 6.45MB, tiêu thụ CPU trung bình đạt 80%) 7s 12 s Bảng 7.2: Kết thực thi hai ứng dụng 108 Chương Kết đánh giá hệ thống Số lượng yêu cầu đồng thời 50 yêu cầu 100 yêu cầu 250 yêu cầu 500 yêu cầu Tỉ lệ phản hồi 100 % 100 % 100 % 100 % Bảng 7.3: Khả đáp ứng tối đa 7.1.4 Khả đáp ứng tối đa 7.2 Đánh giá • Hệ thống có khả lưu trữ nhiều ứng dụng hệ thống file database dễ dàng mở rộng • Hệ thống có thời gian thực thi so với thực thi với hệ thống khơng sử dụng container chi phí q trình giao tiếp máy chủ Tuy nhiên, hệ thống khơng chi phí khơng sử dụng ứng dụng thay phải trì ứng dụng cách truyền thống • Hệ thống có khả đáp ứng cao có lượng u cầu lớn sử dụng chế hàng đợi, hệ thống tạm thời trả cho người dùng giá trị call_id đặt lời gọi vào hàng đợi trường hợp khơng cịn tài nguyên để tạo container Nhờ vậy, thời gian phản hồi nhanh chóng bù lại thời gian có kết chậm tùy thuộc vào vị trị gọi hàng đợi • Thời gian xây dựng ảnh chậm cần tải vào thư viện cần thiết cho mã nguồn Tuy nhiên nhanh chóng lần xây dựng ảnh sau hệ thống có lớp cache tái sử dụng thư viện từ ảnh trước mà không cần tải 7.3 So sánh Triển khai ứng dụng tảng containerization phương pháp triển khai ứng dụng đại, phổ biến Tuy nhiên, dù triển khai ứng dụng tảng containerization hay phương pháp truyền thống triển khai ứng dụng máy chủ vật lý không sử dụng tảng containerization có đặc điểm riêng phù 109 Chương Kết đánh giá hệ thống hợp với ngữ cảnh định, hai có ưu điểm nhược điểm riêng Để làm rõ ưu nhược điểm, bảng sau nêu khác biệt mơ hình mà nhóm thực với mơ hình sử dụng thực tế cho phương pháp truyền thống triển khai ứng dụng máy chủ vật lý không sử dụng tảng containerization Đặc điểm Triển khai ứng dụng Triển khai ứng dụng tảng containerization máy chủ vật lý không sử dụng tảng containerization Triển khai Triển khai ứng dụng tự động Triển khai ứng dụng thủ công hạ tầng containerization công cụ CI/CD máy chủ app-server Jenkins Đơn vị thực thi Container Service Phân loại ứng dụng Lời gọi hàm Ứng dụng web Thực thi Yêu cầu thực thi ứng dụng Yêu cầu gửi đến proxy gửi đến máy chủ app- chuyên dụng gọi API server để khởi tạo container gateway, từ yêu cầu thực thi ứng dụng, kết chuyển đến máy chủ nơi ứng trả lưu database dụng mở trả người dùng kết thông qua giao diện web Tính chất Lời gọi bất đồng Lời gọi đồng Bảng 7.4: Đặc điểm triển khai ứng dụng tảng containerization triển khai ứng dụng máy chủ vật lý không sử dụng tảng containerization 110 Chương Kết đánh giá hệ thống 7.3.1 Phù hợp theo ngữ cảnh Đặc điểm hệ thống liệu mở hướng đến lưu trữ chia sẻ hướng ưu tiên lưu trữ liệu lưu trữ ứng dụng hệ thống tích hợp triển khai thực thi ứng dụng, lượng người dùng thực thi ứng dụng đồng thời không cao cách chọn đơn vị thực thi trường hợp tối ưu container cho phép kiểm soát sử dụng hiệu tài nguyên, đảm bảo sử dụng tài nguyên ứng dụng cần thực thi Triển khai ứng dụng máy chủ vật lý không sử dụng tảng containerization phù hợp lượng người dùng lớn lượng thực thi đồng thời cao khơng lãng phí tài nguyên để trì trạng thái hoạt động cho ứng dụng mà khơng có người dùng dùng đến thời gian dài nguyên nhân dẫn đến số lượng ứng dụng hoạt động khơng nhiều tài ngun hệ thống ln hạn hữu 7.3.2 Tính biệt lập Việc triển khai nhiều ứng dụng máy chủ vật lý chứa rủi ro việc sử dụng chung tài ngun khó kiểm sốt việc ứng dụng ghi file đè lên file có sẵn xóa sửa file ứng dụng khác Một ứng dụng tác động vào q trình hoạt động ứng dụng khác chiếm hết RAM, CPU khiến cho ứng dụng khác trở nên chậm chạp hoạt động Nền tảng containerization cung cấp môi trường biệt lập, tảng đảm bảo network, mount, cgroups, độc lập container định trước lượng RAM, CPU đảm bảo khả xử lý độc lập cho ứng dụng chạy container 7.3.3 Đơn giản hóa tự động hóa SSH (Secure Shell) phương thức cho phép dùng, đặc biệt nhà quản trị hệ thống thao tác máy chủ môi trường mạng khơng an tồn Khi triển khai ứng dụng máy chủ vật lý, nhà phát triển sử dụng SSH để truy cập vào máy chủ tải lên code ứng dụng biên dịch Tuy nhiên với phương pháp có số khuyết điểm như: Cần có cách thức tổ chức file để lưu trữ code có hệ thống, có nhà quản trị hệ thống phép truy cập máy chủ nên việc triển khai ứng dụng nên 111 Chương Kết đánh giá hệ thống trải qua nhiều tiến trình, nhiều bước để triển khai phương pháp thủ công thời gian để triển khai tốn nhiều thời gian tự động hoá Với triển khai ứng dụng tảng containerization, công việc triển khai trở nên tự động hóa, nhờ Docker ta tự động tải thư viện cần thiết cho code biên dịch thông qua câu lệnh RUN, CMD, ENTRYPOINT Dockerfile từ xây dựng ảnh (image) ứng dụng lưu trữ Docker Registry, ảnh đóng vai trị tạo nên container để thực thi ứng dụng sau 7.3.4 Tính tồn vẹn Sau xây dựng thành công ảnh cho ứng dụng khơng có cách thay đổi nội dung ảnh Điều giúp cho việc khởi tạo container đảm bảo thành công tất lần chạy Nếu với phương thức triển khai máy chủ vật lý thông thường, hệ thống phải đảm bảo file thực thi không bị sửa đổi sử dụng thêm phương thức quản lý theo phiên để đạt ổn định thực thi ứng dụng thêm nhiều chi phí khó quản lý 7.3.5 Tính mở rộng Triển khai ứng dụng tảng containerization hay triển khai ứng dụng máy chủ vật lý không sử dụng tảng containerization có khả mở rộng, thêm máy chủ vào cụm máy chủ hoạt động 7.3.6 Khả điều tiết Nếu xét số lượng máy chủ cụm, tảng containerization cho phép điều phối việc khởi tạo container dựa vào tài nguyên mà máy chủ xử dụng Với không sử dụng tảng containerization, khó xác định ứng dụng nên khởi tạo máy chủ để điều tiết yêu cầu cho phù hợp 112 Chương Kết đánh giá hệ thống 7.3.7 Tốc độ xử lý yêu cầu Container cần thời gian để bắt đầu thực thi lần khởi tạo container, gọi chi phí khởi tạo Ngồi ra, hệ thống sử dụng tảng containerization cịn chịu chi phí phần network chi phí khơng đáng kể Đối với ứng dụng service, thời gian hao phí khởi chạy ban đầu Như vậy, tốc độ thự thi yêu cầu việc triển khai ứng dụng tảng containerization chậm so với triển khai ứng dụngtrên máy chủ vật lý không sử dụng tảng containerization 113 Chương Tổng kết hướng phát triển đề tài 8.1 Tổng kết Với tính triển khai chia sẻ ứng dụng cho hệ thống liệu mở nói chung CKAN nói riêng khuyến khích lượng lớn người dùng nhà khoa học nhà phát triển tham gia phát triển nhiều ứng dụng liệu tạo tri thức liệu Song song với độ tin cậy liệu cao, ứng dụng triển khai có sử dụng liệu mở nói riêng ứng dụng triển khai hệ thống liệu mở nói chung đạt độ tin cậy cao người sử dụng Ngoài ra, với khả tập trung ứng dụng, chia sẻ dễ dàng cho phép thực thi thu hút nhiều người dùng ứng dụng góp phần giải nhiều vấn đề đời sống xã hội, đem đến tiện ích đem lại lợi ích cho cộng đồng Nhóm tác giả dự kiến hệ thống triển khai tạo hội cho hàng ngàn ứng dụng không trực tuyến trở thành dịch vụ dễ tìm kiếm internet sẵn sàng phục vụ 24/24 Hơn nữa, với phương pháp quy tắc thực ứng dụng để triển khai CKAN mà nhóm đưa phương pháp hướng phát triển ứng dụng 114 Chương Tổng kết hướng phát triển đề tài 8.2 Khó khăn hạn chế Đề tài nhóm thực cịn nhiều khó khăn hạn chế: • Quy mô nhỏ: hệ thống thực tế với nhiều thành phần cần sử dụng nhiều máy chủ triển khai riêng biệt để không làm ảnh hưởng lẫn hiệu suất vấn đề lỗi hệ thống Tuy nhiên điều kiện kinh tế, nhóm xây dựng hệ thống máy tính, đảm bảo mặt logic hệ thống khơng thể tránh khỏi việc bỏ sót vấn đề mạng, vấn đề có lượng truy cập lớn • Hệ thống container chuyên dụng thường xây dựng cụm máy chủ với nhiều dịch vụ kiểm soát hệ thống, kiểm soát việc tạo container, nơi lưu trữ ảnh riêng gọi chung hệ thống điều phối container, ví dụ minh họa phổ biến Kubernetes, nhiên dù mang lại nhiều lợi ích triển khai container điều vô phức tạp áp dụng vào đề tài luận văn gồm nhiều máy chủ thành phần, nhiều khái niệm thường khả phát triển thêm Chính thế, nhóm định tập trung vào phần cốt lõi đơn giản hệ thống container docker triển khai máy chủ Điều giúp cho việc nghiên cứu phát triển máy chủ ứng dụng đề tài luận văn làm khuyết việc giải vấn đề điều phối • Các vấn đề bảo mật cho hệ thống, đặc biệt bảo mật container chưa xem xét đầy đủ tồn diện • Những ứng dụng minh họa cịn đơn giản nhóm tả giả thiếu kiến thức xử lý liệu: ứng dụng minh họa chưa diễn tả sức mạnh hệ thống đồng thời chưa thể tính đột phá triển khai ứng dụng hệ thống liệu mở 8.3 Hướng phát triển Đề tài có nhiều tiềm phát triển khía cạnh như: • Xây dựng dịch vụ bổ trợ cho hoạt động hệ thống dịch vụ giới giới hoạt lần gọi ứng dụng, dịch vụ kiểm soát tài nguyên 115 Chương Tổng kết hướng phát triển đề tài • Cung cấp quản trị viên khả thay đổi giới hạn tài nguyên cho container thực thi • Nghiên cứu thiết kế thuật toán hỗ trợ kiểm duyệt mã nguồn giảm lỗ hổng hệ thống • Nghiên cứu đưa profile AppArmor, seccomp để tăng cường tính bảo mật thực thi ứng dụng • Phát lần thực thi thất thường • Hiện thực nhiều loại input/output phức tạp html, đồ, • Thêm tính cho phép nhiều ứng dụng phối hợp hoạt động • Ứng dụng AI gợi ý ứng dụng cho người dùng 116 Tài liệu tham khảo [1] Open Data Foundation Introduction, http://www.opendatafoundation.org [2] L Carolan, F Smith, V Protonotarios, B Schaap, E Broad, J Hardinges and W Gerry, “How can we improve agriculture, food and nutrition with open data”, London, UK: Open Data Institute, 2015 [3] Open Data Policy - Obama White House, https://obamawhitehouse.archives gov/sites/default/files/omb/memoranda/2013/m-13-13.pdf [4] Opportunities for value creation in Europe, https://www.europeandataportal eu/sites/default/files/the-economic-impact-of-open-data.pdf [5] OpenTraffic, https://opentraffic.io [6] Visualize No Malaria, https://www.path.org/visualize-no-malaria [7] Commutable Careers, http://yourcommute.co.uk [8] Công cụ ARXaaS, https://github.com/navikt/ARXaaS [9] Standard Environment Runtimes - Google App Engine, https://cloud.google com/appengine/docs/standard/runtimes [10] Firecracker - Lightweight Virtualization for Serverless Computing - AWS, https: //aws.amazon.com/vi/blogs/aws/firecracker-lightweight-virtualizationfor-serverless-computing [11] Introduction to Container Security, https://www.docker.com/sites/default/ files/WP_IntrotoContainerSecurity_08.19.2016.pdf [12] Gracefully Stopping Docker Containers, https://www.ctl.io/developers/ blog/post/gracefully-stopping-docker-containers 117 TÀI LIỆU THAM KHẢO [13] mount namespace - Linux manual page, https : / / man7 org / linux / man pages/man7/mount_namespaces.7.html [14] cgroups - Wikipedia, https://en.wikipedia.org/wiki/Cgroups [15] Linux namespace - Wikipedia, https : / / en wikipedia org / wiki / Linux _ namespaces [16] cgroups namespace - Linux manual page, https : / / man7 org / linux / man pages/man7/cgroup_namespaces.7.html [17] cgroups - Linux manual page, https://man7.org/linux/man-pages/man7/ cgroups.7.html [18] Lệnh docker run, https://docs.docker.com/engine/reference/run [19] Docker storage drivers, https://docs.docker.com/storage/storagedriver [20] Seccomp for Docker, https://docs.docker.com/engine/security/seccomp [21] ELK Stack, https://www.elastic.co/what-is/elk-stack [22] Metricbeat, https://www.elastic.co/beats/metricbeat [23] Docker events, https://docs.docker.com/engine/reference/commandline/ events 118 ... 2.1 Giới thiệu liệu mở 2.2 Ứng dụng liệu liệu mở 2.3 Tính triển khai ứng dụng tảng liệu mở 2.4 Tính chia sẻ ứng dụng tảng liệu mở 2.5 Hệ thống quản lý liệu CKAN ... định nghĩa liệu mở tổ chức nhà nghiên cứu toàn cầu Các định nghĩa sử dụng nhà cung cấp liệu mở, nhà nghiên cứu người ủng hộ liệu mở Tổ chức Định nghĩa Open Data Foundation Dữ liệu mở liệu sử dụng,... cách tự [1] Open Data Institute Dữ liệu mở liệu mà truy cập, sử dụng chia sẻ[2] White House Dữ liệu mở đề cập đến liệu có sẵn cơng khai, cấu trúc theo cách cho phép liệu người dùng cuối khám phá

Ngày đăng: 21/05/2021, 23:05

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[13] mount namespace - Linux manual page, https : / / man7 . org / linux / man - pages/man7/mount_namespaces.7.html Sách, tạp chí
Tiêu đề: mount namespace - Linux manual page
[14] cgroups - Wikipedia, https://en.wikipedia.org/wiki/Cgroups Sách, tạp chí
Tiêu đề: cgroups - Wikipedia
[15] Linux namespace - Wikipedia, https : / / en . wikipedia . org / wiki / Linux _ namespaces Sách, tạp chí
Tiêu đề: Linux namespace - Wikipedia
[16] cgroups namespace - Linux manual page, https : / / man7 . org / linux / man - pages/man7/cgroup_namespaces.7.html Sách, tạp chí
Tiêu đề: cgroups namespace - Linux manual page
[17] cgroups - Linux manual page, https://man7.org/linux/man-pages/man7/cgroups.7.html Sách, tạp chí
Tiêu đề: cgroups - Linux manual page
[18] Lệnh docker run, https://docs.docker.com/engine/reference/run Sách, tạp chí
Tiêu đề: Lệnh docker run
[19] Docker storage drivers, https://docs.docker.com/storage/storagedriver Sách, tạp chí
Tiêu đề: Docker storage drivers
[20] Seccomp for Docker, https://docs.docker.com/engine/security/seccomp Sách, tạp chí
Tiêu đề: Seccomp for Docker
[21] ELK Stack, https://www.elastic.co/what-is/elk-stack Sách, tạp chí
Tiêu đề: ELK Stack
[22] Metricbeat, https://www.elastic.co/beats/metricbeat Sách, tạp chí
Tiêu đề: Metricbeat
[23] Docker events, https://docs.docker.com/engine/reference/commandline/events Sách, tạp chí
Tiêu đề: Docker events

TỪ KHÓA LIÊN QUAN

w