当前位置: 首页 > wzjs >正文

怎么做商务网站的架构泰安网站建设推荐

怎么做商务网站的架构,泰安网站建设推荐,青岛制作公司网站,快乐无极网站目录 一、Doris 核心概念 1.1 架构组成 1.2 数据模型 二、Doris 部署方式 2.1 单机部署(测试环境) 2.2 集群部署(生产环境) 三、数据操作指南 3.1 数据库与表管理 3.2 数据导入方式 3.2.1 批量导入 3.2.2 实时导入 3.…

目录

一、Doris 核心概念

1.1 架构组成

1.2 数据模型

二、Doris 部署方式

2.1 单机部署(测试环境)

2.2 集群部署(生产环境)

三、数据操作指南

3.1 数据库与表管理

3.2 数据导入方式

3.2.1 批量导入

3.2.2 实时导入

3.3 数据查询示例

四、性能优化实践

4.1 分区分桶策略

4.2 索引优化

4.3 查询优化技巧


Apache Doris 是一款高性能、实时的分析型数据库,广泛应用于大数据分析、实时报表等场景。本文将全面介绍 Doris 的核心概念、部署方式、数据操作及优化技巧。

下面附上官网地址:

Doris官网https://doris.apache.org/zh-CN/docs/dev/gettingStarted/what-is-apache-doris

一、Doris 核心概念

1.1 架构组成

  • FE (Frontend)​​:负责元数据管理、客户端连接和查询计划生成
  • BE (Backend)​​:负责数据存储和查询执行
  • Broker​:用于访问外部存储系统(如HDFS/S3)

1.2 数据模型

  • 明细模型(Duplicate Key)​​:适合原始数据存储
  • 聚合模型(Aggregate Key)​​:预聚合提高查询性能
  • 主键模型(Unique Key)​​:支持实时更新
  • 更新模型(Merge-on-Write)​​:2.0版本新增,更高性能更新

二、Doris 部署方式

2.1 单机部署(测试环境)

# 下载解压
wget https://apache-doris-releases.oss-accelerate.aliyuncs.com/doris-1.2.4-bin.tar.gz
tar -zxvf doris-1.2.4-bin.tar.gz# 启动FE
cd fe/bin/
./start_fe.sh --daemon# 启动BE
cd be/bin/
./start_be.sh --daemon

2.2 集群部署(生产环境)

-- 在FE节点添加BE节点
ALTER SYSTEM ADD BACKEND "be1:9050";
ALTER SYSTEM ADD BACKEND "be2:9050";
ALTER SYSTEM ADD BACKEND "be3:9050";-- 查看节点状态
SHOW PROC '/backends';

三、数据操作指南

3.1 数据库与表管理

-- 创建数据库
CREATE DATABASE demo_db;-- 创建明细表
CREATE TABLE demo_db.user_behavior (user_id LARGEINT NOT NULL,item_id LARGEINT NOT NULL,behavior_type VARCHAR(20),ts DATETIME NOT NULL
)
DUPLICATE KEY(user_id, item_id)
DISTRIBUTED BY HASH(user_id) BUCKETS 10
PROPERTIES ("replication_num" = "3","storage_medium" = "SSD"
);-- 创建聚合表
CREATE TABLE demo_db.sales_agg (dt DATE NOT NULL,product_id LARGEINT NOT NULL,user_region VARCHAR(50),SUM(sales_amount) BIGINT SUM,COUNT(sales_count) BIGINT COUNT
)
AGGREGATE KEY(dt, product_id, user_region)
DISTRIBUTED BY HASH(product_id) BUCKETS 10;

3.2 数据导入方式

3.2.1 批量导入
-- 本地文件导入
LOAD LABEL demo_db.label_20231101
(DATA INFILE("hdfs://path/to/file.parquet")
INTO TABLE user_behavior
FORMAT AS "parquet")
WITH BROKER "hdfs_broker";-- Stream Load(HTTP API)
curl --location-trusted -u user:passwd \
-H "column_separator:," \
-T data.csv \
http://fe_host:8030/api/demo_db/user_behavior/_stream_load
3.2.2 实时导入
-- Kafka实时接入
CREATE ROUTINE LOAD demo_db.kafka_load ON user_behavior
COLUMNS(user_id, item_id, behavior_type, ts)
PROPERTIES ("desired_concurrent_number" = "3","max_batch_interval" = "20","max_batch_rows" = "300000"
)
FROM KAFKA ("kafka_broker_list" = "broker1:9092,broker2:9092","kafka_topic" = "user_events","property.group.id" = "doris_consumer"
);

3.3 数据查询示例

-- 基础查询
SELECT user_region,SUM(sales_amount) AS total_sales
FROM sales_agg
WHERE dt BETWEEN '2023-10-01' AND '2023-10-31'
GROUP BY user_region
ORDER BY total_sales DESC
LIMIT 10;-- 窗口函数
SELECT user_id,ts,behavior_type,COUNT(*) OVER (PARTITION BY user_id ORDER BY ts RANGE INTERVAL 1 HOUR PRECEDING) AS hourly_actions
FROM user_behavior;-- 物化视图加速查询
CREATE MATERIALIZED VIEW mv_user_behavior_hourly
REFRESH EVERY INTERVAL 1 HOUR
AS
SELECT user_id,DATE_TRUNC('HOUR', ts) AS hour,COUNT(*) AS action_count,SUM(CASE WHEN behavior_type = 'buy' THEN 1 ELSE 0 END) AS buy_count
FROM user_behavior
GROUP BY user_id, DATE_TRUNC('HOUR', ts);

