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

Sử dụng google app engine trong điện toán đám mây xây dựng hệ thống trao đổi dữ liệu

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.11 MB, 77 trang )

LỜI CAM ĐOAN

Tôi xin cam đoan đây là công trình nghiên cứu của bản thân, đƣợc xuất
phát từ yêu cầu phát sinh trong công việc để hình thành hƣớng nghiên cứu.
Các số liệu có nguồn gốc rõ ràng tuân thủ đúng nguyên tắc và kết quả
trình bày trong luận văn thu thập đƣợc trong quá trình nghiên cứu là trung
thực chƣa từng đƣợc ai công bố trƣớc đây.

Hà Nội, tháng 02 năm 2015

Tác giả luận văn

Dƣơng Thị Thúy


MỤC LỤC
LỜI CAM ĐOAN ....................................................................................................... 1
DANH MỤC CÁC KÍ HIỆU, CÁC CHỮ VIẾT TẮT ............................................... 5
DANH MỤC CÁC BẢNG CƠ SỞ DỮ LIỆU ............................................................ 6
DANH MỤC HÌNH VẼ .............................................................................................. 7
MỞ ĐẦU ..................................................................................................................... 8
1. Lý do nghiên cứu đề tài ........................................................................................... 8
2. Mục đích nghiên cứu ............................................................................................... 9
3. Đối tƣợng và phạm vi nghiên cứu ........................................................................... 9
3.1. Đối tƣợng nghiên cứu ...................................................................................... 9
3.2. Phạm vi nghiên cứu ......................................................................................... 9
4. Nhiệm vụ nghiên cứu ............................................................................................ 10
5. Phƣơng pháp nghiên cứu....................................................................................... 10
6. Cấu trúc luận văn .................................................................................................. 10
CHƢƠNG 1: TỔNG QUAN ĐIỆN TOÁN ĐÁM MÂY ......................................... 11
1.1. Một số khái niệm cơ bản trong kiến trúc điện toán đám mây ............................ 11


1.2. Kiến trúc mô hình giáo dục là dịch vụ (EaaS) ................................................... 13
1.2.1. Chức năng chính trong kiến trúc EaaS ....................................................... 13
1.2.2. Các dịch vụ trong kiến trúc EaaS ............................................................... 13
1.2.3. Nhiệm vụ mới của các thành viên khi chuyển giáo dục truyền thống sang
giáo dục đám mây ..................................................................................................... 16
1.3. Các sản phẩm khoa học đã công bố về ứng dụng điện toán đám mây trong lĩnh
vực giáo dục: ............................................................................................................. 16
1.3.1. Cloud-based storage (Lƣu trữ dựa trên đám mây) ...................................... 17
1.3.3. Software as a Service (SaaS) : Phần mềm hoạt động nhƣ dịch vụ ............. 17
1.3.4. Platform as a Service (PaaS) : Nền tảng nhƣ một dịch vụ ......................... 17
1.3.5. Google Apps cho dạy học trực tuyến ......................................................... 18
1.4. Mô hình kiến trúc điện toán đám mây trong giáo dục ....................................... 18
1.4.1 Lý do phải xây dựng hệ thống giáo dục trên nền tảng điện toán đám mây . 18
1.4.2. Mô hình kiến trúc điện toán đám mây trong giáo dục .............................. 21
Kết luận chƣơng 1 ..................................................................................................... 23
2


CHƢƠNG 2: CÔNG NGHỆ APPENGINE CỦA GOOGLE................................... 24
2.1. Tổng quan về Google App Engine ................................................................... 24
2.2. Các chức năng của Google App Engine ............................................................ 25
2.2.1. Kho dữ liệu (Datastore) .............................................................................. 25
2.2.2 . Môi trƣờng thực hiện (runtime environment) ........................................... 26
2.2.3 . Các file server tĩnh (static file servers) ...................................................... 26
2.2.4. Các công cụ lập trình (programming tools) ................................................ 27
2.2.5. Tài khoản Google (google accounts) .......................................................... 27
2.3. Các ứng dụng của Google app engine................................................................ 27
2.3.1. Mail ............................................................................................................. 27
2.3.2. Memcache ................................................................................................... 28
2.3.3. API của App engine .................................................................................... 28

2.3.4. URL FETCH .............................................................................................. 29
2.3.5. Dịch vụ của datastore với môi trƣờng thực thi Google App Engine ......... 30
2.4. Cách thức đƣa dịch vụ lên Google AppEngine .................................................. 30
Kết luận chƣơng 2 ..................................................................................................... 35
CHƢƠNG 3: PHÂN TÍCH THIẾT KÊ, XÂY DỰNG HỆ THỐNG CHIA SẺ FILE36
3.1. Mô tả .................................................................................................................. 36
3.2. Mô hình hóa yêu cầu .......................................................................................... 36
3.2.1. Các actor của hệ thống ................................................................................ 36
3.2.2. Đặc tả các ca sử dụng (Usecases) .............................................................. 37
3.3. Phân tích hệ thống: ............................................................................................. 47
3.3.1:Usecase Gửi file cho lớp:............................................................................. 47
3.3.2. Quản l lớp: ................................................................................................ 48
3.3.3. Quản l nộp bài: .......................................................................................... 49
3.3.4. Sinh viên xin gia nhập lớp: ......................................................................... 50
3.3.5. Sinh viên download tài liệu: ....................................................................... 51
3.3.6. Sinh viên gửi bài tập: .................................................................................. 52
3.3.7. Admin quản l thông tin Giảng viên và Sinh viên: .................................... 53
3.3.8. Khách đăng k tài khoản Sinh viên: ........................................................... 53

3


3.4. Thiết kế hệ thống ............................................................................................... 54
3.4.1. Thiết kế lớp thực thể ................................................................................... 54
3.4.2. Thiết kế các lớp tầng DataAccess ............................................................... 55
3.4.3. Tƣơng tác giữa các gói: .............................................................................. 55
3.4.4. Biểu đồ thành phần: .................................................................................... 56
3.4.5. Biểu đồ triển khai:....................................................................................... 56
3.4.6. Thiết kế các thuật toán upload và download file ........................................ 57
3.4.7. Thiết kế cơ sở dữ liệu: ................................................................................ 58

