nên chọn mongodb hay postgresql



  • em mới tìm hiểu nodejs, đọc qua mấy bài trên google thì thấy nâng bi postgresql quá, tự dưng bị hoang mang

    có mấy thắc mắc nhờ mọi người giải đáp nhé,

    1. với hệ thống dữ liệu lớn, dạng realtime thì nên xài db nào cho phù hợp?
    2. mongo nó có bị tình trạng không toàn vẹn dữ liệu khi cúp điện, thiết bị tắt đột ngột không?

    cảm ơn mọi người nhiều ạ



    1. Bạn nên dùng cái nào bạn quen thuộc nhất, SQL hay noSQL gì cũng đều được, khi bạn thiết kế db của mình thì mới biết cái nào sẽ phù hợp, cái này thì cần nhiều thời gian để trải nghiệm, bạn cứ từ từ, làm với cái nào quen thuộc trước.
    2. Mình không hiểu ý bạn lắm, bạn đưa ra 1 case cụ thể xem, nhưng mình nghĩ tất cả các CSDL đều đã tính toán hết các vấn đề này rồi.


  • Nhiều khị lựa chọn nó như là vấn đề tôn giáo nên theo bác @CodeConCat thì bạn thích học tập cái nào cũng được. Còn về vẫn đề.

    1. Dữ liệu lớn, realtime bạn phải biết nó lớn cớ nào xử lý bao nhiêu công việc hệ thống có đáp ứng thời gian thực với số công việc đó không. Nếu bạn muốn làm cái lớn như google thì có thể bạn sẽ thuê người làm ra một cái như Bigtable. Vấn đề xử lý bigdata không phải chỉ là postgresql hay mongo chạy trên một cái máy tính mà là rất nhiều và rất nhiều máy tính để xử lý một công việc. Mình nghĩ cả hai đủ bạn học tập và làm rất nhiều ứng dụng rồi.
    2. Việc mất dữ liệu khi cúp điện phụ thuộc vào dữ liệu trước khi mất được lưu ở đâu và postgresql hay mongo nếu được lưu vào đĩa thì không mất nhé trừ khi vấn đề ở cái ổ đĩa đó. Tính toàn vẹn dữ liệu nó khác nó không chỉ là vấn đề bị mất dữ liệu. Nó sẽ không toàn vẹn nếu bị thêm, xóa hay chỉnh sửa có thể do hacker làm. Mongo hình như không có tính năng nào hỗ trợ kiểm tra toàn vẹn dữ liệu nhé, còn thằng postgresql mình cũng không rõ có hay không nếu có thì mình đoán ở mức độ yếu (đoán sai mong bỏ qua). Việc kiểm tra toàn vẹn dữ liệu thường được thực hiện ở cấp độ phát triển ứng dụng.

Log in to reply