BINHDUONGCOMPUTER

List keys trong Redis

Redis (Remote Dictionary Server) là một cơ sở dữ liệu NoSQL dạng key-value được lưu trữ trong bộ nhớ (in-memory database) giúp truy xuất dữ liệu nhanh chóng. Redis thường được sử dụng làm cache, message broker, và database chính cho các ứng dụng yêu cầu hiệu suất cao. Hãy cùng Bình Dương Computer tìm hiểu List keys trong Redis ở bài viết dưới đây :

List keys trong Redis

 

1. Đặc điểm chính của Redis

Lưu trữ dữ liệu trên RAM → Truy xuất siêu nhanh (hàng triệu yêu cầu/giây).
Hỗ trợ nhiều kiểu dữ liệu: String, List, Set, Hash, Sorted Set, Stream, Bitmap...
Có khả năng mở rộng (Scalability) → Hỗ trợ Cluster, Replication.
Hỗ trợ TTL (Time-To-Live) → Tự động xóa dữ liệu sau thời gian nhất định.
Là Single-threaded nhưng rất nhanh nhờ vào mô hình event-driven.

2. Các ứng dụng phổ biến của Redis

  1. Caching: Lưu trữ dữ liệu tạm thời để giảm tải cơ sở dữ liệu chính.
  2. Session Storage: Lưu thông tin phiên làm việc của người dùng (session management).
  3. Message Queue: Redis hỗ trợ Pub/Sub, có thể dùng làm hàng đợi tin nhắn như Kafka hoặc RabbitMQ.
  4. Leaderboard & Counter: Xử lý dữ liệu thời gian thực như xếp hạng game, số lượt xem bài viết.
  5. Distributed Lock: Hỗ trợ khóa phân tán để đồng bộ giữa nhiều server.

 3. Các lệnh Redis cơ bản

Redis Key

Các lệnh thường dùng
STT Command Ý nghĩa
1 DEL key Xóa key nếu nó tồn tại
2 EXISTS key Kiểm tra key có tồn tại không
3 EXPIRE key n Đặt expire time cho key sau n giây
4 KEYS pattern Tìm các key theo pattern
5 PERSIST key Xóa expire time của key
6 TTL key Lấy thời gian sống của key (giây)
7 RENAME key newkey Đổi tên key sang newkey, nếu newkey đã tồn tại giá trị của nó sẽ bị ghi đè bởi giá trị của key
8 RENAMENX key newkey Đổi tên key sang newkey nếu newkey chưa tồn tại
9 TYPE key Lấy loại dữ liệu được lưu trữ bởi key

Redis String

Redis string là lệnh sử dụng để quản lý các key/value trong đó value có giá trị string trong redis
Ví dụ:

redis 127.0.0.1:6379> SET test redis
OK
redis 127.0.0.1:6379> GET test
"redis"

Các lệnh thường dùng

STT Command Ý nghĩa
1 SET key value Đặt giá trị value cho key
2 GET key Lấy giá trị lưu trữ bởi key
3 GETRANGE key start end Lấy giá trị lưu trữ bởi key từ (start) đến (end)
4 GETSET key value Lấy ra giá trị cũ và đặt giá trị mới cho keY
5 MGET key1 key2 .. Lấy giá trị của nhiều key theo thứ tự
6 SETEX key seconds value Đặt giá trị và thời gian expire cho key
7 SETNX key value Đặt giá trị cho key nếu key chưa tồn tại
8 RENAMENX key newkey Đổi tên key sang newkey nếu newkey chưa tồn tại
9 STRLEN key Lấy độ dài giá trị lưu trữ bởi key
10 APPEND key value Thêm vào sau giá trị lưu trữ bởi key là value
11 INCR key Tăng giá trị lưu trữ của key (số nguyên) 1 đơn vị
12 INCRBY key n Tăng giá trị lưu trữ của key (số nguyên) n đơn vị
13 DECR key Giảm giá trị lưu trữ của key (số nguyên) 1 đơn vị
14 DECRBY key n Giảm giá trị lưu trữ của key (số nguyên) n đơn vị

Redis Hash

Redis hash là lệnh sử dụng để quản lý các key/value trong đó value có giá trị là hash. Hash là kiểu dữ liệu khá phổ biến, thường được dùng để lưu trữ các object.

HSET user:1 name "name 1"
(integer) 1
HGET user:1 name
"name 1"

Các lệnh thường dùng

