摘要:油气固井是保障井筒完整性、油气井服役寿命的核心工程环节。长期以来国内固井领域受限于国外商业工业软件,存在运维成本高昂、数据主权不受控、井下工况依靠经验公式估算等痛点。本文基于中海油服"海恒"Cemsol固井工程软件实践,介绍工业软件在海量异构工况数据、实时计算、国产化软硬件栈下的数据层架构设计,分享数据库适配、历史数据迁移、高可用容灾、高并发实时读写的工程实现方案,为能源类工业软件自主化建设提供实践参考。

1 行业背景与业务痛点
固井工程直接决定井筒安全,井下温度、压力、流体密度等参数动态变化,直接影响固井施工成败。传统模式下行业普遍存在两大难题:
- 业务计算层面:井下工况采集难度大,大量工程参数依赖经验公式推演,计算结果偏差会带来施工安全隐患;国外商用固井软件作为黑盒系统,算法不透明,定制改造能力弱。
- 数据底座层面:传统方案依赖海外数据库产品,采购、授权、运维成本高;能源核心施工数据存在外泄风险;同时海上钻井平台网络波动大,对数据库高可用、抗抖动、数据不丢失能力提出严苛要求。
在此背景下,中海油服完成国内云端互联固井工程软件Cemsol"海恒"研发,构建面向固井全流程的数字化平台,通过国产数据库作为统一数据底座,完成井下采集数据、施工方案、计算模型结果、历史作业档案的统一存储管理,实现核心装备‑自主软件‑数据底座端到端国产化闭环。新疆实验井已经完成自动化设备数据交互落地,实现固井全流程数字化作业。

