@manhng

Welcome to my blog!

JavaScript IndexedDB

August 17, 2021 09:01

JavaScript IndexedDB (edit)

IndexedDB là gì?

  • IndexedDB là một API cấp thấp cho việc lưu trữ dữ liệu phía client.
  • Dữ liệu lưu trữ có thể là những dữ liệu có cấu trúc, bao gồm file hay blob.
  • IndexedDB là một dạng kho lưu trữ dữ liệu ở phía trình duyệt người dùng (tương tự local storage, session storage hay cookie)
  • Thường được sử dụng để lưu trữ dữ liệu lớn và thực hiện các thao tác tìm kiếm với hiệu năng cao tại chính trình duyệt.

Đặc điểm:

  • Lưu trữ dưới dạng key-value
  • Không phải cơ sở dữ liệu quan hệ
  • Là một dạng cơ sở dữ liệu NoSQL
  • Hỗ trợ truy xuất các DB có cùng domain
  • Một số trình duyệt cũ không  hỗ trợ.
  • Có thể lưu trữ như temporary storage hoặc persistent storage
  • IndexedDB sử dụng công nghệ index để nâng cao hiệu quả tìm kiếm, giúp tìm kiếm dữ liệu nhanh hơn.
  • IndexedDB hoạt động theo kiểu bất đồng bộ (asynchronous) và còn hỗ trợ sử dụng trong Web Worker, giúp tránh việc block DOM. Qua đó, trình duyệt chạy sẽ mượt hơn.
  • Trong khi LocalStorage chỉ hỗ trợ dung lượng tối đa là 5MB thì IndexedDB hỗ trợ lên đến 50MB. Và khi dùng quá 50MB này, trình duyệt sẽ yêu cầu permission từ người dùng để có thể tăng thêm dung lượng lưu trữ.
  • IndexedDB là hướng đối tượng. Vì vậy, IndexedDB không phải là dạng cơ sở dữ liệu quan hệ với bảng, dòng, cột,...
  • IndexedDB là cơ sở dữ liệu dạng NoSQL.
  • IndexedDB cũng dựa trên chính sách same-orgin (nghĩa là file script thực thi phải nằm trên cùng domain, protocol and port).

JavaScript IndexedDB - tại sao không? - Complete JavaScript

Indexeddb là gì? – Tất cả những điều cần biết | TopDev

Hướng dẫn sử dụng IndexedDB cơ bản (viblo.asia)

Categories

Recent posts