TÌM HIỂU NỀN TẢNG SAP HANA VÀ PHÁT TRIỂN ỨNG DỤNG MINH HỌA - Pdf 23

ĐẠI HỌC QUỐC GIA TP.HCM
TRƯỜNG ĐẠI HỌC KINH TẾ LUẬT
KHOA HỆ THỐNG THÔNG TIN

THỰC TẬP TỐT NGHIỆP
CHUYÊN NGÀNH HỆ THỐNG THÔNG TIN QUẢN LÝ

TÌM HIỂU NỀN TẢNG SAP HANA VÀ
PHÁT TRIỂN ỨNG DỤNG MINH HỌA

Đơn vị thực tập:
Công ty TNHH SAP Asia (Vietnam)

Giáo viên hướng dẫn:
ThS. Trương Hoài Phan

Sinh viên thực hiện:
Võ Đức Huy (K104060963)

Thành phố Hồ Chí Minh, Khóa 10, Năm 2014

LỜI CẢM ƠN
Sau một khoảng thời gian dài, gần 4 năm được đào tạo và trải qua nhiều hoạt động tại
trường Đại học Kinh tế - Luật, ĐHQG Tp. HCM, chúng em đã được thầy cô truyền đạt
và rèn luyện cho rất nhiều kiến thức, nhiều kỹ năng để có đủ một hành trang vững chắc
cho con đường vào đời đầy gian truân và trắc trở. Từ những kinh nghiệm tích lũy được
trong thực tế, thầy cô đã không ngần ngại chia sẽ tất cả với chúng em. Đáp lại những
công ơn to lớn đó, chúng em sẽ tự tin nắm bắt những điều quý báu này và biến chúng


VÕ ĐỨC HUY
MỤC LỤC
DANH MỤC HÌNH ẢNH 6
DANH MỤC TỪ VIẾT TẮT 7
CHƯƠNG 1: TỔNG QUAN ĐỀ TÀI 8
1.1 Lý do chọn đề tài 8
1.2 Mục tiêu đề tài 10
1.3 Đối tượng và phạm vi nghiên cứu 10
1.4 Phương pháp nghiên cứu 10
1.4.1 Đối chiếu – so sánh 10
1.4.2 Chuyên gia 10
1.4.3 Khảo sát thực tế 11
1.5 Công cụ nghiên cứu 11
1.6 Thuận lợi và khó khăn 11
1.7 Cấu trúc báo cáo 12
CHƯƠNG 2: KHẢO SÁT HIỆN TRẠNG 13
2.1 Giới thiệu tổ chức 13
2.2 Mô tả quá trình thực tập 14
CHƯƠNG 3: CƠ SỞ LÝ LUẬN 15
3.1 In-Memory Computing 15


DANH MỤC HÌNH ẢNH
STT
TÊN HÌNH
TRANG
1
Hình 1.1. Tình trạng dữ liệu phát sinh trong doanh nghiệp
8
2
Hình 3.1. SAPUI5 trên máy tính và các thiết bị di động
15
3
Hình 4.1. SAP HANA In-memory database
18
4
Hình 4.2. Bảng dữ liệu
19
5
Hình 4.3. Lưu trữ theo cột
19
6
Hình 4.4. Lưu trữ theo dòng
20
7
Hình 4.5. Xử lý song song
21
8
Hình 4.6. Mô hình MVC ở những ứng dụng thông thường
22
9

Hình 5.4. Usecase của đối tượng User
35
19
Hình 5.5. Sơ đồ trình tự của user
37
20
Hình 5.6. Usecase của đối tượng quản trị
38
21
Hình 5.7. Sơ đồ trình tự của quản trị ứng dụng
40
22
Hình 5.8. Câu lệnh tạo bảng users
41
23
Hình 5.9. Bảng Users đã được tạo
42
24
Hình 5.10. Câu lệnh tạo bảng Historyplayer
43
25
Hình 5.11. Bảng HistoryPlayer đã được tạo
44
26
Hình 5.12. Câu lệnh tạo sequence
44
27
Hình 5.13. Trang login
45
28

Ý NGHĨA
1
ADBC
Acrobat Database Connectivity
2
CPU
Central Processing Unit
3
CSS
Cascading Style Sheets
4
DBMS
Database Management System
5
HTML
HyperText Markup Language
6
HTTP
HyperText Transfer Protocol
7
JDBC
Java Database Connectivity
8
MVC
Model-View-Controller
9
ODBC
Open Database Connectivity
10
RIA

