Giới thiệu
RethinkDB là một cơ sở dữ liệu NoQuery lưu trữ dữ liệu dưới dạng tài liệu JSON. Nó có một ngôn ngữ truy vấn siêu trực quan và có các tính năng thường có sẵn trong RDBMS truyền thống như "tham gia bảng" và "nhóm theo". Hướng dẫn này sẽ giải thích cách thiết lập cụm RethinkDB bằng cách sử dụng 3 máy chủ VPS Vultr chạy Ubuntu 14.04.
Cài đặt
Tạo tập lệnh khởi động Vultr mới bằng cách sử dụng nội dung sau đây làm mẫu.
#!/usr/bin/env bash
echo ">>> Installing RethinkDB<<<"
# Add RethinkDB Repo to list of Repos
source /etc/lsb-release && echo "deb http://download.rethinkdb.com/apt $DISTRIB_CODENAME main" | sudo tee /etc/apt/sources.list.d/rethinkdb.list
wget -qO- http://download.rethinkdb.com/apt/pubkey.gpg | sudo apt-key add -
# Update Apt Repo & Install RethinkDB
sudo apt-get update
sudo apt-get install -qq rethinkdb
Tạo một cá thể Vultr VM bằng cách chọn bất kỳ Loại Máy chủ , Vị trí và Kích thước Máy chủ nào bạn chọn. Đối với lựa chọn Hệ điều hành , đảm bảo chọn Ubuntu 14.04 x64 và kiểm tra tùy chọn Bật Mạng riêng . Ngoài ra, LÀM THẾ NÀO để chọn tập lệnh khởi động được tạo ở trên trước khi đặt hàng.
Kết nối với sơ đồ VM mới của bạn
Khi phiên bản VM mới của bạn đã sẵn sàng, hãy kết nối với nó từ thiết bị đầu cuối / dấu nhắc lệnh thông qua SSH.
ssh root@[vultr-ip-address]
Khi được nhắc nhập mật khẩu của bạn, hãy sử dụng mật khẩu ban đầu trong tab "thông tin máy chủ" từ quản trị viên Vultr.
Bạn có thể cập nhật mật khẩu của mình bằng cách nhập passwd
và nhấn phím ENTER . Ubuntu sẽ nhắc bạn nhập mật khẩu mới (theo cách này bạn có thể chọn thứ gì đó mà bạn dễ nhớ).
Truy cập cơ sở dữ liệu
Bắt đầu RethinkDB bằng cách chạy lệnh bên dưới. Lưu ý rằng chúng tôi "ràng buộc tất cả" để chúng tôi không gặp phải sự cố khi cố gắng truy cập giao diện quản trị web của RethinkDB.
rethinkdb --bind all
Khi RethinkDB được khởi động, bạn truy cập nó bằng dòng lệnh hoặc giao diện web.
Đăng nhập trang web
Để truy cập qua web, hãy sử dụng cổng 8080 bằng cách nhập http://[vultr-ip-address]:8080
vào thanh địa chỉ của trình duyệt web của bạn. Bạn sẽ thấy công cụ quản trị web tuyệt vời của RethinkDB.
Truy cập dòng lệnh
Để truy cập thông qua dòng lệnh, hãy bắt đầu phiên thiết bị đầu cuối / dấu nhắc lệnh mới và kết nối với máy chủ qua SSH như đã giải thích trước đó. Sau đó, ban hành lệnh rethinkdb admin join 127.0.0.1:29015
. Đảm bảo sử dụng cổng 29015 .
Xóa cơ sở dữ liệu kiểm tra
Chúng tôi sẽ sử dụng giao diện web trong tương lai để thao tác cơ sở dữ liệu. Truy cập nó bằng cách duyệt đến http://[vultr-ip-address]:8080
và nhấp vào liên kết "Bảng". Bạn sẽ thấy RethinkDB đã cài đặt cơ sở dữ liệu "thử nghiệm". Nhấp vào liên kết "Data Explorer" và chạy bên dưới lệnh để xóa cơ sở dữ liệu "kiểm tra".
r.dbDrop('test')
Chơi xung quanh trong cơ sở dữ liệu
Mặc dù vẫn ở phần "Data Explorer" của quản trị viên RethinkDB, hãy tạo một cơ sở dữ liệu mới có tên "tweetDB" bằng cách chạy mã bên dưới.
r.dbCreate('tweetDB')
Tiếp theo, tạo một bảng "tweet".
r.db('tweetDB').tableCreate('tweets')
Chèn một số bản ghi vào bảng "tweet".
r.db('tweetDB').table('tweets').insert([
{
name: 'Lami',
twitterHandle: 'mrLami',
message: 'Best cloud hosting on the planet - vultr'
},
{
name: 'Vultr Hosting',
twitterHandle: '@TheVultr',
message: '50% off on new instances - coupon - tgif'
}
])
Truy vấn bảng "tweet" để xem kết quả.
r.db('tweetDB').table('tweets')
Bạn sẽ thấy phần dưới đây trong chế độ xem dạng cây (với các id khác nhau).
[
{
"id": "6afe436c-7db4-4c86-b4db-3279acb3265d" ,
"message": "50% off on new instances - coupon - tgif" ,
"name": "Vultr Hosting" ,
"twitterHandle": "@TheVultr"
} ,
{
"id": "fd328cd5-d9f4-40ee-8a32-880cd8cda15d" ,
"message": "Best cloud hosting on the planet - vultr" ,
"name": "Lami" ,
"twitterHandle": "mrLami"
}
]
Thiết lập cụm
Quay lên máy thứ hai và thứ ba bằng cách sử dụng các hướng dẫn từ các phần "Cài đặt" , "Kết nối với sơ đồ VM mới của bạn" và "Truy cập cơ sở dữ liệu" của hướng dẫn này. Đảm bảo xóa cơ sở dữ liệu "kiểm tra" trên mỗi trường hợp mới và KHÔNG thêm bất kỳ cơ sở dữ liệu mới nào vào chúng.
Sau khi xóa cơ sở dữ liệu "kiểm tra" từ phiên bản thứ hai và thứ ba, hãy quay lại lời nhắc lệnh của họ và dừng RethinkDB bằng cách phát hành Ctrl + C (hoặc Cmd + C trên máy Mac). Bây giờ bắt đầu RethinkDB một lần nữa trong các trường hợp này bằng cách sử dụng lệnh bên dưới (về cơ bản chúng tôi đang nói với các thể hiện thứ hai và thứ ba mới tham gia lần đầu tiên).
$ rethinkdb --join [ip-of-first-vultr-vm]:29015 --bind all
Trong trường hợp thứ hai và thứ ba, truy cập giao diện quản trị web và đi đến phần "Data Explorer". Chạy truy vấn sau đây để có được một danh sách các tweet.
r.db('tweetDB').table('tweets')
Bạn sẽ thấy rằng chúng đã được sao chép từ phiên bản chính (thiết lập VM đầu tiên).
Phần kết luận
Mặc dù RethinkDB vẫn còn ở giai đoạn đầu tại thời điểm viết bài này, nhưng nó có rất nhiều hứa hẹn và có giao diện quản trị dựa trên web mạnh mẽ, giúp các tác vụ khó khăn thường liên quan đến việc mở rộng cơ sở dữ liệu (shending, sao chép) dễ dàng thực hiện chỉ với một vài nhấp chuột.
Để đọc thêm, hãy truy cập Tài liệu RethinkDB . Ngoài ra, hãy xem kênh IRC #rethinkdb để tìm hiểu thêm từ cộng đồng.
Các phiên bản khác
CentOS 7
Ubuntu 14
Viết bởi Lami Adabonyan