Tạp chí Khoa học ĐHQGHN: Khoa học Tự nhiên và Cơng nghệ, Tập 30, Số 3 (2014) 1‐6 Nâng cao hiệu xử lý giao tác với mơ hình CSDL nhớ Vũ Bá Duy, Dư Phương Hạnh* Trường Đại học Công nghệ, ĐHQGHN, 144 Xuân Thủy, Hà Nội, Việt Nam Nhận ngày 25 tháng năm 2014 Chỉnh sửa ngày 27 tháng năm 2014; Chấp nhận đăng ngày 19 tháng năm 2014 Tóm tắt: Các hệ quản trị cở sở liệu (CSDL) truyền thống chủ yếu xây dựng dựa việc khai thác máy tính đơn nhân CPU thiết bị lưu trữ kiểu từ tính Các mơ hình chưa khai thác hết mạnh công nghệ chip đa nhân hay hệ thống máy tính cụm dung lượng ngày lớn nhớ Bài báo đề cập đến việc sử dụng mơ hình H-Store nhằm mục đích khai thác kiến trúc đa nhân việc đưa tồn liệu vào nhớ, từ nâng cao hiệu xử lý giao tác đồng thời từ phía người dùng Phần thực nghiệm với toán thực tế Đại học Quốc gia Hà Nội liên quan đến việc tải hệ thống sinh viên đăng ký tín cho phép minh chứng tính đắn mơ hình Từ khoá: CSDL nhớ, xử lý giao tác, H-Store Giới thiệu∗ Khi nhớ bán dẫn ngày rẻ, phương án tiếp cận đưa tất liệu vào nhớ trở nên khả thi Phương án hình thành cách tiếp cận xây dựng hệ quản trị CSDL nhớ (In Memory Database - IMDB) Với mơ hình IMDB, việc tối ưu hố truy vấn khơng cần phải quan tâm nhiều đến chi phí cho phần vào/ra thiết bị lưu trữ, yếu tố then chốt ảnh hưởng đến hiệu xử lý giao tác [2] Ưu điểm đến từ chất nhớ chính: liệu truy xuất theo kiểu RAM (Random Access Memory) thay kiểu truy cập trực tiếp ổ đĩa cứng Với hệ sở liệu truyền thống, liệu lưu trữ thiết bị từ tính, phổ biến đĩa cứng.Trong trình xử lý, liệu nạp vào nhớ đệm để tăng tốc độ xử lý, nhiên, phương pháp xử lý phải dựa thao tác với đĩa cứng.Chính mà hiệu xử lý phụ thuộc thao tác xử lý liệu mà phụ thuộc lớn vào thao tác đọc/ghi đĩa Vì giảm thiểu hay loại bỏ thao tác truy xuất đĩa có ý nghĩa với hiệu xử lý hệ thống [1] Trong báo này, giới thiệu mơ hình IMDB đại nay: H-Store với thể cài đặt VoltDB [3] _ ∗ Tác giả liên hệ ĐT: 84-913365832 E-mail: hanhdp@vnu.edu.vn V.B. Duy, D.P. Hạnh /Tạp chí Khoa học ĐHQGHN: Khoa học Tự nhiên và Cơng nghệ, Tập 30, Số 3 (2014) 1‐6 Dựa hệ quản trị này, tiến hành thử nghiệm với tốn thực tế đăng ký lớp tín Đại học Quốc gia Hà Nội (ĐHQGHN) Kết thực nghiệm cho thấy hệ thống mô cho hiệu mơ hình IMDB ln vượt trội so với mơ hình CSDL truyền thống cho phép giải vấn đề tải hệ thống Phần lại báo tổ chức sau:mục giới thiệu mơ hình CSDL nhớ, mục trình bày kiến trúc hệ thống H-Store thể cụ thể H-Store với hệ quản trị VoltDB; mục giành để giới thiệu toán đăng ký lớp tín trực tuyến ĐHQGHN mục tổng hợp kết thực nghiệm mơ hình giải pháp đánh giá, so sánh; cuối phần kết luận số định hướng nghiên cứu tiếp Mơ hình sở liệu nhớ Cơ sở liệu nhớ (IMDBB) mơ hình quản lý CSDL mà tồn liệu xử lý nhớ hệ thống tính tốn [1] Mơ hình khác biệt so với mơ hình truyền thống, phần liệu xử lý nhớ Ứng dụng (Client) Ứng dụng (Client) Query Query DBMS Buffer Primary Storage Primary Storage Snapshot Hình Mơ hình IMDB Bộ nhớ máy tính có tính chất khác so với đĩa từ, khác biệt có ý nghĩa lớn thiết kế hiệu hệ quản trị sở liệu thi hành giao tác trực tuyến (Online Transaction Processing – OLTP) Sự khác biệt thể qua: * Thời gian truy xuất (đôi sử dụng thuật ngữ lattency) từ nhớ nhỏ so với đĩa nhớ có phương thức truy cập ngẫu nhiên cịn đĩa từ có phương thức truy cập trực tiếp * So với IMDB, việc lưu trữ đĩa từ thuận lợi việc đảm bảo tránh liệu cố kỹ thuật Tuy nhiên, với chế đồng lưu vết thích hợp, nhược điểm IMDB hồn tồn khắc phục [4] * IMDB cho phép nâng cao hiệu xử lý giao tác dựa chất phương thức truy cập ngẫu nhiên: giảm thời gian tính tốn tối ưu V.B. Duy, D.P. Hạnh /Tạp chí Khoa học ĐHQGHN: Khoa học Tự nhiên và Cơng nghệ, Tập 30, Số 3 (2014) 1‐6 xử lý truy vấn, giảm thiểu thời gian truy xuất đến liệu, … Hiện nay, mơ hình IMDB cài đặt nhiều hệ quản trị CSDL, thương mại lẫn mã mở hay nghiên cứu thực nghiệm Các hệ quản trị thương mại kể đến giải pháp TimesTen Oracle [5], DB2 BLU IBM [6], Hekaton Microsoft [7]… Một số hệ quản trị xây dựng phục vụ nghiên cứu cộng đồng mã mở kể đến BigMemory hãng Terracotta [8], H-Store [9], VoltDB [10], … Trong số sản phẩm trên, hệ VoltDB hệ quản trị cài đặt trực tiếp từ mơ hình kiến trúc H-Store, sản phẩm nghiên cứa ba đơn vị: trường Đại học Brown, Carnegie Mellon viện MIT, Mỹ Đây hệ đánh giá có hiệu xử lý giao tác vượt trội, cho phép khai thác tối đa mạnh cơng nghệ tính tốn nhớ dung lượng lớn, đa lõi, đa chíp, … [4] Kiến trúc H-Store VoltDB H-Store hệ quản trị xây dựng theo mơ hình quan hệ, lưu trữ theo hồn tồn nhớ có tính phân tán cao [3,4] Hệ quản trị chạy mơi trường cụm máy tính theo mơ hình không chia sẻ Một thể H-Store thi hành cụm máy tính với nhiều nốt (nodes), nốt hệ thống máy tính vật lý đơn Mỗi nốt chứa nhiều sitesthi hành điều phối giao tác (transaction coordinator) Site thực thể logic hoạt động độc lập tương ứng luồng (thread) hệ thống, xử lý giao tác OLTP từ phía người dùng điều khiển điều phối giao tác Bộ điều phối có nhiệm vụ đảm bảo tính giao tác điều phối từ nốt khác Trong H-Store, site cài đặt trực tiếp lõi (core) vi xử lý độc lập so với sites khác [8] Hình Mơ hình hệ thống H-Store Mọi quan hệ/bảng sở liệu H-Store phân đoạn ngang thành nhiều đoạn (fragments, hay đơi cịn gọi shards) dựa thuộc tính phân mảnh Những đoạn liên quan với từ nhiều quan hệ nhóm lại thành phân vùng (partition) Mỗi phân vùng chứa site[11] Các H-Store lưu trữ nhớ nốt Ứng dụng OLTP từ phía người dùng thực truy vấn tới hệ thống H-Store để thực thi thủ tục lưu trữ (stored procedures) định nghĩa trước Mỗi thủ tục xác định tên chứa mã điều khiển có cấu trúc pha trộn với ngơn ngữ SQL (Structure Query Language) tham số hóa Một thể thủ tục khởi tạo ứng dụng OLTP giao tác (transaction) Giao tác H-Store đảm bảo đầy đủ tính ACID (Atomicity, Consistency, Isolation, Durability) hệ quản trị truyền thống Hiện nay, việc đưa hệ thống HStore phục vụ nghiên cứu đánh giá, nhóm nghiên cứu H-Store đưa thương mại VoltDB [9] để triển khai ứng dụng thực tiễn Dựa mơ hình H-Store, chúng tơi tiến hành thử nghiệm với tốn đăng ký lớp mơn học tín ĐHQGHN VoltDB 4 V.B. Duy, D.P. Hạnh /Tạp chí Khoa học ĐHQGHN: Khoa học Tự nhiên và Cơng nghệ, Tập 30, Số 3 (2014) 1‐6 Bài tốn đăng ký lớp mơn học ĐHQGHN Hiện ĐHQGHN cho phép sinh viên đăng ký trực tuyến lớp môn học đầu kỳ dựa vào danh sách lớp môn học nhà trường xây dựng Tuy nhiên, hệ thống đăng ký xây dựng dựa hệ quản trị sở truyền thống Trong thực tế, vào thời điểm mở thông báo, hầu hết sinh viên thực đăng kí mơn học dự kiến học đồng thời, dẫn đến tình trạng thường xuyên tải cho hệ thống Trong báo này, trình bày trên, chúng tơi nghiên cứu đặc tính hiệu suất hệ thống theo hướng đưa tất liệu vào nhớ chính, sở thiết kế bảng liệu cài đặt thử nghiệm số mô đun hệ thống quản lý đào tạo (đăng kí lớp môn học, cập nhật điểm) hệ quản trị VoltDB MySQL để so sánh hiệu Trong thực nghiệm này, liệu mơn học, ngành, chương trình đào tạo chúng tơi sử dụng tồn liệu trường Đại học Công nghệ - ĐHQGHN - Sinh viên không vi phạm môn điều kiện tiên môn học, - Sinh viên chưa đăng kí số tín tối đa phép kỳ - Không trùng lịch học với môn khác đăng kí Trên thực tế, hệ thống quản lý đào tạo chưa kiểm tra hết ràng buộc, cịn dẫn đến nhiều tình trạng sinh viên vi phạm điều kiện tiên quyết, trùng lịch, … Thực nghiệm Chúng tơi tiến hành mơ hình hố tốn theo mơ hình quan hệ - thực thể tiến hành cài đặt ứng dụng thử nghiệm hai hệ quản trị CSDL: IMDB với VoltDB truyền thống với MySQL Quy trình đăng ký lớp môn học xác lập sau: Đầu học kỳ phịng đào tạo lập danh sách lớp mơn học chương trình đào tạo - tên lớp, - tên mơn học - giáo viên - phịng học - thời gian - Số sinh viên tối đa Sinh viên thuộc chương trình đăng kí lớp học thuộc chương trình với điều kiện - Lớp chưa q số tối đa, Hình Lược đồ CSDL thưc nghiệm Môi trường thực nghiệm tiến hành bước đầu máy tính cấu hình CPU Intel(R) Core(TM) i5-3317U, 4GB RAM, cài hệ điều hành Ubuntu 13.04.3 LTS Toàn lược đồ yêu cầu hệ thống đăng ký lớp môn học tín cài đặt MySQL x86-64 phiên 5.6 VoltDB phiên 4.0 Để đánh giá hiệu hai hệ quản trị này, dựa chuẩn V.B. Duy, D.P. Hạnh /Tạp chí Khoa học ĐHQGHN: Khoa học Tự nhiên và Cơng nghệ, Tập 30, Số 3 (2014) 1‐6 cơng nghiệp TPC-C để đánh giá hiệu với hệ quản trị CSDL (TPC-C - Transaction Processing Performance Council) [12] tiến hành hiệu chỉnh để phù hợp với toán đặt trị cho phép nâng cao hiệu xử lý giao tác đồng thời từ phía người dùng, minh chứng ưu điểm IMDB so với hệ quản trị truyền thống Kết thực nghiệm với hai hệ quản trị nêu thu sau: Thông qua thực nghiệm với toán sinh viên đăng ký trực tuyến lớp mơn học tín chỉ, chúng tơi minh chứng rõ rệt tải hệ thống với mơ hình CSDL truyền thống Và dựa trêncài đặt H-Store, VoltDB, kết thực nghiệm cho phép khẳng định IMDB giải triệt để vấn đề tải hệ thống đăng ký lớp môn học ĐHQGHN thông qua việc nâng cao hiệu (khoảng 55 lần) so với hệ quản trị CSDL truyền thống Bảng Kết đánh giá hiệu tổng hợp Số sinh viên 10.000 40.000 60.000 100.000 MySQL (giaotác/s) 42.6 42.8 42.5 30.8 VoltDB (4 partiton) (giaotác/s) 2375.5 2358.9 2350.2 2501.5 Với kết thực nghiệm đạt được, ta thấy: với số lượng sinh viên tăng 10 lần, hiệu suất trung bình ứng dụng MySQL giảm đáng kể, VoltDB ổn định nhanh khoảng 55 lần so với MySQL Một điểm cần nhấn mạnh thêm hiệu khoảng 40 giao tác/giây với hệ quản trị truyền thống thời điểm đăng ký lớp tín chỉ, hồn tồn xả tình trạng q tải, chí chờ đợi vơ hạn (deadlock) có cỡ khoảng vài trăm sinh viên truy cập đồng thời vào hệ thống Thực nghiệm cho phép khẳng định, có hệ thống tính tốn hiệu vừa phải (máy tính cá nhân), VoltDB cho phép xử lý đồng thời truy vấn khoảng 2300 sinh viên Với lượng sinh viên trường Đại học Công nghệ (~600 sinh viên năm), hiệu cho phép đủ đáp ứng tất yêu cầu đăng ký lớp tín sinh viên tồn trường Kết luận Mơ hình H-Store thực khai thác mạnh kiến trúc đa nhân, hệ thống cluster đặc biệt mơ hình CSDL nhớ Với tính đó, hệ quản Trong thời gian tới, tiến hành phối hợp đơn vị khác ĐHQGHN để thử nghiệm thực tế mơ hình giải pháp nêu trên, trực tuyến Internet Lời cảm ơn Cơng trình tài trợ phần từ đề tài nghiên cứu mã số CN.12.02, cấp trường Đại học Công nghệ - ĐHQGHN Tài liệu tham khảo [1] J Baulier, P Bohannon, S Gogate, S Joshi, C Gupta, A Khivesera, H F.Korth, P McIlroy, J Miller, P P S Narayan, M Nemeth, R Rastogi,A Silberschatz, and S Sudarshan Datablitz: A high performance main-memory storage manager VLDB, pages 701–714, 1998 [2] Ramez Elmasri and Shamkant B Navathe, Fundamentals of Database Systems, 6th Edition, 2011 - Addison-Wesley, ISBN-10: 0136086209, ISBN-13: 9780136086208 [3] R Kallman, H Kimura, J Natkins, A Pavlo, A Rasin, S Zdonik, E P C Jones, S Madden, M Stonebraker, Y Zhang, J Hugg, and D J Abadi, "H-Store: a High-Performance, Distributed Main Memory Transaction Processing System," Proc 6 V.B. Duy, D.P. Hạnh /Tạp chí Khoa học ĐHQGHN: Khoa học Tự nhiên và Cơng nghệ, Tập 30, Số 3 (2014) 1‐6 [4] [5] [6] [7] VLDB Endow., vol 1, iss 2, pp 1496-1499, 2008 J DeBrabant, A Pavlo, S Tu, M Stonebraker, and S Zdonik, "Anti-Caching: A New Approach to Database Management System Architecture," Proc VLDB Endow., vol 6, pp 1942-1953, 2013 Oracle TimesTen Products and Technologies Technical report, February 2013 DB2 with BLU Acceletion, http://www01.ibm.com/software/data/db2/linux-unixwindows/db2-blu-acceleration/ retrieved on 25/12/2013 C Diaconu, C Freedman, E Ismert, P.-A Larson, P Mittal, R Stonecipher,N Verma, and M Zwilling Hekaton: SQL Server’s MemoryOptimized OLTP Engine InSIGMOD, pages 1– 12, 2013 [8] BigMemory, http://terracotta.org/products/ bigmemory retrieved on 25/12/2013 [9] H-Store http://hstore.cs.brown.edu/, last retrieved on 12/1/2014 [10] VoltDB, http://voltdb.com/, last retrieved on 28/1/2014 [11] E P C Jones, D J Abadi, and S Madden (2010), "Low overhead concurrency control for partitioned main memory databases" in SIGMOD ’10: Proceedings of the 2010 international conference on Management of data, New York, NY, USA, pp 603-614 [12] The Transaction Processing Council TPC-C Benchmark (Revision 5.9.0) http://www tpc.org/tpcc/spec/tpcc_current.pdf, June 2007 Improving the Transaction Processing Performance by Using In-memory Database Model Vũ Bá Duy, Dư Phương Hạnh VNU University of Engineering and Technology, 144 Xuân Thủy, Hanoi, Vietnam Abstract: The traditional database management systems are based mainly on the exploitation of single-CPU computer and megnetic storage devices These models not fully exploit the technological advantages of large amout of main memory, even terabytes This paper presents an emperical approach to use the H-Store model in order to improve the transaction processing performance and evaluate it based on the real problem at Vietnam National University: the online course registration system is always over-load Our experiment allows us to validate the advatages of in-memory database model and to overcome the real problem of the online course registration Keywords: In-memory database, H-Store, transaction processing ... thực nghiệm mơ hình giải pháp đánh giá, so sánh; cuối phần kết luận số định hướng nghiên cứu tiếp Mô hình sở liệu nhớ Cơ sở liệu nhớ (IMDBB) mơ hình quản lý CSDL mà toàn liệu xử lý nhớ hệ thống... Mơ hình khác biệt so với mơ hình truyền thống, phần liệu xử lý nhớ Ứng dụng (Client) Ứng dụng (Client) Query Query DBMS Buffer Primary Storage Primary Storage Snapshot Hình Mơ hình IMDB Bộ nhớ. .. giá hiệu với hệ quản trị CSDL (TPC-C - Transaction Processing Performance Council) [12] tiến hành hiệu chỉnh để phù hợp với toán đặt trị cho phép nâng cao hiệu xử lý giao tác đồng thời từ phía người