tảng hoàn toàn mới đó là SAP HANA. Với những tính năng vượt trội có thể giải quyết
được các yêu cầu lớn mà doanh nghiệp đang gặp phải thì SAP HANA là một lựa chọn
mà các nhà phát triển ứng dụng lớn đang nhắm tới. Điều này, đã làm cho SAP HANA
có được nhiều sự quan tâm, đáng để trở thành một đề tài để nghiên cứu và ứng dụng.
Với những kiến thức căn bản được trang bị cùng với mong muốn được làm việc trong
lĩnh vực phát triển phần mềm và có một môi trường thử thách để hoàn thiện nên tôi lấy
SAP HANA làm một đối tượng nghiên cứu và từng bước tiếp cận nền tảng tiên tiến này.
Bằng việc đi từ những khái niệm cơ bản và phát triển những ứng dụng đơn giản, tôi có
thể tìm hiểu sâu hơn và có thể ứng dụng vào các mục đích phát triển thật sự mang lại
hiệu quả cao cho các doanh nghiệp mong muốn.
1.2 Mục tiêu đề tài
Tìm hiểu và có thể trình bày về một nền tảng mới với nhiều cải tiến, tính năng hỗ trợ cho
việc phát triển các ứng dụng xử lý và lưu trữ lượng dữ liệu rất lớn.
Vận dụng các kiến thức tìm hiểu được và các kiến thức được trang bị trong chương trình
học vào việc phát triển một ứng dụng đơn giản để tiếp cận và làm quen với một công
nghệ hiện đại. Trong đó công nghệ In-memory computing được đánh giá rất cao trong
xu hướng phát triển ứng dụng hiện nay.
1.3 Đối tượng và phạm vi nghiên cứu
Đối tượng nghiên cứu của đề tài là nền tảng SAP HANA. Sử dụng các kiến thức cơ bản
về XS Engine và SAP UI5 để phát triển một ứng dụng đơn giản.
Phạm vi nghiên cứu và xây dựng ứng dụng là chỉ dừng lại ở native SAP HANA
Application.
1.4 Phương pháp nghiên cứu
1.4.1 Đối chiếu – so sánh
Tìm hiểu một cấu trúc nền tảng mới, một công nghệ hiện đại. Cần có sự đối chiếu giữ
các tính năng, công dụng, của các thành phần trong hệ thống với các hệ thống tương tự.
Đồng thời cần có sự so sánh để thấy được lợi ích và hạn chế của hệ thống đang nghiên
cứu với các hệ thống, công cụ khác.
Về phát triển ứng dụng minh họa cần có sự so sánh với ứng dụng đã có trong thực tế để
từ đó rút ra được các cải tiến cần có hay phát triển và duy trì các tính năng đã làm tốt

và tiếp cận tốt với các ví dụ/demo. Có kiến thức để giao tiếp và trao đổi với các chuyên
gia, người hướng dẫn để nhờ sự giúp đỡ và tiếp thu từ sự giúp đỡ.
Khó khăn:
 Các kiến thức được học chỉ mang tính tổng quát và dàn trải. Để áp dụng vào thực
tế cần mất thời gian nâng cao kiến thức.
 Ngoại ngữ về vốn từ chuyên ngành còn nhiều thiết sót. Khó khăn trong việc dịch
thuật và hiểu sai nghĩa các từ ngữ chuyên ngành.
1.7 Cấu trúc báo cáo
Chương 1. Tổng quan đề tài
Trình bày lý do chọn đề tài và mục tiêu đặt ra. Xác định đối tượng nghiên cứu và phạm
vi nghiên cứu. Các phương pháp được sử dụng để nghiên cứu và thực hiện đề tài. Những
thuận lợi và khó khăn trong quá trình vận dụng các công cụ nghiên cứu.
Chương 2. Khảo sát hiện trạng
Giới thiệu về công ty SAP và SAP Asia (Vietnam). Đồng thời mô tả về vị trí thực tập
Chương 3. Cơ sở lý luận
Trình bày về công nghệ tính toán bộ nhớ trong in-memory computing
Trình bày về SAPUI5 là thư viện do SAP phát triển để xây dựng giao diện ở client.
Chương 4. SAP HANA Platform
Giới thiệu về nền tảng mới. Và trình bày tổng quát về kiến trức và các thành phần của
SAP HANA như:
 SAP HANA In-Memory Database: về kỹ thuật lưu trữ và xử lý song song.
 SAP HANA Extended Application Services: Dịch vụ tích hợp trong SAP HANA