3.4.8. Thiết kế giao diện: ...................................................................................... 64
3.4.9. Hƣớng dẫn chƣơng trình và thử nghiệm chƣơng trình trên Internet (App
Engine Google.com.vn) ............................................................................................ 69
Kết luận chƣơng 3 ..................................................................................................... 75
KẾT LUẬN VÀ KIẾN NGHỊ................................................................................... 76
1. Kết luận ................................................................................................................. 76
2. Dự kiến tƣơng lai .................................................................................................. 76
TÀI LIỆU THAM KHẢO ......................................................................................... 77

4


DANH MỤC CÁC KÍ HIỆU, CÁC CHỮ VIẾT TẮT

STT
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.

16.

Ký hiệu và từ viết tắt

Diễn giải

AaaS
EaaS
GAE
HTML
HTTP
IaaS
LAN
PaaS
SaaS
SDK
SQL
SQL
URL
CSDL
ĐTĐM
TBXH

Application as a Service
Education as a Service
Google AppEngine
HyperText Markup Language
HyperText Transfer Protocol
Infrastructure as a Service
Local Are Network

Platform as a Service
Sofware as a Service
Software development kit
Select Query Language
Structured Query Language
Uniform Resource Locator
Cơ sở dữ liệu
Điện toán đám mây
Thƣơng Binh Xã hội

5


DANH MỤC CÁC BẢNG CƠ SỞ DỮ LIỆU

Bảng 3.4.7.1. FileBaiGiang ....................................................................................... 58
Bảng 3.4.7.2. GiảngViên ........................................................................................... 59
Bảng 3.4.7.3. SinhViên: ............................................................................................ 59
Bảng 3.4.7.4. Khách .................................................................................................. 60
Bảng 3.4.7.5. LớpHọc ............................................................................................... 60
Bảng 3.4.7.6. Đăng K : ............................................................................................. 61
Bảng 3.4.7.7. Bài Tập: .............................................................................................. 61
Bảng 3.4.7.8. Yêu Cầu Nhập Lớp: ............................................................................ 62

6


DANH MỤC HÌNH VẼ
Hình 1: Kiến trúc điện toán đám mây .......................................................................11
Hình 2: Thành phần của điện toán đám mây ............................................................12

Hình 3: Kiến trúc của EaaS ......................................................................................15
Hình 4: Năm thành phần biến đổi Giáo dục..............................................................19
Hình 5: Kiến trúc điện toán đám mây trong giáo dục ...............................................21
Hình 6. Sơ đồ kiến trúc hoạt động của GAE.............................................................25

7


MỞ ĐẦU
Thuật ngữ CLOUD COMPUTING ra đời giữa năm 2007 không phải để nói
về một trào lƣu mới, mà khái quát lại các hƣớng đi của cơ sở hạ tầng thông tin vốn
đã và đang diễn ra trong những năm gần đây, không phải là một công nghệ mới,
nhƣng nó là một cuộc cách mạng đang làm thay đổi bản chất của công nghệ thông
tin và tác động mạnh đến mọi lĩnh vực trong đó có giáo dục.
1. Lý do nghiên cứu đề tài
* Cơ sở khoa học:
- Điện toán đám mây là dịch vụ lƣu trữ và tính toán theo yêu cầu cho bất cứ ai
đƣợc kết nối mạng. Truy cập ứng dụng và dữ liệu bất cứ nơi nào, bất cứ lúc nào, từ
bất kỳ thiết bị nào. Vì vậy khi triển khai trong trƣờng học: Giáo viên và học sinh có
thông tin liên lạc nhanh chóng và hiệu quả với bất cứ lúc nào, truy cập bất cứ nơi
nào.
- Dịch vụ điện toán đám mây thực hiện theo các mô hình dịch vụ khác nhau
nhƣ nền tảng nhƣ dịch vụ (PaaS), lƣu trữ nhƣ một dịch vụ hoặc phần mềm nhƣ một
dịch vụ (SaaS). IaaS và PaaS đƣợc sử dụng để đáp ứng các nhu cầu cơ sở hạ tầng
của học sinh, giáo viên, sinh viên học giả nghiên cứu với một số cấu hình phần
cứng cụ thể cho các nhiệm vụ cụ thể.
- Công nghệ App Engine của Google hỗ trợ cho các ứng dụng web chạy trên
đó bằng việc cung cấp hạ tầng cơ sở, lƣu trữ dữ liệu, đặc biệt là khả năng đáp ứng
đƣợc việc lƣu trữ và truy cập với số lƣợng lớn dữ liệu.
* Cơ sở thực tiễn:

Trƣờng Trung Cấp nghề cơ khí I Hà Nội đƣợc thành lập năm 2007 trên cơ sở
trƣờng công nhân cơ khí kỹ thuật Hà Nội tổ chức hoặc liên doanh, liên kết tổ chức
mở các lớp đào tạo dài hạn và ngắn hạn dạy nghề cho các đối tƣợng thuộc các thành
phần kinh tế - xã hội theo đúng với chƣơng trình dạy nghề do Bộ Lao động TBXH
và các bộ, ngành có liên quan quy định.
Với số lƣợng hơn 3000 sinh viên, hơn 100 cán bộ công nhân viên trong trƣờng
và 8 nghề đào tạo của trƣờng, 100% các gia đình có kết nối mạng Internet, Với đặc

8


