Trong ứng dụng của tôi, trên mỗi lần khởi chạy đầu tiên, một số JSON
phải được tải xuống từ máy chủ và sau đó tôi cần hiển thị các thông tin khác nhau bằng cách phân tích cú pháp dữ liệu này một vòng đời ứng dụng đầy đủ. Đối tượng JSON
là khá lớn với gần 5000 JSONArray
. Mỗi mảng JSON có dạng sau:Tôi nên chọn gì - JSON hoặc SQLite?
[37,101,"The Blocks Problem",9952,0,1000000000,0,852,0,0,11197,0,16606,0,7279,200,18415,5325,14492,3000,1]
Vì vậy, tôi có hai tùy chọn:
- Save the chuỗi json vào một tập tin và sau đó đọc nó.
- Lưu mảng JSON trong cơ sở dữ liệu SQLite với gần 10 cột và 5000 hàng.
Tùy chọn đầu tiên có vẻ hiệu quả. Nhưng sau đó tôi phải thao tác JSON để hiển thị nhiều thông tin khác nhau. Trong một số trường hợp, tôi cần phải tìm kiếm mảng đầy đủ để chọn thông tin mảng và có nhiều trường hợp như thế này. Vì vậy, điều này cũng sẽ rất tốn thời gian.
Tùy chọn thứ hai tốt hơn để tìm kiếm và hiển thị nhanh hơn. Vì vậy, tôi tiếp cận với tùy chọn thứ hai. Nhưng việc chèn 5000 hàng tại một thời điểm cũng tốn thời gian. Tôi đã làm điều đó trong AsyncTask
để cải thiện nhưng phải mất quá nhiều thời gian để được thực thi - phân tích cú pháp JSON và lưu trữ trong bảng SQlite
.
Vì vậy, tôi có thể làm gì? cách tốt nhất để lưu trữ thông tin khổng lồ này và sau đó sử dụng nó hiệu quả là gì?