解决Pulsar数据存储空间占用不释放的问题

This commit is contained in:
ChenYi 2025-11-19 14:54:30 +08:00
parent aba16caada
commit e4a74dc19b
3 changed files with 13 additions and 5 deletions

View File

@ -62,6 +62,10 @@ services:
- PULSAR_PREFIX_zkServers=zookeeper:${PULSAR_ZOOKEEPER_PORT} - PULSAR_PREFIX_zkServers=zookeeper:${PULSAR_ZOOKEEPER_PORT}
# Bookie 使用容器名作为 advertisedAddress确保 broker 通过内网连接 # Bookie 使用容器名作为 advertisedAddress确保 broker 通过内网连接
- PULSAR_PREFIX_advertisedAddress=pulsar-bookie - PULSAR_PREFIX_advertisedAddress=pulsar-bookie
# Journal 配置:控制 journal 文件大小和保留策略
- PULSAR_PREFIX_journalMaxSizeMB=2048 # 单个 journal 文件最大 2GB
- PULSAR_PREFIX_journalMaxBackups=3 # 最多保留 3 个 journal 备份文件
- PULSAR_PREFIX_journalMaxAgeSeconds=86400 # journal 文件最大保留 24 小时1天
depends_on: depends_on:
zookeeper: zookeeper:
condition: service_healthy condition: service_healthy
@ -264,7 +268,7 @@ services:
- pulsar-net - pulsar-net
admin-api-service: admin-api-service:
image: registry.cn-qingdao.aliyuncs.com/jisheyun/jishe.iot.admin:2025.1118.1050 image: registry.cn-qingdao.aliyuncs.com/jisheyun/jishe.iot.admin:2025.1119.1155
container_name: admin-api container_name: admin-api
hostname: admin-api hostname: admin-api
restart: always restart: always

View File

@ -48,6 +48,10 @@ services:
- PULSAR_PREFIX_zkServers=zookeeper:${PULSAR_ZOOKEEPER_PORT} - PULSAR_PREFIX_zkServers=zookeeper:${PULSAR_ZOOKEEPER_PORT}
# Bookie 使用容器名作为 advertisedAddress确保 broker 通过内网连接 # Bookie 使用容器名作为 advertisedAddress确保 broker 通过内网连接
- PULSAR_PREFIX_advertisedAddress=pulsar-bookie - PULSAR_PREFIX_advertisedAddress=pulsar-bookie
# Journal 配置:控制 journal 文件大小和保留策略
- PULSAR_PREFIX_journalMaxSizeMB=2048 # 单个 journal 文件最大 2GB
- PULSAR_PREFIX_journalMaxBackups=3 # 最多保留 3 个 journal 备份文件
- PULSAR_PREFIX_journalMaxAgeSeconds=86400 # journal 文件最大保留 24 小时1天
depends_on: depends_on:
zookeeper: zookeeper:
condition: service_healthy condition: service_healthy
@ -216,7 +220,7 @@ services:
- pulsar-net - pulsar-net
admin-api-service: admin-api-service:
image: registry.cn-qingdao.aliyuncs.com/jisheyun/jishe.iot.admin:2025.1118.1050 image: registry.cn-qingdao.aliyuncs.com/jisheyun/jishe.iot.admin:2025.1119.1155
container_name: admin-api container_name: admin-api
hostname: admin-api hostname: admin-api
restart: always restart: always

View File

