Giả sử tôi có một lượng lớn tài liệu JSON không đồng nhất (tức là các ánh xạ khóa-giá trị được đặt tên) và phân cấp các lớp (tức là các bộ có tên) mà các tài liệu này được đính kèm. Tôi cần thiết lập cấu trúc dữ liệu cho phép:Có thể sử dụng lưu trữ RDF cũng như một cơ sở dữ liệu hướng tài liệu không?
- Hoạt động CRUD trên tài liệu JSON.
- Truy xuất tài liệu JSON theo ID thực sự nhanh chóng.
- Truy xuất tất cả tài liệu JSON được đính kèm vào một lớp nhất định thực sự nhanh chóng.
- Chỉnh sửa cấu trúc phân cấp lớp: thêm/xóa lớp học, sắp xếp lại chúng.
Ban đầu tôi đã đưa ra ý tưởng lưu trữ tài liệu JSON trong cơ sở dữ liệu hướng tài liệu (như CouchDB hoặc MongoDB) và lưu trữ phân cấp lớp trong bộ nhớ RDF (như 4store). 1
, 2
và 4
sau đó được tìm ra một cách tự nhiên và 3
được giải quyết bằng cách duy trì danh sách ID tài liệu đính kèm cho mọi lớp trong bộ nhớ.
Nhưng sau đó tôi nhận thấy rằng một bộ lưu trữ RDF thực sự có thể làm phần định hướng tài liệu để truy xuất tài liệu JSON bằng ID. Thoạt nhìn, điều này có vẻ đúng, nhưng tôi vẫn quan tâm đến số 2
và 3
. Có một bộ lưu trữ RDF có thể truy xuất các tài liệu (các nút) tại các tài liệu phục vụ db của tài liệu theo định hướng tốc độ không? Tốc độ này sẽ đáp ứng các truy vấn giống như 3
như thế nào? Tôi đã nghe một chút về kho RDF đang chậm, vấn đề sửa đổi, v.v.
Có bộ nhớ RDF cũng thoải mái cho các đối tượng truy xuất bình thường bằng ID, chẳng hạn như CouchDB không? Sự khác biệt giữa việc sử dụng lưu trữ tài liệu và RDF để lưu trữ, truy xuất và chỉnh sửa các đối tượng giống như JSON là gì?
những gì bạn có nghĩa là do "vấn đề reification"? –