thù ngoài dạy lý thuyết (30%) còn có phần thực hành (70%) đòi hỏi sự nỗ lực
không ngừng của ngƣời học trong tất cả các ngành nghề của trƣờng.
Hệ thống tin học giảng dạy và các phòng ban thực hiện bằng công việc thủ
công gây tốn kém nhiều thời gian, không phát huy tính tự chủ, tự rèn luyện trong
học tập của học sinh, sinh viên; sự trao đổi giữa thầy - trò còn mang tính đơn điệu,
một chiều không phát huy đƣợc tính sáng tạo của học sinh.
Vì vậy, trong quá trình triển khai đào tạo, việc trao đổi thông tin giữa giảng
viên - sinh viên - nhà quản lý là một nhu cầu tất yếu, đòi hỏi phải có một môi
trƣờng để sinh viên tìm kiếm tài liệu học tập, tra cứu các tin tức thông tin có ích cho
việc học tập.
Xuất phát từ những vấn đề nêu trên, tác giả đã chọn đề tài nghiên cứu :”Sử
dụng Google App Engine trong điện toán đám mây xây dựng hệ thống trao đổi dữ
liệu” nhằm giúp cho việc giảng dạy, truyền tải thông tin đƣợc dễ dàng hơn.
2. Mục đích nghiên cứu
Xây dựng thử nghiệm một hệ thống để chia sẻ file của Google App Engine.
Trên cơ sở đó tập trung xây dựng hệ thống trao đổi dữ liệu cho giáo viên và học
sinh trong trƣờng học. Hệ thống này cho phép ngƣời dùng (bao gồm cả giáo viên
lẫn học sinh) có thể tìm kiếm, download tài liệu, upload tài liệu, bài tập nộp… nâng
cao chất lƣợng trao đổi thông tin giữa thầy cô và trò.

Nghiên cứu cách đƣa dữ liệu lên Cloud và truy xuất đến chúng, áp dụng vào
bài toán đƣa cơ sở dữ liệu có cấu trúc lên Cloud SQL và dữ liệu không có cấu trúc
lên Cloud Storage.
3. Đối tƣợng và phạm vi nghiên cứu
3.1. Đối tƣợng nghiên cứu
Hệ thống tin học hỗ trợ các công tác hành chính và giảng dạy tại trƣờng Trung
cấp nghề cơ khí I Hà Nội.
3.2. Phạm vi nghiên cứu
Do phạm vi công nghệ sử dụng trong mô hình điện toán đám mây rất rộng, vì
vậy luận văn này không thể đi sâu cụ thể vào tất cả các công nghệ có thể triển khai

9


mô hình điện toán đám mây riêng mà chủ yếu nghiên cứu về bản chất mô hình điện
toán đám mây, lợi ích, một số kỹ thuật sử dụng trong mô hình điện toán đám mây
kết hợp với triển khai thực tế một phần vào mô hình ĐTĐM trong phạm vi nhỏ để
đƣa ra đề xuất, triển khai, kiểm thử, đƣa ra kinh nghiệm, khuyến nghị triển khai mô
hình ĐTĐM tại trƣờng Trung cấp nghề cơ khí I Hà Nội.
4. Nhiệm vụ nghiên cứu
Nghiên cứu tổng quan điện toán đám mây nói chung và công nghệ Google
App Engine nói riêng.
Xây dựng thử nghiệm một hệ thống để chia sẻ file của Google App Engine.
Ứng dụng hệ thống chia sẻ file phục vụ công tác dạy và học trong trƣờng học
nhằm nâng cao chất lƣợng trao đổi thông tin giữa Thầy và Trò.
5. Phƣơng pháp nghiên cứu
Tập trung tìm hiểu về công nghệ điện toán đám mây GAE cách lƣu trữ trên
GAE. Sử dụng ngôn ngữ Java và JSP đƣợc Google hỗ trợ để xây dựng ứng dụng
trên GAE. Nghiên cứu quá trình ứng dụng hệ thống chia sẻ file và dữ liệu phục vụ
công tác dạy và học trong trƣờng.

6. Cấu trúc luận văn
Ngoài mở đầu, kết luận và kiến nghị, nội dung chính của luận văn đƣợc trình
bày trong 3 chƣơng:
Chƣơng 1: Tổng quan điện toán đám mây
Chƣơng 2: Công nghệ App Engine của Google
Chƣơng 3: Phân tích thiết kế, xây dựng hệ thống chia sẻ file

10


CHƢƠNG 1: TỔNG QUAN ĐIỆN TOÁN ĐÁM MÂY
Điện toán đám mây (ĐTĐM) là các phát triển dựa vào mạng Internet sử dụng
các công nghệ máy tính. Kiểu điện toán trong đó những tài nguyên tính toán và lƣu
trữ đƣợc cung cấp nhƣ những dịch vụ trên mạng. Ngƣời dùng không cần biết hay có
kinh nghiệm điều khiển và vận hành những công nghệ này.
ĐTĐM bao gồm các thành phần chính sau:
Phần mềm hoạt động nhƣ dịch vụ (SaaS: Software as a Service)
Nền tảng nhƣ một dịch vụ (PaaS: Platform as a Service)
Cơ sở hạ tầng nhƣ một dịch vụ (IaaS: Infrastructure as a Service: IaaS) ….
Tùy theo việc ứng dụng ĐTĐM vào trong lĩnh vực nào mà các chức năng
SaaS, PaaS, IaaS . . . có thể thay đổi cho phù hợp với ứng dụng cụ thể đó. Do
khuôn khổ của luận văn có hạn nên trong chƣơng I tác giả chủ yếu tập trung trình
bày khái niệm cơ bản trong ĐTĐM, hệ thống giáo dục mới trên nền tảng đám mây,
phân tích các nhiệm vụ chính của các thành phần SaaS, PaaS, IaaS . . khi giáo dục
truyền thống chuyển sang giáo dục điện toán đám mây.
1.1. Một số khái niệm cơ bản trong kiến trúc điện toán đám mây
Kiến trúc đám mây gồm: Nền tảng đám mây (Cloud Platform), các dịch vụ
đám mây (Cloud Service), cơ sở hạ tầng đám mây (Cloud Infrastructure), lƣu trữ
đám mây (Cloud Storage).


Hình 1: Kiến trúc điện toán đám mây
11