@ -1,5 +1,5 @@
CREATE TABLE IF NOT EXISTS CTWingAepReceiveMessageEntity( time TIMESTAMP TIME, IoTDataType STRING TAG, DeviceType STRING TAG, DeviceAddress STRING TAG, PlatformTenantId STRING FIELD, ProductId STRING FIELD, ServiceId STRING FIELD, IoTPlatformDeviceOpenInfo STRING FIELD, MessageType STRING FIELD, Protocol STRING FIELD, RawMessage STRING FIELD, ReceivedPayload STRING FIELD, ReceivedTimestamps INT64 FIELD, IMSI STRING FIELD, IMEI STRING FIELD ) COMMENT 'CTWingAepReceiveMessageEntity'; CREATE TABLE IF NOT EXISTS CTWingAepReceiveMessageEntity(time TIMESTAMP TIME, IoTDataType STRING TAG, DeviceType STRING TAG, DeviceAddress STRING TAG, SubDevice STRING TAG, PlatformTenantId STRING FIELD, ProductId STRING FIELD, ServiceId STRING FIELD, IoTPlatformDeviceOpenInfo STRING FIELD, MessageType STRING FIELD, Protocol STRING FIELD, RawMessage STRING FIELD, ReceivedPayload STRING FIELD, ReceivedTimestamps INT64 FIELD, IMSI STRING FIELD, IMEI STRING FIELD ) COMMENT 'CTWingAepReceiveMessageEntity' ;
CREATE TABLE IF NOT EXISTS DeviceTelemetryPacketTaskInfo( time TIMESTAMP TIME, IoTDataType STRING TAG, DeviceType STRING TAG, DeviceAddress STRING TAG, IoTPlatformProductId STRING FIELD, IoTPlatformDeviceOpenInfo STRING FIELD, IoTPlatformProductName STRING FIELD, IoTPlatformAccountId STRING FIELD, AccountPhoneNumber STRING FIELD, TelemetryType INT32 FIELD, IssueRawMessage STRING FIELD, IssuePayload STRING FIELD, ResponseRawMessage STRING FIELD, ResponsePayload STRING FIELD, TelemetrySource INT32 FIELD, IoTPlatform INT32 FIELD, RetryCount INT32 FIELD, LastIssueTime TIMESTAMP FIELD, IssueStatus INT32 FIELD ) COMMENT 'DeviceTelemetryPacketTaskInfo'; CREATE TABLE IF NOT EXISTS DeviceTelemetryPacketTaskInfo(time TIMESTAMP TIME, IoTDataType STRING TAG, DeviceType STRING TAG, DeviceAddress STRING TAG, SubDevice STRING TAG, IoTPlatformProductId STRING FIELD, IoTPlatformDeviceOpenInfo STRING FIELD, IoTPlatformProductName STRING FIELD, IoTPlatformAccountId STRING FIELD, AccountPhoneNumber STRING FIELD, TelemetryType INT32 FIELD, IssueRawMessage STRING FIELD, IssuePayload STRING FIELD, ResponseRawMessage STRING FIELD, ResponsePayload STRING FIELD, TelemetrySource INT32 FIELD, IoTPlatform INT32 FIELD, RetryCount INT32 FIELD, LastIssueTime TIMESTAMP FIELD, IssueStatus INT32 FIELD ) COMMENT 'DeviceTelemetryPacketTaskInfo' ;
CREATE TABLE IF NOT EXISTS OneNETReceiveMessageEntity( time TIMESTAMP TIME, IoTDataType STRING TAG, DeviceType STRING TAG, DeviceAddress STRING TAG, ProductId STRING FIELD, IoTPlatformDeviceOpenInfo STRING FIELD, MessageType STRING FIELD, Protocol STRING FIELD, RawMessage STRING FIELD, IsEncrypted BOOLEAN FIELD, PlaintextMessage STRING FIELD, ReceivedPayload STRING FIELD, ReceivedTimestamps INT64 FIELD ) COMMENT 'OneNETReceiveMessageEntity'; CREATE TABLE IF NOT EXISTS OneNETReceiveMessageEntity(time TIMESTAMP TIME, IoTDataType STRING TAG, DeviceType STRING TAG, DeviceAddress STRING TAG, SubDevice STRING TAG, ProductId STRING FIELD, IoTPlatformDeviceOpenInfo STRING FIELD, MessageType STRING FIELD, Protocol STRING FIELD, RawMessage STRING FIELD, IsEncrypted BOOLEAN FIELD, PlaintextMessage STRING FIELD, ReceivedPayload STRING FIELD, ReceivedTimestamps INT64 FIELD ) COMMENT 'OneNETReceiveMessageEntity