là dịch vụ đóng vai trò như một máy chủ tích hợp
 SAP HANA-Based Applications
 Developer Scenarios: gồm có Native Application Development và Non- native
Application Development
Chương 5. Ứng dụng minh họa
Lý do chọn đề tài làm minh họa và các thuật toán để giải quyết bài toán
Bước phân tích ứng dụng và xây dựng database
Xây dựng giao diện và lập trình ứng dụng

 Giấy phép kinh doanh: 411043001686 | Ngày cấp: 15/08/2011.
 Mã số thuế: 0311183701.
 Ngày hoạt động: 01/10/2011.
 Hoạt động chính: Thiết kế và phát triển phần mềm.
 Điện thoại: +84 8 62886036.
2.2 Mô tả quá trình thực tập
Được thực tập ở vị trí lập trình viên. Lập trình trên nền tảng SAP HANA. Trong quá
trình thực tập thực hiện việc nghiên cứu và tìm hiểu nền tảng mới từ đó có ứng dụng
những kiến thức có được và các kiến thức đang tìm hiểu để xây dựng một ứng dụng
minh họa.
Trong quá trình phát triển ứng dụng minh họa được làm việc nhóm. Nhóm gồm 2 thành
viên đều là thực tập sinh. Nhiệm vụ trong nhóm:
 Viết mã lệnh giải ô Sudoku bằng thuật toán sudoku Backtracking
 Viết các hàm xáo trộn để tạo ra một o sudoku ngẫu nhiên
 Xây dựng cơ sở dữ liệu, phân quyền
 Xây dựng trang dành cho quản trị viên gồm trang quản lý User và trang quản lý
lịch sử người chơi
 Chức năng đăng ký
 Chức năng cập nhật thông tin cá nhân
 Chức năng đổi mật khẩu
CHƯƠNG 3: CƠ SỞ LÝ LUẬN
3.1 In-Memory Computing
SAP In-memory computing là một công nghệ mang tính đột phá cho phép thực hiện các
phân tích rất lớn, dữ liệu không tổng hợp với tốc độ chưa từng có trong bộ nhớ cục bộ
(so với cơ sở dữ liệu trên đĩa – disk-based database). Các khả năng chính của công nghệ
này là lưu trữ thông tin chủ yếu dưới định dạng cột (vẫn có khả năng lưu trữ dữ liệu theo
dòng (Row store) cho một số kiểu dữ liệu nhất định), điều này giúp nó có thể nén và lưu
trữ một lượng lớn thông tin trong bộ nhớ chính (in main memory), sử dụng kỹ thuật xử
lý song song đa lõi trên kiến trúc của Intel và chuyển các dữ liệu tính toán phức tạp từ
lớp ứng dụng (application layer) vào lớp cơ sở dữ liệu (database layer) để xử lý được

đánh giá có tốc độ tính toán cực kì ấn tượng, nhanh hơn các công nghệ hiện hành khác
khoảng 1000 lần. Đây được xem là một bước đột phá trong khoa học điện toán trong
thời gian gần đây sau khi có những bước đột phá về phần cứng.
Và những điểm khác biệt mà SAP HANA mang lại đó là:
 Những câu trả lời ngay lập tức cho các câu hỏi tình huống (ad-hoc).
 Khả năng truy cập thời gian thực. Có thể nhận biết được những việc gì xảy ra ngay
khi nó xảy ra.
 Mang đến những cái nhìn nhiều chiều về hoạt động, trình trạng doanh nghiệp khi
tích hợp nhanh chóng các nguồn dữ liệu phân tán.
 Cách thức vận hành đơn giản và chi phí dành cho việc bảo trì thấp hơn.
