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

nghiên cứu và xây dựng ứng dụng trên cloud quản lý nhân viên, các điểm giao dịch và trạm atm

125 246 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 125
Dung lượng 6,43 MB

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

Nội dung

Ở mô hình điện toán này, mọi khả năng liên quan đến công nghệ thông tin điều được cung cấp dưới dạng các “dịch vụ”, cho phép người sử dụng truy cập các dịch vụ công nghệ từ một nhà cung

Trang 1

LUẬN VĂN TỐT NGHIỆP ĐẠI HỌC

NGHIÊN CỨU VÀ XÂY DỰNG ỨNG DỤNG TRÊN CLOUD QUẢN LÝ NHÂN VIÊN, CÁC ĐIỂM GIAO

DỊCH VÀ TRẠM ATM

Sinh viên thực hiện Cán bộ hướng dẫn

Nguyễn Quốc Trạng Ks Lê Văn Quan

MSSV: 1111554 MSGV: 002455

Cần Thơ, 2015

KHOA CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

BỘ MÔN TIN HỌC ỨNG DỤNG

Trang 2

LUẬN VĂN TỐT NGHIỆP ĐẠI HỌC NGHIÊN CỨU VÀ XÂY DỰNG ỨNG DỤNG TRÊN CLOUD QUẢN LÝ NHÂN VIÊN, CÁC ĐIỂM GIAO

DỊCH VÀ TRẠM ATM

Sinh viên thực hiện Cán bộ hướng dẫn

Nguyễn Quốc Trạng Ks Lê Văn Quan

Có thể tìm hiểu luận văn tại:

-Trung tâm Học liệu, Trường Đại học Cần Thơ

-Website: http://www.lrc.ctu.edu.vn/

Cần Thơ, 2015

KHOA CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

BỘ MÔN TIN HỌC ỨNG DỤNG

Trang 3

LỜI CẢM ƠN

Qua bốn năm học tập tại trường Đại Học Cần Thơ, nhờ sự dìu dắt của quí thầy cô Đặc biệt là quí thầy cô Bộ môn Tin học, Khoa Công Nghệ Thông Tin và Truyền Thông đã dạy cho em những kiến thức quý báu để bước vào đời Để hoàn thành bài luận văn này là nhờ vào những kiến thức quý báu mà thầy cô đã dạy cho em Em xin chân thành cảm ơn sự dạy dỗ của các thầy, các cô và đặc biệt em xin gửi lời cảm ơn sâu sắc đến giáo viên hướng dẫn đề tài luận văn của em, thầy Lê Văn Quan đã tận tình hướng dẫn chỉ bảo và đóng góp ý cho em trong suốt quá trình thực hiện luận văn

Em xin cảm ơn đến những người thân trong gia đình quan tâm, động viên trong suốt quá trình học tập và làm tốt nghiệp

Xin gửi lời cảm ơn đến tất cả bạn bè, đặc biệt là các bạn trong lớp Tin học ứng dụng k37

đã giúp đỡ và đóng góp ý kiến để em hoàn thành đề tài

Trong suốt quá trình làm việc em đã cố gắng, nổ lực hết sức mình để hoàn thành đề tài này một cách tốt nhất, nhưng sai sót là điều khó tránh khỏi Vì vậy, em rất mong nhận được những ý kiến đóng góp của quí thầy cô và các bạn để đề tài này có thể phát triển hoàn thiện hơn

Em xin chân thành cảm ơn!

Cần thơ, ngày 20 tháng 06 năm 2015

Sinh viên thực hiện Nguyễn Quốc Trạng

Trang 4

MỤC LỤC

LỜI CẢM ƠN i

MỤC LỤC ii

DANH MỤC HÌNH i

DANH MỤC BẢNG v

DANH MỤC KÝ HIỆU VÀ CHỮ VIẾT TẮT vii

TÓM TẮT viii

ABSTRACT ix

CHƯƠNG 1: TỔNG QUAN 1

1.1 ĐẶT VẤN ĐỀ 1

1.2 GIẢI QUYẾT VẤN ĐỀ 1

1.3 PHẠM VI CỦA ĐỀ TÀI 2

1.4 PHƯƠNG PHÁP NGHIÊN CỨU VÀ HƯỚNG GIẢI QUYẾT 2

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 4

2.1 ĐIỆN TOÁN ĐÁM MÂY 4

2.1.1 Khái niệm điện toán đám mây 4

2.1.2 Tính chất của điện toán đám mây 6

2.1.3 Ưu điểm và nhược điểm của điện toán đám mây 7

2.1.3.1 Ưu điểm 7

2.1.3.2 Nhược điểm 8

2.1.4 Cấu trúc phân lớp của mô hình điện toán đám mây 10

2.1.5 Cách thức hoạt động của điện toán đám mây 11

2.1.6 Mô hình điện toán đám mây 12

2.1.6.1 Mô hình các lớp dịch vụ 12

2.1.6.2 Mô hình triển khai 13

2.1.6.3 Các công ty cung cấp điện toán đám mây 17

2.2 TÌM HIỂU GOOGLE APP ENGINE (GAE) 18

Trang

Trang 5

2.2.1 Giới thiệu về Google App Engine 18

2.2.2 Các thành phần chính của Google App Engine 19

2.2.2.1 Python Runtime 19

2.2.2.2 Java Runtime Enviroment 19

2.2.3 Lợi ích của Google App Engine 19

2.2.4 Datastore 20

2.2.4.1 Giới thiệu 20

2.2.4.2 Một số khái niệm trong datastore 20

2.2.4.3 Sandbox 21

2.2.4.4 JDO (Java Data Objects) 22

2.2.5 Các Services của Google App Engine 26

2.2.5.1 Blobstore 26

2.2.5.2 Mail 27

2.2.5.3 Memcache 30

2.2.5.4 Url Fetch 30

2.2.5.5 Task Queues 32

2.2.6 Quotas and Limit 32

2.3 TÌM HIỂU VỀ CÔNG NGHỆ JSP (JAVA SERVER PAGES) 33

2.3.1 Servlet 33

2.3.1.1 Phương thức khởi tạo init() 33

2.3.1.2 Phước thức service() 33

2.3.1.3 Phương thức hủy destroy() 33

2.3.1.4 Phương thức getServletConfig() và getServletInfor() 34

2.3.2 Khái niệm về JSP 34

2.3.3 Cơ chế hoạt động của trang JSP 35

2.3.4 Các cú pháp cơ bản của JSP 36

2.3.4.1 Thẻ bọc mã <% %> hay <jsp:scriptlet> 36

Trang 6

2.3.4.2 Hiển thị kết quả bằng cú pháp <%= %> 36

2.3.4.3 Chèn chú thích vào mã trang JSP 36

2.3.4.4 Khai báo phương thức và biến hằng <%! %> 37

2.3.5 Cách xử lý nhúng và chuyển hướng giữa các trang 37

2.3.5.1 Thẻ nhúng mã nguồn <%@include file %> 37

2.3.5.2 Thẻ <jsp:include> 37

2.3.5.3 Thẻ chỉ dẫn biên dịch trang <%@page %> 37

2.3.5.4 Thẻ chuyển hướng đến trang khác <jsp:forward> 38

2.3.5.5 Chuyển hướng sang trang mới với sendRedirect() 38

2.4 GOOGLE MAP API V3 39

2.4.1 Giới thiệu về Google Map API V3 39

2.4.2 Một số ứng dụng có thể xây dựng 39

2.5 AJAX – JQUERY 40

2.5.1 Ajax 40

2.5.2 Jquery 40

2.5 BOOTSTRAP 41

CHƯƠNG 3: NỘI DUNG VÀ KẾT QUẢ NGHIÊN CỨU 42

3.1 SƠ ĐỒ NGHIỆP VỤ CHỨC NĂNG BFD 42

3.2 MÔ TẢ VÀ PHÂN TÍCH 43

3.2.1 Mô tả hệ thống 43

3.2.2 Mô tả quy trình xây dựng hệ thống 45

3.2.3 Sơ đồ usecase 45

3.3 THIẾT KẾ CƠ SỞ DỮ LIỆU 49

3.3.1 Xây dựng các mối quan hệ kết hợp 49

3.3.2 Các ràng buộc toàn vẹn 54

3.3.3 Mô hình ER 57

3.3.4 Mô hình vật lý 58

Trang 7

3.3.5 Mô tả cơ sở dữ liệu 59

3.4 MÔ HÌNH TUẦN TỰ 66

3.5 KẾT QUẢ XÂY DỰNG HỆ THỐNG 73

3.5.1 Giao diện dùng chung 73

3.5.1.1 Giao diện trang chủ 73

3.4.1.2 Giao diện bảng hệ số lương 74

3.4.1.3 Giao diện bản đồ 74

3.5.2 Giao diện quản trị 79

3.5.2.1 Trang chủ người quản trị 79

3.5.2.2 Giao diện quản lý các điểm giao dịch và trạm ATM 79

3.5.2.3 Giao diện quản lý các điểm giao dịch và trạm ATM trực tiếp trên bản đồ 81

3.5.2.4 Giao diện phân công bảo trì và nạp tiền các điểm ATM 83

3.5.2.5 Giao diện quản lý nhân viên 84

KẾT LUẬN VÀ KIẾN NGHỊ 86

PHỤ LỤC 1: 88

PHỤ LỤC 2: 103

PHỤ LỤC 3: 106

TÀI LIỆU THAM KHẢO 109

Trang 8

DANH MỤC HÌNH

Hình 2 1 Mô hình điện toán đám mây 4

Hình 2 2 Sơ đồ điện toán đám mây với các dịch vụ được cung cấp bên trong “đám mây” được truy cập từ các máy tính bên ngoài 5

Hình 2 3 Mô hình tài nguyên dùng chung 6

Hình 2 4 Mô hình multi-tenant 8

Hình 2 5 Mô hình cấu trúc phân lớp của điện toán đám mây 10

Hình 2 6 Mô hình cách thức hoạt động của điện toán đám mây 11

