String (chuỗi) là kiểu dữ liệu cơ bản và phổ biến nhất trong Redis. Một giá trị String có thể chứa bất kỳ loại dữ liệu nào, từ văn bản thuần túy cho đến dữ liệu nhị phân như hình ảnh hoặc đối tượng đã được serialize. Trong Redis, một chuỗi có dung lượng tối đa lên đến 512 MB.
Cú pháp thực thi cơ bản
Để thực hiện các thao tác với String, chúng ta sử dụng cấu trúc lệnh như sau trong giao diện dòng lệnh (CLI):
redis 127.0.0.1:6379> COMMAND_NAME KEY_NAME
Ví dụ thực tế
Dưới đây là cách khởi tạo và truy xuất một giá trị chuỗi đơn giản bằng lệnh SET và GET:
redis 127.0.0.1:6379> SET website_name "tech-article-hub"
OK
redis 127.0.0.1:6379> GET website_name
"tech-article-hub"
Trong ví dụ này, website_name đóng vai trò là khóa (key) và "tech-article-hub" là giá trị (value) được lưu trữ.
Bảng tổng hợp các lệnh String thông dụng
Dưới đây là danh sách các lệnh quan trọng giúp thao tác hiệu quả với kiểu dữ liệu String trong Redis:
| STT | Lệnh & Mô tả |
|---|---|
| 1 | SET key value: Gán giá trị cho một key cụ thể. |
| 2 | GET key: Truy xuất giá trị của key đã cho. |
| 3 | GETRANGE key start end: Lấy một đoạn chuỗi con từ key dựa trên vị trí bắt đầu và kết thúc. |
| 4 | GETSET key value: Thiết lập giá trị mới cho key và trả về giá trị cũ trước đó. |
| 5 | GETBIT key offset: Lấy giá trị bit tại vị trí offset trong chuỗi. |
| 6 | MGET key1 [key2..]: Lấy giá trị của nhiều key cùng một lúc. |
| 7 | SETBIT key offset value: Thiết lập hoặc thay đổi giá trị bit tại vị trí offset. |
| 8 | SETEX key seconds value: Gán giá trị cho key kèm theo thời gian hết hạn tính bằng giây. |
| 9 | SETNX key value: Chỉ gán giá trị nếu key đó chưa tồn tại trong hệ thống. |
| 10 | SETRANGE key offset value: Ghi đè một phần chuỗi của key bắt đầu từ vị trí offset. |
| 11 | STRLEN key: Trả về độ dài của chuỗi đang lưu trữ tại key. |
| 12 | MSET key value [key value ...]: Thiết lập đồng thời nhiều cặp key-value. |
| 13 | MSETNX key value [key value ...]: Thiết lập nhiều cặp key-value chỉ khi tất cả các key đều chưa tồn tại. |
| 14 | PSETEX key milliseconds value: Tương tự SETEX nhưng thời gian hết hạn tính bằng mili giây. |
| 15 | INCR key: Tăng giá trị số của key lên 1 đơn vị. |
| 16 | INCRBY key increment: Tăng giá trị của key thêm một khoảng số nguyên xác định. |
| 17 | INCRBYFLOAT key increment: Tăng giá trị của key thêm một khoảng số thực (float). |
| 18 | DECR key: Giảm giá trị số của key đi 1 đơn vị. |
| 19 | DECRBY key decrement: Giảm giá trị của key đi một khoảng số nguyên xác định. |
| 20 | APPEND key value: Nối thêm một chuỗi vào cuối giá trị hiện tại của key. |