Cơ sở dữ liệu cuối cùng lưu trữ dữ liệu trong tệp, trong khi hệ thống tệp cũng lưu trữ dữ liệu trong tệp. Trong trường hợp này sự khác biệt giữa DB và Hệ thống tệp là gì. Nó theo cách nó được truy xuất hay bất cứ điều gì khác?
Câu trả lời:
Cơ sở dữ liệu thường được sử dụng để lưu trữ dữ liệu có cấu trúc, liên quan, với các định dạng dữ liệu được xác định rõ, theo cách hiệu quả để chèn, cập nhật và / hoặc truy xuất (tùy thuộc vào ứng dụng).
Mặt khác, hệ thống tệp là một kho dữ liệu phi cấu trúc hơn để lưu trữ dữ liệu tùy ý, có thể là không liên quan. Hệ thống tệp tổng quát hơn và cơ sở dữ liệu được xây dựng dựa trên các dịch vụ lưu trữ dữ liệu chung do hệ thống tệp cung cấp. [Quora]
Hệ thống tệp hữu ích nếu bạn đang tìm kiếm một tệp cụ thể, vì hệ điều hành duy trì một loại chỉ mục. Tuy nhiên, nội dung của tệp txt sẽ không được lập chỉ mục, đây là một trong những ưu điểm chính của cơ sở dữ liệu.
Đối với các hoạt động rất phức tạp, hệ thống tệp có thể rất chậm.
Ưu điểm chính của RDBMS:
Các bảng có liên quan đến nhau
Ngôn ngữ xử lý dữ liệu / truy vấn SQL
Xử lý giao dịch bổ sung cho SQL (Transact-SQL)
Triển khai máy chủ-máy khách với các đối tượng phía máy chủ như thủ tục được lưu trữ, chức năng, trình kích hoạt, chế độ xem, v.v.
Lợi thế của Hệ thống tệp so với Hệ thống quản lý cơ sở dữ liệu là:
Khi xử lý các tập dữ liệu nhỏ với dữ liệu tùy ý, có thể không liên quan, tệp sẽ hiệu quả hơn cơ sở dữ liệu. Đối với các thao tác đơn giản, đọc, ghi, các thao tác với tệp nhanh chóng và đơn giản hơn.
Bạn có thể tìm thấy n số chênh lệch qua internet.
Sự khác biệt giữa hệ thống xử lý tệp và hệ thống quản lý cơ sở dữ liệu như sau:
Hệ thống xử lý tệp là một tập hợp các chương trình lưu trữ và quản lý tệp trong đĩa cứng máy tính. Mặt khác, Hệ quản trị cơ sở dữ liệu là tập hợp các chương trình cho phép tạo và duy trì cơ sở dữ liệu.
Hệ thống xử lý tệp có nhiều dự phòng dữ liệu hơn, ít dư thừa dữ liệu hơn trong dbms.
Bối cảnh: Tôi đã viết một hệ thống tệp đã chạy trong quá trình sản xuất được 7 năm. [1]
Sự khác biệt chính giữa hệ thống tệp và cơ sở dữ liệu là API hệ thống tệp là một phần của Hệ điều hành, do đó việc triển khai hệ thống tệp phải triển khai API đó và do đó tuân theo các quy tắc nhất định, trong khi cơ sở dữ liệu được xây dựng bởi các bên thứ 3 hoàn toàn có quyền tự do.
Về mặt lịch sử, các cơ sở dữ liệu được tạo khi hệ thống tệp do HĐH cung cấp không đủ tốt cho vấn đề hiện tại. Chỉ cần nghĩ về nó: nếu bạn có yêu cầu đặc biệt, bạn không thể chỉ gọi Microsoft hoặc Apple để thiết kế lại API hệ thống tệp của họ. Bạn có thể tiếp tục và viết phần mềm lưu trữ của riêng mình hoặc bạn sẽ tìm kiếm các lựa chọn thay thế hiện có. Vì vậy, nhu cầu đã tạo ra một thị trường cho phần mềm lưu trữ dữ liệu của bên thứ ba mà cuối cùng được gọi là cơ sở dữ liệu . Đó là về nó.
Mặc dù có vẻ như hệ thống tệp có các quy tắc nhất định như có tệp và thư mục, nhưng điều này không đúng. Các hệ điều hành lớn nhất hoạt động như vậy nhưng có nhiều hệ điều hành nhỏ trung tâm hoạt động khác nhau. Nó chắc chắn không phải là một yêu cầu khó. (Chỉ cần nhớ rằng, để xây dựng một hệ thống tệp mới, bạn cũng cần phải viết một hệ điều hành mới, điều này sẽ khiến việc áp dụng khó hơn một chút. Tại sao không chỉ tập trung vào công cụ lưu trữ và thay vào đó gọi nó là cơ sở dữ liệu?)
Cuối cùng, cả cơ sở dữ liệu và hệ thống tệp đều có đủ hình dạng và kích thước. Giao dịch, quan hệ, phân cấp, biểu đồ, lập bảng; bất cứ điều gì bạn có thể nghĩ ra.
[1] Tôi đã làm việc trên Hệ thống tệp Boomla, là hệ thống lưu trữ đằng sau Hệ điều hành Boomla và Nền tảng ứng dụng web.