Hình 2 7 Mô hình các lớp dịch vụ của điện toán đám mây 12

Hình 2 8 Mô hình đám mây công cộng 14

Hình 2 9 Mô hình đám mây riêng 15

Hình 2 10 Mô hình đám mây dùng chung 16

Hình 2 11 Mô hình đám mây lai 17

Hình 2 12 Mô hình hoạt động của JDO 22

Hình 2 13 Mô hình hoạt động của Blobstore 26

Hình 2 14 Mô hình hoạt động của Task Queues 32

Hình 2 15 Mô hình cơ chế hoạt động của JSP 35

Hình 3 1 Sơ đồ nghiệp vụ chức năng của người dùng thuộc bộ phận giám đốc 42

Hình 3 2 Sơ đồ nghiệp vụ chức năng của người dùng thuộc bộ phận quản lý 42

Hình 3 3 Sơ đồ nghiệp vụ chức năng của người dùng thuộc bộ phận nhân viên 42

Hình 3 4 Sơ đồ usecase nhóm người dùng giám đốc 45

Hình 3 5 Sơ đồ usecase nhóm người dùng giám đốc 46

Hình 3 6 Sơ đồ usecase nhóm người dùng quản lý 47

Hình 3 7 Sơ đồ usecase nhóm người dùng nhân viên 48

Hình 3 8 Sơ đồ usecase nhóm người dùng khách hàng 49

Hình 3 9 Mối quan hệ kết hợp nhân viên hưởng phụ cấp 49

Hình 3 10 Mối kết hợp về nhân viên có hệ số 50

Trang

Trang 9

Hình 3 11 Mối kết hợp về nhân viên có tiền thưởng 50

Hình 3 12 Mối quan hệ về nhân viên đăng thông báo và thông báo có chủ đề 51

Hình 3 13 Mối quan hệ các thông tin liên quan đến nhân viên 51

Hình 3 14 Mối quan hệ giữa nhân viên và lịch làm việc 52

Hình 3 15 Mối quan hệ kết hợp giữa ngân hàng, chi nhánh, điểm ATM và địa chỉ 53

Hình 3 16 Mối quan hệ kết hợp giữa nhân viên với điểm ATM 54

Hình 3 17 Mô hình ER 57

Hình 3 18 Mô hình vật lý 58

Hình 3 19 Mô hình tuần tự người dùng đăng nhập 66

Hình 3 20 Mô hình tuần tự thêm nhân viên 67

Hình 3 21 Mô hình tuận tự thêm điểm giao dịch 68

Hình 3 22 Mô hình tuần tự thêm điểm giao dịch 69

Hình 3 23 Mô hình tuần tự thống kê theo loại 70

Hình 3 24 Mô hình tuần tự thống kê theo lại 71

Hình 3 25 Mô hình tuần tự thống kê các điểm giao dịch và trạm ATM theo quận 72

Hình 3 26 Giao diện trang chủ 73

Hình 3 27 Giao diện bảng hệ số lương 74

Hình 3 28 Giao diện bản đồ 74

Hình 3 29 Giao diện tìm đường đi trên bản đồ 75

Hình 3 30 Giao diện chọn thống kê 76

Hình 3 31 Giao diện khi chọn thống kê tất cả 76

Hình 3 32 Giao diện khi chọn thống kê theo quận 77

Hình 3 33 Giao diện khi người dùng chọn tìm vị trí để thống kê theo bán kính 78

Hình 3 34 Giao diện khi người dùng chọn thống kê theo bán kính 78

Hình 3 35 Giao diện các chức năng của người dùng quản trị 79

Hình 3 36 Giao diện quản lý ngân hàng-hiển thị danh sách các chi nhánh 79

Hình 3 37 Giao diện quản lý ngân hàng-thêm chi nhánh 80

Trang 10

Hình 3 38 Giao diện quản lý ngân hàng-sửa chi nhánh 80

Hình 3 39 Giao diện quản lý ngân hàng-danh sách các điểm ATM 81

Hình 3 40 Giao diện chức năng thêm chi nhánh và các trạm ATM trực tiếp trên bản đồ 81 Hình 3 41 Giao diện thêm chi nhánh trực tiếp trên bản đồ 82

Hình 3 42 Giao diện thêm điểm ATM trực tiếp trên bản đồ 82

Hình 3 43 Giao diện danh sách nhân viên nạp tiền cho các trạm ATM 83

Hình 3 44 Giao diện thêm nhân viên bảo trì các trạm ATM 83

Hình 3 45 Giao diện danh sách nhân viên bảo trì 84

Hình 3 46 Giao diện thông tin nhân viên 84

Hình 1 Giao diện đăng nhập Gmail của google 88

Hình 2 Giao diện tạo ứng dụng mới của Google App Engine 89

Hình 3 Giao diện các ứng dụng đã được tạo 90

Hình 4 Giao diện hướng dẫn tải Eclipse 91

Hình 5 Giao diện các phiên bản plugin của Google App Engine cho Eclipse 91

Hình 6 Giao diện hướng dẫn cài Google App Engine cho Eclipse 91

Hình 7 Giao diện hướng dẫn cài Google App Engine cho Eclipse 92

Hình 8 Giao diện hướng dẫn cài Eclipse cho Eclipse 92

Hình 9 Giao diện hướng dẫn cài Google App Engine cho Eclipse 93

Hình 10 Giao diện hướng dẫn cài Google App Engine cho Eclipse 94

Hình 11 Giao diện hướng dẫn cài Google App Engine cho Eclipse 95

Hình 12 Giao diện hướng dẫn cài Google App Engine Eclipse 95

Hình 13 Giao diện hướng dẫn tạo dự án mới 96

Hình 14 Giao diện hướng dẫn tạo dự án mới 97

Hình 15 Giao diện cấu trúc dự án được tạo ra 98

Hình 16 Giao diện sau khi chạy dự án Google App Engine 99

Hình 17 Giao diện sau khi chạy dự án trên trình duyệt 100

Hình 18 Giao diện cấu hình tập tin web.xml 100

Trang 11

Hình 19 Giao diện cấu hình thông tin để triển khai dự án 101

Hình 20 Giao diện trong quá trình chuyển khai dự án lên Google App Engine 102

Hình 21 Kết quả hiển thị bản đồ 105

Hình 22 Giao diện quản lý bộ phận và chức vụ 106

Hình 23 Giao diện quản lý phụ cấp và tiền thường 107

Hình 24 Hiển thị danh sách thông báo 107

Hình 25 Thêm chủ đề thông báo 108

Trang 12

DANH MỤC BẢNG

Bảng 3 1 Ràng buộc miền giá trị của nhân viên 54

Bảng 3 2 Ràng buộc toàn viẹn liên bộ nhân viên 55

Bảng 3 3 Ràng buộc toàn vẹn liên bộ chi nhánh 55

Bảng 3 4 Ràng buộc toàn vẹn liên bộ điểm ATM 55

Bảng 3 5 Ràng buộc toàn viẹn trên nhiều quan hệ 56

Bảng 3 6 Bậc (BAC) 59

Bảng 3 7Chức vụ (CHUCVU) 59

Bảng 3 8 Chủ đề thông báo (CHUDETB) 59

Bảng 3 9 Phường (PHUONG) 59

Bảng 3 10 Lịch làm việc (LICHLAMVIEC) 60

Bảng 3 11 Ngạch (NGACH) 60

Bảng 3 12 Ngân hàng (NGANHANG) 60

Bảng 3 13 Phân quyền (PHANQUYEN) 60

Bảng 3 14 Phụ cấp (PHUCAP) 61

Bảng 3 15 Thưởng (THUONG) 61

Bảng 3 16 Trình độ (TRINHDO) 61

Bảng 3 17 Quận (QUAN) 61

Bảng 3 18 Địa chỉ (DIACHI) 61

Bảng 3 19 Chi nhánh (CHINHANH) 62

Bảng 3 20 Địa điểm ATM (DIADIEM_ATM) 62

Bảng 3 21 Nhân viên (NHANVIEN) 63

Bảng 3 22 Thông báo (THONGBAO) 63

Bảng 3 23 Nhân viên bảo trì điểm ATM (NHANVIENBAOTRI) 63

Bảng 3 24 Có hệ số (COHESO) 64

Bảng 3 25 Nhân viên có lịch (COLICH) 64

Bảng 3 26 Nhân viên có trình độ (COTD) 64

Trang

Trang 13

Bảng 3 27 Nhân viên có tiền thưởng (COTIENTHUONG) 64

Bảng 3 28 Nhân viên hưởng phụ cấp (COPHUCAP) 65

Bảng 3 29 Hệ số (HESO) 65

Bảng 3 30 Người dùng (NGUOIDUNG) 65

Bảng 3 31 Nhân viên chuyển tiền (NHANVIENCHUYENTIEN) 65

Trang 14

DANH MỤC KÝ HIỆU VÀ CHỮ VIẾT TẮT

Trang 15

TÓM TẮT

Giải pháp CNTT nhằm mục đích giảm chi phí cho phần cứng, phần mềm, bảo trì, sửa chữa hoặc nâng cấp thiết bị đối với bất kỳ cá nhân hoặc tổ chức là vấn đề quan trọng hàng đầu Nhằm góp phần vào việc giải quyết những vấn đề trên chúng tôi đề xuất “Nghiên cứu

và xây dựng ứng dụng trên cloud quản lý nhân viên, các điểm giao dịch và trạm ATM” Đề tài này bao gồm việc nghiên cứu công nghệ mới, một trong những công nghệ đã và đang trở thành xu hướng giải pháp hiệu quả hiện nay; sau đó là xây ứng dụng thực tế Chúng tôi

đã nghiên cứu khá cụ thể về Điện toán đám mây, cụ thể là công nghệ Google App Engine

