Phương pháp bạn hiện đang sử dụng được gọi là mô hình danh sách kề.
Một mô hình khác để lưu trữ dữ liệu phân cấp trong cơ sở dữ liệu (quan hệ) là mô hình tập hợp lồng nhau. Việc triển khai nó trong cơ sở dữ liệu SQL đã được nhiều người biết đến. Ngoài ra, hãy xem bài viết này để biết thuật toán duyệt cây đặt hàng trước đã sửa đổi.
Một phương pháp rất đơn giản:bạn có thể lưu trữ một đường dẫn cho mỗi đối tượng - với những đối tượng đó, bạn sẽ dễ dàng truy vấn cây trong cơ sở dữ liệu NOSQL:
{ path: "Color", ... }
{ path: "Color.Red", ... }
{ path: "Color.Red.Apple", ... }
{ path: "Color.Red.Cherry", ... }
Khi các nút sẽ bị xóa hoặc đổi tên, một số đường dẫn phải được cập nhật. Nhưng nói chung, phương pháp này có vẻ đầy hứa hẹn. Bạn chỉ cần đặt một ký tự đặc biệt làm dấu phân cách. Chi phí không gian lưu trữ phải không đáng kể.
chỉnh sửa:phương pháp này được gọi là đường dẫn cụ thể hóa
Cuối cùng, đây là so sánh các phương pháp khác nhau cho dữ liệu phân cấp trong cơ sở dữ liệu NOSQL.