- vừa được xem lúc

[Redis] - Redis set

0 0 17

Người đăng: TheLight

Theo Viblo Asia

Tạo và quản lý set

Set là kiểu dữ liệu key/value thông thường lưu trữ dữ liệu kiểu chuỗi. Các key của kiểu dữ liệu set chỉ có thể giữ một giá trị, giá trị này có thể là bất kỳ loại dữ liệu nào, từ các ký tự chữ và số đến hình ảnh JPEG. Các giá trị đó trong Redis được lưu dưới dạng binary an toàn. Giới hạn duy nhất là các giá trị đó phải nhỏ hơn 512 MB.

Để tạo một chuỗi ta sử dụng lệnh set. Ví dụ: lệnh set sau tạo một key có tên key_Welcome1 chứa chuỗi "Howdy" :

> set key_Welcome1 "Howdy" Output
OK 

Để tạo nhiều chuỗi trong một lệnh ta sử dụng mset:

> mset key_Welcome2 "there" key_Welcome3 "partners," 

Chúng ta cũng có thể sử dụng lệnh append để tạo một chuỗi giá trị:

> append key_Welcome4 "welcome to Texas" Output
(integer) 16 

Nếu giá trị được tạo thành công, append sẽ trả về một số nguyên bằng số ký tự của chuỗi giá trị.

Lưu ý append cũng được dùng để thay đổi nội dung của chuỗi giá trị. Xem phần thao tác trên chuỗi để biết chi tiết về điều này.

Truy xuất chuỗi

Để truy xuất một chuỗi ta sử dụng lệnh get :

> get key_Welcome1 Output
"Howdy" 

Để truy xuất nhiều chuỗi bằng một lệnh ta sử dụng mget:

> mget key_Welcome1 key_Welcome2 key_Welcome3 key_Welcome4 Output
1) "Howdy" 2) "there" 3) "partners," 4) "welcome to Texas" 

Đối với các key được truyền vào lệnh mget không chứa giá trị chuỗi hoặc hoàn toàn không tồn tại, lệnh sẽ trả về nil.

Thao tác chuỗi

Nếu một chuỗi được tạo thành từ một số nguyên, chúng ta có thể chạy lệnh incr để tăng nó lên một:

> set key_1 3 > incr key_1 Output
(integer) 4 

Tương tự, chúng ta có thể sử dụng lệnh incrby để tăng giá trị của một chuỗi số theo một mức tăng cụ thể:

> incrby key_1 16 Output
(integer) 20 

Lệnh decrdecrby hoạt động theo cùng một cách, nhưng chúng làm giảm số nguyên được lưu trữ trong một chuỗi số:

> decr key_1 Output
(integer) 19 
> decrby key_1 16 Output
(integer) 3 

Nếu một chuỗi đã tồn tại, append sẽ nối giá trị vào cuối giá trị hiện có và trả về độ dài mới của chuỗi. Để minh họa, lệnh sau nối chuỗi ", y'all" vào chuỗi được giữ bởi key key_Welcome4 , vì vậy bây giờ chuỗi sẽ có nội dung "welcome to Texas, y'all" :

> append key_Welcome4 ", y'all" Output
(integer) 15 

Chúng ta cũng có thể nối các số nguyên vào một chuỗi chứa một giá trị số. Ví dụ sau nối 45 với chuỗi giá trị hiện tại là 3 (số nguyên được giữ trong key_1) , vì vậy giá trị mới nó sẽ giữ là 345 . Trong trường hợp này, append cũng sẽ trả về độ dài mới của chuỗi, thay vì giá trị mới của nó:

> append key_1 45 Output
(integer) 3 

Vì key này vẫn chỉ giữ một giá trị số nên chúng ta có thể thực hiện các phép toán incrdecr trên nó. Chúng ta cũng có thể nối các ký tự chữ cái vào một chuỗi số nguyên, nhưng nếu chúng ta làm điều này thì việc chạy incr và decr trên chuỗi sẽ tạo ra lỗi vì giá trị chuỗi không còn là số nguyên.

Nguồn:

Bình luận

Bài viết tương tự

- vừa được xem lúc

Caching đại pháp 2: Cache thế nào cho hợp lý?

Caching rất dễ. Mình không nói đùa đâu, caching rất là dễ. Ai cũng có thể làm được chỉ sau 10 phút đọc tutorial. Nó cũng giống như việc đứa trẻ lên 3 đã có thể cầm bút để vẽ vậy.

0 0 126

- vừa được xem lúc

Caching đại pháp 1: Nấc thang lên level của developer

Bí quyết thành công trong việc đáp ứng hệ thống triệu user của những công ty lớn (và cả công ty nhỏ). Tại sao caching lại là kỹ thuật tối quan trọng để phù phép ứng dụng rùa bò của chúng ta thành siêu phẩm vạn người mê.

0 0 82

- vừa được xem lúc

Cache dữ liệu Nodejs với Redis

Một tí gọi là lý thuyết để anh em tham khảo. Cache là gì. Lợi ích của việc cache data. .

0 0 111

- vừa được xem lúc

Nguyên tắc hoạt động của redis server

Sự ra đời của Redis. . Câu chuyện bắt đầu khi tác giả của Redis, Salvatore Sanfilippo. (nickname: antirez), cố gắng làm những công việc gần như là không.

0 0 97

- vừa được xem lúc

Viết ứng dụng chat realtime với Laravel, VueJS, Redis và Socket.IO, Laravel Echo

Xin chào tất cả các bạn, đây là một trong những bài post đầu tiên của mình. Sau bao năm toàn đi đọc các blog tích luỹ được chút kiến thức của các cao nhân trên mạng.

0 0 918

- vừa được xem lúc

Tìm hiểu tổng quan về Redis

1. Lời mở đầu.

0 0 368