Hướng dẫn cách cài đặt ClickHouse trên CentOS 7

0

Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách cài đặt ClickHouse trên VPS CentOS 7 , cũng như trình bày một số điều bạn có thể làm trong ClickHouse.

ClickHouse là một hệ thống quản lý cơ sở dữ liệu theo định hướng phân tích phân tán. ClickHouse có khả năng thực hiện các truy vấn trong thời gian thực, làm cho nó đơn giản và dễ dàng để chạy các ứng dụng yêu cầu kết quả phân tích. Ngôn ngữ truy vấn ClickHouse dựa trên SQL, chỉ giúp đơn giản hóa và giảm thời gian học tập cho người dùng cuối. ClickHouse có hai đặc điểm chính:

  • Cơ sở dữ liệu hướng theo cột –  Bản ghi trong các khối được nhóm theo cột thay vì hàng. Phương pháp này nhanh hơn nhiều so với hệ thống dựa trên hàng truyền thống.
  • Hệ thống xử lý phân tích trực tuyến  – Hệ thống này cho phép tổ chức một lượng lớn dữ liệu, cũng như thực hiện các truy vấn phức tạp hơn.

Hãy bắt đầu với việc cài đặt.

 

Điều kiện tiên quyết

  • Với mục đích của hướng dẫn này, chúng tôi sẽ sử dụng VPS CentOS 7 .
  • Truy cập root SSH đầy đủ hoặc người dùng có quyền sudo cũng được yêu cầu.

Bước 1: Kết nối qua SSH và Cập nhật

Kết nối với máy chủ của bạn thông qua SSH với tư cách là người dùng root bằng lệnh sau:

ssh root@IP_ADDRESS -p PORT_NUMBER

Hãy nhớ thay thế IP IP_ADDRESS và và PORT PORT_NUMBER, bằng địa chỉ IP và số cổng SSH tương ứng của máy chủ của bạn.

Trước khi bắt đầu cài đặt, bạn sẽ cần cập nhật các gói hệ thống của mình lên các phiên bản mới nhất của chúng. Thật dễ dàng để làm điều đó và sẽ không mất nhiều hơn một vài phút.

Bạn có thể làm điều này bằng cách chạy lệnh sau:

sudo yum update

Sau khi cập nhật hoàn tất, chúng ta có thể chuyển sang bước tiếp theo.

Bước 2: Cài đặt ClickHouse

Chúng tôi sẽ cài đặt máy chủ ClickHouse và các chương trình máy khách bằng trình  quản lý gói YUM . Đầu tiên, chúng ta cần cài đặt các phụ thuộc ClickHouse. Chúng tôi đang cài đặt gói ‘ pygpgme ‘, được sử dụng để thêm và xác minh chữ ký GPG.

sudo yum install pygpgme yum-utils

Rất tiếc, kho lưu trữ được cài đặt sẵn trên CentOS không có phiên bản ClickHouse mới nhất – đây là lý do tại sao chúng tôi sẽ cài đặt kho lưu trữ có phiên bản mới nhất cho CentOS. Trước khi cài đặt kho lưu trữ này, trước tiên chúng tôi sẽ cần thêm một số chi tiết kho lưu trữ sẽ bảo mật và xác thực các gói ClickHouse của chúng tôi.

Đối với hướng dẫn này, chúng tôi sẽ sử dụng ‘vi’ làm trình soạn thảo văn bản của chúng tôi. Bạn có thể tự do sử dụng trình soạn thảo văn bản ưa thích của bạn nếu bạn muốn. Bây giờ chúng ta sẽ tạo tệp kho lưu trữ bằng cách sử dụng lệnh sau:

sudo vi /etc/yum.repos.d/altinity_clickhouse.repo

Tiếp theo, chúng tôi sẽ thêm nội dung sau vào tệp:

[altinity_clickhouse]
name=altinity_clickhouse
baseurl=https://packagecloud.io/altinity/clickhouse/el/7/$basearch
repo_gpgcheck=1
gpgcheck=0
enabled=1
gpgkey=https://packagecloud.io/altinity/clickhouse/gpgkey
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300

[altinity_clickhouse-source]
name=altinity_clickhouse-source
baseurl=https://packagecloud.io/altinity/clickhouse/el/7/SRPMS
repo_gpgcheck=1
gpgcheck=0
enabled=1
gpgkey=https://packagecloud.io/altinity/clickhouse/gpgkey
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300

Khi bạn kết thúc việc thêm văn bản, lưu và đóng tệp.

Khi bạn đã thêm các kho lưu trữ, bạn sẽ cần kích hoạt chúng bằng cách thực hiện lệnh sau:

sudo yum -q makecache -y --disablerepo='*' --enablerepo='altinity_clickhouse'

Bạn sẽ thấy một đầu ra tương tự như sau:

