Các lệnh cơ bản và quản lý dữ liệu trong Redis

Redis không đơn giản là lưu trữ key/value thông thường (cả key value đều là string), thực sự nó là một máy chủ dữ liệu có cấu trúc (data structures server) hỗ trợ nhiều loại dữ liệu có cấu trúc phức tạp như danh sách (List), tập hợp (Set), tập hợp được sắp xếp (Sorted

Redis không đơn giản là lưu trữ key/value thông thường (cả key value đều là string), thực sự nó là một máy chủ dữ liệu có cấu trúc (data structures server) hỗ trợ nhiều loại dữ liệu có cấu trúc phức tạp như danh sách (List), tập hợp (Set), tập hợp được sắp xếp (Sorted Set), bảng băm (Hash) …

Hôm nay mình sẽ giới thiệu qua một số lệnh cơ bản của Redis và cách quản lý dữ liệu trên CSDL cực nhanh này.

Redis Key

Redis key là các lệnh sử dụng để quản lý các key trong redis. Với cú pháp như sau:

COMMAND KEY_NAME [VALUE]

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 …

Nguồn: viblo.asia

Bài viết liên quan

WebP là gì? Hướng dẫn cách để chuyển hình ảnh jpg, png qua webp

WebP là gì? WebP là một định dạng ảnh hiện đại, được phát triển bởi Google

Điểm khác biệt giữa IPv4 và IPv6 là gì?

IPv4 và IPv6 là hai phiên bản của hệ thống địa chỉ Giao thức Internet (IP). IP l

Check nameservers của tên miền xem website trỏ đúng chưa

Tìm hiểu cách check nameservers của tên miền để xác định tên miền đó đang dùn

Mình đang dùng Google Domains để check tên miền hàng ngày

Từ khi thông báo dịch vụ Google Domains bỏ mác Beta, mình mới để ý và bắt đầ