StarRocks下载使用说明和基础操作

简介

StarRocks 是一款高性能分析型数据仓库,使用向量化、MPP 架构、CBO、智能物化视图、可实时更新的列式存储引擎等技术实现多维、实时、高并发的数据分析。StarRocks 既支持从各类实时和离线的数据源高效导入数据,也支持直接分析数据湖上各种格式的数据。StarRocks 兼容 MySQL 协议,可使用 MySQL 客户端和常用 BI 工具对接。同时 StarRocks 具备水平扩展,高可用、高可靠、易运维等特性。广泛应用于实时数仓、OLAP 报表、数据湖分析等场景。

下载

文中使用版本为3.2.4,可通过官网自行下载

准备部署文件 | StarRocks

文章中使用的是存算一体架构,starrocks也支持存算分离架构

解压

tar -zxvf StarRocks-3.2.4.tar.gz

目录结构

启动 Leader FE 节点

创建元数据存储路径

mkdir -p /opt/starrocks/data/fe

修改 FE 配置文件

vim fe/conf/fe.conf

启动 FE 节点

./fe/bin/start_fe.sh --daemon

查看 FE 日志

cat fe/log/fe.log | grep thrift

如果日志打印以下内容,则说明该 FE 节点启动成功:

启动 BE 服务

创建数据存储路径

mkdir -p /opt/starrocks/data/be

修改 BE 配置文件 be/conf/be.conf

vim be/conf/be.conf

启动 BE 节点

./be/bin/start_be.sh --daemon

查看 BE 日志

cat be/log/be.INFO | grep heartbeat

如果日志打印以下内容,则说明该 BE 节点启动成功:

停止命令

停止 FE 节点。

./fe/bin/stop_fe.sh --daemon

停止 BE 节点。

./be/bin/stop_be.sh --daemon

添加BE节点至集群

通过工具连接,需要在服务器预装mysql客户端

mysql -h 192.168.x.xx -P 9030 -uroot

查看 Leader FE 节点状态

SHOW PROC '/frontends'\G

如果字段 Alive 为 true,说明该 FE 节点正常启动并加入集群。

如果字段 Role 为 FOLLOWER,说明该 FE 节点有资格被选为 Leader FE 节点。

如果字段 Role 为 LEADER,说明该 FE 节点为 Leader FE 节点。

添加 BE 节点至集群。

ALTER SYSTEM ADD BACKEND "192.168.x.xx:9050";

查看 BE 节点状态

SHOW PROC '/backends'\G

如果字段 Alive 为 true,说明该 BE 节点正常启动并加入集群。

这样就可以通过工具连接,跟连接mysql类似,这里使用的是navicat

测试语句

CREATE DATABASE example_db;

USE example_db;

-- 新建用户并授权

create user 'testuser'@'%' IDENTIFIED by '123456';

GRANT all ON databasename.* TO 'testuser'@'%';

-- 仅包含一个 BE,所以需要加PROPERTIES( "replication_num" = "1" )

CREATE TABLE user_access (

uid int,

name varchar(64),

age int,

phone varchar(16),

last_access datetime,

credits double

)

PROPERTIES( "replication_num" = "1" );

CREATE TABLE orders1 (

order_id bigint NOT NULL,

dt date NOT NULL,

user_id INT NOT NULL,

good_id INT NOT NULL,

cnt int NOT NULL,

revenue int NOT NULL

)

PRIMARY KEY (order_id)

DISTRIBUTED BY HASH (order_id)

PROPERTIES( "replication_num" = "1" )

;

CREATE TABLE orders2 (

order_id bigint NOT NULL,

dt date NOT NULL,

merchant_id int NOT NULL,

user_id int NOT NULL,

good_id int NOT NULL,

good_name string NOT NULL,

price int NOT NULL,

cnt int NOT NULL,

revenue int NOT NULL,

state tinyint NOT NULL

)

PRIMARY KEY (order_id,dt,merchant_id)

PARTITION BY date_trunc('day', dt)

DISTRIBUTED BY HASH (merchant_id)

ORDER BY (dt,merchant_id)

PROPERTIES (

"enable_persistent_index" = "true",

"replication_num" = "1"

);

CREATE TABLE detail (

event_time DATETIME NOT NULL COMMENT "datetime of event",

event_type INT NOT NULL COMMENT "type of event",

user_id INT COMMENT "id of user",

device_code INT COMMENT "device code",

channel INT COMMENT "")

ORDER BY (event_time, event_type)

PROPERTIES( "replication_num" = "1" );

CREATE TABLE aggregate_tbl (

site_id LARGEINT NOT NULL COMMENT "id of site",

date DATE NOT NULL COMMENT "time of event",

city_code VARCHAR(20) COMMENT "city_code of user",

pv BIGINT SUM DEFAULT "0" COMMENT "total page views"

)

AGGREGATE KEY(site_id, date, city_code)

DISTRIBUTED BY HASH(site_id)

PROPERTIES( "replication_num" = "1" );

CREATE TABLE orders4 (

create_time DATE NOT NULL COMMENT "create time of an order",

order_id BIGINT NOT NULL COMMENT "id of an order",

order_state INT COMMENT "state of an order",

total_price BIGINT COMMENT "price of an order"

)

UNIQUE KEY(create_time, order_id)

DISTRIBUTED BY HASH(order_id);

PROPERTIES( "replication_num" = "1" );

DESCRIBE user_access;

SHOW CREATE TABLE user_access;

-- 从本地文件导入数据

CREATE TABLE `table1`

(

`id` int(11) NOT NULL COMMENT "用户 ID",

`name` varchar(65533) NULL COMMENT "用户姓名",

`score` int(11) NOT NULL COMMENT "用户得分"

)

ENGINE=OLAP

PRIMARY KEY(`id`)

DISTRIBUTED BY HASH(`id`)

PROPERTIES( "replication_num" = "1" );

-- 查看 FE 节点的 IP 地址和 HTTP 端口号。

SHOW FRONTENDS;

-- 导入作业

curl --location-trusted -u root: -H "label:123" -H "Expect:100-continue" -H "column_separator:," -H "columns: id, name, score" -T D:\\data\\test.csv -XPUT http://192.168.5.66:8030/api/example_db/table1/_stream_load

select * from table1;

相关推荐
StarRocks_labs1 天前
淘宝闪购实时分析黑科技:StarRocks + Paimon撑起秋天第一波奶茶自由
starrocks·数据湖·阿里巴巴·paimon·物化视图
镜舟科技3 天前
告别 Hadoop,拥抱 StarRocks!政采云数据平台升级之路
大数据·starrocks·数据仓库·hadoop·存算分离
StarRocks_labs13 天前
欧洲数字化养殖平台 Herdwatch 借力 Iceberg + StarRocks 提升分析能力
数据库·starrocks·iceberg·湖仓一体架构·herdwatch
阿里云大数据AI技术17 天前
鹰角网络基于阿里云 EMR Serverless StarRocks 的实时分析工程实践
starrocks·clickhouse·阿里云·emr·实时分析
小Tomkk19 天前
StarRocks不能启动 ,StarRocksFe节点不能启动问题 处理
starrocks·log满了
jakeswang1 个月前
去哪儿StarRocks实践
starrocks·后端
鸿乃江边鸟1 个月前
Starrocks中的 Query Profile以及explain analyze及trace命令中的区别
大数据·starrocks·sql
鸿乃江边鸟1 个月前
Starrocks ShortCircuit短路径的调度
大数据·starrocks·sql
镜舟科技1 个月前
什么是列存储(Columnar Storage)?深度解析其原理与应用场景
starrocks·数据分析·列存储·行存储·mpp分布式架构