và xây dựng thành công ứng dụng quản lý nhân viên, các điểm giao dịch và trạm ATM trên cloud với những chức năng cần thiết, tiện dụng nhất cho khách hàng Hệ thống này có thể được sử dụng trên bất kỳ các thiết bị nào có thể kết nối được với internet Hệ thống được phát triển bằng ngôn ngữ java, sử dụng công cụ Google Map API V3, dịch vụ Google App Engine

Ngoài phần mở đầu, kết luận và tài liệu tham khảo thì luận văn được trình bày trong 4 chương, các nội dung cơ bản được trình bày theo cấu trúc:

Chương 1: Tổng quan trình bày những vấn đề hiện trạng, các vấn đề cần giải quyết và các hướng để giải quyết yêu cầu của bài toán

Chương 2: cơ sở lý thuyết nghiên cứu về công nghệ điện toán đám mây, tìm hiểm về Google App Engine và công nghệ JSP, Google Map API V3

Chương 3: Nội dung và kết quả nghiên cứu: trình bày tổng quan về hệ thống, phân tích thiết kế và cài đặt hệ thống

Chương 4: kết luận và hướng phát triền trình bày tổng kết các phần đã thực hiện được

và phần chưa thực hiện được Đưa ra các định hướng phát triển hệ thống và chỉnh sửa các phần chưa thực hiện được

Từ khóa: Google App Engine, Google Map API V3, JavaServer Pages, …

Trang 16

ABSTRACT

The purpose of information techology solution is reducing costs about hardware, software, maintenance, repair, and upgrade equipment for any individual or organization is the top important problem So there is a method for them, we strongly propose "Researching and developing the cloud applications for employees, transaction places and ATMs management." This topic includes the study of new technologies, one technology has become a trend now an effective solution; the next is building a practical application We have researched detail about Cloud Computing, specifical is Google App Engine technology and developing with the important functions, and the most convenience for customers This system can be used on any devices and connect to the internet The system was developed by the java language, Google Map API V3 tool, and Google App Engine service

The main parts of this thesis are:

Chapter 1: Overview presents about problems,circumstance, and solution

Chapter 2: Theoretical basis of cloud computing, Google App Engine and JSP technology, Google Maps API V3

Chapter 3: Content and result of thesis

Chapter 4: Conclusions and development

Keywords: Google App Engine, Google Map API V3, JavaServer Pages

Trang 17

CHƯƠNG 1: TỔNG QUAN

1.1 ĐẶT VẤN ĐỀ

Ngày nay, đối với các công ty, doanh nghiệp, việc quản lý và tận dụng một cách hiệu quả dữ liệu là một trong những bài toán được ưu tiên hàng đầu Để có thể quản lý được nguồn dữ liệu đó, ban đầu các doanh nghiệp phải đầu tư, tính toán rất nhiều loại chi phí như chi phí cho phần cứng, phần mềm, chi phí cho quản trị viên, chi phí bảo trì, sửa chữa, … Ngoài ra họ còn phải tính toán khả năng mở rộng, nâng cấp thiết bị, phải kiểm soát việc bảo mật dữ liệu cũng như tính sẵn sàng cao của dữ liệu

Do sự phát triển không ngừng của xã hội kéo theo các hệ thống ngân hàng cũng đang lớn mạnh không kém Tại Việt Nam thời gian gần đây có hàng loạt ngân hàng mới được thành lập bên cạnh những ngân hàng đã tồn tại rất lâu Sự bùng nổ mạnh mẽ ấy đã kéo theo hàng loạt dịch vụ mới trong lĩnh vực ngân hàng ra đời, phục vụ đời sống cho người dân ngày càng tiện lợi hơn Đặc biệt là sự ra đời của các máy rút tiền ATM và các trạm giao dịch nhằm nâng cao chất lượng dịch vụ mang lại sự hài lòng tốt nhất cho khách hàng Máy rút tiền ATM và các trạm giao dịch ngày càng nhiều, khó khăn cũng tăng dần trong việc quản lý các trạm ATM và điểm giao dịch Bên cạnh đó các nhân viên ngân hàng, khách hàng rất cần một ứng dụng có thể cung cấp một số chức năng như: tìm đường đi tốt nhất đến các trạm ATM, hiển thị các trạm ATM theo bán kính, thống kê mật độ, Và đối với người dùng thì việc biết được các địa điểm giao dịch hoặc máy rút tiền gần nhất là rất cần thiết

Nhận thấy sự cần thiết từ thực tiễn chúng tôi đề xuất xây dựng ứng dụng quản lý trạm ATM và các điểm giao dịch bao gồm quản lý thông tin nhân viên tại các chi nhánh ngân hàng Ứng dụng sẽ được triển khai thí điểm tại các chi nhánh ngân hàng trên địa bàn TP Cần Thơ, sau đó sẽ nhân rộng cho các ngân hàng trong cả nước

1.2 GIẢI QUYẾT VẤN ĐỀ

Từ một bài toán điển hình như vậy, chúng ta thấy được rằng nếu có một nơi tin cậy giúp các doanh nghiệp quản lý tốt nguồn dữ liệu đó, các doanh nghiệp sẽ không còn quan tâm đến cơ sở hạ tầng, công nghệ mà chỉ tập trung chính vào công việc kinh doanh của họ thì

sẽ mang lại cho họ hiệu quả và lợi nhuận ngày càng cao hơn Thuật ngữ “cloud computing”

ra đời bắt nguồn từ một trong những hoàn cảnh như vậy Thuật ngữ “cloud computing” còn được bắt nguồn từ ý tưởng đưa tất cả mọi thứ như dữ liệu, phần mềm, tính toán… lên trên mạng Internet Chúng ta sẽ không còn trông thấy các máy PC, máy chủ của riêng các doanh

Trang 18

nghiệp để lưu trữ dữ liệu, phần mềm nữa mà chỉ còn một số các “máy chủ ảo” tập trung ở trên mạng Các “máy chủ ảo” sẽ cung cấp các dịch vụ giúp cho doanh nghiệp có thể quản

lý dữ liệu dễ dàng hơn, họ sẽ chỉ trả chi phí cho lượng sử dụng dịch vụ của họ, mà không cần phải đầu tư nhiều vào cơ sở hạ tầng cũng như quan tâm nhiều đến công nghệ Xu hướng này sẽ giúp nhiều cho các công ty, doanh nghiệp vừa và nhỏ mà không có cơ sở hạ tầng mạng, máy chủ để lưu trữ, quản lý dữ liệu tốt

Tiếp đến là việc cung cấp thông tin bởi những phương pháp truyền thống như tờ rơi, hay bản đồ giấy hay trên máy desktop không phổ biến được thông tin một cách rộng rãi, nhanh chóng cho người dùng, bên cạnh đó có thể còn tốn chi phí lớn để thiết kế bản đồ, in ấn, hoặc cài đặt các phần mềm ứng dụng trên desktop Vì thế phương pháp sử dụng mạng internet thật sự hữu ích khi cùng lúc có thể mang đến thông tin đầy đủ, nhanh chóng, thuận tiện cho người sử dụng Dễ dàng sử dụng và giảm chi phí cài đặt sử dụng phần mềm trên desktop Bên cạnh đó, dịch vụ Google Map API ngày càng phát triển, cung cấp miễn phí nhiều loại bản đồ trên phạm vi toàn thế giới, việc tích hợp Google Maps API vào WebGIS

sẽ hỗ trợ tích cực cho việc ứng dụng và phát triển bản đồ trên nền web, mang đến cái nhìn tổng quan cho khu vực quan tâm và giảm bớt gánh nặng về dữ liệu

1.3 PHẠM VI CỦA ĐỀ TÀI

Trên cơ sở những vấn đề được nêu ở trên thì đề tài “Nghiên cứu xây dựng hệ thống quản

lý các điểm giao dịch của các ngân hàng và quản lý nhân viên của ngân hàng sử dụng công nghệ Google Maps API V3 kết hợp với Google App Engine” là rất cần thiết

1.4 PHƯƠNG PHÁP NGHIÊN CỨU VÀ HƯỚNG GIẢI QUYẾT

Về lý thuyết:

- Nghiên cứu và vận dụng lý thuyết phân tích hệ thống, để tìm hiểu hệ thống

- Nghiên cứu một số ngôn ngữ lập trình cơ sở dữ liệu, trên cơ sở đó, lựa chọn một ngôn ngữ lập trình phù hợp cho việc ứng dụng Một số kỹ thuật mới ứng dụng vào lập trình

- Tìm hiểu một số hệ quản trị cơ sở dữ liệu Từ đó cho ra một hệ quản trị tương thích với ngôn ngữ lập trình đã chọn, sao cho phù hợp với ứng dụng

- Thu thập thông tin, tham khảo một số website và phần mềm thực tế

- Tìm hiểu và phân tích thiết kế hệ thống thông tin

- Tìm hiểu mô hình ứng dụng trên nền tảng web

Trang 19

- Tìm hiểu về Google App Engine, Google Map API V3, tìm hiểu về công nghệ lập trình trên App Engine với JSP

Về thực nghiệm

- Phân tích yêu cầu, mô tả đầy đủ về hệ thống thông tin sắp xây dựng, mô tả các chức năng, tính năng của hệ thống Khả năng mở rộng, các loại tài liệu đòi hỏi, thời gian đáp ứng hoặc các yêu cầu về độ tin cậy cũng như chất lượng của hệ thống, nghiên cứu khả thi

- Tìm hiểu các ứng dụng liên quan đến hệ thống đã được xây dựng trước đó, tìm hiểu hiện trạng, yêu cầu mục tiêu đề tài Xác định phạm vi và kết quả cần đạt được cho đề tài Phân tích và thiết kế chi tiết, tìm các tài liệu có liên quan

- Phân tích mô hình hệ thống, mô hình hóa, module hóa hệ thống và sau đó tiến hành thiết kế

- Mô tả cơ sở dữ liệu và các ràng buộc trong cơ sở dữ liệu

- Xây dựng mô hình cơ sở dữ liệu

- Dùng phần mềm PowerDesigner 16.1, để vẽ các sơ đồ phân tích, thiết kế hệ thống thông tin

