Bài 1: Redis – Giới Thiệu Và Cài Đặt
Redis là một mã nguồn mở, lưu trữ dạng key-value và là giải pháp cho việc xây dựng hiệu suất và mở rộng ứng dụng web rất hiệu quả. Redis được viết bằng C. Điều kiện để học: Bạn nên có kiến thức cơ bản về cấu trúc dữ liệu, bạn có thể tham khảo MySQL Tutorial. Hiện tại có thể cài ...
Redis là một mã nguồn mở, lưu trữ dạng key-value và là giải pháp cho việc xây dựng hiệu suất và mở rộng ứng dụng web rất hiệu quả.
Redis được viết bằng C.
Điều kiện để học:
Bạn nên có kiến thức cơ bản về cấu trúc dữ liệu, bạn có thể tham khảo MySQL Tutorial.
Hiện tại có thể cài redis trên window, nhưng trong tutorial này tôi sẽ hướng dẩn bạn thực hành nó ngay trên linux. Do vậy bạn cũng nên có chút khả năng thao tác với linux command line. Nếu không vẩn không lo lắng, trong bài học tôi sẽ hướng dẩn bạn step by step.
Rồi gooooooooooo!
Redis có 3 đặc thù chính mà đặt nó ngoài sự cạnh tranh với cái khác:
- Redis giữ toàn bộ cơ sở dữ liệu của nó trong bộ nhớ.
- Redis có một bộ kiểu dữ liệu dồi dào khi so tới nhiều lưu trữ dữ liệu key-value.
- Redis có thể backup dữ liệu tới bất kỳ số lượng đĩa phụ.
Lợi Thế Của Redis
- Nhanh một cách khác thường: Redis rất nhanh có thể thực hiện khoảng 110000 set dữ liệu trên giây, và 81000 get dữ liệu/giây.
- Hổ trợ giàu các kiểu dữ liệu: redis hổ trợ hầu hết các kiểu dữ liệu mà hầu hét các developer đã biết, giống như: list, set, sorted set, hashes. Cho nên dể dàng giải quyết các vấn đề đa dạng bởi vì chúng ta biết vấn đề nào có thể được xử lý tốt hơn với kiểu dữ liệu đó.
- Nhiều công cụ tiện ích: Redis là một công cụ đa tiện ích và có thể được sử dụng trong một số trường hợp sử dụng như bộ nhớ đệm, hàng đợi tin nhắn. Bất kỳ dữ liệu có đời sống ngắn trong ứng dụng của bạn như session, đếm số lượng khám phá web page…
- Các hoạt động là nguyên tử: Tất cả hoạt động của redis là nguyên tử, tức là một đơn vị nhỏ nhất như nguyên tử, do vậy nó bảo đảm rằng nếu có 2 khách hàng đồng thời truy cập server Redis thì sẽ nhận giá trị cập nhật.
Tại sao Redis khác so với các lưu trữ key-value khác?
Nói như vầy có nghĩa là còn rất nhiều hệ thống khác cũng tổ chức lưu trữ dạng key-value.
- Redis là một con đường phát triển khác biệt trong key-value nơi mà value có thể chứa đựng nhiều kiểu dữ liệu phứt tạp, với các hoạt động nguyên tử được định nghĩa trên các kiểu dữ liệu đó.
- Redis nằm trên bộ nhớ, nhưng cũng bền vững như trên đĩa, vì thế nó ghi với tốc độ rất cao và tốc độ đọc đạt được với giới hạn của bộ dữ liệu đọc mà không thể lớn hơn bộ nhớ. Một lợi thế khác của cơ sở dữ liệu trong bộ nhớ là với cấu trúc dữ liệu phứt phạp thì nó làm tốt hơn nhiều với cấu trúc dữ liệu lưu trên đĩa, vì thế Redis có thể làm nhiều với độ phứt tạp bên trong ít nhất.
Cài đặt
Cài đặt Redis trên Ubuntu.
Tôi giả định rằng bạn đang sử dụng hệ điều hành Linux Ubuntu, Bạn có thể cài đặt nó bằng phân vùng chính trên ổ đĩa của bạn, hoặc cách tiện lợi nhất cho việc luyện tập là bạn hãy cài Ubuntu vào phần mềm máy ảo,như VMWare chẳng hạn.
Nếu bạn chưa biết cách cài Ubuntu vào máy ảo thì hãy đi đến trang Contact và thoải mái gửi cho tôi một email, tôi sẽ hướng dẩn cho bạn trực tiếp hoặc một file hướng dẩn chi tiết.
Rồi bây giờ mở chạy Ubuntu và tiến hành cài đặt Redis.
Step 1:
Mở terminal và chạy các câu lệnh sau:
$sudo apt-get update
$sudo apt-get install redis-server
Step 2:
Kiễm tra redis có đang làm việc hay không?
Gõ redis-cli
Trong dấu nhắc 127.0.0.1 là địa chỉ ip của máy bạn và 6379 là port mà redis server đang chạy. Tiếp đến bạn gõ PING nếu trả về là PONG thì nghĩa là Redis đã cài đặt thành công trên máy bạn.
Step 3:
Start Redis
Gõ redis-server
Cài Đặt Redis Desktop Manager (RDM)
Cài đặt công cụ RDM sẽ cho bạn giao diện để quản lý redis key và dữ liệu của bạn dể dàng và trực quan hơn
Step 1: Install git
$sudo apt-get install git
Step 2: get source code
git clone –recursive https://github.com/uglide/RedisDesktopManager.git -b 0.8.0 rdm && cd ./rdm
Cài xong bạn sẽ được đưa tới thư mục clone là rdm như hình bên dưới
Step 3: Build trên Ubuntu
Thực hiện lần lượt các câu lệnh dưới đây:
- cd src/
- ./configure
- source /opt/qt56/bin/qt56-env.sh && qmake && sudo make install
- cd /usr/share/redis-desktop-manager/bin
- sudo mv qt.conf qt.backup
Tiếp tục chạy mục #3 sẽ tạo cho bạn thư mục redis-desktop-manager
Thực hiện tiếp mục #4 và #5.
Chúc mừng bạn đã cài thành công Redis Desktop Manager.
Bây giờ bạn gõ /usr/share/redis-desktop-manager/bin/rdm để mở giao diện quản lý của Redis ra.
Để kết nối vào Redis DB, bạn chọn connection to Redis Server. Rồi click test connect thử.
Lưu ý công cụ này chỉ giúp bạn quan sát, thao tác và quản lý key bằng giao diện. Tuy nhiên trong tutorial này tôi sẽ ưu tiên dùng command line (terminal) của linux thực hiện.
Nếu hướng dẩn trên không giúp bạn cài đặt thành công Redis Desktop Manager vì một số lý do thay đổi bởi nhà cung cấp. Thì tôi có backup cho bạn đây, hãy làm theo các bước dưới đây:
Step 1: wget https://github.com/uglide/RedisDesktopManager/releases/download/0.8.3/redis-desktop-manager_0.8.3-120_amd64.deb
Step 2: sudo dpkg -i redis-desktop-manager_0.8.3-120_amd64.deb
Nếu thấy bất kỳ lổi dependencies xuất hiện trong khi chạy step 2. Đừng lo lắng tiếp step 3
Step 3: sudo apt-get -f install
Chúng mừng đã cài xong
Step 4: chạy Redis Desktop Manager với lệnh sau:
sudo redis-desktop-manager