Linuxシステム:ビルドの下Centos7 ClickHouse柱状ストレージ・データベース

この記事の出所:GitHubにはこちらをクリック・ || GitEE・こちらをクリック

、ClickHouseプロフィール

1.はじめに換算

Yandexのデータベースのオープンソースのデータ分析は、ストリーミングやストレージのロットのClickHouse、時系列データと呼ばれます。ClickHouseは(例えばGROUP BYなど)集約クエリ用語に超高性能質量データ高速クエリデータとして汎用データベースとして使用されるが、リアルタイム分散処理プラットフォームされるべきではない、ClickHouseは非常に迅速に問い合わせます。

下载仓库:https://repo.yandex.ru/clickhouse
中文文档:https://clickhouse.yandex/docs/zh/

2、データベースを備え

(1)列データベース

列ベースのデータ・ストレージ・データベースのデータベース・ストレージ・インフラ関連の列は、主にバルクデータ処理およびリアルタイムクエリの。

(2)データ圧縮

一部の柱状データベース管理システムでは、データは圧縮されません。ただし、データ圧縮は確かに優れたストレージシステムを実現する上で重要な役割を果たしています。

ディスクストレージ(3)データ

多くの列ベースのデータベースはメモリ内だけで作業することができ、このアプローチは、実際の機器の予算よりも多くになります。ClickHouseシステムは、GBあたりのストレージ・コストを提供し、従来のディスク上で動作するように設計されています。

(4)マルチコア並列処理

大きなクエリは、現在のサーバー上で利用可能なすべてのリソースを使用するためには、非常に自然な形に加工ClickHouseを並列化することができます。

(5)マルチサーバ分散処理

ClickHouseでは、データは、フォールトトレランス、並列クエリ処理のための複製組成物のセットによって各シャードは全てシャード上で実行される、異なるシャード上に格納されてもよいです。

(6)SQLおよびインデックスをサポートしています

ほとんどの場合、言語はSQL標準と互換性があり、SQLベースのクエリ言語をサポートしていClickHouse。サポートされているクエリはGROUPBY、ORDERBY、IN、登録しようと、非相関サブクエリが含まれています。これは、ウィンドウ関数および関連サブクエリをサポートしていません。ソートデータは、特定の値または範囲検索を見つけるために、数十ミリ秒に役立ちますマスターキー、ClickHouse低遅延データに応じました。

(7)ベクターエンジン

CPUを効率的に使用するために、データはなく、処理のためのベクター(カラム)によって、列に格納されていません。

(8)リアルタイムデータの更新

ClickHouseは、テーブルの主キーを定義サポートされています。すぐに主キーで範囲を見つけるために、クエリを作成するためには、データがでMergeTreeに保存されている秩序刻みで常にあります。このように、連続したデータを効率的にテーブルに書き込むことができ、プロセスがロック書面挙動を示しません。

二、Linuxのインストールプロセスの下で

1、ダウンロード倉庫

curl -s 
https://packagecloud.io/install/repositories/altinity/clickhouse/script.rpm.sh 
| sudo os=centos dist=7 bash

2は、インストールパッケージを見ます

sudo yum list 'clickhouse*'

3、インストールサービス

sudo yum install -y clickhouse-server clickhouse-client

4、インストールリストを参照してください

sudo yum list installed 'clickhouse*'

コンソール出力

Installed Packages
clickhouse-client.noarch
clickhouse-common-static.x86_64
clickhouse-server.noarch

図5は、設定を表示します

  • CDの/ etc / clickhouseサーバ/
  • vimのconfig.xmlに
数据目录:/var/lib/clickhouse/
临时目录:/var/lib/clickhouse/tmp/
日志目录:/var/log/clickhouse-server
HTTP端口:8123
TCP 端口:9000

6、アクセスを設定します

config.xmlファイルには、以下のコメントを削除するように設定しました。

<listen_host>::</listen_host> 

7、サービスを開始

/etc/rc.d/init.d/clickhouse-server start

8、サービスを表示

ps -aux |grep clickhouse

第三に、基本的な操作

1、table文の構築

CREATE TABLE cs_user_info (
  `id` UInt64,
  `user_name` String,
  `pass_word` String,
  `phone` String,
  `email` String,
  `create_day` Date DEFAULT CAST(now(),'Date')
) ENGINE = MergeTree(create_day, intHash32(id), 8192)

注:公式の推奨エンジン、MergeTree

間違いなく表MergeTreeエンジンや他のエンジンでシリーズ(* MergeTree)(ツリーをマージ)の中で最も強力なエンジンをClickhouse。次のように基本的な考え方MergeTreeエンジンシリーズがあります。あなたがテーブルに挿入するデータの膨大な量を持っているときは、効率的なバッチデータセグメントを記述する必要があり、バックグラウンドで一定の規則に従ってデータ統合のこれらの部分ことを願っています。メモリに常に(書き換え)を変更し、データを挿入するために比較すると、この戦略は多く、効率的になります。

2、一括書き込み

INSERT INTO cs_user_info 
  (id,user_name,pass_word,phone,email) 
VALUES 
  (1,'cicada','123','13923456789','cicada@com'),
  (2,'smile','234','13922226789','smile@com'),
  (3,'spring','345','13966666789','spring@com');

3、クエリ

SELECT * FROM cs_user_info ;
SELECT * FROM cs_user_info WHERE user_name='smile' AND pass_word='234';
SELECT * FROM cs_user_info WHERE id IN (1,2);
SELECT * FROM cs_user_info WHERE id=1 OR id=2 OR id=3;

MySQLデータベースのクエリや操作は非常に似ています。

第四に、送信元アドレス

GitHub·地址
https://github.com/cicadasmile/linux-system-base
GitEE·地址
https://gitee.com/cicadasmile/linux-system-base

Linuxシステム:ビルドの下Centos7 ClickHouse柱状ストレージ・データベース

おすすめ

転載: blog.51cto.com/14439672/2446105