Nghe có vẻ giống như mối quan hệ máy chủ-máy khách [cơ sở dữ liệu trung tâm] và mặc dù SQLite có lẽ là đơn giản nhất, lưu ý rằng hiệu suất của nó có thể là kém nhất trong số 20 lựa chọn hàng đầu mà bạn có. Nó khác với Firebase và MySQL [và hầu hết các cơ sở dữ liệu khác] ở chỗ nó được nhúng trong sản phẩm, mặc dù nó có thể được nhúng trong chính máy chủ của bạn
MySQL sẽ yêu cầu một máy chủ MySQL db riêng biệt, có nghĩa là hai máy chủ [một cho MySQL và một để cung cấp các dịch vụ cụ thể cho ứng dụng khách của bạn] hoặc cả hai chạy trên một máy chủ. Có nhiều lựa chọn thay thế trong cùng danh mục với MySQL và lựa chọn cơ sở dữ liệu quan hệ hoặc cơ sở dữ liệu tài liệu [NoSQL]. Nhưng về mặt kiến trúc, chúng cùng loại với MySQL, một máy chủ db riêng biệt mà máy chủ ứng dụng của bạn sẽ lấy dữ liệu của nó từ đó
Firebase lại khác, ở chỗ đây là dịch vụ đã được lưu trữ bởi một công ty, cung cấp nhiều tính năng tích hợp như xác thực và lưu trữ thông tin tài khoản người dùng. Tuy nhiên, nó giải quyết được nhiều mối quan tâm khi chạy máy chủ, chẳng hạn như hiệu suất, khả năng mở rộng và quản lý. Có một số tiêu cực mà bạn nên biết mặc dù. bất kỳ khoản đầu tư nào về thời gian và mã hóa với Firebase đều không thể mang theo được, vì bạn sẽ bị mắc kẹt với Firebase trong tương lai. Nếu bạn cần chuyển sang một dịch vụ khác, thì đó không chỉ là một API khác mà còn là một kiến trúc khác và phần lớn mã hóa của bạn sẽ cần phải được loại bỏ. Thứ hai, nó hiện do Google sở hữu và điều hành, vì vậy bạn có một tập đoàn lớn hỗ trợ nó, nhưng điều đó cũng có nghĩa là họ có thể quyết định ngừng cung cấp nó mà không có bất kỳ ảnh hưởng thực sự nào đến lợi nhuận của Google. Ngoài ra, một số người sẽ lo ngại về việc lưu trữ dữ liệu trên máy chủ của Google. Điều đó nói rằng, tôi nghĩ rằng nếu bạn biết trước về những điều này và đặc biệt nếu bạn là học sinh trung học, thì Firebase là một người chiến thắng khá dễ dàng ở đây. Máy chủ đã được thiết lập sẵn cho bạn, tài liệu rất đầy đủ và phong phú, có rất nhiều ví dụ và Google sẽ không biến mất. Mối quan tâm chính là nếu nó thực sự lớn, thì chi phí dịch vụ có thể tăng lên. Tôi nghi ngờ rằng nó không lớn, ngay cả khi mọi người trong trường sử dụng nó. Số lượng kết nối đồng thời sẽ không lớn [có thể không đến hàng trăm, ngay cả khi có hàng nghìn người dùng]
Tôi sẽ sử dụng Firebase mặc dù bạn sẽ cần tìm hiểu API của họ, bởi vì bạn sẽ cần học điều gì đó bằng cách này hay cách khác. SQLite là một chút cơ sở dữ liệu đồ chơi và MySQL là cơ sở thực nhưng bạn [hoặc ai đó] sẽ cần quản lý máy chủ đó ngoài nhu cầu phát triển máy chủ và ứng dụng khách. Với Firebase, phần lớn máy chủ đã tồn tại, bao gồm cơ sở dữ liệu được lưu trữ chuyên nghiệp. Có rất nhiều tính năng cấp cao được cung cấp và chi phí ban đầu ở đâu đó giữa rất thấp và bằng không
Một phần của điều này phụ thuộc vào ngôn ngữ bạn muốn viết. Javascript cho ứng dụng khách đa nền tảng [Tôi sẽ sử dụng Vue. js + Vuetify cho giao diện người dùng và cung cấp ứng dụng này dưới dạng ứng dụng web và tùy chọn bọc ứng dụng đó bằng Electron cho ứng dụng dành cho máy tính để bàn, Apache Cordova dành cho thiết bị di động]. Máy chủ có thể là Javascript với API REST dựa trên Express trên Node. js, nói chuyện với Firebase cho các dịch vụ
Tuy nhiên, nếu bạn là một nhà phát triển Java, tất cả những điều này sẽ không còn nữa và tôi khuyên bạn nên sử dụng một máy chủ Java đơn giản với Javalin cho API REST và ObjectDB được nhúng để lưu trữ cơ sở dữ liệu [được kết hợp thành một máy chủ]. ObjectDB rất rất nhanh và có thể được tách ra thành một máy chủ có thể mở rộng nếu điều này trở nên thực sự lớn. Nhưng bạn có thể sẽ không bao giờ cần phải đi xa như vậy
Tất cả điều này là rất nhiều công việc. Tôi hy vọng đây không phải là một cái gì đó giống như một nhiệm vụ. Theo thứ tự là 6 tháng làm việc nếu bạn biết mình đang làm gì, cả năm nếu bạn vừa học vừa làm
Nhấp đúp vào phiên bản MySQL của bạn trong phần Phát triển SQL của Workbench để tạo một lược đồ mới
GHI CHÚ. Cơ sở dữ liệu được gọi là lược đồ trong MySQL Workbench
Bàn làm việc của MySQL có thể yêu cầu đăng nhập vào máy chủ MySQL của bạn. Nhập quyền root hoặc người dùng và mật khẩu của bạn đã được gán đặc quyền máy chủ dba
Nhấp vào biểu tượng Lược đồ mới trong menu, sau đó nhập tên cho cơ sở dữ liệu mới của bạn vào trường như được hiển thị. Nhấp vào nút Áp dụng để tạo tập lệnh SQL
Nhấp lại vào nút Áp dụng để thực hiện câu lệnh tạo cơ sở dữ liệu và tạo cơ sở dữ liệu mới của bạn
Nhấp vào Kết thúc
Cơ sở dữ liệu của bạn bây giờ sẽ được liệt kê ở bên trái với các lược đồ cơ sở dữ liệu khác của bạn
Nhấp vào biểu tượng Trang chủ ở góc trên cùng bên trái để quay lại màn hình Workbench Central. Nhấp vào phiên bản máy chủ MySQL của bạn trong phần Quản trị viên máy chủ của bàn làm việc MySQL để tạo người dùng cơ sở dữ liệu mới và gán đặc quyền cho cơ sở dữ liệu mới của bạn
Nhấp vào Người dùng và Đặc quyền. Sau đó bấm vào Thêm tài khoản. Nhập tên đăng nhập cho người dùng mới, nhập localhost và mật khẩu mới như được hiển thị. Nhấp vào Áp dụng để tạo tài khoản người dùng mới
Để gán đặc quyền cho người dùng này truy cập vào cơ sở dữ liệu cụ thể, hãy nhấp vào tab Đặc quyền lược đồ. Nhấp vào tài khoản người dùng từ danh sách người dùng ở bên trái. Nhấp vào nút Thêm mục nhập
Chọn tùy chọn radio Lược đồ đã chọn và chọn lược đồ cơ sở dữ liệu của bạn từ danh sách
Chọn các đặc quyền phù hợp để cho phép người dùng truy cập vào cơ sở dữ liệu đã chọn. Hầu hết các phần mềm trang web hiện đại sẽ chỉ yêu cầu các quyền được liệt kê bên dưới. Nhấp vào Lưu thay đổi để hoàn tất thiết lập người dùng mới của bạn