STT Command Ý nghĩa
1 HSET key field value Đặt giá trị cho field là value trong hash
2 HGET key field Lấy giá trị của field trong hash
3 HDEL key field1 field2 ... xóa field1, field2 ... trong hash
4 HEXISTS key field Kiểm tra file có tồn tại trong hash không
5 HGETALL key Lấy tất cả các field và value của nó trong hash
6 HINCRBY key field n Tăng giá trị của field (số nguyên) lên n đơn vị
7 HDECRBY key field n Giảm giá trị của field (số nguyên) lên n đơn vị
8 HINCRBYFLOAT key field f Tăng giá trị của field (số thực) lên f
9 HDECRBYFLOAT key field n Giảm giá trị của field (số thực) f
10 HKEYS key Lấy tất cả các field của hash
11 HVALS key Lấy tất cả các value của hash
12 HLEN key Lấy số lượng field của hash
13 HMSET key field1 value1 field2 value2 ... Đặt giá trị cho các field1 giá trị value1 field2 giá trị value2 ...
14 HMGET key field1 field2 ... Lấy giá trị của các field1 field2 ...

Tại sao Redis nhanh?

Redis là một kho dữ liệu key-value mạnh mẽ, vượt trội với các công việc có độ trễ thấp và thông lượng cao. Tốc độ của nó được cho là do ba yếu tố chính:

  • Lưu trữ dữ liệu trong bộ nhớ: Redis lưu trữ tất cả dữ liệu trong bộ nhớ, mang lại lợi thế về tốc độ đáng kể so với các cơ sở dữ liệu truyền thống.
  • Cấu trúc dữ liệu được tối ưu hóa: Redis hỗ trợ các cấu trúc dữ liệu hiệu quả cao như lists, strings, sorted set, v.v.
  • Multiplexing I/O: Redis xử lý hiệu quả một số lượng lớn các kết nối client đồng thời bằng cách sử dụng single thread và multiplexing I/O với epoll().

 

Khi nào nên sử dụng Redis?

✅ Khi cần tốc độ cao (microseconds response time).
✅ Khi muốn giảm tải cho database chính (dùng Redis làm cache).
✅ Khi cần xử lý hàng đợi tin nhắn (message queue, Pub/Sub).
✅ Khi cần xử lý dữ liệu theo thời gian thực (leaderboard, counter).

Không nên dùng Redis nếu:

Cần lưu trữ dữ liệu lâu dài mà không mất khi server bị tắt.

Dữ liệu quá lớn vượt quá bộ nhớ RAM của máy chủ.

Cách thực hành tốt nhất

Sử dụng namespace để tổ chức dữ liệu:
Ví dụ:

  • user:1001:name

  • user:1001:email

Tránh sử dụng KEYS trong môi trường production, thay vào đó hãy dùng SCAN để duyệt qua danh sách khóa một cách hiệu quả.

Đặt thời gian hết hạn cho khóa (EXPIRE) nếu dữ liệu không cần lưu vĩnh viễn.

Giữ tên khóa ngắn gọn nhưng dễ hiểu, tránh dùng khóa quá dài để tiết kiệm bộ nhớ.

Tóm lại Redis là một cơ sở dữ liệu NoSQL cực nhanh, hoạt động trên RAM và hỗ trợ nhiều kiểu dữ liệu. Thường được dùng làm cache, message broker, session store, và distributed lock. Hi vọng bài viết trên đây của Bình Dương Computer đã đem lại cho bạn đầy đủ thông tin List keys trong Redis . Nếu có khó khăn gì bạn cần tôi hỗ trợ bạn có thể gọi cho chúng tôi theo số Hotline : 0973.184.699 hoạc để lại bình luận phía dưới các bạn nhé .

Bình Luận - Liên hệ

Xem đánh giá

Giới thiệu

BINHDUONGCOMPUTER.VN là một trung tâm được thành lập trong lĩnh vực thương mại và dịch vụ tin học - viễn thông, tiên phong trong lĩnh vực dịch vụ sửa laptop và phân phối các linh phụ kiện điện tử, máy tính, laptop, CAMERA được liên kết bởi các hãng nổi tiếng như Lenovo, Asus, Dell, Sony, Acer, Apple… Với trụ sở trên 2 tuyến phố lớn tại TPHCM và Bình Dương
Hotline: 0987 989 678
Nhắn tin Facebook Chát Zalo: 0933 860 111
Chat trực tuyến Zalo