Ngƣời sử dụng dịch vụ không sở hữu cơ sở hạ tầng mà chỉ phải trả phí (tiền)
cho những gì họ đã sử dụng. Việc chia sẻ giữa nhiều ngƣời cùng thuê sẽ giúp tận
dụng nguồn tài nguyên máy tính và giảm phí tổn.
Cấu trúc phân lớp :

Hình 2: Thành phần của điện toán đám mây
- Máy khách (Clients): Máy khách đám mây bao gồm phần cứng máy tính
và/hoặc phần mềm máy tính phụ thuộc vào ứng dụng đám mây để phân phối ứng
dụng hoặc đƣợc thiết kế riêng để phân phối các dịch vụ đám mây.Ví dụ: thiết bị di
động.
- Dịch vụ (Services): Một dịch vụ đám mây bao gồm “sản phẩm, dịch vụ, giải
pháp” , là hệ thống phần mềm đƣợc thiết kế để hỗ trợ tƣơng tác giữa các máy trong
mạng, dịch vụ này có thể đƣợc truy cập bởi các thành phần của điện toán đám mây
khác, các phần mềm hoặc bởi ngƣời dùng cuối.
- Ứng dụng (Application): Không cần phải cài đặt và chạy ứng dụng trên
chính máy tính của khách hàng, do đó giảm bớt gánh nặng của việc duy trì, điều
hành và hỗ trợ. Ví dụ: máy tính đồng đẳng, ứng dụng web, phần mềm hoạt động
nhƣ dịch vụ.
- Nền tảng (Platform) : Nền tảng đám mây là sự phân phối các nền tảng điện

12


toán, và / hoặc các giải pháp nhƣ là dịch vụ, triển khai các ứng dụng không tốn tiền
hoặc không gặp rắc rối do mua phần cứng, phần mềm. Ví dụ: Khung ứng dụng
web...

- Lƣu trữ (Storage): Lƣu trữ đám mây gồm việc phân phối các dịch vụ lƣu trữ
dữ liệu, các dịch vụ cơ sở dữ liệu: Cơ sở dữ liệu, dịch vụ web.
- Cơ sở hạ tầng (Infrastructure): Cơ sở hạ tầng đám mây là sự phân phối các
cơ sở hạ tầng máy tính nhƣ là dịch vụ, điển hình nhƣ môi trƣờng ảo. Ví dụ: điện
toán lƣới.
1.2. Kiến trúc mô hình giáo dục là dịch vụ (EaaS)
1.2.1. Chức năng chính trong kiến trúc EaaS
EaaS (Education as a Service) cung cấp các dịch vụ nâng cao để biến một môi
trƣờng điện toán đám mây trong khuôn viên trƣờng học thành những đám mây riêng
cung cấp phƣơng pháp l tƣởng để giải quyết những thách thức của các tổ chức giáo
dục lớn nhất. Một đám mây riêng có thể cung cấp EaaS giúp giảm chi phí, đạt đến
cấp độ mới về hiệu quả và sáng tạo nên mô hình giáo dục mới.
EaaS là một giải pháp điện toán đám mây đƣợc thiết kế đặc biệt cho giáo dục.
Nó giúp giáo viên xây dựng kế hoạch bài học và cho phép sinh viên chia sẻ một
máy chủ duy nhất có bàn phím nhiều chiều (bàn phím ảo, nhiều ngƣời cùng sử dụng
máy chủ nhờ các bàn phím khác nhau). Nó cho phép các nhà giáo dục và học sinh
truy cập các tập tin và ứng dụng của họ từ bất kỳ máy tính nào thông qua một máy
tính ảo để bàn. Nó kết hợp cơ sở hạ tầng, phần mềm và các công cụ phát triển
chuyên nghiệp để thiết kế đặc biệt cho giáo dục, để giúp giáo dục giảng dạy bằng
các phƣơng tiện điện tử.
EaaS lƣu trữ các chƣơng trình nội dung giảng dạy cho các đối tƣợng bằng
cách lƣu trữ dữ liệu trong một đám mây riêng và cho phép giáo viên và học sinh
truy cập bất cứ nơi nào, bất cứ lúc nào.
1.2.2. Các dịch vụ trong kiến trúc EaaS
Các dịch vụ Xaas cụ thể đƣợc cung cấp bởi EaaS bao gồm (Hình 3):
IaaS ( Infrastructure as a Service ): Cơ sở hạ tầng nhƣ một dịch vụ (IaaS)

13



cho phép ngƣời sử dụng thuê máy chủ và lƣu trữ dữ liệu bằng cách trả tiền dịch vụ.
Dịch vụ này giúp các tổ chức giáo dục tiết kiệm hàng triệu đô la. Cơ sở hạ tầng nhƣ
một dịch vụ là một mô hình cung cấp, trong đó tổ chức giáo dục thuê ngoài các thiết
bị sử dụng để hỗ trợ học tập, bao gồm lƣu trữ, phần cứng, máy chủ và các thành
phần mạng. Các nhà cung cấp dịch vụ sở hữu thiết bị và chịu trách nhiệm vận hành
máy và duy trì nó. Khách hàng thƣờng trả tiền trên cơ sở mỗi lần sử dụng.
SaaS (Software as a Service): Phần mềm nhƣ một dịch vụ (SaaS) là một mô
hình mới, trong đó phần mềm đƣợc phân phát cho ngƣời sử dụng dịch vụ. SaaS
phân phát các phần mềm thiết yếu cho các phòng thí nghiệm máy tính và các tài liệu
giảng dạy bằng cách truy cập thông qua một trình duyệt web và đƣợc trả tiền trên cơ
sở thuê bao (hàng tháng hoặc hàng năm). Theo mô hình giáo dục truyền thống, các
cơ sở giáo dục mua một giấy phép phần mềm và xác lập quyền sở hữu để bảo trì và
cài đặt nó. SaaS có lợi thế ở chỗ là các cơ sở giáo dục chỉ phải trả dịch vụ mà
không phải mua bản quyền. SaaS nhanh và chi phí hiệu quả hơn khi thực hiện, vì
cơ sở giáo dục không phải chi phí mua phần cứng, đó là trách nhiệm của các nhà
cung cấp. SaaS sẽ quản lý và chạy các ứng dụng với độ tin cậy và bảo mật tối đa.
Khi khách hàng phải trả một thuê bao, họ có thể truy cập ngay lập tức với tính năng
mới. Không giống nhƣ các phần mềm truyền thống phải nâng cấp một lần một năm
(các nhà cung cấp phần mềm phải đến cơ sở giáo dục nâng cấp), còn các nhà cung
cấp SaaS liên tục cập nhật mới, sửa lỗi cho các ứng dụng ngay lập tức khi khách
hàng truy cập.
PaaS (Platform as a Service): Nền tảng nhƣ một dịch vụ (PaaS), là một phiên
bản của SaaS, điện toán đám mây cung cấp môi trƣờng phát triển nhƣ một dịch vụ.
Học sinh / Giáo viên có thể xây dựng các ứng dụng riêng của họ chạy trên cơ sở hạ
tầng của nhà cung cấp và đƣợc chuyển giao cho họ thông qua Internet từ các máy
chủ của nhà cung cấp
AaaS (Application as a Service ): Ứng dụng nhƣ là một dịch vụ (AaaS), là
một phiên bản SaaS khác, khi điện toán đám mây có thể đƣợc sử dụng trong kiểm
tra kết quả học tập của học sinh. Theo cách tiến hành kiểm tra truyền thống, câu