2 固井软件核心业务特征与数据模型
固井软件存在大量异构、实时、时序混合的业务数据,主要分为几大类:
- 实时工况数据:井下温度、压力、ECD当量循环密度,设备上报测点,高频时序写入;
- 工程计算数据:温度‑压力耦合模型输出结果、固井流体仿真计算结果;
- 业务主数据:井场信息、井身结构、施工方案、作业人员、设备台账;
- 历史归档数据:历年施工报告、失败案例、仿真比对数据集,用于模型迭代与回溯分析。
业务特征:高并发实时写入 + 复杂多表关联查询 + 大样本历史数据分析,同时需要支撑多井场并行作业,7×24小时不间断运行,海上环境下网络抖动,要求数据库具备故障自动切换、数据零丢失能力。
简化业务建表示例(伪SQL,展示核心表结构)
sql
-- 井场基础主数据表
CREATE TABLE well_info (
well_id BIGINT PRIMARY KEY GENERATED ALWAYS AS IDENTITY,
well_name VARCHAR(128) NOT NULL,
well_location VARCHAR(256),
well_depth NUMERIC(12,2),
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
attr_json JSONB
);
-- 井下实时工况时序数据表
CREATE TABLE well_working_condition (
id BIGINT PRIMARY KEY GENERATED ALWAYS AS IDENTITY,
well_id BIGINT NOT NULL REFERENCES well_info(well_id),
pressure NUMERIC(10,2),
temperature NUMERIC(10,2),
ecd_value NUMERIC(10,3),
collect_time TIMESTAMP NOT NULL,
device_code VARCHAR(64)
);
-- 针对井号+采集时间建立复合索引,优化实时查询
CREATE INDEX idx_well_collect ON well_working_condition(well_id, collect_time DESC);
-- 固井仿真计算结果表
CREATE TABLE cement_calc_result (
calc_id BIGINT PRIMARY KEY GENERATED ALWAYS AS IDENTITY,
well_id BIGINT NOT NULL,
calc_module VARCHAR(64), -- ECD计算/温压耦合预测
calc_params JSONB,
output_result JSONB,
calc_status SMALLINT,
finish_time TIMESTAMP
);
3 从经验公式到模型驱动:核心计算模块的工程落地
传统固井作业大量依靠行业经验公式做估算。Cemsol实现两大核心算法模块:温度‑压力耦合预测、当量循环密度ECD计算,经鉴定达到国际领先水平。
计算逻辑流程:
- 采集井下设备实时测点数据写入数据库;
- 业务服务读取历史工况、井身参数输入仿真模型;
- 模型输出高精度计算结果回写数据库;
- 前端可视化界面读取计算结果,输出施工方案,下发自动化设备执行。
伪代码示例:业务服务读取工况,调用计算模型,回写结果
python
def run_cement_calc(well_id: int):
# 1. 从数据库读取该井近期工况数据
sql = """
SELECT pressure, temperature, ecd_value, collect_time
FROM well_working_condition
WHERE well_id = %s ORDER BY collect_time DESC LIMIT 1000
"""
rows = db.query(sql, (well_id,))
# 2. 调用ECD/温压耦合计算模型
input_data = [dict(r) for r in rows]
calc_result = cement_model.calc_ecd_temperature(input_data)
# 3. 将模型计算结果写回数据库
insert_sql = """
INSERT INTO cement_calc_result(well_id, calc_module, calc_params, output_result, calc_status)
VALUES (%s, %s, %s, %s, %s)
"""
db.execute(insert_sql, (well_id, "ECD_TEMP_COUPLING", json.dumps(input_data), json.dumps(calc_result), 1))
return calc_result
整套链路对数据库提出要求:高频写入不能阻塞查询,大JSON字段高效存取,复杂查询低延迟,保证模型可以快速拿到原始工况数据。
4 国产数据库作为工业软件的数据底座四大关键能力
图片:数据底座能力总览示意图
4.1 全栈国产化软硬件栈适配,构建自主可控链路
工业软件自主化不能只做应用层替换,需要芯片‑操作系统‑数据库全链路打通。
数据库完成对飞腾、鲲鹏、海光国产芯片;麒麟、统信操作系统完整适配。上层Cemsol应用、中间件、数据库、硬件全部为国产体系,不再依赖海外软硬件生态。
环境校验简单示例,确认软硬件栈信息
bash
# 查看操作系统版本
cat /etc/os-release
# 查看CPU架构
lscpu
# 数据库层面查询适配信息
SELECT version();
整套环境下,规避海外厂商版本限制、授权封锁风险,井场全部施工数据完全留存于自有基础设施,保障能源领域数据主权。
4.2 存量业务无感平滑迁移,降低国产化改造成本
能源工业软件沉淀大量历史施工数据,完整重构业务系统代价极高。数据库兼容标准SQL语法,兼容海外主流数据库语法行为,业务代码改动量极小。
迁移典型流程:
- 结构迁移:迁移表、索引、约束、函数;
- 数据全量同步,完成一致性校验;
- 业务侧切换连接串,灰度流量验证;
- 旧系统并行观察一段时间后下线。
迁移后JDBC连接串示例,业务几乎无需修改业务逻辑
properties
# 原海外数据库连接
# jdbc:xxx://old-db:port/cement_db
# 替换为国产数据库,SQL业务逻辑保持不变
jdbc:kingbase8://127.0.0.1:54321/cement_db?currentSchema=public
不需要大规模改写业务SQL、重写业务逻辑,实现近乎零业务中断完成底座切换。
4.3 纵深安全与极端环境下高可用保障
固井施工数据属于能源敏感数据,同时海上井场网络环境不稳定,网络抖动、节点故障属于常态。
安全能力包含:账号细粒度权限、操作审计日志、国密算法支持;
高可用方案采用主备流复制架构,故障自动切换,搭配定时备份+增量备份。
审计日志查询示例,追溯关键业务表变更
sql
-- 查询固井计算表的DML操作审计记录
SELECT op_time, db_user, op_type, table_name, sql_text
FROM sys_audit_log
WHERE table_name='cement_calc_result' AND op_time >= '2026‑01‑01 00:00:00';
即使出现网络波动、单节点故障,保证施工数据不丢失,业务服务可以快速恢复,适配海上钻井平台恶劣现场环境。
4.4 高并发性能与可视化运维,降低工业现场运维门槛
多井场并行作业会带来高频时序写入、多维度统计查询压力。存储引擎针对大JSON、时序场景做优化,并行查询能力支撑仿真计算时大批量历史数据读取。
配套可视化运维管理平台,不需要工程师熟练掌握大量命令行,仪表盘可以直观查看TPS、连接数、缓存命中率、慢SQL、磁盘占用。运维人员可以快速定位数据库性能瓶颈,把精力聚焦固井业务本身,而不是底层数据库调优。
图片:数据库可视化运维面板截图位置
5 工程落地价值总结
国产数据库在Cemsol固井工业软件中,不只是单纯存储介质,而是整套系统的数据中枢:
- 自主可控:芯片‑OS‑数据库‑应用全栈国产化,规避海外技术封锁风险,保障能源施工数据主权;
- 降本落地:高兼容性实现存量系统平滑迁移,大幅降低工业软件国产化重构成本;
- 安全可靠:纵深安全审计+主备高可用容灾,适配井场恶劣工况,保障7×24小时连续作业;
- 性能支撑:支撑高频时序工况写入、大规模仿真计算数据读写,保障高精度固井模型稳定运行。
这套实践证明,油气工业软件自主化,不仅要攻克上层业务算法模型,底层数据底座的选型、适配、调优同样至关重要。软硬协同的全栈自主方案,可以有效打破国外工业软件长期垄断,为油气行业数字化提供可复用的落地路径。
6 后续展望
后续会进一步探索时序‑关系混合存储优化,针对海量井场测点数据做冷热分层;结合计算下推,把部分简单统计逻辑下推至数据库层,进一步降低应用服务计算压力,提升大规模井场并发作业场景下整体系统吞吐。