腾讯云数据仓库TCHouse-D对接使用完全指南:从集群创建到生产级应用
引言:TCHouse-D是什么
腾讯云数据仓库TCHouse-D是腾讯云基于业内领先的OLAP数据库Apache Doris内核构建的企业级云数据仓库服务。它兼容MySQL协议,融合云上大数据生态,提供丰富的集群管控能力及完善的巡检告警体系,为客户提供简单易用、轻松运维的云上全托管服务,助力客户快速进行实时OLAP数据分析。
TCHouse-D的核心定位是解决企业在海量数据场景下的实时分析需求。它采用存算分离架构,将计算与存储资源解耦,支持弹性扩展。在存储层面,通过冷热数据自动分层技术,将高频访问的热数据存放在本地SSD缓存,低频历史数据迁移至对象存储COS,存储成本可降低60%以上。在计算层面,深度融合MPP架构与向量化执行技术,基于SIMD指令集批量处理数据单元,CPU利用率提升3至5倍。这些技术突破使得TCHouse-D能够在PB级数据规模下实现亚秒级的查询响应,并支撑每秒几万甚至十万级的并发查询。
在腾讯云数据仓库产品矩阵中,TCHouse-D与TCHouse-C(基于ClickHouse)、TCHouse-P(基于PostgreSQL生态)和TCHouse-X(云原生存算分离一体化)形成差异化定位。TCHouse-D特别适合需要高并发OLAP查询、多维商业分析、用户行为分析等场景。无论是电商大促的实时促销决策、金融行业的风控预警,还是物联网的海量日志分析,TCHouse-D都能提供极致的查询性能与灵活的资源配置。
一、TCHouse-D核心架构解析
理解TCHouse-D的架构是对接使用的前提。TCHouse-D基于Apache Doris的FE/BE分离架构构建。FE(Frontend)节点负责接收用户请求、解析SQL、生成查询计划并调度执行;BE(Backend)节点负责实际的数据存储和计算执行。FE和BE均支持水平扩展,通过增加节点即可线性提升集群的处理能力。
1.1 存储层的分层设计
TCHouse-D的存储引擎采用经典的分层架构,将数据组织从逻辑模型映射到物理存储。逻辑层是业务建模的核心载体,包含表(Table)、分区(Partition)等概念。表直接映射业务实体,包含列定义、数据类型、主键排序键等元信息。分区则基于业务字段(如时间、区域)对表进行逻辑划分,支持RANGE分区和LIST分区,成为数据生命周期管理的核心单位。
物理层是分布式存储的核心单元,包括分桶(Bucket)/Tablet和副本(Replica)。每个Tablet是TCHouse-D中最小的物理存储单元,也是数据均衡、副本管理的基本单位。默认情况下,每个Tablet大小推荐控制在1GB至10GB之间,通过哈希或随机方式切分形成。为保证数据可靠性与高可用,每个Tablet会存储多个副本(默认3副本),副本分布在不同BE节点上。物理上,Tablet会按照一定大小(256M)拆分为多个Segment文件,Segment是列存的LSM-Tree结构,理论基础是磁盘批量的顺序写要远比随机写性能高。
TCHouse-D采用列式存储引擎,让同一列数据连续存储,查询时仅读取需要的列,避免无关数据的IO开销。相比行存,列式存储可减少50%以上的IO量。结合ZSTD、LZ4等先进压缩技术,可实现同等数据量下存储空间节省50%。实测显示,1PB原始数据经压缩后仅需450TB物理存储空间。
1.2 计算层的MPP与向量化
TCHouse-D的计算层深度融合MPP架构与向量化执行技术。MPP架构使得查询能够被分解到各个节点进行并行数据处理,FE节点智能解析查询语句,自动分配计算资源。当检测到高并发查询时,系统可在30秒内完成节点扩容,保障数千用户同时在线分析。
向量化执行引擎基于SIMD指令集优化,批量处理数据单元而非逐行计算。相比传统架构,CPU利用率提升3至5倍,复杂聚合查询性能提升40%。查询优化器采用基于代价估算的CBO优化器,自动选择最优执行计划,复杂JOIN查询速度提升65%。JIT编译器将SQL转化为机器码执行,减少中间转换损耗。
1.3 多级索引机制
TCHouse-D提供丰富的索引类型来加速数据读取和过滤。智能索引是在数据写入时自动生成的,无需用户干预,包括前缀稀疏索引和MinMax索引两种。前缀索引默认对每行数据的前36字节建立索引,适合等值查询和范围查询。二级索引是用户可选择性地在某些列上添加的辅助索引,包括Bloom Filter索引(对高基数列建立,快速判断某值是否存在)和Bitmap索引(对低基数列建立,加速COUNT(DISTINCT)、IN等操作)。此外,TCHouse-D还支持动态分区裁剪和谓词下推技术,有效降低最终从磁盘扫描的数据量。
需要先登录腾讯云控制台,点击:腾讯云控制台,还没有账号,点击:注册后再关联,已有账号点击:登录后再关联
二、集群创建与配置选型
使用TCHouse-D的第一步是创建集群。用户可通过腾讯云数据仓库TCHouse-D介绍页单击“立即选购”,或登录TCHouse-D控制台单击“新建集群”进入购买页进行配置与购买。
2.1 集群类型选择
TCHouse-D提供两种集群类型:存算一体版和存算分离版。存算一体版适用于对查询效率要求较高的OLAP多维分析、高并发查询、实时数据分析场景,数据存储在云盘或本地盘中,数据读写性能较高。存算分离版适用于对查询效率要求略低的OLAP多维分析、数据湖分析等场景,数据存储在对象存储COS中,存储成本低。存算分离版目前支持北京、上海、广州、中国香港、新加坡、硅谷等地域。
2.2 计费模式
TCHouse-D支持包年包月和按量计费两种计费模式。包年包月为预付费模式,在新建集群时先支付费用后使用资源。按量计费为后付费模式,先按需申请资源使用,每小时生成一份费用账单。标准型8核16GB规格按量计费价格为1.76元/小时,包年包月为960元/月。存算分离集群的存储费用为0.0003元至0.00035元/GB/小时。
2.3 高可用配置
TCHouse-D提供三种高可用模式。非高可用模式下只部署1个FE,不建议生产环境使用。读高可用模式下至少部署3个FE,其中1个FE节点是Follower,其他FE节点是Observer。读写高可用模式下至少部署5个FE,其中3个FE节点是Follower,其他FE节点是Observer。建议生产环境选择读写高可用模式,FE节点至少5个,保障每个可用区至少有1个FE的Follower节点。BE节点必须选择3的倍数,表的replication_num将强制指定为3,且均衡分布至各可用区下,保障数据高可用。
2.4 节点规格选型
计算节点支持三种类型。标准型规格包括4核16G、8核32G、16核64G、32核128G、64核256G等。内存型规格包括4核32G、8核64G、16核128G、32核128G、64核256G。高性能型规格包括16核64G、32核128G、64核256G。存算分离版BE节点规格支持8核32G、16核64G、32核128G、64核256G。FE配置分为基础版(免费提供三个8核32GB的FE节点)和升配版(高并发读写、复杂关联查询较多时建议选择)。
2.5 缓存与存储配置
存算分离版需要配置预留缓存空间,用于热数据缓存以加速读写。缓存空间越大,查询时命中的缓存越多,查询性能越好。每个BE节点最小购买100GB缓存空间,为保证查询性能,建议每个计算组的缓存空间大小是常需要查询的热数据的1.2倍及以上。全量数据默认存储在对象存储COS中,并按照实际使用量计费。
三、连接与访问方式
集群创建完成后,即可通过多种方式连接和使用TCHouse-D。TCHouse-D采用MySQL协议进行通信,用户可通过MySQL Client或MySQL JDBC连接到集群。选择MySQL Client版本时建议采用5.1之后的版本,因为5.1之前不能支持长度超过16个字符的用户名。
3.1 JDBC连接
从集群详情页的网络信息部分可获取JDBC连接地址。JDBC连接串格式为:jdbc:mysql://FE_HOST:9030/。其中FE_HOST是任一FE节点的IP地址,9030是fe.conf中的query_port配置。建议在JDBC连接串中添加rewriteBatchedStatements=true参数,并使用PreparedStatement方式进行批量操作。需要注意的是,目前Doris暂不支持服务器端的PreparedStatement,JDBC Driver会在客户端进行批量Prepare,会多占用客户端的内存资源。
以下是一个标准的JDBC连接示例:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class TCHouseDJDBCExample {
public static void main(String[] args) {
String url = "jdbc:mysql://10.0.0.1:9030/example_db?rewriteBatchedStatements=true";
String user = "admin";
String password = "your_password";
try (Connection conn = DriverManager.getConnection(url, user, password);
Statement stmt = conn.createStatement()) {
ResultSet rs = stmt.executeQuery("SELECT * FROM user_behavior LIMIT 10");
while (rs.next()) {
System.out.println(rs.getString(1));
}
} catch (Exception e) {
e.printStackTrace();
}
}
}3.2 MySQL Client命令行连接
通过MySQL Client连接TCHouse-D的基本流程如下。首先,购买并创建集群时需设定admin用户的密码。集群创建后,可在控制台中查看集群信息、新建账户等操作。使用以下命令登录集群:
mysql -h FE_HOST -P9030 -u admin -p登录后可通过以下命令修改admin密码:
SET PASSWORD FOR 'admin' = PASSWORD('new_password');创建新用户:
CREATE USER 'test' IDENTIFIED BY 'test_passwd';新创建的普通用户默认没有任何权限,可在控制台账户管理页面进行授权操作。
3.3 SQL工作区(WebUI)
TCHouse-D控制台提供了SQL工作区功能,用户可通过Web界面快捷地连接集群并使用SQL命令开展操作。操作步骤如下:登录TCHouse-D控制台,在左侧列表单击SQL工作区,或在集群列表中选中目标集群后在查询管理下找到入口。进入SQL工作区后,需选择地域、集群ID,并填写有效账户与密码进行连接。数据操作依赖登录账号的数据权限,可在对应集群的账号管理中进行权限授予。
SQL工作区支持查看SQL语句执行记录,支持搜索和筛选。查询结果在新标签页中展示,若查询未完成则状态为运行中,完成后自动刷新展示结果。支持保存SQL语句,在左侧查询列表中记录所有已保存的SQL语句。支持查询结果下载,单击导出结果预览即可下载包含前3000条结果的CSV格式文件。SQL工作区还支持创建外部数据源,包括Hive、Iceberg、Paimon、Hudi、ES、JDBC等多个外部数据源。
3.4 公网访问配置
TCHouse-D默认仅支持内网访问,如需通过公网访问,可通过负载均衡CLB打通公网连接。配置方法如下:首先在负载均衡CLB官网购买CLB实例,选择TCHouse-D集群所在地域、公网类型、集群所在VPC。创建完成后,在CLB控制台实例管理页面查看CLB实例。然后创建监听器:FE节点公网访问选择TCP协议端口9030,BE节点公网访问选择TCP协议端口8040。最后绑定后端服务:目标类型选择IP类型,IP填写TCHouse-D集群JDBC连接地址中的IP,端口FE填写9030、BE填写8040。完成后即可通过CLB的VIP公网访问TCHouse-D集群。
四、数据导入与导出
TCHouse-D支持多种数据导入方式,覆盖实时导入和离线导入两大类场景。实时导入推荐使用Stream Load,离线导入推荐使用Broker Load。数据导入的基本原理是批量加载:减少并发,尽量在单次导入中导入尽可能多的数据,以最小化合并成本并避免影响读取效率。
4.1 Stream Load实时导入
Stream Load是一个同步的数据导入方式,用户通过发送HTTP协议请求将本地文件或数据流导入到Doris中。Stream Load同步执行导入并返回导入结果,用户可直接通过请求的返回体判断本次导入是否成功。以下是一个使用curl命令通过Stream Load导入JSON数据的示例:
curl -v --location-trusted -u admin:password \
-H "format: json" \
-H "jsonpaths: [\"$.user_id\", \"$.action\", \"$.timestamp\"]" \
-T data.json \
http://FE_HOST:8030/api/example_db/user_behavior/_stream_loadStream Load的默认超时时间为600秒。如果导入文件较大,需要调整BE配置streaming_load_max_mb参数。
4.2 Broker Load离线导入
Broker Load适用于从HDFS、COS等远端存储系统批量导入数据的场景。通过Broker Load,用户可以将大规模数据文件从远程存储系统导入到TCHouse-D中。以下是一个Broker Load的示例:
LOAD LABEL example_db.user_behavior_load
(
DATA INFILE("hdfs://hdfs_host:8020/path/to/data.csv")
INTO TABLE user_behavior
COLUMNS TERMINATED BY ","
(user_id, action, timestamp)
)
WITH BROKER
(
"username"="hdfs_user",
"password"="hdfs_password"
)
PROPERTIES
(
"timeout"="3600",
"max_filter_ratio"="0.1"
);4.3 Routine Load订阅Kafka
TCHouse-D支持通过内置的Kafka客户端订阅Kafka的Topic,实现数据的实时更新。Routine Load是一种持续运行的导入任务,会不断从Kafka消费数据并写入TCHouse-D。以下是一个创建Routine Load任务的示例:
CREATE ROUTINE LOAD example_db.kafka_user_behavior_load ON user_behavior
COLUMNS(user_id, action, timestamp)
PROPERTIES
(
"desired_concurrent_number"="3",
"max_batch_interval"="10",
"max_batch_rows"="100000"
)
FROM KAFKA
(
"kafka_broker_list"="broker1:9092,broker2:9092",
"kafka_topic"="user_behavior_topic",
"property.group.id"="tchouse_d_consumer",
"property.kafka_default_offsets"="OFFSET_BEGINNING"
);4.4 Flink CDC实时同步
通过Doris Flink Connector对接Flink的CDC能力,可实现数据的精确导入。这种方式特别适合需要从MySQL等OLTP数据库实时同步数据到TCHouse-D的场景。
4.5 Canal订阅MySQL Binlog
TCHouse-D内置了Canal客户端,可实时获取MySQL的binlog并同步到数据仓库中。这种方式实现了从业务数据库到分析数据库的实时数据流。
4.6 数据导出
TCHouse-D支持通过mysqldump工具导出数据,但由于Doris中没有MySQL里的tablespace概念,使用时需加上--no-tablespaces参数。mysqldump导出数据和表结构仅适用于开发测试或数据量很小的情况,不建议用于大数据量的生产环境。
此外,TCHouse-D支持通过Broker Backup将数据导出到远程存储系统,并可从远程存储系统恢复到任意集群。用户可在TCHouse-D的备份恢复页面执行数据备份和数据迁移操作。
五、数据建模与SQL开发
5.1 数据模型选择
TCHouse-D支持三种数据模型。Duplicate模型适用于需要明细级查询的场景,没有预聚合,聚合查询效率较低,但可通过物化视图提升聚合查询效率。Aggregate模型适用于需要预聚合的场景,在建表时定义维度列和指标列,指标列上可定义聚合函数,数据导入时按照维度列分类并按指标列指定的函数进行聚合。Unique模型适用于需要唯一键约束的场景,支持数据的更新和删除操作。
以下是一个创建Aggregate模型表的示例:
CREATE TABLE example_db.sales_summary
(
sale_date DATE,
product_id INT,
category VARCHAR(50),
total_amount DECIMAL(10,2) SUM,
order_count BIGINT COUNT
)
AGGREGATE KEY(sale_date, product_id, category)
DISTRIBUTED BY HASH(product_id) BUCKETS 10
PROPERTIES(
"replication_num" = "3"
);5.2 分区与分桶设计
TCHouse-D支持通过分区(Partition)和分桶(DISTRIBUTED BY)将表的数据拆分成多个Tablet。分区通常基于业务字段(如时间、区域)进行逻辑划分,支持RANGE分区和LIST分区。分桶通过哈希或随机方式切分形成。合理的分区分桶设计能显著提升查询性能。
以下是一个带分区定义的建表示例:
CREATE TABLE example_db.order_detail
(
order_id BIGINT,
order_date DATE,
customer_id INT,
amount DECIMAL(10,2)
)
DUPLICATE KEY(order_id)
PARTITION BY RANGE(order_date)
(
PARTITION p202601 VALUES [('2026-01-01'), ('2026-02-01')),
PARTITION p202602 VALUES [('2026-02-01'), ('2026-03-01'))
)
DISTRIBUTED BY HASH(order_id) BUCKETS 10
PROPERTIES(
"replication_num" = "3"
);5.3 物化视图与Rollup索引
物化视图是将预先计算好的数据集存储在TCHouse-D中的一个特殊表。物化视图的出现主要是为了满足用户既能对原始明细数据进行任意维度分析,也能快速对固定维度进行分析查询的需求。TCHouse-D完全支持物化视图功能,通过预聚合计算来加速查询性能,特别适合需要频繁进行聚合分析的场景。
以下是一个创建物化视图的示例:
CREATE MATERIALIZED VIEW example_db.sales_monthly_mv
AS
SELECT
DATE_FORMAT(sale_date, '%Y-%m') AS sale_month,
category,
SUM(total_amount) AS monthly_total,
COUNT(order_count) AS monthly_orders
FROM example_db.sales_summary
GROUP BY DATE_FORMAT(sale_date, '%Y-%m'), category;Rollup对应上卷操作,通过Grouping Set语法可建出CUBE立方体。使用物化视图时,如果经常对某表进行模式固定的聚合查询,建议创建物化视图。
5.4 SQL查询示例
以下是一些常见的SQL查询示例:
-- 创建数据库
CREATE DATABASE example_db;
-- 切换数据库
USE example_db;
-- 查看所有数据库
SHOW DATABASES;
-- 查看表结构
DESC user_behavior;
-- 聚合查询
SELECT
DATE(timestamp) AS stat_date,
action,
COUNT(*) AS action_count
FROM user_behavior
WHERE timestamp >= '2026-01-01'
GROUP BY DATE(timestamp), action
ORDER BY stat_date DESC;
-- 使用物化视图查询
SELECT * FROM sales_monthly_mv
WHERE sale_month = '2026-01';
-- 清空分区数据(建议使用truncate而非delete)
TRUNCATE TABLE example_db.order_detail PARTITION(p202601);注意:清空分区数据时,建议优先考虑truncate操作(等同于drop分区然后create分区)而不是delete操作,delete操作对查询性能有较大影响。
六、性能优化最佳实践
6.1 查询优化器
TCHouse-D 2.0引入了全新的查询优化器(CBO),采取更先进的Cascades框架、使用更丰富的统计信息、实现更智能化的自适应调优,在绝大多数场景无需任何调优和SQL改写即可实现极致的查询性能。
6.2 索引优化
针对不同场景选择合适的索引类型。前缀索引适合等值查询和范围查询。Bloom Filter索引对高基数列建立,快速判断某值是否存在,减少扫描范围。Bitmap索引对低基数列建立,加速COUNT(DISTINCT)、IN等操作。针对用户分群分析等典型场景,建议结合BITMAP_UNION聚合函数与Bitmap索引进行优化配置,能够显著提升查询性能。
6.3 冷热数据分层
TCHouse-D通过冷热数据自动分层技术,将高频访问的热数据存放在本地SSD缓存,低频历史数据迁移至对象存储COS。系统内置智能算法实时监控数据访问频率,自动执行迁移策略。为提升冷数据的查询性能,默认开启云盘缓存,云盘缓存越大查询性能越好。
6.4 数据导入优化
数据导入的基本原则是批量加载:减少并发,尽量在单次导入中导入尽可能多的数据,以最小化合并成本并避免影响读取效率。对于实时导入,推荐使用Stream Load;对于离线导入,Broker Load是首选。
七、资源隔离与多租户管理
TCHouse-D通过配置资源组和计算组的方式实现资源隔离,避免多业务间的资源抢占和相互影响。
7.1 资源组配置
资源组配置的步骤如下:进入集群列表,单击需要配置的集群ID/名称;进入账户管理页,单击资源组,通过开关开启资源组配置;单击新增资源组按钮完成资源组创建。资源组可以实现不同业务用户之间的资源隔离。
7.2 计算组管理
存算分离集群支持计算组的创建和管理。登录TCHouse-D控制台,在存算分离集群列表中单击集群ID/名称,在左侧菜单栏切换至计算组管理页面。单击新建计算组按钮,填写相关配置项,确认费用后单击立即购买即可创建新的计算组。在强隔离场景下,不同业务(用户)间需要进行资源强隔离时,建议选择此模式,如A用户(业务)使用计算组1,B用户(业务)使用计算组2。
八、API管理与自动化运维
TCHouse-D的API接口均为API 3.0接口。用户可以调用API对TCHouse-D进行操作,例如创建集群、修改配置、管理用户权限、查询实例状态及处理备份任务。
8.1 API Explorer使用
API Explorer提供了在线调用、签名验证、SDK代码生成和快速检索接口等能力。用户可查看每次调用的请求内容和返回结果以及自动生成SDK调用示例。API Inspector可查看控制台每一步操作关联的API调用情况,并自动生成各语言版本的API代码。
8.2 Python SDK示例
使用Python SDK调用TCHouse-D API前,需先在腾讯云控制台上申请安全凭证,包括SecretID和SecretKey。SecretID用于标识API调用者的身份,SecretKey用于加密签名字符串和服务器端验证签名字符串的密钥,需严格保管。
以下是一个使用Python SDK查询集群信息的示例:
import json
from tencentcloud.common import credential
from tencentcloud.common.profile.client_profile import ClientProfile
from tencentcloud.common.profile.http_profile import HttpProfile
from tencentcloud.cdwdoris.v20211228 import cdwdoris_client, models
def describe_clusters(secret_id, secret_key, region="ap-guangzhou"):
cred = credential.Credential(secret_id, secret_key)
http_profile = HttpProfile()
http_profile.endpoint = "cdwdoris.tencentcloudapi.com"
client_profile = ClientProfile()
client_profile.http_profile = http_profile
client = cdwdoris_client.CdwdorisClient(cred, region, client_profile)
req = models.DescribeInstancesRequest()
resp = client.DescribeInstances(req)
print(json.dumps(json.loads(resp.to_json_string()), indent=2))
return resp
if __name__ == "__main__":
# 请替换为您的SecretId和SecretKey
describe_clusters("your_secret_id", "your_secret_key")8.3 集群运维管理
TCHouse-D控制台提供完善的集群运维管理功能。用户可通过控制台完成集群创建、修改配置、设置告警等常用功能。FE支持水平伸缩和垂直变配操作。集群销毁可在集群列表的操作中完成。
九、典型应用场景
TCHouse-D适合几乎所有的分析性数据场景,其中最主要的四种场景如下。
OLAP多维分析和报表场景:TCHouse-D支持在高维表上进行高速随意探查,支持钻取、上卷、切片、切块、旋转等操作。维度建模中最常见的星型模型和雪花模型都得到良好支持。
实时数仓和数据分析场景:TCHouse-D支持PB级数据量上的实时增、删、改、查能力。数据实时写入是关键环节,TCHouse-D通过Stream Load、Canal、Flink CDC、Kafka订阅等多种方式实现数据的实时更新。
高并发场景:TCHouse-D能够轻松支持每秒几万甚至十万级的并发查询,有效支持数千用户同时进行数据分析。某头部电商平台通过TCHouse-D实现了日活用户分析响应时间从23秒降至800ms,支撑10万+并发查询,存储成本下降55%。
大数据和数据库统一分析场景:TCHouse-D不依赖Hadoop组件,但本身对Hadoop生态进行了全面支持。除了通过Flink、Spark写入外,还可以导入HDFS的数据,或通过建立Hive外表直接查询Hive数据。
十、常见问题问答
问1:TCHouse-D与开源Apache Doris是什么关系?
答:TCHouse-D是基于Apache Doris内核构建的企业级云数据仓库服务,在兼容开源Doris所有功能的基础上,腾讯云进行了深度优化和增强,包括存算分离架构、冷热数据自动分层、智能资源调度、完善的集群管控和巡检告警体系等,同时提供了开箱即用的云上全托管服务体验。
问2:TCHouse-D支持哪些数据导入方式?
答:TCHouse-D支持多种数据导入方式。实时导入场景推荐使用Stream Load(通过HTTP协议同步导入本地文件或数据流);离线大规模导入推荐使用Broker Load(从HDFS、COS等远端存储批量导入);实时流式导入可使用Routine Load(订阅Kafka Topic持续消费);数据库实时同步可通过Flink CDC或内置Canal客户端订阅MySQL binlog实现。
问3:如何优化TCHouse-D的查询性能?
答:查询性能优化可从多个维度入手。数据建模层面,合理选择数据模型(Duplicate/Aggregate/Unique)、设计分区和分桶策略;索引层面,利用前缀索引、Bloom Filter索引、Bitmap索引加速查询;预聚合层面,创建物化视图和Rollup索引减少查询扫描数据量;存储层面,合理配置缓存空间大小(建议为热数据的1.2倍以上),利用冷热数据分层降低IO压力;SQL层面,避免使用delete操作清空数据,优先使用truncate。
问4:TCHouse-D如何进行公网访问?
答:TCHouse-D默认仅支持内网访问。如需公网访问,需通过负载均衡CLB打通公网连接。具体步骤为:在TCHouse-D集群所在VPC下创建公网CLB实例;在CLB中创建监听器(FE选择TCP端口9030,BE选择TCP端口8040);将TCHouse-D集群的JDBC连接地址中的IP作为后端服务绑定到CLB;完成后即可通过CLB的VIP进行公网访问。
问5:存算一体版和存算分离版如何选择?
答:存算一体版数据存储在云盘或本地盘中,数据读写性能较高,适用于对查询效率要求较高的OLAP多维分析、高并发查询、实时数据分析场景。存算分离版数据存储在对象存储COS中,存储成本低(约0.0003元/GB/小时),适用于对查询效率要求略低的OLAP多维分析、数据湖分析等场景。建议根据业务对查询性能的要求和存储成本预算综合选择。
问6:TCHouse-D如何实现多业务间的资源隔离?
答:TCHouse-D通过资源组和计算组两种方式实现资源隔离。资源组可在账户管理页面配置,通过开关开启资源组配置后新增资源组,将不同用户分配到不同资源组实现逻辑隔离。计算组适用于存算分离集群,可在计算组管理页面创建新的计算组,在强隔离场景下将不同业务用户分配到不同计算组,实现物理层面的资源隔离,避免资源抢占和相互影响。