14


hỏi đƣợc gửi qua email. Sử dụng điện toán đám mây, câu hỏi đƣợc lƣu trữ trong
các đám mây trung cấp riêng và các trƣờng thành viên có thể đƣợc ủy quyền để
truy cập vào câu hỏi duy nhất vào một ngày cụ thể ở bất cứ nơi nào, bất cứ lúc nào.
Kỳ thi tuyển sinh trực tuyến cũng có thể đƣợc thực hiện mà không cần cài đặt ứng
dụng / phần mềm theo yêu cầu. Các phần mềm để tiến hành kiểm tra đƣợc lƣu trữ
trong máy chủ của nhà cung cấp và các học sinh truy cập vào câu hỏi từ hệ thống
khách hàng, trả lời các câu hỏi, câu trả lời đƣợc lƣu trữ đến máy chủ của nhà cung
cấp. Xem kết quả cũng có thể đƣợc thực hiện bằng cách truy cập trực tiếp vào máy
chủ của nhà cung cấp mà không cần phải lƣu trữ nó trong máy tính riêng của
trƣờng. Biện pháp này cho phép chúng ta giảm thiểu sơ suất trong các kỳ thi

Hình 3: Kiến trúc của EaaS
Application. Trong phần Application trên hình 3 của kiến trúc EaaS gồm:
• Student/Faculty Profile: Sinh viên/Thông tin Khoa viện. Các thuộc tính và
thông tin mô tả một sinh viên / khoa, chẳng hạn nhƣ tên, địa chỉ e-mail v.v...
15


• Virtual Class rooms : Các lớp học ảo. Giáo viên có thể tạo ra lớp học ảo
trong đó giáo viên và học sinh có thể đƣợc học ngoài lớp học.
• Student/Faculty Collaboration tools: Công cụ hợp tác, Giảng viên và sinh
viên có thể tƣơng tác với nhau bằng cách sử dụng các công cụ hợp tác nhƣ nhắn
tin...
• Meta Data Services: Siêu dữ liệu dịch vụ. Cho biết thông tin về dữ liệu nào
đƣợc lƣu giữ và biểu diễn trong ứng dụng và nội dung đƣợc tổ chức ra sao.
• Monitoring and Alerting: Giám sát và cảnh báo. Thành phần ứng dụng, dịch
vụ và cơ sở hạ tầng để phát hiện các lỗi. Phát hiện, cảnh báo đƣợc gửi đến nhóm hỗ

trợ thích hợp.
• Performance and Availability: Hiệu suất và tính sẵn sàng. Hiệu suất mô tả
cách thức ứng dụng thực hiện theo tải trọng, cả về số lƣợng ngƣời sử dụng và khối
lƣợng giao dịch. Đây là một biện pháp ứng dụng có sẵn cho ngƣời dùng và đƣợc
biểu diễn nhƣ là một tỷ lệ phần trăm.
1.2.3. Nhiệm vụ mới của các thành viên khi chuyển giáo dục truyền thống
sang giáo dục đám mây
Nhân viên - Sử dụng một máy chủ đám mây dựa trên hệ thống phân phối quản
lý khối lƣợng công việc, nhân viên có thể đƣợc cân đối trên toàn bộ Hệ thống giáo
dục.
Giáo viên - Thiết lập các lớp học ảo để xử lý công việc lớp học nhỏ hơn hoặc
mở rộng khi giáo viên phải đảm nhận.
Sinh viên, học sinh - Sử dụng học tập điện toán đám mây để làm bài tập, cho
phép học sinh cộng tác với một phạm vi rộng lớn. Các sinh viên có thể làm việc trên
đám mây, hợp tác với các thành viên trong nhóm và chia sẻ kiến thức. Khi họ ở trên
đám mây, họ có thể truy cập chúng bất cứ nơi nào, có thể là nhà hoặc trƣờng học.
Các trường đại học, cao đẳng và trung cấp cho phép sinh viên có quyền truy
cập vào các ứng dụng kỹ thuật phức tạp (trƣớc đây chỉ dành cho các trƣờng Đại học
và cao đẳng) thông qua một hệ thống chia sẻ của các máy chủ đám mây.
1.3. Các sản phẩm khoa học đã công bố về ứng dụng điện toán đám mây

16


trong lĩnh vực giáo dục:
1.3.1. Cloud-based storage (Lƣu trữ dựa trên đám mây)
Dựa trên sử dụng lƣu trữ đám mây để tạo điều kiện thuận lợi cho sự hợp tác
giữa học sinh bằng cách cho phép họ làm việc cùng nhau trên cùng một tài liệu. Ví
dụ một số nhà cung cấp chức năng này :
/>