Để làm được những điều đó SAP HANA phải là sự kết hợp giữ phần mềm và phần cứng
nên SAP đã làm việc với các đối tác lớn như HP, IBM, Fujitsu, Cisco và Dell để đảm
bảo cho sự tương thích hoàn toàn và tối ưu trong các điện toán tính toán.
Phù hợp với xu thế về các thiết bị di động (mobile device), như điện thoại thông minh
(smart phone), máy tính bảng (tablet) SAP HANA đều hỗ trợ rất tốt.
4.1 SAP HANA In-Memory Database
SAP HANA được thiết kế để vận hành trên một nền tảng hiện đại. Với các máy tính
được trang bị CPU đa lõi các thông tin giao tiếp nhanh chóng giữa các lõi xử lý và bộ
nhớ chính chứa hàng tetrabyte. Với SAP HANA, tất cả dữ liệu sẵn có trong bộ nhớ
chính, điều này giúp hoàn toàn tránh được các vi phạm về hiệu suất từ việc truy xuất từ
đĩa cứng. Nhưng các thiết bị như đĩa cứng, hoặc các đĩa ở trạng thái rắn vẫn được yêu
cầu cho việc đảm bảo duy trì dữ liệu lâu dài trong các trường hợp mất điện hay các thiên
tai có thể xảy ra khác. Việc này không làm giảm hiệu xuất hoạt động của quá trình xử
lý. Tuy nhiên, hoạt động sao lưu cần thiết có thể diễn ra không đồng bộ như một công
việc nền.
Trong DBMS truyền thống tồn tại một vấn đề làm chậm hiệu xuất hoạt động đó là khóa
dữ liệu (locking data) khi quá trình cập nhật dữ liệu đang thực hiện. Trong SAP HANA
Database đã tránh được vấn đề này và cho phép xử lý song song bằng cách sử dụng các
record chỉ đọc (read-only). Thay vì tạo ra một record mới thì chèn một chỉ số (delta) như
một đối tượng mới trong record hiện có được lưu trữ theo cột.

SAP HANA được thiết kế để thực hiện các tính toán cơ bản như phân tích, duyệt và tổng
hợp dữ liệu một cách song song. Nó thường làm việc với tình trạng sử dụng hàng trăm
nhân cùng lúc và tận dụng đầy đủ các nguồn lực trong hệ thống.
Lưu trữ cột cho phép thực thi các hoạt động một cách song song bằng việc sử dụng xử
lý đa nhân. Trong hình thức lưu trữ này thì dữ liệu đã được phân vùng theo chiều dọc.
Điều này có nghĩa là với các thao tác trên các cột khác nhau có thể dễ dàng được xử lý
song song với nhau. Nếu nhiều cột cần được thực hiện tìm kiếm hoặc tổng hợp thì mỗi
thao tác có thể được chỉ định cho một nhân xử lý khác nhau. Thêm vào đó, các hoạt động
trên cùng một cột có thể được xử lý song song bằng cách chia cột đó ra thành nhiều vùng
khác nhau và chỉ định cho các nhân xử lý khác nhau cho mỗi vùng được chia.
Hình 4.5. Xử lý song song
4.2 SAP HANA Extended Application Services
Những ứng dụng sử dụng cơ sở dữ liệu truyền thống thường giao tiếp với DBMS như
ODBC, JDBC,… có chức năng giống như một Data source và thông thường được thực
hiện qua một kết nối mạng. Những ứng dụng này sử dụng Structured Query Language
(SQL) để quản lý và truy vấn dữ liệu được lưu trữ trong cơ sở dữ liệu. Và các ứng dụng
này được phát triển dựa trên mô hình thông dụng Model-View-Controller (MVC) như
hình sau:

Hình 4.6. Mô hình MVC ở những ứng dụng thông thường
Với SAP HANA các ứng dụng không làm như cách trên. Mà SAP HANA được mở rộng
hơn so với một database truyền thống. Các chức năng của nó như một nền tảng toàn diện
cho sự phát triển và thực hiện các ứng dụng với dữ liệu chuyên sâu (data-intensive) nhờ
vào việc tận dụng kiến trúc bộ nhớ trong và khả năng xử lý song song.
Nếu ứng dụng được tái cấu trúc theo cách này, không chỉ làm tăng quá trình thực hiện
do sự tích hợp với Data source mà còn hiệu quả từ việc có thể loại bỏ được các thành
phần trung gian để truyền dữ liệu đến giao diện người dùng (user interface) dẫn đến việc
giảm một lượng chi phí đáng kể.

Hình 4.7. Mô hình MVC ở những ứng dụng trên nền tảng SAP HANA


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status