- Dùng phần mềm Eclipse, cài đặt thêm một số plugin để hỗ trợ lập trình trong Google App Engine

Sau khi tìm hiểu đầy đủ thông tin, nắm rõ cơ sở lý thuyết và các bước đã phân tích phần

hệ thống, bắt đầu tiến hành cài đặt (lập trình) hệ thống theo những phân tích đã có ở trên Thử nghiệm: Triền khai dự án lên Google chạy thử hệ thống, chỉnh sửa các lỗi phát sinh

và hoàn thiện hệ thống, viết tài liệu hướng dẫn chi tiết

Trang 20

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT

2.1 ĐIỆN TOÁN ĐÁM MÂY

2.1.1 Khái niệm điện toán đám mây

Hình 2 1 Mô hình điện toán đám mây

Điện toán đám mây (Thuật ngữ tiếng anh: “Cloud Computing”, hay còn được biết đến với tên gọi “điện toán máy chủ ảo” là mô hình máy tính dựa trên nền tảng phát triển của Internet

Điện toán đám mây là sự nâng cấp từ mô hình máy chủ mainfrain sang mô hình server Cụ thể, người dùng sẽ không cần phải có các kiến thức về chuyên mục để điều khiển các công nghệ, máy móc và cơ sở hạ tầng, mà các chuyên gia trong “đám mây” của các hãng cung cấp sẽ giúp thực hiện điều đó

client-Thuật ngữ “đám mây” ở đây là nói ẩn dụ chỉ mạng Internet (dựa vào cách được bố trí của nó trong sơ đồ mạng máy tính) và như một liên tưởng về độ phức tạp của các cơ sở hạ tầng chứa trong nó Ở mô hình điện toán này, mọi khả năng liên quan đến công nghệ thông tin điều được cung cấp dưới dạng các “dịch vụ”, cho phép người sử dụng truy cập các dịch

vụ công nghệ từ một nhà cung cấp nào đó “trong đám mây” mà không cần phải có các kiến

Trang 21

thức, kinh nghiệm về công nghệ đó, cũng như không cần quan tâm đến các cơ sở hạ tầng phục vụ công nghệ đó

Một trong những định nghĩa phổ biến của điện toán đám mây là “Một tập hợp của hạ tầng tính toán ảo có khả năng lưu trữ các ứng dụng đầu cuối của khách hàng và tính phí sử dụng cho khách hàng theo mức độ sử dụng thực tế”

Theo định nghĩa trên thì hạ tầng tính toán ảo, tức đám mây, có thể được coi là một máy tính chủ cực mạnh được cài đặt các ứng dụng cho người dùng cuối và có các chức năng lưu trữ dữ liệu và tập tin Người dùng (di động, cố định, tổ chức - doanh nghiệp, người tiêu dùng) kết nối đến máy tính chủ qua Internet hoặc các loại đường truyền khác và được trao quyền sử dụng những tính năng mà họ yêu cầu hoặc được cung cấp Nếu đám mây thuộc quyền quản lý của một hoặc nhiều nhà cung cấp dịch vụ và người dùng là khách hàng thì người dùng sẽ phải trả phí sử dụng theo những tính năng và thời gian mà họ sử dụng theo thỏa thuận với nhà cung cấp dịch vụ Mô hình tính toán này tương đương với mô hình

“client-server” quen thuộc và được thể hiện như trong hình dưới đây

Ví dụ: nếu một website được chứa trên một máy chủ, người dùng phải lựa chọn hệ điều hành để cài đặt (Linux/Windows/Mac), tiến hành các thiết lập đến máy chủ và website có thể hoạt động Tuy nhiên, nếu trang web được chứa trên “đám mây”, người dùng sẽ không cần phải thực hiện thêm bất cứ điều gì khác Điều này cũng đảm bảo yếu tố đầu tư về phần cứng được giảm ở mức tối đa

Hình 2 2 Sơ đồ điện toán đám mây với các dịch vụ được cung cấp bên trong

“đám mây” được truy cập từ các máy tính bên ngoài

Trang 22

Tài nguyên, dữ liệu, phần mềm và các thông tin liên quan điều được chứa trên các server (chính là các “đám mây”)

2.1.2 Tính chất của điện toán đám mây

Tự phục vụ theo nhu cầu (On-demand self-services): Đặc tính kỹ thuật của điện toán đám mây cho phép khách hàng đơn phương thiết lập yêu cầu nguồn lực nhằm đáp ứng yêu cầu của hệ thống như: thời gian sử dụng Server, dung lượng lưu trữ, cũng như khả năng đáp ứng các tương tác lớn của hệ thống ra bên ngoài

Truy cập diện rộng (Broad network access): Điện toán đám mây cung cấp các dịch vụ chạy trên môi trường Internet do vậy khách hàng chỉ cần có kết nối Internet là có thể sử dụng được các dịch vụ Các thiết bị truy xuất thông tin không yêu cầu cấu hình cao (thin hoặc thinck client platforms) như: Mobile phone, Laptop và PDAs…

Dùng chung tài nguyên (Resource pooling): Tài nguyên của nhà cung cấp dịch vụ được dùng chung, phục vụ cho nhiều người dùng dựa trên mô hình “multi-tenant” Mô hình này cho phép tài nguyên phần cứng và tài nguyên ảo hóa sẽ được cấp phát động dựa vào nhu cầu của người dùng Khi nhu cầu người dùng giảm xuống hoặc tăng lên thì tài nguyên sẽ được trưng dụng để phục vụ yêu cầu

Trang 23

Khả năng co giãn (Rapid elasticity): Khả năng này cho phép tự động mở rộng hoặc thu nhỏ hệ thống tùy theo nhu cầu của người sử dụng một cách nhanh chóng Khi nhu cầu tăng,

hệ thống sẽ tự động mở rộng bằng cách thêm tài nguyên vào, khi nhu cầu giảm thì hệ thống

sẽ tự động giảm bớt tài nguyên Khả năng co giãn giúp cho nhà cung cấp sử dụng tài nguyên hiệu quả, tận dụng triệt để nguồn tài nguyên dư thừa, phục vụ được nhiều khách hàng Đối với người sử dụng dịch vụ, khả năng co giãn giúp họ giảm chi phí do họ chỉ trả phí cho những tài nguyên thực sự sử dụng

2.1.3 Ưu điểm và nhược điểm của điện toán đám mây

2.1.3.1 Ưu điểm

Những ưu điểm và thế mạnh dưới đây đã góp phần giúp “điện toán đám mây” trở thành

mô hình điện toán được áp dụng rộng rãi trên toàn thế giới

- Tính linh động: Người dùng có thể thoải mái lựa chọn các dịch vụ phù hợp với nhu cầu của mình, cũng có thể bỏ bớt những thành phần mà mình không muốn (Thay vì phải bỏ ra hàng trăm USD cho một bộ Ms office, ta có thể mua riêng lẻ từng phần hoặc chỉ trả một khoảng phí rất nhỏ mỗi khi sử dụng một phần nào đó của nó)

- Giảm bớt chi phí: Người dùng không chỉ giảm bớt chi phí bản quyền mà còn giảm phần lớn chi phí cho việc mua và bảo dưỡng máy chủ Việc tập hợp ứng dụng của nhiều tổ chức lại một chỗ sẽ giúp giảm chi phí đầu tư ban đầu, cũng như tăng hiệu năng sử dụng các thiết bị một cách tối đa

- Tạo nên sự độc lập: Người dùng sẽ không bị bó hẹp với một thiết bị hay một vị trí cụ thể nào nữa Với điện toán đám mây phần mềm, dữ liệu có thể được truy cập và sử dụng bất kì đâu, trên bất kỳ thiết bị nào (có kết nối internet) mà không cần quan tâm đến giới hạn phần cứng cũng như địa lý

- Tăng cường độ tin cậy: Dữ liệu trong mô hình điện toán đám mây được lưu trữ một cách phân tán tại nhiều cụm máy chủ tại nhiều vị trí khác nhau Điều này giúp tăng độ tin cậy, an toàn của dữ liệu mỗi khi có sự cố hoặc thảm họa xảy ra

- Bảo mật: Việc tập trung dữ liệu từ nhiều nguồn khác nhau sẽ giúp các chuyên gia bảo mật và tăng cường khả năng bảo vệ dữ liệu của người dùng, cũng như giảm thiểu rủi ro bị ăn cắp toàn bộ dữ liệu (Dữ liệu được đặt tại 6 máy chủ khác nhau, trong trường hợp này khi bị hacker tấn công thì cũng chỉ bị tấn công 1 trong 6 máy chủ do vậy dữ liệu bị lộ tại máy chủ bị hacker tấn công mà không bị lộ hết)

Trang 24

- Bảo trì dễ dàng: Mọi phần mềm điều nằm trên server, lúc này người dùng không cần lo lắng cập nhật hay sửa lỗi phần mềm nữa và các lập trình viên cũng dễ dàng hơn trong việc cài đặt, nâng cấp ứng dụng của mình

- Sử dụng tài nguyên hiệu quả hơn: Nhờ có khả năng co giãn (Elasticity) nên tài nguyên luôn được sử dụng một cách hợp lý nhất, theo đúng nhu cầu của khách hàng, không bị lãng phí hay dư thừa Đối với nhà cung cấp dịch vụ, công nghệ ảo hóa giúp cho việc khai thác tài nguyên vật lý hiệu quả hơn, phục vụ nhiều khách hàng hơn Điện toán đám mây thực hiện việc phân phối tài nguyên theo kiểu multi-tenant một tài nguyên được cấp phát “động” cho nhiều khách hàng khác nhau, các khách hàng này sẽ luân phiên sử dụng tài nguyên được cấp phát chung Với mô hình multi-tenant, một tài nguyên có thể phục vụ cho nhiều khách hàng khác nhau Như vậy khi khách hàng không có nhu cầu, tài nguyên rảnh sẽ được

hệ thống thu hồi lại và cấp phát cho khách hàng khác có nhu cầu

Hình 2 4 Mô hình multi-tenant

Tóm lại, điện toán đám mây được nói gọn thành “4 không” đối với người sử dụng: không máy chủ, không cần bảo trì, không sợ rủi ro, không có bản quyền, người sử dụng chỉ cần máy tính hoặc các thiết bị khác có kết nối mạng là có thể sở hữu nguồn tài nguyên vô tận trên internet

2.1.3.2 Nhược điểm

Bên cạnh những ưu điểm trên, điện toán đám mây vẫn còn tồn tại một số nhược điểm sau:

Trang 25

- Tính riêng tư: Các thông tin người dùng và dữ liệu được chứa trên điện toán đám mây có đảm bảo được riêng tư, và liệu các thông tin đó có bị sử dụng vì mục đích nào khác?

- Tính sẵn dùng: Liệu các dịch vụ đám mây có bị “treo” bất ngờ, khiến cho người dùng không thể truy cập các dịch vụ và dữ liệu của mình trong những khoảng thời gian nào đó khiến ảnh hưởng đến công việc?

- Mất dữ liệu: Một vài dịch vụ lưu trữ dữ liệu trực tuyến trên đám mây bất ngờ ngừng hoạt động hoặc không tiếp tục cung cấp dịch vụ, khiến cho người dùng phải sao lưu dữ liệu của họ từ “đám mây” về máy tính cá nhân Điều này sẽ mất nhiều thời gian Thậm chí một vài trường hợp vì lý do nào đó, dữ liệu người dùng

bị mất và không thể phục hồi được

- Tính di động của dữ liệu và quyền sở hữu: Một câu hỏi đặt ra, liệu người dùng có thể chia sẻ dữ liệu từ dịch vụ đám mây này sang dịch vụ đám mây khác? Hoặc trong trường hợp không muốn tiếp tục sử dụng dịch vụ cung cấp từ đám mây, liệu người dùng có thể sao lưu toàn bộ dữ liệu của họ từ đám mây? Và làm cách nào

để người dùng có thể chắc chắn rằng các dịch vụ đám mây sẽ không hủy toàn bộ

dữ liêu của họ trong trường hợp dịch vụ ngừng hoạt động

- Khả năng bảo mật: Vấn đề tập trung dữ liệu trên các “đám mây” là cách thức hiệu quả để tăng cường bảo mật, nhưng mặt khác cũng lại chính là mối lo của người

sử dụng dịch vụ của điện toán đám mây Bởi lẽ một khi các đám mây bị tấn công hoặc đột nhập thì toàn bộ dữ liệu sẽ bị chiếm dụng

- Các quy định pháp luật cho các dịch vụ giữa khách hàng và nhà cung cấp

- Data lock-in: Ngày nay sự tương tác giữa các nền tảng khác nhau của các phần mềm đã được cải thiện nhưng các hàm API (Application Programming Interface) của điện toán đám mây vẫn chưa được chuẩn nên nếu một người dùng viết ứng dụng trên nền tảng của nhà cung cấp dịch vụ thì ứng dụng không thể chạy được trên nền tảng của các nhà cung cấp dịch vụ khác Như vậy người dùng phụ thuộc cung cấp dịch vụ là điều bất lợi

Trang 26

2.1.4 Cấu trúc phân lớp của mô hình điện toán đám mây

Về cơ bản điện toán đám mây được chia thành các lớp riêng biệt như sau:

Client

Application Platform Infrastructure

Server

Hình 2 5 Mô hình cấu trúc phân lớp của điện toán đám mây

Client (lớp khách hàng): Lớp Client của điện toán đám mây bao gồm phần cứng và phần mềm, để dựa vào đó khách hàng có thể truy cập và sử dụng các ứng dụng/dịch vụ được cung cấp từ điện toán đám mây Chẳng hạn máy tính và đường dây kết nối Internet (thiết

bị phần cứng), các trình duyệt web (Phần mềm)…

Application (Lớp ứng dụng): Lớp ứng dụng của điện toán đám mây làm nhiệm vụ phân phối phần mềm như một dịch vụ thông qua mạng Internet, người dùng không cần phải cài đặt và chạy các ứng dụng đó trên máy tính của mình, các ứng dụng dễ dàng được chỉnh sữa

và người dùng dễ dàng nhận được sự hỗ trợ Các đặc trưng chính của lớp ứng dụng bao gồm:

- Các hoạt động được quản lý tại trung tâm của đám mây, chứ không nằm ở phía khách hàng (lớp Client), cho phép khách hàng truy cập các ứng dụng từ xa thông qua website

- Người dùng không còn cần thực hiện các tính năng như cập nhật phiên bản, bản

vá lỗi, download phiên bản mới… bởi chúng sẽ được thực hiện từ các “đám mây” Platfrom (lớp nền tảng): Cung cấp nền tảng cho điện toán và các giải pháp của dịch vụ,

Trang 27

các ứng dụng hoạt động trên nền tảng đó Nó giảm nhẹ sự tốn kém khi triển khai các ứng dụng khi người dùng không phải trang bị cơ sở hạ tầng (phần cứng và phần mềm) của riêng mình

Infrastructure (lớp cơ sở hạ tầng): Cung cấp hạ tầng máy tính, tiêu biểu là môi trường nền ảo hóa Thay vì khách hàng phải bỏ tiền ra mua các server, phần mềm, dữ liệu hoặc thiết bị kết nối… giờ đây, họ vẫn có thể có đầy đủ tài nguyên để sử dụng mà chi phí được giảm thiểu, hoặc thậm chí là miễn phí Đây là một bước tiến hóa của mô hình máy chủ ảo (Virtual Private Server)

Server (lớp máy chủ): Bao gồm các sản phẩm phần cứng và phần mềm máy tính, được thiết kế và xây dựng đặc biệt để cung cấp các dịch vụ đám mây Các server phải được xây dựng và có cấu hình đủ mạnh (thậm chí là rất mạnh) để đáp ứng nhu cầu sử dụng của số lượng đông đảo các người dùng và các nhu cầu ngày càng cao của họ

2.1.5 Cách thức hoạt động của điện toán đám mây

Để hiểu cách thức hoạt động của “đám mây”, tưởng tượng rằng “đám mây” bao gồm 2 lớp: Lớp Back-end và lớp Front-end

Hình 2 6 Mô hình cách thức hoạt động của điện toán đám mây

Lớp Front-end là lớp người dùng, cho phép người dùng sử dụng và thực hiện thông qua giao diện người dùng Khi người dùng truy cập các dịch vụ trực tuyến, họ sẽ phải sử dụng thông qua lớp Front-end và các phần mềm sẽ được chạy trên lớp Back-end nằm ở “đám mây” Lớp Back-end bao gồm các cấu trúc phần cứng và phần mềm để cung cấp giao diện cho lớp Front-end và được dùng tác động thông qua giao diện đó

Trang 28

Bởi vì các máy tính trên “đám mây” được thiết lập để hoạt động cùng nhau, do vậy các ứng dụng có thể sử dụng toàn bộ sức mạnh của các máy tính để có thể đạt được hiệu suất cao nhất Điện toán đám mây cũng đáp ứng đầy đủ tính linh hoạt cho người dùng Tùy thuộc vào nhu cầu, người dùng có thể tăng thêm tài nguyên mà các đám mây cần sử dụng

để đáp ứng, mà không cần phải nâng cấp thêm tài nguyên phần cứng như sử dụng máy tính

cá nhân Ngoài ra, với điện toán đám mây, vấn đề hạn chế của hệ điều hành khi sử dụng các ứng dụng không còn bị ràng buộc, như cách sử dụng máy tính thông thường

2.1.6 Mô hình điện toán đám mây

2.1.6.1 Mô hình các lớp dịch vụ

Trong điện toán đám mây, mọi khả năng liên quan đến công nghệ thông tin đều được cung cấp phổ biến dưới dạng “dịch vụ” (service), người sử dụng truy cập các dịch vụ công nghệ từ một nhà cung cấp nào đó “trong đám mây” mà không cần quan tâm đến các cơ sở

hạ tầng phục vụ công nghệ đó Có 03 mô hình cơ bản nhất thường được sử dụng trong điện toán đám mây là: Phần mềm như một dịch vụ (SaaS); Hạ tầng như một dịch vụ (PaaS) và nền tảng như một dịch vụ (IaaS) Một cách đơn giản, có thể so sánh các mô hình này với

mô hình truyền thống như hình bên dưới

Hình 2 7 Mô hình các lớp dịch vụ của điện toán đám mây

Dịch vụ hạ tầng IaaS (Infrastrucure as a Services): Dịch vụ IaaS cung cấp dịch vụ cơ bản bao gồm năng lực tính toán, không gian lưu trữ, kết nối mạng tới khách hàng Khách hàng

Trang 29

có thể sử dụng tài nguyên hạ tầng này để đáp ứng nhu cầu tính toán hoặc cài đặt ứng dụng riêng cho người sử dụng Với dịch vụ này khách hàng làm chủ hệ điều hành, lưu trữ và các ứng dụng do khách hàng cài đặt Khách hàng điển hình của dịch vụ IaaS có thể là mọi đối tượng cần tới một máy tính và cài đặt ứng dụng của mình

Dịch vụ nền tàng PaaS (Platfrom as a Service): Dịch vụ PaaS cung cấp nền tảng điện toán cho phép khách hàng phát triển các phần mềm, phục vụ nhu cầu tính toán hoặc xây dựng thành dịch vụ trên nền tảng Cloud đó Dịch vụ PaaS có thể được cung cấp dưới dạng các ứng dụng lớp giữa, các ứng dụng chủ (application server) cùng các công cụ lập trình với ngôn ngữ lập trình nhất định để xây dựng ứng dụng Dịch vụ PaaS cũng có thể được xây dựng riêng và cung cấp cho khách hàng thông qua một API riêng Khách hàng xây dựng ứng dụng và tương tác với hạ tầng điện toán đám mây thông qua API đó Ở mức PaaS, khách hàng không quản lý nền tảng Cloud hay các tài nguyên lớp như hệ điều hành, lưu giữ ở lớp dưới Khách hàng điển hình của dịch vụ PaaS chính là các nhà phát triển ứng dụng (ISV) Dịch vụ App Engine của Google là một dịch vụ PaaS điển hình, cho phép khách hàng xây dựng các ứng dụng web với môi trường chạy ứng dụng và phát triển dựa trên ngôn ngữ lập trình Java hoặc Python

Dịch vụ phần mềm SaaS (Soft as a Service): Dịch vụ SaaS cung cấp các ứng dụng hoàn chỉnh như một dịch vụ theo yêu cầu cho khách hàng với chỉ một phiên bản cài đặt Khách hàng lựa chọn ứng dụng phù hợp với nhu cầu và sử dụng mà không quan tâm tới hay bỏ công sức quản lý tài nguyên tính toán bên dưới Các ứng dụng SaaS cho người cuối cùng phổ biến là các ứng dụng office Online của Microsoft hay Google Docs của Google

2.1.6.2 Mô hình triển khai

Từ “đám mây” (cloud) xuất phát từ hình ảnh minh họa mạng Internet đã được sử dụng rộng rãi trong các hình vẽ về hệ thống mạng máy tính của giới công nghệ thông tin Một cách khái quát, điện toán đám mây là mô hình điện toán Internet Tuy nhiên, khi mô hình điện toán đám mây dần định hình, các ưu điểm của nó đã được vận dụng để áp dụng trong các môi trường có quy mô và phạm vi riêng, hình thành các mô hình triển khai khác nhau

 Đám mây công cộng (Public Cloud)

Đám mây công cộng là các dịch vụ đám mây được một bên thứ ba (người bán) cung cấp Chúng tồn tại ngoài tường lửa công ty và chúng được lưu trữ đầy đủ và được nhà cung cấp quản lý Các ứng dụng khác nhau sẽ được chia sẻ chung tài nguyên tính toán, mạng và lưu trữ

Trang 30

Do vậy hạ tầng đám mây công cộng được liên kết để đảm bảo cô lập về dữ liệu giữa các khách hàng tách biệt về truy cập các dịch vụ đám mây công cộng hướng tới số lượng khách hàng lớn nên thường có năng lực về hạ tầng cao, đáp ứng nhu cầu tính toán linh hoạt, đem lại chi phí thấp cho khách hàng Do đó khách hàng của dịch vụ trên đám mây công cộng sẽ bao gồm tất cả các tầng lớp mà khách hàng cá nhân và doanh nghiệp nhỏ sẽ được lợi thế trong việc dễ dàng tiếp cận các ứng dụng công nghệ cao, chất lượng mà không phải đầu tư ban đầu, chi phí sử dụng thấp, linh hoạt

Ưu điểm lớn nhất của Public Cloud chính là nó luôn được sẵn sàng để sử dụng nhanh chóng Một ứng dụng kinh doanh mới nhất có thể được triển khai chỉ trong vòng vài phút Doanh nghiệp không cần đầu tư vào hệ thống hạ tầng IT nội bộ để vận hành và đưa ra giải pháp nữa

Hình 2 8 Mô hình đám mây công cộng

 Đám mây riêng (Private Cloud)

Đám mây riêng là các dịch vụ đám mây được cung cấp trong danh nghiệp Những đám mây này tốn tại bên trong tường lửa công ty và chúng được doanh nghiệp quản lý

Các đám mây riêng đưa ra nhiều lợi ích giống như các đám mây chung thực hiện với sự khác biệt chính: doanh nghiệp có trách nhiệm thiết lập và bảo trì đám mây này Sự khó

Trang 31

ngăn cản việc sử dụng và chi phí hoạt động liên tục của đám mây có thể vượt quá chi phí của việc sử dụng một đám mây chung Các đám mây riêng đưa ra nhiều lợi thế hơn so với đám mây chung Việc kiểm soát chi tiết hơn trên các tài nguyên khác nhau đang tạo thành một đám mây mạng lại cho công ty tất cả các tùy chọn cấu hình có sẵn Ngoài ra, các đám mây riêng là lý tưởng khi các kiểu công việc đang được thực hiện không thiết thực cho một đám mây chung, do đúng với các mối quan tâm về an ninh và về quản lý

Hình 2 9 Mô hình đám mây riêng

Lợi ích của Private Cloud là doanh nghiệp có thể tự thiết kế nó rồi tùy biến theo thời gian cho phù hợp với mình Họ có thể kiểm soát được chất lượng dịch vụ đã cung cấp Với

hệ thống chuẩn được lắp đặt, hoạt động theo nguyên tắc, đảm bảo tính bảo mật thì nhiệm

vụ quản trị của công nghệ thông tin sẽ được duy trì Điều bất lợi của Private Cloud này là

mô hình triển khai của nó cần sự đầu tư nhiều về chuyên môn, tiền bạc và thời gian để tạo

ra các giải pháp kinh doanh đúng đắn cho doanh nghiệp

Trang 32

 Đám mây chung (Community Cloud)

Đám mây chung (Community Cloud) là mô hình trong đó hạ tầng đám mây được chia

sẻ bởi một số tổ chức cho cộng đồng người dùng trong các tổ chức đó Các tổ chức này do đặc thù không tiếp cận với các dịch vụ Public Cloud và chia sẻ chung một hạ tầng điện toán đám mây để nâng cao hiệu quả đầu tư và sử dụng Tùy chọn này là tốn kém hơn nhưng có thể đáp ứng về sự riêng tư, an ninh hoặc tuân thủ các chính sách tốt hơn

Hình 2 10 Mô hình đám mây dùng chung

Bởi vì tính mở tự nhiên, Community Cloud rất phức tạp Một Community Cloud là một rủi ro có thể có khi chia sẻ Tính bảo mật và thống nhất vừa là một thế mạnh vừa là một điểm yếu, mang sự thách thức về tính toán ở đây Dù là với Private Cloud, yếu tố chính sách công ty là rất lớn Chúng ta chỉ có thể hình dung ra vai trò của chính sách công ty là quan trọng thế nào khi tham gia vào Community Cloud được mua và sử dụng bởi nhiều công ty cùng một lúc

 Đám mây lai (Hybrid Cloud)

Là một sự kết hợp của các đám mây công cộng và riêng Những đám mây này thường

do doanh nghiệp tạo ra và các trách nhiệm quản lý sẽ được phân chia giữa doanh nghiệp và nhà cung cấp đám mây công cộng Đám mây lai sử dụng các dịch vụ có trong cả không

Trang 33

gian công cộng và riêng Các đám mây lai là câu trả lời khi một công ty cần sử dụng các dịch vụ của cả hai đám mây riêng và công cộng

Theo hướng này, một công ty có thể phác thảo các mục tiêu và nhu cầu của các dịch vụ

và nhận được chúng từ đám mây công cộng hay riêng, khi thích hợp Một đám mây lai được xây dựng tốt có thể phục vụ các quy trình nhiệm vụ - tới hạn, an toàn, như nhận các khoản thanh toán của khách hàng, cũng như những thứ là không quan trọng bằng kinh doanh, như

xử lý bảng lương nhân viên

Hạn chế chính của đám mây này là sự khó khăn trong việc tạo ra và quản lý có hiệu quả một giải pháp như vậy Phải có thể nhận được và cung cấp các dịch vụ lấy từ các nguồn khác nhau như thế chúng có nguồn gốc từ một chỗ và tương tác giữa các thành phần riêng

và chung có thể làm cho việc thực hiện thậm chí phức tạp hơn nhiều

Hình 2 11 Mô hình đám mây lai

2.1.6.3 Các công ty cung cấp điện toán đám mây

Điện toán đám mây đang được phát triển và cung cấp bởi nhiều nhà cung cấp, trong có

có Amazon, Google DataSynapse và Salesfore cũng như các nhà cung cấp truyền thống như Sum Microsytems, HP, IBM, Intel, Cosco, Microsoft và Oracle

Trang 34

2.2 TÌM HIỂU GOOGLE APP ENGINE (GAE)

2.2.1 Giới thiệu về Google App Engine

Google App Engine (gọi tắt là AppEngine, một số trường hợp còn được viết tắt là GAE)

là giải pháp cho vấn đề điện toán đám mây Ở đó, Google cung cấp sẵn một hệ thống máy chủ điện toán đám mây và người lập trình sẽ viết ứng dụng của mình lên đó, ứng dụng này

sẽ chạy trên đám mây của Google

Google App Engine cho phép bạn chạy các ứng dụng web của bạn trên cơ sở hạ tầng của Google App Engine ứng dụng dễ dàng để xây dựng, dễ bảo trì và dễ dàng để có quy mô như giao thông của bạn và nhu cầu lưu trữ dữ liệu lớn Với App Engine, không có máy chủ

để duy trì, bạn chỉ cần tải lên các ứng dụng của bạn và nó sẵn sàng để phục vụ người dùng của bạn

Bạn có thể sử dụng tên miền riêng của mình thông qua google app Hoặc bạn có thể dùng sub-domain miễn phí của appspot.com Google App Engine cho phép được host miễn phí với dung lượng 500MB lưu trữ và cho phép 10GB bằng thông lưu chuyển mỗi ngày hay tương đương với 5 triệu pageview hàng tháng, vượt qua mức này bạn sẽ phải trả phí Dùng Google App Engine, chúng ta khỏi phải thiết kế database, viết SQL để truy vấn dữ liệu Chúng ta chỉ cần thiết kế các lớp và GAE tự động lo phần làm việc với CSDL

Hỗ trợ Java và miễn phí: việc Google nhảy vào lĩnh vực điện toán đám mây sẽ giúp cho năng lực cung cấp dịch vụ ngành công nghệ này được nâng lên mức cao hơn Google sẽ đi theo hướng cung cấp các trải nghiệm điện toán đám mây đơn giản hơn, nhưng có mức kiểm soát chặt chẽ và đầy đủ hơn Nói cách khác, Google muốn thuyết phục các nhà phát triển

và doanh nghiệp sử dụng nền tảng App Engine để thúc đẩy việc sử dụng các dịch vụ của hãng trong doanh nghiệp

Vẫn mang tính kế thừa: App Engine mang tính linh hoạt rất cao, nó vừa cho phép quản

lý nhiều hệ thống máy móc khác nhau, vừa cho phép các nhà phát triển có thể tạo ra nhiều chương trình tùy biến Tuy nhiên, không phải nhà phát triển nào cũng thích nền tảng này, đơn giản là bởi nó thuộc dạng kế thừa Người ta không thích cách thức App Engine yêu cầu

xử lý dữ liệu, và những sản phẩm viết trên nền tảng này lại không thể triển khai dễ dàng trên các nền tảng khác

Hiện AppEngine hỗ trợ 2 loại ngôn ngữ là: Python và Java Một số ngôn ngữ khác như PHP cũng có thể chạy được nếu cài cùng với bộ chuyển từ PHP sang Java

Trang 35

2.2.2 Các thành phần chính của Google App Engine

2.2.2.1 Python Runtime

AppEngine hỗ trợ Python Runtime phiên bản 2.7 Hầu hết các thư viện của Python Standard Library điều được hỗ trợ Tuy nhiên do vấn đề về security nên các extensions viết bằng C sẽ không được hỗ trợ Điều này có ý nghĩa rằng bạn không thể nhúng C extensions vào ứng dụng của bạn khi sử dụng App Engine

Python Runtime cung cấp APIs cho datastore, Google Accounts, App Engine serviecs

Để thuận lợi cho việc phát triển web AppEngine cũng cung cấp 1 web framework đơn giản

là webapp Do viết bằng ngôn ngữ Python nên AppEngine hỗ trợ hầu hết các Python framework như Django, CherryPy, Pylons, web.py với một ít thay đổi nhất định

2.2.2.2 Java Runtime Enviroment

Bạn có thể phát triển ứng dụng của bạn cho Java Runtime Environment sử dụng phổ biến công cụ phát triển web Java và các tiêu chuẩn API Ứng dụng của bạn tương tác với môi trường bằng cách sử dụng the Java Servlet standard, bạn có thể sử dụng công nghệ ứng dụng web phổ biến như JavaServer Page (JSP)

Java Runtime Environment sử dụng Java 6 Các App Engine Java SDK hỗ trợ phát triển các ứng dụng bằng cách sử dụng Java 5 hoặc 6

Đối với các kho dữ liệu App Engine, Java SDK bao gồm việc triển khai của Java Data Objects (JDO) và Java Persistence API (JPA) interface Ứng dụng của bạn có thể sử dụng các API JavaMail để gửi tin nhắn email với dịch vụ App Engine Mail Các java.net HTTP API truy cập vào App Engine lấy URL dịch vụ App Engine cũng bao gồm các API cấp thấp cho các dịch vụ của mình để thực hiện thêm bộ điều hợp hoặc sử dụng trực tiếp từ ứng dụng

Thông thường, các nhà phát triển Java sử dụng các ngôn ngữ lập trình Java và các API

để thực hiện các ứng dụng web cho JVM Với việc sử dụng các trình biên dịch tương thích với JVM, người phiên dịch, bạn cũng có thể sử dụng các ngôn ngữ khác để phát triển các ứng dụng web, chẳng hạn như JavaScript, Ruby, hoặc Scala

2.2.3 Lợi ích của Google App Engine

Giúp cho nhà phát triển xây dựng một ứng dụng web một cách mở rộng giống như ứng dụng của hệ thống google Ứng dụng dựa theo App Engine dễ dàng xây dựng bảo trì mở rộng luồng lưu trữ dữ liệu không cần quan tâm về vấn đề bảo trì Server Ngoài ra ứng dụng

Trang 36

dựa theo App Engine có thể thừa hưởng được khả năng mở rộng tính chịu tải và tính chất bảo mật dữ liệu của Google

2.2.4 Datastore

2.2.4.1 Giới thiệu

Kho dữ liệu của App Engine đem lại khả năng lưu trữ mạnh mẽ cho ứng dụng web, và tốc độ khi truy cập dữ liệu Ứng dụng tạo ra những thực thể (entity) và dữ liệu được chứa trong thuộc tính (property) của mỗi thực thể Tất cả các câu truy vấn dữ liệu đều đã được đánh chỉ mục từ trước để đem lại sự nhanh nhất khi truy vấn số lượng lớn dữ liệu

App Engine cung cấp 2 sự lựa chọn cho chúng ta về kho dữ liệu, bạn chỉ có thể chọn lựa khi bạn là admin của hệ thống Khi đó hãy vào Admin Console để tùy chỉnh:

- Kho dữ liệu Master/Slave: dựa theo mô hình hệ thống master-slave, hệ thống sẽ ghi lại dữ liệu một cách bất đồng bộ đối với trung tâm dữ liệu vật lý Ở bất cứ thời điểm nào cũng chỉ có 1 trung tâm dữ liệu là chủ (master) mà thôi Đảm bảo tính sẵn sàng cho việc đọc và truy vấn dữ liệu, nhưng phải mất một ít thời gian khi trung tâm dữ liệu gặp sự cố hoặc thời gian chết Tùy chọn này cần lượng lưu trữ

và CPU thấp nhất Đây là tùy chọn mặc định

- Kho dữ liệu High Replication: dựa theo giải thuật Paxos, cung cấp tính sẵn sàng cho việc đọc và ghi dữ liệu rất cao Nhưng tùy chọn này cần lượng lưu trữ và CPU cao gấp 3 lần so với tùy chọn Master/Slave

Không giống như các hệ cơ sở dữ liệu truyền thống GAE sử dụng cấu trúc phân tán để

tự động quản lý việc mở rộng cho một khối lượng dữ liệu rất lớn Datastore của GAE khác

so với cơ sở dữ liệu truyền thống ở việc miêu tả mối ràng buộc giữa các object Chẳng hạn như 2 thực thể cùng loại nhưng có thuộc tính khác nhau Những thực thể khác nhau có cùng tên thuộc tính nhưng khác nhau về kiểu giá trị Tuy nhiên interface giao tiếp với datastore

có nhiều đặc điểm giống với cơ sở dữ liệu truyền thống, đặc điểm độc đáo của datastore ngụ ý rằng việc thiết kế và quản lý thì khác nhau nhằm tận dụng khả năng quy mô tự động

2.2.4.2 Một số khái niệm trong datastore

Entities: một ứng dụng App Engine có thể chứa dữ liệu trong một hay nhiều thực thể datastore Mỗi thực thể có một hay nhiều thuộc tính, mỗi thuộc tính đều có tên và giá trị Mỗi thực thể đều được phân loại để thuận lợi cho việc truy vấn Chúng ta thấy thực thể có thể gần giống các hàng (row) trong một bảng trong cơ sở dữ liệu quan hệ Và mỗi thuộc

Trang 37

tính có thể giống với một cột Tuy nhiên đối với các thực thể cùng loại với nhau có thể có các thuộc tính khác nhau Các thực thể có thể có cùng thuộc tính với các thực thể cùng loại khác nhưng khác về kiểu dữ liệu Một điểm khác nhau nữa giữa thực thể và các hàng (row)

là các thực thể có thể có nhiều giá trị cho một thuộc tính đơn lẻ Mỗi thực thể có một khóa riêng (key) phân biệt lẫn nhau được cung cấp bởi ứng dụng hoặc do App Engine Khác với CSDL quan hệ, khoá của thực thể không phải là thuộc tính, nó tồn tại độc lập với thực thể Khoá của thực thể không được thay đổi khi thực thể đã được tạo ra

Truy vấn (queries) và chỉ mục (indexes): một câu truy vấn trên datastore trả về không hoặc nhiều thực thể cùng loại với nhau Nó cũng có thể trả về các khóa của thực thể Câu truy vấn có thể dựa vào các giá trị thuộc tính của thực thể và được sắp xếp theo giá trị của thuộc tính Câu truy vấn cũng có thể làm việc với các khóa của thực thể Với App Engine, mỗi câu truy vấn sẽ có một chỉ mục trong datastore Khi ứng dụng cần thực hiên một câu truy vấn, thì datastore sẽ tìm chỉ mục của câu truy vấn đó Khi chúng ta tạo mới một thực thể và cập nhật cái cũ thì datastore cũng sẽ cập nhật lại chỉ mục Điều này giúp cho câu truy vấn được nhanh hơn

Phiên giao dịch (Transaction): khi một ứng dụng có quá nhiều client liên tục đọc hay ghi cùng một dữ liệu ở cùng một thời điểm, thì phiên giao dịch rất cần thiết để dữ liệu không

bị đọc sai Mỗi phiên giao dịch là đơn vị nhỏ nhất và chỉ có hai trạng thái là thành công hoặc thất bại Một ứng dụng đọc hay cập nhật nhiều thực thể trong một phiên giao dịch, nhưng nó phải nói cho App Engine biết những thực thể nào sẽ được cập nhật khi nó tạo ra nhiều thực thể Ứng dụng làm được điều này bởi việc tạo ra nhóm thực thể Nhờ nhóm thực thể, App Engine sẽ biết được các thực thể sẽ phân tán như thế nào qua các server, vì thế nó

có thể khẳng định chắc chắn là phiên giao dịch thành công hay thất bại App Engine cũng

hỗ trợ những phiên giao dịch nội bộ (local transaction) Nếu một người dùng cố gắng cập nhật một thực thể trong khi người khác đang cập nhật thực thể đó thì datastore sẽ ngay lập tức trả về một biệt lệ báo lỗi Trong thuật ngữ database, thì ta nói App Engine sử dụng

“optimistic concurrency control” Với chỉ mục và “optimistic concurrency control”, App Engine được thiết kế giúp cho ứng dụng có thể đọc dữ liệu nhanh hơn và đảm bảo hơn

2.2.4.3 Sandbox

Sandbox là môi trường để cho phép App Engine phân phối các yêu cầu cho các ứng dựng giữa các máy chủ web và ngăn chặn một ứng dụng truy cập đến các ứng dụng khác Trong môi trường này, các ứng dụng có thể thực thi mã, lưu trữ và truy vấn dữ liệu trong kho dữ liệu App Engine, sử dụng dịch vụ App Engine mail, URL fetch, dịch vụ người

Trang 38

dùng (xem thêm ở phần các dịch vụ của GEA ), và kiểm tra yêu cầu web của người dùng

và các kết quả trả về

2.2.4.4 JDO (Java Data Objects)

GAE cung cấp một số API để làm việc với datastore như: JDO, JPA, Low-API; trong phạm vi khóa luận em sử dụng JDO

 Khái niệm

Hình 2 12 Mô hình hoạt động của JDO

JDO là một interface chuẩn cho việc lưu trữ đối tượng chứa dữ liệu vào cơ sơ dữ liệu Tiêu chuẩn này định nghĩa các giao diện cho các chú thích đối tượng Java, trích rút các đối tượng với các truy vấn, và tương tác với một cơ sở dữ liệu bằng cách sử dụng transaction Một ứng dụng có sử dụng giao diện JDO có thể làm việc với các loại cơ sở dữ liệu mà không cần sử dụng bất kỳ mã cơ sở dữ liệu cụ thể, bao gồm cả cơ sở dữ liệu quan hệ, cơ sở

dữ liệu phân cấp, và cơ sở dữ liệu đối tượng Như các tiêu chuẩn giao diện khác, JDO làm đơn việc lưu trữ khác nhau trong ứng dụng của bạn

Các App Engine Java SDK bao gồm thực hiện JDO 2,3 cho kho dữ liệu App Engine Thực hiện dựa trên DataNucleus Access Platform, các mã nguồn mở tham khảo thực hiện cho JDO 2.3

 Xác định lớp dữ liệu với JDO

Chúng ta có thể sử dụng JDO để lưu đối tượng dữ liệu Java (POJOs) trong datastore Mỗi đối tượng được persistent với PersistenceManager trở thành một thực thể trong

Trang 39

datastore Chúng ta sử dụng chú thích (annotation) để nói với JDO cách lưu trữ và tạo ra đối tượng của lớp dữ liệu

Tương ứng 1 Object được lưu bởi JDO sẽ trở thành một thực thể trong App Engine datastore Khi đó loại thực thể sẽ là tên của class và tên của thuộc tính class là tên thuộc tính của thực thể

 Khóa chính

Mỗi thực thể có một key nhằm xác định tính duy nhất trong GAE Một key hoàn chỉnh bao gồm Application ID, loại và ID của thực thể (Key cũng chứa thông tin về nhóm thực thể)

Đối tượng key được lưu trữ là một trường của đối tượng, ta xác định khóa chính bằng khai báo @PrimaryKey

Phân loại:

- Long: có kiểu là long, là id của thực thể được sinh ra tự động bởi datastore Sử dụng loại này cho đối tượng mà không ở trong một nhóm thực thể có key của thực thể cha được sinh ra ngẫu nhiên bởi datastore Giá trị của key được tạo ra khi đối tượng được lưu

- Unencoded String: là một chuỗi được cung cấp bởi ứng dụng khi đối tượng được tạo ra Đối với những đối tượng trong một nhóm mà khóa của thực thể cha được cung cấp bởi ứng dụng sẽ không sử dụng loại này

private Key key;

public void setKey(Key key) {

this.key = key;

Trang 40

 Thao tác dữ liệu với JDO

Lưu trữ đối tượng cơ sở dữ liệu: Để lưu trữ một đối tượng dữ liệu đơn giản trong datastore, chúng ta gọi phương thức makePersistent()

PersistenceManager pm = PMF.get().getPersistenceManager();

import javax.jdo.JDOHelper;

import javax.jdo.PersistenceManagerFactory;

public final class PMF {

private static final PersistenceManagerFactory pmfInstance = JDOHelper.getPersistenceManagerFactory("transactions-optional");

Ngày đăng: 05/06/2016, 12:58

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[7] Google Map API V3 tutorial https://google-developers.appspot.com/maps/documentation/javascript/tutorial [8] Tìm hiểu về Google App Engine: https://cloud.google.com/appengine/docs Link
[1] Nguyễn Đặng Phương Thảo. Luận văn tốt nghiệp nghiên cứu công nghệ webgis và xây dựng trang website hỗ trợ cung cấp thông tin giao thông trên địa bàn thành phố Hồ Chí Minh Khác
[2] Nguyễn Đức Điệp. Nền tảng Google App Engine và ứng dụng xây dựng cổng thông tin điện tử trường cao đẳng nghề số 3 Khác
[3] Nguyễn Văn Lợi. Tìm hiểu công nghệ JSP (Java Server Page) – Thiết kế website quảng cáo thương mại điện tử cho công ty Seen Khác
[4] Trần Thị Kim Liên. Ứng dụng WebGis xây dựng bản đồ tra cứu thông tin du lịch tỉnh Bình Thuận.Tiếng Anh Khác
[5] Dan Sanderson. Programming Google App Engine: Build and Run scalable web app on Google’s Infrastructure Khác
[6] Gabriel Sevennerberg. Beginning Google Maps API V3 Internet Khác

HÌNH ẢNH LIÊN QUAN

Hình 2. 2 Sơ đồ điện toán đám mây với các dịch vụ được cung cấp bên trong - nghiên cứu và xây dựng ứng dụng trên cloud quản lý nhân viên, các điểm giao dịch và trạm atm
Hình 2. 2 Sơ đồ điện toán đám mây với các dịch vụ được cung cấp bên trong (Trang 21)
Hình 2. 13 Mô hình hoạt động của Blobstore. - nghiên cứu và xây dựng ứng dụng trên cloud quản lý nhân viên, các điểm giao dịch và trạm atm
Hình 2. 13 Mô hình hoạt động của Blobstore (Trang 42)
Hình 2. 14 Mô hình hoạt động của Task Queues. - nghiên cứu và xây dựng ứng dụng trên cloud quản lý nhân viên, các điểm giao dịch và trạm atm
Hình 2. 14 Mô hình hoạt động của Task Queues (Trang 48)
Hình 3. 2 Sơ đồ nghiệp vụ chức năng của người dùng thuộc bộ phận quản lý - nghiên cứu và xây dựng ứng dụng trên cloud quản lý nhân viên, các điểm giao dịch và trạm atm
Hình 3. 2 Sơ đồ nghiệp vụ chức năng của người dùng thuộc bộ phận quản lý (Trang 58)
Hình 3. 4 Sơ đồ usecase nhóm người dùng giám đốc - nghiên cứu và xây dựng ứng dụng trên cloud quản lý nhân viên, các điểm giao dịch và trạm atm
Hình 3. 4 Sơ đồ usecase nhóm người dùng giám đốc (Trang 61)
Hình 3. 6 Sơ đồ usecase nhóm người dùng quản lý - nghiên cứu và xây dựng ứng dụng trên cloud quản lý nhân viên, các điểm giao dịch và trạm atm
Hình 3. 6 Sơ đồ usecase nhóm người dùng quản lý (Trang 63)
Hình 3. 7 Sơ đồ usecase nhóm người dùng nhân viên - nghiên cứu và xây dựng ứng dụng trên cloud quản lý nhân viên, các điểm giao dịch và trạm atm
Hình 3. 7 Sơ đồ usecase nhóm người dùng nhân viên (Trang 64)
Hình 3. 15 Mối quan hệ kết hợp giữa ngân hàng, chi nhánh, điểm ATM và địa chỉ. - nghiên cứu và xây dựng ứng dụng trên cloud quản lý nhân viên, các điểm giao dịch và trạm atm
Hình 3. 15 Mối quan hệ kết hợp giữa ngân hàng, chi nhánh, điểm ATM và địa chỉ (Trang 69)
Hình 3. 18  Mô hình  vật lý - nghiên cứu và xây dựng ứng dụng trên cloud quản lý nhân viên, các điểm giao dịch và trạm atm
Hình 3. 18 Mô hình vật lý (Trang 74)
Hình 3. 21 Mô hình tuận tự thêm điểm giao dịch - nghiên cứu và xây dựng ứng dụng trên cloud quản lý nhân viên, các điểm giao dịch và trạm atm
Hình 3. 21 Mô hình tuận tự thêm điểm giao dịch (Trang 84)
Hình 3. 22 Mô hình tuần tự thêm điểm giao dịch. - nghiên cứu và xây dựng ứng dụng trên cloud quản lý nhân viên, các điểm giao dịch và trạm atm
Hình 3. 22 Mô hình tuần tự thêm điểm giao dịch (Trang 85)
Hình 3. 23 Mô hình tuần tự thống kê theo loại. - nghiên cứu và xây dựng ứng dụng trên cloud quản lý nhân viên, các điểm giao dịch và trạm atm
Hình 3. 23 Mô hình tuần tự thống kê theo loại (Trang 86)
Hình 3. 24 Mô hình tuần tự thống kê theo lại - nghiên cứu và xây dựng ứng dụng trên cloud quản lý nhân viên, các điểm giao dịch và trạm atm
Hình 3. 24 Mô hình tuần tự thống kê theo lại (Trang 87)
Hình 3. 26  Giao diện trang chủ. - nghiên cứu và xây dựng ứng dụng trên cloud quản lý nhân viên, các điểm giao dịch và trạm atm
Hình 3. 26 Giao diện trang chủ (Trang 89)
Hình 3. 27 Giao diện bảng hệ số lương - nghiên cứu và xây dựng ứng dụng trên cloud quản lý nhân viên, các điểm giao dịch và trạm atm
Hình 3. 27 Giao diện bảng hệ số lương (Trang 90)

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