Tôi cần biết hiệu suất của các công cụ XML khác nhau như thế nào (các trình phân tích cú pháp, trình xác nhận hợp lệ, các bộ đánh giá biểu thức XPath) bị ảnh hưởng bởi kích thước và độ phức tạp của tài liệu đầu vào. Có những tài nguyên ngoài kia ghi lại cách thời gian CPU và mức sử dụng bộ nhớ bị ảnh hưởng bởi ... à, cái gì? Kích thước tài liệu bằng byte? Số lượng nút? Và mối quan hệ tuyến tính, đa thức hay tệ hơn?Sự phức tạp về thuật toán của các trình phân tích cú pháp/trình xác nhận hợp lệ XML
Cập nhật
Trong một bài báo trên tạp chí IEEE Computer, vol 41 nr 9, tháng 9 năm 2008, các tác giả khảo sát bốn mô hình phân tích cú pháp XML phổ biến (DOM, SAX, Stax và VTD). Họ chạy một số thử nghiệm hiệu năng cơ bản cho thấy rằng trình phân tích cú pháp DOM sẽ có thông lượng giảm một nửa khi kích thước của tệp đầu vào được tăng từ 1-15 KB lên 1-15 MB hoặc lớn hơn khoảng 1000x. Thông lượng của các mô hình khác không bị ảnh hưởng đáng kể.
Thật không may là họ không thực hiện các nghiên cứu chi tiết hơn, chẳng hạn như sử dụng thông lượng/bộ nhớ làm chức năng của số lượng nút/kích thước.
Bài báo là here.
Cập nhật
tôi đã không thể tìm thấy bất kỳ điều trị chính thống của vấn đề này. Đối với những gì nó có giá trị, tôi đã thực hiện một số thí nghiệm đo số lượng các nút trong một tài liệu XML như một hàm của kích thước của tài liệu theo byte. Tôi đang làm việc trên một hệ thống quản lý kho và các tài liệu XML là các tài liệu kho điển hình, ví dụ: Thông báo vận chuyển nâng cao, vv
Biểu đồ dưới đây cho thấy mối quan hệ giữa kích thước tính theo byte và số nút (tỷ lệ thuận với khoảng trống bộ nhớ của tài liệu trong mô hình DOM). Các màu khác nhau tương ứng với các loại tài liệu khác nhau. Thang đo là log/log. Đường màu đen phù hợp nhất với các điểm màu xanh lam. Thật thú vị khi lưu ý rằng đối với tất cả các loại tài liệu, mối quan hệ giữa kích thước byte và kích thước nút là tuyến tính, nhưng hệ số tỷ lệ có thể rất khác nhau.
uhhh Đồ thị! Luôn luôn tốt đẹp. Cập nhật tốt! – svrist