/>
1.3.3. Software as a Service (SaaS) : Phần mềm hoạt động nhƣ dịch vụ
Ngƣời sử dụng truy cập các ứng dụng và dữ liệu liên quan trực tiếp từ các đám
mây mà không cần cài đặt trên máy tính của họ bằng cách sử dụng nhƣ một khách
hàng để trình duyệt web trên Internet. SaaS giải quyết nhiều vấn đề tƣơng thích,
giảm chi phí của các trƣờng đại học, hay cao đẳng, cũng nhƣ trung cấp và có thể
truy cập bất cứ nơi nào bất cứ lúc nào. Một số ví dụ của việc sử dụng SaaS trong
các giáo dục dựa trên Google Apps - Education Edition :
Trang đã giới thiệu
lợi ích chính thu đƣợc từ việc sử dụng phƣơng pháp này.
Dự án trên là một ví dụ khác hiện đang đƣợc sử
dụng trong Khoa Thông tin - Đại học Cairo để quản lý một số dự án tốt nghiệp.
1.3.4. Platform as a Service (PaaS) : Nền tảng nhƣ một dịch vụ
Ngƣời dùng đƣợc cung cấp bởi môi trƣờng để chạy/kiểm tra các thành phần
phần mềm của họ ở nơi mà tất cả các phần mềm cần thiết phục vụ mục đích của
ngƣời sử dụng đã đƣợc cài đặt và định dạng.Ví dụ:
Microsoft Azure ( />
17


& Google App Engine ( />Mô hình dịch vụ này mang lại lợi ích cho học sinh và giáo viên khoa học máy
tính, vì không cần phải dành nhiều thời gian thiết lập môi trƣờng phát triển.
Những học sinh có nhu cầu truy cập vào nền tảng có giấy phép (MATLAB,
SPSS) nhƣng chỉ có các máy tính trong khuôn viên của trƣờng cũng có thể hƣởng
lợi từ mô hình dịch vụ này bằng cách truy cập vào nền tảng đám mây từ bất cứ nơi
nào.
Ví dụ: Một số công trình nghiên cứu trong lĩnh vực này :
Luis M. Vaquero, "EduCloud: PaaS so với sử dụng IaaS cho một khóa học
khoa học máy tính nâng cao" IEEE giao dịch về giáo dục, DOI:
10.1109/TE.2010.2100097, .

Frank Doelitzscher,: Anthony Sulistio, Christoph Reich, Hendrik Kuijs, và
David Wolf. "Private Cloud Dịch vụ Hợp tác và e-Learning: IaaS & SaaS." vol. 91,
tập 1, trang 23-42. , Tháng 1 năm 2011.
Mladen Vouk, et al " - Sử dụng phòng thí nghiệm máy tính ảo (VCL) trong
công nghệ điện toán đám mây". Kỷ yếu Hội nghị quốc tế lần thứ 2 về Sáng kiến
máy tính ảo. Bắc Carolina, Hoa Kỳ, trang 1-10, 16-17 tháng 5 năm 2008
1.3.5. Google Apps cho dạy học trực tuyến
Trƣờng Đại học Sƣ phạm kỹ thuật Thành phố HCM đã thành lập Trung tâm
dạy học số, ứng dụng Google Apps cho dạy học trực tuyến, với Google Classroom
làm công cụ quản lý lớp học trực tuyến tại địa chỉ .

/>1.4. Mô hình kiến trúc điện toán đám mây trong giáo dục
1.4.1 Lý do phải xây dựng hệ thống giáo dục trên nền tảng điện toán đám
mây
Năm yếu tố liên quan đƣợc hiển thị trong hình 4 để hỗ trợ chuyển đổi giáo dục
(education transformation) thành công trên toàn thế giới là :
- Policy (chính sách)
18


- Curriculum & Assessment (chƣơng trình giảng dạy)
- Professional Development (phát triển nghề )
- Information Communications Technology (ICT)
- Research & Evaluation (nghiên cứu & đánh giá)
Năm yếu tố này giúp tạo ra những cải thiện bền vững trong giáo dục - giúp
sinh viên cơ hội tốt nhất có thể để phát triển toàn diện trong nền kinh tế toàn cầu.

Hình 4: Năm thành phần biến đổi Giáo dục
Điện toán đám mây sẽ hỗ trợ tốt thực hiện 5 yếu tố trên để hệ thống giáo dục
thế giới chuyển sang giáo dục điện toán đám mây vì l do sau :

1. Phần mềm đám mây dễ sử dụng.
Hầu hết các nhà cung cấp đảm bảo rằng phần mềm đám mây mới sẽ giúp
khách hàng có thể sử dụng đƣợc ngay mà không cần phải nghiên cứu tìm hiểu
nhiều. Điều này có nghĩa là khách hàng không mất thời gian học tập các thủ thuật
phần mềm mới và có thể tập trung vào việc sử dụng phần mềm ngay.
2. Nhanh chóng sử dụng ngay.
Các ứng dụng dựa trên sản phẩm đám mây đƣợc thiết lập rất nhanh. Để truy
cập vào các ứng dụng nhƣ vậy, khách hàng cần phải đăng k để có đƣợc một tài
khoản và có thể làm việc với nó trong một vài phút.

19


3. Sinh viên cộng tác tốt hơn.
Các chƣơng trình điện toán đám mây tạo điều kiện thuận lợi để chia sẻ tập tin
với nhiều tác giả. Các sinh viên có thể dễ dàng trao đổi các tập tin với nhau và mời
các đồng nghiệp của họ làm việc cùng một tài liệu trên mây.
4. Mở rộng chương trình giảng dạy ở bất cứ đâu và bất cứ lúc nào
Các tập tin học tập và phần mềm đƣợc lƣu trữ trên internet, có nghĩa là họ
luôn luôn có sẵn cho ngƣời học bất cứ lúc nào, ngày cũng nhƣ đêm. Điều này mang
lại cho ngƣời học quyền lựa chọn là khi nào họ nghiên cứu và giáo viên có thể làm
việc hiệu quả tại nhà giống nhƣ khi họ làm việc ở trƣờng.
5. Đầu tư tối thiểu cho các nguồn lực
Không cần đầu tƣ phần cứng và cơ sở giáo dục không phải cài đặt phần mềm
trên máy tính của mình. Kết quả là các tổ chức giáo dục có thể giảm thời gian và
tiền bạc.
6. Khả năng mở rộng
Thêm nhiều ngƣời dùng nhanh chóng và đơn giản.
7. Chi phí bảo trì thấp
Nhà cung cấp duy trì phần mềm và luôn cập nhật công nghệ mới nhất, khách

hàng không phải lo lắng mất thời gian bảo trì mà phần mềm vẫn hoạt động tốt và
khách hàng luôn luôn làm việc với phiên bản mới nhất.
8. Lưu trữ dữ liệu rẻ
Điện toán đám mây cho phép cơ sở giáo dục tránh đƣợc chi phí do nhà cung
cấp dịch vụ đã giúp cơ sở giáo dục lƣu trữ dữ liệu trên máy chủ đám mây.
9. Bảo mật và đáng tin cậy
Trong các hệ thống giáo dục cần giải pháp bảo mật cho các tập tin tải lên
mạng và quản l thông qua các đám mây. Dữ liệu đƣợc bảo mật với các tùy chọn
sao cho truy cập nhanh chóng dễ dàng, tập tin cần đƣợc sao lƣu hàng đêm. Cơ sở
giáo dục có thể lấy lại tất cả các file của mình trên đám mây trong trƣờng hợp có sự
thay đổi nhà cung cấp hoặc để đƣa dữ liệu về máy riêng. Nhà cung cấp có thể dùng
“kho” lƣu trữ phụ trên nhiều thiết bị để lƣu trữ các tập tin của khách hàng. Mức độ

20


bảo mật dữ liệu phải lớn hơn khi thực hiện lƣu trữ theo phƣơng pháp truyền thống.
10. Hệ cộng tác
Điện toán đám mây cho phép cộng tác giữa những ngƣời sử dụng để tăng
cƣờng và mở rộng quá trình học tập. Học sinh rèn luyện và phát triển các kỹ năng
hợp tác an toàn trong một hệ thống truyền thông trực tuyến đƣợc tích hợp vào máy
tính để bàn. Phƣơng tiện Chat đã có sẵn trên mọi thiết bị, cho phép ngƣời dùng kết
nối trong thời gian thực. Quản trị viên có thể cho phép trao đổi giữa học sinh-sinh
viên, giáo viên-giáo viên, học sinh-giáo viên, hoặc một nhóm ngƣời. Video chat
cho phép chƣơng trình phát theo kiểu one-to-one hoặc one-to-many, với màn hình
chia sẻ, bảng trắng tƣơng tác, và công cụ viết hỗ trợ dạy kèm trực tuyến.
Tóm lại, điện toán đám mây về cơ bản là phƣơng pháp để cơ sở giáo dục hoạt
động hiệu quả mà không tốn kém nhiều so với giáo dục truyền thống. Hệ thống
giáo dục trên nền tảng điện toán đám mây thực chất là giáo dục nhƣ một dịch vụ
EaaS (Education as a Service). Các phần mềm và nền tảng trong giáo dục đƣợc tạo

ra tùy thuộc vào nhu cầu của cơ sở giáo dục. EaaS cung cấp những phần mềm tiên
tiến, giúp sinh viên, các nhà nghiên cứu, giảng viên tại các trƣờng học khai thác sử
dụng. Theo quan điểm của ngƣời sử dụng, đám mây có thể cung cấp các dịch vụ có
sẵn cho ngƣời sử dụng cho dù ngƣời dùng không biết nguồn gốc dịch vụ. Eaas
cung cấp một môi trƣờng giáo dục ảo hóa làm dịch vụ.
1.4.2. Mô hình kiến trúc điện toán đám mây trong giáo dục

Hình 5a

Hình 5b

Hình 5: Kiến trúc điện toán đám mây trong giáo dục

21


Chú thích trên hình vẽ: Researcher: nghiên cứu viên; Processer: xử lý;
Software : phần mềm; Infrastructure : hạ tầng ; Private cloud : đám mây riêng ;
Educational cloud : đám mây giáo dục
Thiết lập kiến trúc đám mây riêng cho một cơ sở giáo dục nào tuỳ thuộc
vào mục đích sử dụng và các nguồn tài nguyên hiện có của cơ sở giáo dục đó.
Nguồn tài nguyên hiện có trong cơ sở giáo dục có thể đƣợc ảo hóa để cung cấp
một cách linh hoạt các dịch vụ trừu tƣợng nhƣ IaaS, PaaS. Hình 5a cho thấy kiến
trúc của đám mây giáo dục. Cơ sở giáo dục có thể xây dựng các đám mây riêng
trên hạ tầng tài nguyên hiện có. Sau đó các trƣờng học hợp tác để xây dựng một
đám mây lai nhằm kết hợp tài nguyên với nhau (hình 5b). Vì thế các nguồn tài
nguyên đƣợc kết hợp ngày càng gia tăng, phong phú, dễ dàng linh hoạt xây dựng
và hỗ trợ điện toán đám mây cho các ứng dụng trong giáo dục. Trong trƣờng hợp
thứ nhất (hình 5a) sử dụng mạng cục bộ (LAN) để truy cập vào dịch vụ đám
mây, trƣờng hợp hai (hình 5b) thƣờng sử dụng mạng công cộng (Internet) để truy

cập vào dịch vụ đám mây. Trong đám mây giáo dục, các nguồn tài nguyên cần
thiết cho hỗ trợ điện toán đám mây cũng có thể đƣợc phân phối thông qua các
trƣờng hoặc các tổ chức khác nhau.
Mỗi đám mây riêng đƣợc xây dựng sẽ giúp cơ sở giáo dục xác định các dịch
vụ do mình đƣợc cung cấp - “thỏa thuận mức dịch vụ” . Vì vậy, “thỏa thuận mức
dịch vụ” là một trong những sở cứ đảm bảo ngƣời sử dụng điện toán đám mây
giáo dục gắn kết với các dịch vụ đƣợc cung cấp từ các đám mây và chuẩn hóa các
dịch vụ này ngay ở giai đoạn ban đầu. “Thỏa thuận mức dịch vụ” giúp xác định
nhu cầu của ngƣời sử dụng, đơn giản hoá vấn đề phức tạp, mở đƣờng giải quyết
các tranh chấp của ngƣời sử dụng dịch vụ đám mây.
Các nguồn tài nguyên, dữ liệu của các cơ sở giáo dục có thể ảo hóa để giải
quyết bài toán sử dụng tài nguyên sẵn có sao cho hiệu quả hơn. Nhờ ảo hóa, một
máy chủ có thể tạo ra nhiều máy ảo đƣợc sử dụng nhƣ máy chuẩn. Thực hiện
nguồn mở không chỉ cung cấp cho ngƣời dùng sự linh hoạt để thử nghiệm với các
22


công nghệ cao cấp hiện có, mà còn cung cấp cơ hội để điều chỉnh các nhu cầu cụ
thể của ngƣời sử dụng
Kết luận chƣơng 1
Kiến trúc ĐTĐM rất phức tạp, vì vậy trong chƣơng I, luận văn chủ yếu trình
bày những khái niệm cơ bản nhất của kiến trúc ĐTĐM. Sau đó tập trung nghiên cứu
kiến trúc mô hình giáo dục là dịch vụ (EaaS) và mô hình ĐTĐM trong giáo dục.
Khi triển khai ĐTĐM trong lĩnh vực giáo dục, các tổ chức giáo dục (trƣờng học,
trƣờng trung cấp, trƣờng cao đẳng hoặc đại học) có nhiều thuận lợi : Học sinh/Giáo
viên sẽ có thông tin liên lạc nhanh chóng và hiệu quả với bất cứ lúc nào truy cập bất
cứ nơi nào.
Trong chƣơng tiếp theo tác giả chỉ giới hạn nghiên cứu và ứng dụng PaaS, mà
cụ thể nghiên cứu công cụ Google App Engine và ứng dụng trong chia sẻ thông tin.


23


CHƢƠNG 2: CÔNG NGHỆ APPENGINE CỦA GOOGLE
Chƣơng 1 đã giới thiệu Platform as a Service (PaaS) : nền tảng nhƣ một dịch
vụ, với 2 công cụ là : Microsoft Azure & Google App Engine. Trong chƣơng này
sẽ tập trung trình bày công cụ google appengine, các ứng dụng, cách up download,
cách thức giao tiếp của google appEngine.
2.1. Tổng quan về Google App Engine
Trong số các dịch vụ nền tảng của PaaS thì Google App Engine đƣợc đánh giá
là dịch vụ có tính ƣu việt nhất. App Engine dễ xây dựng và có thể mở rộng quy mô,
mở rộng lƣu lƣợng truy cập cũng nhƣ lƣu trữ dữ liệu theo nhu cầu của ngƣời sử
dụng. Ngƣời sử dụng App Engine có thể duy trì hoạt động mà không cần có máy
chủ.
Google App Engine, gọi tắt là GAE (3 chữ cái G-A- E của Google App
Engine) có chức năng truy cập trên các trang web, xử l

dữ liệu, xử l

hình ảnh,

cũng có thể cho phép nhiều cá nhân sử dụng cùng một thời gian.
Ƣu điểm của GAE :
- Khi cần khai thác dữ liệu, ngƣời sử dụng chỉ nộp tiền cho những khoản mà
họ yêu cầu cần truy cập, đơn vị tính dịch vụ là gigabyte và họ không phải chi phí
tiền khi muốn đổi hình thức trang web.
- Ngƣời lập lập trình viên đƣợc sử dụng khoảng 500 MB miễn phí để lƣu trữ
dữ liệu.
Hình 6, trình bày kiến trúc GAE khi trao đổi dữ liệu giữa các ứng dụng
nhƣng bảo đảm an toàn thông tin của nhau. Ngƣời dùng có thể sử dụng các dịch vụ

URLFetch của Google. Do không thể mở cổng (port) một cách trực tiếp nên ngƣời
sử dụng phải khai thác dịch vụ URLFetch này.
Có thể so sánh GAE với một hệ thống làm lạnh trong lớp học có nhiều sinh
viên. Vì nhiều l do nào đó, sinh viên không thể điều khiển để thay đổi nhiệt độ
phòng học, khi đó họ sẽ gửi đến trung tâm quản l hệ thống lạnh yêu cầu điều
chỉnh nhiệt độ phòng học. Tức là sử dụng các dịch vụ của GAE nhƣ URLFetch,

24


Bigtable query, Memcache, mail, XMPP, và các dịch vụ khác. Đó chính là bản chất
những gì đang xảy ra trong App Engine.

Hình 6. Sơ đồ kiến trúc hoạt động của GAE
2.2. Các chức năng của Google App Engine
2.2.1. Kho dữ liệu (Datastore)
Các ứng dụng của web phải có chỗ để lƣu giữ thông tin trong quá trình
xử lý yêu cầu từ client và nhận thông tin cho những lần yêu cầu khác. Kho dữ liệu
của GAE có thể lƣu trữ số lƣợng lớn các ứng dụng web. Ứng dụng này sẽ tạo ra
những thực thể (entity) và dữ liệu của nó đƣợc lƣu giữ trong mỗi thực thể.
GAE cung cấp 2 sự lựa chọn về kho dữ liệu :
- Kho dữ liệu Master/Slave : 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 . Ở mọi thời điểm nào cũng chỉ có 1 trung tâm dữ liệu là chủ
(Master).
- Kho dữ liệu High Replication : Cung cấp tính sẵn sàng cho việc đọc và ghi
dữ liệu rất cao, gấp 3 lần so với tùy chọn Master/Slave.

25



×