blob: d63efbf18f864cb77fdb28c2f422b1dc7950b50c [file]
---
{
"title": "クイックスタート | はじめに",
"language": "ja",
"description": "Doris バージョン 2.1.8 以降、Docker を使用した迅速なデプロイメントが可能です。",
"sidebar_label": "Quick Start"
}
---
# クイックスタート
:::caution 警告:
以下の高速デプロイメント方法は、ローカル開発およびテスト専用を目的としており、本番環境では使用しないでください。理由は以下の通りです:
1. **データの脆弱性**: Dockerデプロイメントを使用する場合、コンテナ破棄時にデータが失われるため、データが簡単に失われる可能性があります。単一レプリカインスタンスの手動デプロイメントには、データの冗長性とバックアップ機能が不足しており、マシン障害によりデータ損失が発生する可能性があります。
2. **単一レプリカ構成**: 例のテーブル作成ステートメントはすべて単一レプリカです。本番環境では、データの信頼性を確保するためにマルチレプリカストレージを使用する必要があります。
:::
## Dockerを使用したクイックデプロイメント
Dorisバージョン2.1.8以降、Dockerを高速デプロイメントに使用できます。
### ステップ1: Quick-Startスクリプトをダウンロード
<a target="_blank" download rel="noopener noreferrer" href="/files/start-doris.sh"> スクリプトをダウンロード </a>し、以下のコマンドを実行して対応する実行権限を付与します。
```shell
chmod 755 start-doris.sh
```
### Step 2: クラスターを開始する
スクリプトを実行してクラスターを開始します。`-v`パラメータを使用して3.xバージョンを指定してください:
```shell
bash start-doris.sh -v 3.0.8
```
### ステップ3: MySQLクライアントを使用してクラスターに接続し、クラスターのステータスを確認する
```sql
## Check the FE status to ensure that both the Join and Alive columns are true.
mysql -uroot -P9030 -h127.0.0.1 -e 'SELECT `host`, `join`, `alive` FROM frontends()'
+-----------+------+-------+
| host | join | alive |
+-----------+------+-------+
| 127.0.0.1 | true | true |
+-----------+------+-------+
## Check the BE status to ensure that the Alive column is true.
mysql -uroot -P9030 -h127.0.0.1 -e 'SELECT `host`, `alive` FROM backends()'
+-----------+-------+
| host | alive |
+-----------+-------+
| 127.0.0.1 | 1 |
+-----------+-------+
```
## ローカル高速デプロイ
:::info 環境推奨設定:
* **オペレーティングシステム**: Ubuntu以上のAMD/ARM主流Linux環境の使用を推奨します。
* **Java環境**: Java 17ランタイム環境の使用を推奨します。
* **ユーザー権限**: LinuxでDorisユーザーを新規作成し、root ユーザーでの操作を避けることを推奨します。
:::
### Step 1: バイナリパッケージのダウンロード
Apache Doris のウェブサイト[こちら](https://doris.apache.org/download)から対応するバイナリインストールパッケージをダウンロードし、展開してください。
### Step 2: 環境変数の変更
1. **システムの最大オープンファイルディスクリプタ制限の変更**
以下のコマンドを使用して最大ファイルディスクリプタ制限を調整してください。この変更を行った後、設定を適用するためにセッションを再起動する必要があります:
```sql
vi /etc/security/limits.conf
* soft nofile 1000000
* hard nofile 1000000
```
2. **仮想メモリ領域の変更**
以下のコマンドを使用して、仮想メモリ領域を最小2000000に永続的に変更し、変更を即座に適用します:
```bash
cat >> /etc/sysctl.conf << EOF
vm.max_map_count = 2000000
EOF
## Take effect immediately
sysctl -p
```
### ステップ3: FEをインストール
1. **FEを設定**
FE設定ファイル`apache-doris/fe/conf/fe.conf`の以下の内容を変更してください:
```sql
## Specify Java environment
JAVA_HOME=/home/doris/jdk
## Specify the CIDR block for FE listening IP
priority_networks=127.0.0.1/32
```
2. **FEの開始**
`start_fe.sh`スクリプトを実行してFEプロセスを起動します:
```sql
apache-doris/fe/bin/start_fe.sh --daemon
```
3. **FEステータスの確認**
MySQLクライアントを使用してクラスターに接続し、クラスターステータスを確認します:
```sql
## Check FE Status to ensure that both the Join and Alive columns are true
mysql -uroot -P9030 -h127.0.0.1 -e "show frontends;"
+-----------------------------------------+-----------+-------------+----------+-----------+---------+----------+----------+-----------+------+-------+-------------------+---------------------+----------+--------+-------------------------+------------------+
| Name | Host | EditLogPort | HttpPort | QueryPort | RpcPort | Role | IsMaster | ClusterId | Join | Alive | ReplayedJournalId | LastHeartbeat | IsHelper | ErrMsg | Version | CurrentConnected |
+-----------------------------------------+-----------+-------------+----------+-----------+---------+----------+----------+-----------+------+-------+-------------------+---------------------+----------+--------+-------------------------+------------------+
| fe_9d0169c5_b01f_478c_96ab_7c4e8602ec57 | 127.0.0.1 | 9010 | 8030 | 9030 | 9020 | FOLLOWER | true | 656872880 | true | true | 276 | 2024-07-28 18:07:39 | true | | doris-2.0.12-2971efd194 | Yes |
+-----------------------------------------+-----------+-------------+----------+-----------+---------+----------+----------+-----------+------+-------+-------------------+---------------------+----------+--------+-------------------------+------------------+
```
### ステップ4:BEのインストール
1. **BEの設定**
BE設定ファイル`apache-doris/be/conf/be.conf`の以下の内容を変更します:
```sql
## Specify Java environment
JAVA_HOME=/home/doris/jdk
## Specify the CIDR block for BE's listening IP
priority_networks=127.0.0.1/32
```
2. **BE の開始**
以下のコマンドで BE プロセスを開始します:
```sql
apache-doris/be/bin/start_be.sh --daemon
```
3. **クラスター内でBEノードを登録する**
MySQLクライアントを使用してクラスターに接続します:
```sql
mysql -uroot -P9030 -h127.0.0.1
```
ADD BACKEND コマンドを使用してBEノードを登録します:
```sql
ALTER SYSTEM ADD BACKEND "127.0.0.1:9050";
```
4. **BE ステータスの確認**
MySQL クライアントを使用してクラスターに接続し、クラスターのステータスを確認します:
```sql
## Check BE Status to ensure that the Alive column is true
mysql -uroot -P9030 -h127.0.0.1 -e "show backends;"
+-----------+-----------+---------------+--------+----------+----------+---------------------+---------------------+-------+----------------------+-----------+------------------+--------------------+---------------+---------------+---------+----------------+--------------------+--------------------------+--------+-------------------------+-------------------------------------------------------------------------------------------------------------------------------+-------------------------+----------+
| BackendId | Host | HeartbeatPort | BePort | HttpPort | BrpcPort | LastStartTime | LastHeartbeat | Alive | SystemDecommissioned | TabletNum | DataUsedCapacity | TrashUsedCapcacity | AvailCapacity | TotalCapacity | UsedPct | MaxDiskUsedPct | RemoteUsedCapacity | Tag | ErrMsg | Version | Status | HeartbeatFailureCounter | NodeRole |
+-----------+-----------+---------------+--------+----------+----------+---------------------+---------------------+-------+----------------------+-----------+------------------+--------------------+---------------+---------------+---------+----------------+--------------------+--------------------------+--------+-------------------------+-------------------------------------------------------------------------------------------------------------------------------+-------------------------+----------+
| 10156 | 127.0.0.1 | 9050 | 9060 | 8040 | 8060 | 2024-07-28 17:59:14 | 2024-07-28 18:08:24 | true | false | 14 | 0.000 | 0.000 | 8.342 GB | 19.560 GB | 57.35 % | 57.35 % | 0.000 | {"location" : "default"} | | doris-2.0.12-2971efd194 | {"lastSuccessReportTabletsTime":"2024-07-28 18:08:14","lastStreamLoadTime":-1,"isQueryDisabled":false,"isLoadDisabled":false} | 0 | mix |
+-----------+-----------+---------------+--------+----------+----------+---------------------+---------------------+-------+----------------------+-----------+------------------+--------------------+---------------+---------------+---------+----------------+--------------------+--------------------------+--------+-------------------------+-------------------------------------------------------------------------------------------------------------------------------+-------------------------+----------+
```
## クエリの実行
1. **MySQL clientを使用してクラスターに接続する:**
```sql
mysql -uroot -P9030 -h127.0.0.1
```
2. **データベースとテストテーブルを作成:**
```sql
create database demo;
use demo;
create table mytable
(
k1 TINYINT,
k2 DECIMAL(10, 2) DEFAULT "10.05",
k3 CHAR(10) COMMENT "string column",
k4 INT NOT NULL DEFAULT "1" COMMENT "int column"
)
COMMENT "my first table"
DISTRIBUTED BY HASH(k1) BUCKETS 1
PROPERTIES (
"replication_num" = "1"
);
```
3. **テストデータをインポート:**
Insert Into文を使用してテストデータを挿入する
```sql
insert into mytable values
(1,0.14,'a1',20),
(2,1.04,'b2',21),
(3,3.14,'c3',22),
(4,4.35,'d4',23);
```
4. **インポートされたデータを表示するために、MySQLクライアントで以下のSQLクエリを実行してください:**
```sql
MySQL [demo]> select * from demo.mytable;
+------+------+------+------+
| k1 | k2 | k3 | k4 |
+------+------+------+------+
| 1 | 0.14 | a1 | 20 |
| 2 | 1.04 | b2 | 21 |
| 3 | 3.14 | c3 | 22 |
| 4 | 4.35 | d4 | 23 |
+------+------+------+------+
4 rows in set (0.10 sec)
```
## FAQ
**Q: MacでDockerをインストールするにはどうすればよいですか?**
A: [Docker Desktop](https://www.docker.com/products/docker-desktop/)をダウンロードしてインストールしてください。
**Q: Mac: Docker Desktopインストール後に「Error: Docker environment not detected」が表示される**
A: symlinkを作成してください:
```shell
sudo ln -s /Applications/Docker.app/Contents/Resources/bin/docker /usr/local/bin/docker
```
**Q: Mac: "error getting credentials - err: exit status 1, out: \`\`"**
A: このエラーは通常、Dockerクレデンシャルヘルパーの設定ミスが原因です。ローカル開発/テスト環境では、回避策として`~/.docker/config.json`の`credsStore`フィールドを削除できます。注意: この回避策はクレデンシャルを平文で保存するため、ローカル開発環境でのみ推奨されます。