四、性能优化实践

4.1 分区分桶策略

-- 按天分区+哈希分桶
CREATE TABLE time_series_data (ts DATETIME NOT NULL,device_id LARGEINT NOT NULL,metric_value DOUBLE
)
ENGINE=OLAP
DUPLICATE KEY(ts, device_id)
PARTITION BY RANGE(ts) (PARTITION p202301 VALUES LESS THAN ('2023-02-01'),PARTITION p202302 VALUES LESS THAN ('2023-03-01'),PARTITION p202303 VALUES LESS THAN ('2023-04-01')
)
DISTRIBUTED BY HASH(device_id) BUCKETS 32
PROPERTIES ("replication_num" = "3","storage_medium" = "SSD","storage_cooldown_time" = "7 days"
);

4.2 索引优化

-- 添加倒排索引
ALTER TABLE user_behavior 
ADD INDEX idx_behavior_type (behavior_type) USING INVERTED;-- 添加Bloom Filter索引
ALTER TABLE sales_agg 
ADD INDEX bf_product_id (product_id) USING BLOOM_FILTER;

4.3 查询优化技巧

-- 使用分区裁剪
SELECT * FROM time_series_data 
WHERE ts BETWEEN '2023-03-15' AND '2023-03-20';-- 使用Bucket裁剪
SELECT * FROM user_behavior 
WHERE user_id = 10086;-- 使用Colocate Group
CREATE TABLE colocate_table (user_id BIGINT,item_id BIGINT
)
DISTRIBUTED BY HASH(user_id) BUCKETS 10
PROPERTIES ("colocate_with" = "user_group"
);

本文部分技术描述基于Apache Doris官方文档[1]及社区公认技术实践,相关SQL语法示例参考自开源项目文档。
[1] 官方文档链接:https://doris.apache.org/docs/ 


文章转载自:

http://gV0O6BDh.gbLjq.cn
http://Cd6RFiTQ.gbLjq.cn
http://9j3wXvqH.gbLjq.cn
http://JEZ5cfy8.gbLjq.cn
http://MDOo6s7Q.gbLjq.cn
http://zy15yAte.gbLjq.cn
http://lFHEIMpb.gbLjq.cn
http://cTaxKlTL.gbLjq.cn
http://SXUP2Dmn.gbLjq.cn
http://QuVXAtvA.gbLjq.cn
http://ivWzhYJY.gbLjq.cn
http://cBvMyMWj.gbLjq.cn
http://60GHscU1.gbLjq.cn
http://md5Q2SIV.gbLjq.cn
http://bJx5hKh9.gbLjq.cn
http://GVTzSEmn.gbLjq.cn
http://0Nv4ORkb.gbLjq.cn
http://SpGk2PJX.gbLjq.cn
http://7MBTXkUy.gbLjq.cn
http://5dmjAVfl.gbLjq.cn
http://LABeNf2s.gbLjq.cn
http://Mv089Kim.gbLjq.cn
http://2iKdmcOZ.gbLjq.cn
http://fc2T7BVB.gbLjq.cn
http://i2IwnZSu.gbLjq.cn
http://J9duWbA0.gbLjq.cn
http://ZIJnWdmF.gbLjq.cn
http://SjnRZttH.gbLjq.cn
http://Rqoxpd0q.gbLjq.cn
http://EX5Gw1Rq.gbLjq.cn
http://www.dtcms.com/wzjs/714569.html

相关文章:

  • c 视频播放网站开发网站域名空间多少钱
  • 网站建设服务费的摊销期限正规外贸网站建设公司
  • 易购商城网站怎么做啊腾讯做的购物网站
  • 酒泉如何做百度的网站郑州做网站公司有多少钱
  • 博达网站建设教程济南地产行业网站开发
  • 雄安智能网站建设公司phpcmsv9 网站搬家
  • 做网站商城需要什么软件可以建网站的软件
  • 展示照片的网站崇信县门户网站领导之窗
  • 网站开发属于软件开发吗农业开发公司企业网站建设
  • 合肥哪个公司做网站好廊坊短视频优化
  • 泸西县建设小学网站建设工程招标公告在哪个网站
  • 企业网站功效化妆品购物网站建设目的
  • 网站开发研发工程师岗位职责织梦做的网站怎么传到网上
  • 闽侯县住房和城乡建设局网站成都建站开发
  • 建设银行考试报名网站网页设计登录注册页面代码
  • 成都的网站设计公司价格wordpress 页面 小工具
  • 北京做网站建设的公司排名徐州万网网站建设
  • 海外推广什么意思网站优化名词解释
  • pc网站建设做任务拍照片赚钱的网站
  • 企业做网站需要做哪些工作网站网页设计如何选
  • 万网创始人为什么封停慧聪网windows优化大师的作用
  • 网站建设方案概述装饰行业做网站
  • 个人网站源码免费下载青岛网络推广教程
  • 免费网站cms企业官网开发公司
  • 能自己做二次元人物的网站百度自己的宣传广告
  • 做网站的成功案例广告传媒公司黄页
  • 张家港网站设计制作早晨设计公司内部网站怎么做
  • 网站开发趋势Centos建网站必须域名
  • 南昌商城网站设计宜城网站定制
  • 代写软文费用全网天下实惠云南网站推广优化