Unity nâng cao >> P5 - Database

Xin chào các bạn yêu thích Unity!
Trong bài hôm nay chúng ta cùng nhau khám phá các xử lý dữ liệu với Unity. Bài này chỉ dành cho các bạn có căn bản lập trình tốt mới xài được.

Game không thể thiếu cơ sở dữ liệu - database, một trong những yếu tố cấu thành lên một trò chơi thú vị và đầy đủ tính năng.
Với CSDL, chúng ta có các giải pháp để lưu trữ:

1. Lư trữ dạng file, chúng ta xài C# để, sử dụng các kỹ năng về thao tác file là có thể làm được điều này.
- Ưu điểm phương pháp này là dễ dàng và nhanh chóng có kết quả nếu game của bạn là client trên PC, phù hợp với việc lưu tên người đăng nhập ban đầu, lưu link server cho phía client, hay các cấu hình ban đầu khởi chạy...Một cách tổ chức file ngày nay hay dùng là dạng XML, nó làm tăng khả năng định dạng dữ liệu, rất phù hợp cho game. Cách này ko thể thiếu trong bất kỳ trò game nào.
- Nhược điểm của nó là khó nhằn về tổ thức dữ liệu, truy xuất và bảo trì data khối lượng lớn.
Trên Internet có vô vàn hướng dẫn thao tác với file, còn XML đã có hướng dẫn trong bài trước.

2. Lưu trữ dữ liệu sử dụng SQLite: Đây là một ứng dụng dạng hệ quản trị CSDL quan hệ , các dữ liệu tổ chức theo bảng giống SQL server.
Việc tích hợp SQLite vô cùng dễ dàng, ta có thể đặt database này đi kèm với project game hay đặt nó trên server để truy xuất dữ liệu và lưu trữ dữ liệu.
-Ưu điểm: Xử lý với các dữ liệu với game có độ lớn trung bình, vài chục M data. Thích hợp với các game trên iOS và Android yêu cầu tiết kiệm độ lớn vì nó không đồ sộ. Truy xuất dữ liệu sử dụng ngông ngữ SQL của Microsoft nên dễ dàng vọc.
-Nhược điểm: Tính năng đang được phát triền và cần mở rộng thêm, bảo mật chưa được cao như SQL server.

3. Lưu trữ dữ liệu bằng MySQL: Đây là hệ quản trị CSDL quan hệ, được được ứng dụng khá nhiều trong ứng dụng đi kèm với nó là PHP và Java.
- Ưu điểm của nó là tốc độ nhanh và linh động trong xử lý dữ liệu. Phù hợp với các game server - client, nó là server chứa dữ liệu để các client truy cập đến xử lý. Thông thường xài webservice bằng PHP để thao tác với CSDL loại này. Phù hợp với game online dạng webgame, hay các game cần dữ liệu lớn.
- Nhược điểm: Không thể tích hợp trong client như SQLite, vậy nên ko thể xài game offline với loại này.


4. Lưu trữ dữ liệu bằng SQLserver: Đây là hệ quản trị CSDL quan hệ và đối tượng. Nó có sức mạnh ngôn ngữ SQL và đảm bảo tốc độ xử lý dữ liệu cao, an toàn và bảo mật cao.
- Ưu điểm: Dữ liệu lớn và an toàn, dễ bảo trì và nâng cấp database (giống MySQL). Phù hợp với các game cần dữ liệu lớn và an toàn cao. Thông thường do server truy cập và xử lý dữ liệu. Hệ thống server này nhận các yêu cầu từ phía client và truyền lại client kết quả xử lý. Việc thao tác với SQLserver khá dễ dàng về công nghệ, thông thường ta dùng .Net đề làm việc này.

- Nhược điểm: Chỉ thích hợp các game online, ko xài được cho game offline.

Ngoài ra còn nhiều cách thức khác, trên đây là các cách thức hay dùng trong game. Trong bài tới tôi sẽ hướng dẫn cách thức xử lý dữ liệu với từng giải pháp.