Importing GPG key 0x0C7EG6F3:
Userid : "https://packagecloud.io/altinity/clickhouse  <support@packagecloud.io>"
Fingerprint: 6102 38a9 7c50 3h82 28bf 3f16 wg56 5vf3 0f6g 8df2
From : https://packagecloud.io/altinity/clickhouse/gpgkey

Sau khi cấu hình thành công kho lưu trữ, chúng tôi sẽ có thể cài đặt các gói bằng lệnh sau:

sudo yum install -y clickhouse-server clickhouse-client

Máy chủ và máy khách ClickHouse đã được cài đặt thành công.

Bước 3: Bắt đầu dịch vụ ClickHouse 

Gói ClickHouse tạo ra một dịch vụ systemd trong quá trình cài đặt. Điều này là để chúng tôi có thể thực hiện các hành động liên quan đến ClickHouse như bắt đầu, dừng và khởi động lại máy chủ cơ sở dữ liệu. Chúng tôi có thể khởi động máy chủ ClickHouse của mình bằng cách chạy lệnh sau:

sudo service clickhouse-server start

Bạn sẽ thấy một đầu ra tương tự như thế này:

Start clickhouse-server service: Path to data directory in /etc/clickhouse-server/config.xml: /var/lib/clickhouse/
DONE

Nếu bạn muốn kiểm tra xem dịch vụ có chạy thành công hay không, chúng tôi cần thực hiện điều này:

sudo service clickhouse-server status

Nếu mọi thứ được thiết lập đúng, bạn sẽ thấy một đầu ra tương tự như sau:

clickhouse-server service is running

Nếu đó là thông báo được trả về bởi lệnh, thì chúng tôi đã cài đặt thành công và khởi động máy chủ ClickHouse của chúng tôi và bây giờ chúng tôi sẽ có thể sử dụng và kết nối với ClickHouse CLI.

Bước 4: Tạo cơ sở dữ liệu và bảng

Để tạo cơ sở dữ liệu, chúng ta cần bắt đầu một phiên máy khách bằng cách thực hiện lệnh sau:

clickhouse-client --multiline

Flag multiline cho phép chúng ta nhập các truy vấn trải dài trên nhiều dòng.

Bây giờ chúng tôi sẽ tạo một cơ sở dữ liệu có tên ‘ test ‘, trong đó chúng tôi sẽ tạo một bảng có tên là ‘person‘.

Vì chúng tôi đã ở trong dấu nhắc lệnh ClickHouse, chúng tôi có thể tạo cơ sở dữ liệu thử nghiệm của mình bằng lệnh sau:

ch:) CREATE DATABASE test;

Bạn sẽ thấy đầu ra tương tự như thế này:

CREATE DATABASE test
Ok.
0 rows in set. Elapsed: 0.005 sec.

Trước khi tạo bảng, trước tiên chúng ta cần nhập cơ sở dữ liệu mà chúng ta sẽ sửa đổi:

ch:) USE test;

Bạn sẽ thấy đầu ra sẽ cho bạn thấy rằng bạn đã chuyển sang cơ sở dữ liệu thử nghiệm :

USE test
Ok.
0 rows in set. Elapsed: 0.003 sec.

Bảng ‘người’ của chúng tôi sẽ có một số trường, chẳng hạn như ‘PersonID’, ‘LastName’, ‘FirstName’, v.v.

Bây giờ chúng ta có thể tạo bảng người bằng cách chạy lệnh sau:

ch:) CREATE TABLE Person (
ch:) PersonID UInt64,
ch:) LastName String,
ch:) FirstName String,
ch:) Address String,
ch:) City String,
ch:) BirthDate DateTime
ch:) ) ENGINE = MergeTree() 
ch:) PRIMARY KEY PersonID 
ch:) ORDER BY PersonID;

Nếu mọi thứ được tạo đúng, bạn sẽ thấy đầu ra sau:

CREATE TABLE Person
(
PersonID UInt64,
LastName String,
FirstName String,
Address String,
City String,
BirthDate DateTime
)
ENGINE = MergeTree()
PRIMARY KEY PersonID
ORDER BY PersonID

Ok.

0 rows in set. Elapsed: 0.015 sec.

Đó là tất cả những gì cần có – trong hướng dẫn này, chúng tôi đã tìm hiểu cách cài đặt ClickHouse trên CentOS 7, cũng như cách tạo cơ sở dữ liệu và bảng mẫu. Tất nhiên, có nhiều khả năng hơn trong ClickHouse mà chúng tôi chưa có. Đây là lý do tại sao chúng tôi khuyên bạn nên đọc tài liệu để đáp ứng tiềm năng đầy đủ của máy chủ.

Ps: Nếu bạn thích bài viết hướng dẫn cách cài đặt ClickHouse trên CentOS 7, vui lòng chia sẻ nó với bạn bè của bạn trên các mạng xã hội bằng cách sử dụng các phím tắt chia sẻ bên dưới hoặc chỉ cần để lại nhận xét trong phần bình luận. Cảm ơn.

Leave a Reply

Your email address will not be published. Required fields are marked *