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

数据中台架构设计

数据中台分层架构

数据采集层

  • 数据源类型:业务系统(ERP、CRM)、日志、IoT 设备、第三方 API 等。
  • 采集方式
    • 实时采集:Kafka、Flink CDC(变更数据捕获)。
    • 离线采集:Sqoop、DataX(批量同步数据库)。
    • 日志采集:Flume、Filebeat。
  • 数据缓冲与预处理:使用消息队列(如 Kafka)作为缓冲区,应对数据流量峰值。

数据存储层

  • 数据湖(Data Lake):存储原始数据(结构化、半结构化、非结构化),支持低成本、高扩展性(HDFS、阿里云 OSS)。
  • 数据仓库(Data Warehouse):存储清洗后的结构化数据,面向主题建模(Hive、ClickHouse、Snowflake)。
  • 融合架构(LakeHouse):结合数据湖与数据仓库优势(湖仓一体),如 Delta Lake、Apache Iceberg。
  • 分层存储策略
    • 热数据(高频访问):存入分布式数据库(如 HBase、Cassandra)。
    • 温数据(低频访问):存入数据仓库。
    • 冷数据(归档):存入对象存储(如 AWS Glacier)。

数据计算层

  • 批处理引擎:处理离线任务(T+1 报表、ETL 清洗),如 Apache Spark、Hive。
  • 流处理引擎:实时处理数据流(如风控、实时监控),如 Apache Flink、Kafka Streams。
  • 交互式分析引擎:支持快速查询(OLAP),如 Presto、Doris。
  • AI/ML 计算平台:集成机器学习框架(TensorFlow、PyTorch),提供从特征工程到模型部署的全流程支持。
  • 统一计算调度:使用 Airflow、DolphinScheduler 管理任务依赖与资源分配。

数据服务层

  • 统一数据服务接口:RESTful API、GraphQL、SQL 查询接口、API 网关(Kong、Apigee)。
  • 数据可视化与自助分析:集成 BI 工具(Tableau、Superset),支持业务人员自主分析。
  • 数据订阅与推送:基于消息队列(Kafka)实现实时数据推送。
  • 数据沙箱:提供安全隔离的测试环境,支持数据探索与实验。
  • 服务治理:服务限流、熔断、监控(如 Prometheus + Grafana)。

数据治理与安全层

  • 元数据管理:记录数据血缘、业务含义、技术属性(Apache Atlas、Alibaba DataWorks)。
  • 数据质量管理:定义规则(唯一性、完整性)并自动检测异常(Great Expectations、Talend)。
  • 数据安全:数据脱敏(如姓名、手机号)、加密(AES)、权限控制(RBAC);合规性:满足 GDPR、CCPA 等法规。
  • 生命周期管理:自动化冷热数据分级、归档与删除策略。

云原生数据中台

基础设施层

云平台(AWS/Azure/ 阿里云)提供 IaaS 资源(ECS、容器服务 K8s)。

数据存储层

数据湖(S3)+ 数据仓库(Redshift)+ 实时数据库(Redis)。

计算引擎层

Spark(批处理)、Flink(流处理)、SageMaker(AI)。

服务层

API 网关 + 微服务(Spring Cloud)提供数据服务。

治理与监控

统一日志(ELK Stack)、监控(Prometheus)、权限(IAM)。

数据汇聚

数据采集与接入

  • 数据源分类
    • 结构化数据:数据库(MySQL、Oracle)、数据仓库(Hive、ClickHouse)。
    • 半结构化数据:日志(JSON、XML)、消息队列(Kafka)。
    • 非结构化数据:文本、图片、音视频(存储于对象存储)。
  • 离线批量同步:Sqoop(数据库→HDFS)、DataX(多源异构同步),适用于 T+1 报表、历史数据迁移。
  • 实时流式采集:Kafka Connect、Flink CDC(实时捕获数据库变更),适用于交易流水实时监控、用户行为日志采集。
  • 日志采集:Filebeat(轻量级日志收集)、Flume(分布式日志聚合)。

数据清洗与标准化

  • 数据解析:将非结构化数据(如日志)解析为结构化字段,工具:JSONPath、Avro Schema。
  • 数据去重:根据业务主键(如订单 ID)删除重复记录,如 Spark 的 dropDuplicates ()、Hive 窗口函数。
  • 字段标准化:统一时间格式(如 UTC 时间戳)、单位(如金额统一为美元)。
  • 空值处理:填充默认值(如 0)、剔除无效记录、基于算法预测缺失值。
  • 数据验证:校验数据范围(如年龄 > 0)、枚举值(如性别仅允许 “男 / 女”),如 Great Expectations、Debezium(实时校验)。

数据开发

数据开发与建模

  • 批处理开发:离线报表、用户画像更新,工具:Spark SQL、Hive、Airflow(任务调度)。
  • 实时处理开发:实时风控、动态定价,工具:Flink SQL、Kafka Streams。
  • 维度建模:事实表(如交易记录) + 维度表(如用户、商品),适用于 BI 分析、OLAP 查询。
  • 宽表建模:将多表关联结果预计算为宽表,减少查询复杂度,适用于用户行为分析(融合点击、购买、浏览数据)。
  • 图模型:构建实体关系网络(如社交网络、反欺诈图谱),如 Neo4j、TigerGraph。

数据质量管理与监控

  • 质量规则定义
    • 完整性:关键字段非空(如用户 ID)。
    • 一致性:跨系统数据匹配(如财务系统与订单系统的金额一致)。
    • 及时性:数据按时到达(如 T+1 任务延迟告警)。
  • 质量监控与告警:检测异常 → 通知负责人 → 触发重跑或人工修复,利用 Prometheus 进行实时指标监控。
  • 数据血缘追踪:记录数据从源头到应用的完整链路,便于故障排查与影响分析(Apache Atlas、Alibaba DataWorks)。

数据存储

存储分层与架构

  • 原始层(Raw Layer)
    • 存储内容:未经处理的原始数据(日志、数据库 Binlog、IoT 设备数据)。
    • 数据湖:HDFS、AWS S3、阿里云 OSS(支持海量非结构化数据)。
    • 分布式文件系统:如 Ceph(企业私有云场景)。
    • 特点:低成本、高吞吐写入,适合长期存储原始数据。
  • 清洗层(Cleaned Layer)
    • 存储内容:经过标准化、去重、空值处理后的数据。
    • 列式存储:Parquet、ORC(压缩率高,适合分析场景)。
    • 分布式数据库:HBase(半结构化数据)、Cassandra(高可用写入)。
    • 特点:数据格式统一,支持高效查询。
  • 服务层(Serving Layer)
    • 存储内容:面向业务的高频访问数据(如用户画像、实时统计结果)。
    • OLAP 数据库:ClickHouse、Doris(支持快速聚合查询)。
    • 内存数据库:Redis、Memcached(缓存热数据)。
    • 特点:低延迟响应,直接对接业务应用。
  • 归档层(Archived Layer)
    • 存储内容:低频访问的历史数据(如合规要求的日志存档)。
    • 对象存储冷存储:AWS Glacier、阿里云归档存储。
    • 特点:成本极低,但读取延迟高(需解冻)。
  • 冷热分离
    • 热数据(高频访问):存入分布式数据库(如 HBase、Redis)。
    • 冷数据(归档):压缩后存入对象存储(如 AWS Glacier)。

存储技术选型对比

场景技术方案优势局限
海量原始数据存储HDFS/S3高扩展性、低成本随机读写性能差
实时数据写入Kafka、Apache Pulsar高吞吐、低延迟需配合下游存储使用
结构化数据分析Hive、SnowflakeSQL 兼容、支持复杂查询实时性不足
实时查询与缓存Redis、ClickHouse亚秒级响应、高并发数据量受内存 / 资源限制

数据计算

计算引擎分类与选型

  • 批处理引擎
    • 场景:离线 ETL、T+1 报表、历史数据清洗。
    • Apache Spark:内存计算优化,适合复杂数据处理。
    • Hive:基于 MapReduce,适合稳定的大规模离线任务。
  • 流处理引擎
    • 场景:实时监控、风控、动态定价。
    • Apache Flink:低延迟、Exactly-Once 语义,支持复杂事件处理(CEP)。
    • Kafka Streams:轻量级,与 Kafka 深度集成。
  • 交互式分析引擎
    • 场景:即席查询(Ad-hoc)、BI 工具对接。
    • Presto:多数据源联邦查询,秒级响应。
    • Apache Druid:面向时序数据的 OLAP 优化。
  • AI 计算引擎
    • 场景:机器学习模型训练、推理。
    • TensorFlow/PyTorch:深度学习框架。
    • Spark MLlib:分布式机器学习库。

计算架构模式

  • Lambda 架构
    • 设计:批处理层(离线准确结果) + 速度层(实时近似结果) → 服务层合并输出。
    • 优缺点:兼顾准确性与实时性;但维护两套逻辑,复杂度高。
  • Kappa 架构
    • 设计:仅通过流处理引擎(如 Flink)处理历史与实时数据,依赖重播机制。
    • 优缺点:简化架构,逻辑统一;但依赖消息队列的长期存储能力(如 Kafka 保留策略)。
  • 湖仓一体(Lakehouse)
    • 设计:融合数据湖(灵活存储)与数据仓库(高效分析),如 Delta Lake、Apache Iceberg。
    • 优点:支持 ACID 事务、Schema 演进,直接基于数据湖执行分析。

数据治理

元数据管理(Metadata Management)

  • 元数据采集:自动采集数据库表结构、字段定义、ETL 任务血缘等(Apache Atlas、Alibaba DataWorks)。
  • 数据目录(Data Catalog):提供搜索界面,业务人员可快速定位数据资产、标签化分类、数据热度统计、用户评分。
  • 数据血缘(Data Lineage):可视化展示数据从源头到应用的完整链路(如 “用户表→ETL 任务→报表”)。

数据质量管理(Data Quality Management)

  • 规则定义
    • 完整性:关键字段非空(如订单 ID)。
    • 准确性:数值范围校验(如年龄 > 0)。
    • 一致性:跨系统数据匹配(如财务系统与订单系统的总金额一致)。
    • 及时性:数据按时到达(如 T+1 任务延迟告警)。
  • 质量监控:定时任务扫描数据,触发告警,Great Expectations(定义规则并生成报告)、Debezium(实时数据校验)。
  • 闭环处理:通过 SQL 脚本或 ETL 任务修正数据。

主数据管理(Master Data Management, MDM)

  • 主数据定义:制定企业级标准(如 “客户” 需包含 ID、姓名、手机号、注册时间)。
  • 主数据分发:通过 API 或消息队列(Kafka)将主数据同步至各业务系统。
  • 冲突解决:定义优先级规则(如 CRM 系统为 “客户” 信息的权威来源)。

数据生命周期管理

  • 热数据:高频访问,存于高性能存储(如 Redis、SSD)。
  • 温数据:低频访问,存于数据仓库(如 Hive)。
  • 冷数据:归档至低成本存储(如 AWS Glacier),满足法规保留期限后自动删除。

数据安全

数据分类与分级

  • 分类:按业务属性划分(如用户数据、交易数据、日志数据)。
  • 分级:按敏感程度分级(如公开、内部、机密),制定差异化的保护策略。

权限控制(Access Control)

  • 基于角色的访问控制(RBAC):定义角色(如数据分析师、风控员)并分配最小必要权限(Apache Ranger、AWS IAM)。
  • 动态脱敏:根据用户角色返回部分数据(如客服仅能看到用户手机号后四位)(ProxySQL、数据脱敏中间件)。

数据加密

  • 静态加密(At Rest):数据库加密(如 MySQL TDE)、文件系统加密(如 HDFS Transparent Encryption)。
  • 传输加密(In Transit):使用 TLS/SSL 协议保护数据传输(如 Kafka SSL 加密)。

审计与监控

  • 操作审计:记录数据访问、修改、删除日志,留存至少 6 个月(满足合规要求),ELK Stack(日志分析)、AWS CloudTrail。
  • 异常检测:通过机器学习模型识别异常访问模式(如非工作时间批量导出数据)。

数据服务与 API

数据服务化的分层架构

  • 数据准备层
    • 数据建模:根据业务需求设计宽表、聚合表或特征表(如用户画像表)。
    • 数据加工:通过 ETL/ELT 生成可复用的数据资产(如每日销售额统计表)。
    • 技术选型:Spark、Flink、Hive。
  • 服务封装层
    • 服务抽象:将数据封装为业务语义明确的接口(如 “获取用户最近订单”)。
    • 服务类型
      • 查询类:SQL 查询、键值查询(如根据用户 ID 获取画像)。
      • 分析类:聚合统计(如分地区销售额排名)。
      • 智能类:模型预测(如用户流失概率评分)。
    • 技术选型:Spring Boot(微服务)、GraphQL(灵活查询)。
  • 服务开放层
    • API 网关:统一入口管理 API 的认证、限流、监控。
    • 协议支持:RESTful API(80% 场景)、WebSocket(实时推送)、gRPC(高性能通信)。
    • 技术选型:Kong、Apigee、阿里云 API 网关。

API 设计原则

  • 标准化:遵循 OpenAPI 规范(Swagger),提供清晰的接口文档。
  • 安全性:支持 OAuth 2.0、JWT 令牌认证,敏感数据脱敏(如手机号部分隐藏)。
  • 性能优化
    • 缓存策略:Redis 缓存高频查询结果,降低数据库压力。
    • 分页与限流:避免大结果集拖垮系统(如每页最多 100 条,QPS 限制 1000 次 / 秒)。

API 生命周期管理

  • 开发与测试
    • Mock 服务:使用 Postman 或 Swagger UI 模拟接口,供前端并行开发。
    • 自动化测试:通过 JMeter 或 Python 脚本验证接口性能与正确性。
  • 部署与版本控制
    • 蓝绿发布:新版本 API 上线时保留旧版本,逐步切换流量。
    • 版本标识:URL 路径(如 /v1/user)或请求头(如 Accept-Version: 2.0)。
  • 监控与运维
    • 指标监控:实时跟踪 API 调用量、延迟、错误率(Prometheus + Grafana)。
    • 日志分析:记录请求详情,便于排查问题(ELK Stack)。

典型 API 类型与场景

API 类型场景技术实现
查询 API根据 ID 查询用户信息Redis 缓存 + MySQL 分库分表
分析 API统计近 7 天活跃用户数Presto 查询 Hive 宽表
实时推送 API交易风险告警通知WebSocket + Kafka 消息队列
预测 API用户信用评分Flask 部署 TensorFlow 模型

企业级数据中台源码,欢迎联系VX:gzzw1131

包括以下功能:

一、数据可视化平台
1.1 数据可视化(数据集管理、数据源管理、报表管理、文件管理
1.2 知识图谱(图谱管理)
二、数据建设平台:
2.1 元数据(数据源管理、元模型、最新元数据、元数据同步、元数据审核、定版元数据、元数据分析)
2.2 数据标准(标准定义、发布管理、审核管理、数据标准核对)
三、数据治理平台:
3.1 主数据(主数据实体、编码规则、主数据目录)
3.2 数据仓库(doris集群管理、数仓规划)
3.3 数据模型(模型数据、维度建模、模型运维)
3.4 数据指标(指标开发、指标地图)
3.5 数据质量(规则管理、检测任务)
3.6 数据标签(标签实体、标签管理、置标任务、标签圈群、圈群结果、标签画像)
3.7 数据安全(分级分类、数据脱敏)
3.8 服务管理(服务开发、服务测试、API集市、应用管理)
3.9 审核管理(服务审核、服务申请、历史审核)
3.10 数据资产(资产标签、目录管理、资产编目、资产门户)
四、数据采集开发平台
4.1 离线开发(任务管理、文件资源管理、多数据源目录)
4.2 实时开发(任务管理、告警通知、JAR维护)
4.3 数据挖掘(项目管理、源中心、资源中心、配置中心)
五、系统管理:
5.1基础管理(用户管理、角色管理、部门管理、职位管理、定时周期管理)
5.2开发管理(字典管理、菜单管理)
5.3 平台审计(登录日志、操作日志、实时日志、日志查询)
5.4数据运维(数据服务、ITMS、数仓备份)

相关文章:

数据中台架构设计

数据中台分层架构 数据采集层 数据源类型:业务系统(ERP、CRM)、日志、IoT 设备、第三方 API 等。采集方式: 实时采集:Kafka、Flink CDC(变更数据捕获)。离线采集:Sqoop、DataX&…...

基于SpringBoot网上书店的设计与实现

pom.xml配置文件 1. 项目基本信息(没什么作用) <groupId>com.spring</groupId> <!--项目组织标识&#xff0c;通常对应包结构--> <artifactId>boot</artifactId> <!--项目唯一标识--> <version>0.0.1-SNAPSHOT</ve…...

Vue3路由模式为history,使用nginx部署上线后刷新404的问题

一、问题 在使用nginx部署vue3的项目后&#xff0c;发现正常时可以访问的&#xff0c;但是一旦刷新&#xff0c;就是出现404的情况 二、解决方法 1.vite.config.js配置 在vite.config.js中加入以下配置 export default defineConfig(({ mode }) > {const isProduction …...

从单机到生产:Kubernetes 部署方案全解析

&#x1f680; 从单机到生产&#xff1a;Kubernetes 部署方案全解析 &#x1f310; Kubernetes&#xff08;k8s&#xff09;是当今最流行的容器编排系统&#xff0c;广泛应用于开发、测试和生产环境。但不同的使用场景对集群规模、高可用性和资源需求有不同的要求。本文将带你…...

redis大全

1 redis安装和简介 基于ubuntu系统的安装 sudo apt update sudo apt install redis##包安装的redis 没有默认配置文件 启动 redis-server /path/to/your/redis.confredis-cliRedis 默认是没有设置用户和密码的&#xff0c;即可以无密码访问 设置密码的方法&#xff1a;可以通…...

C#经典算法面试题

C#经典算法面试题 递归算法 C#递归算法计算阶乘的方法 一个正整数的阶乘(factorial)是所有小于及等于该数的正整数的积,并且0的阶乘为1。自然数n的阶乘写作n!。1808年,基斯顿卡曼引进这个表示法。 原理:亦即n!=123…(n-1)n。阶乘亦可以递归方式定义:0!=1,n!=(n-1)!n。…...

cephadm部署ceph集群

一、什么是Ceph? ceph是一个统一的、分布式的存储系统&#xff0c;设计初衷式提供较好的性能(io)、可靠性(没有单点故障)和可扩展性(未来可以理论上无限扩展集群规模)&#xff0c;这三点也是集群架构所追求的。 “统一的”:意味着Ceph可以一套存储系统同时提供对象存储、块存…...

c#OdbcDataReader的数据读取

先有如下c#示例代码&#xff1a; string strconnect "DSNcustom;UIDsa;PWD123456;" OdbcConnection odbc new OdbcConnection(strconnect); odbc.Open(); if (odbc.State ! System.Data.ConnectionState.Open) { return; } string strSql "select ID from my…...

代码随想录训练营第十八天| 150.逆波兰表达式求值 239.滑动窗口最大值 347.前k个高频元素

150.逆波兰表达式求值&#xff1a; 文档讲解&#xff1a;代码随想录|150.逆波兰表达式求值 视频讲解&#xff1a;栈的最后表演&#xff01; | LeetCode&#xff1a;150. 逆波兰表达式求值_哔哩哔哩_bilibili 状态&#xff1a;已做出 思路&#xff1a; 这道题目是让我们按照逆波…...

数据中台产品功能介绍

在数字化转型浪潮中&#xff0c;数据中台作为企业数据管理与价值挖掘的核心枢纽&#xff0c;整合分散数据资源&#xff0c;构建统一的数据管理与服务体系。本数据中台产品涵盖数据可视化、数据建设、数据治理、数据采集开发和系统管理五大平台&#xff0c;以丰富且强大的功能模…...

第四章-初始化Direct3D

首先我们需要一个错误检测和抛出机制 inline std::string ToString(const HRESULT& result) {char buffer[256];sprintf_s(buffer, "error code : 0x%08X\n", result);return std::string(buffer); }class MyException : public std::runtime_error { public:My…...

实操3:6位数码管

文章目录 文章介绍仿真图原来的仿真代码教学用开发板段选和位选对应引脚思考题实物图 文章介绍 对应“案例5_3: 6位数码管显示0或者1【静态显示】” 跳转链接 要求&#xff1a;实现开发板的6位数码管同时显示0或者1 仿真图 原来的仿真代码 #include<reg52.h> // 头文件…...

常识补充(NVIDIA NVLink技术:打破GPU通信瓶颈的革命性互联技术)

文章目录 **引言&#xff1a;为什么需要NVLink&#xff1f;**1. NVLink技术概述1.1 什么是NVLink&#xff1f;1.2 NVLink的发展历程 2. NVLink vs. PCIe&#xff1a;关键对比2.1 带宽对比2.2 延迟对比 3. NVLink的架构与工作方式3.1 点对点直连&#xff08;P2P&#xff09;3.2 …...

openwrt 使用quilt 打补丁(patch)

1,引入 本文简单解释如何在OpenWRT下通过quilt命令打补丁--patch&#xff0c;也可查看openwrt官网提供的文档 2&#xff0c;以下代码通过编译net-snmp介绍 ① 执行编译命令之后&#xff0c;进入build_dir的net-snmp-5.9.1目录下&#xff0c;改目录即为snmp最终编译的目录了 /…...

NVIDIA Halos:智能汽车革命中的全栈式安全系统

高级辅助驾驶行业正面临一个尴尬的"安全悖论"——传感器数量翻倍的同时&#xff0c;事故率曲线却迟迟不见明显下降。究其原因&#xff0c;当前行业普遍存在三大技术困局&#xff1a; 碎片化安全方案 传统方案就像"打补丁"&#xff0c;激光雷达厂商只管点云…...

k8s术语之service

Kubernetes在设计之初就充分考虑了针对容器的服务发现与负载均衡机制&#xff0c;提供了Service资源&#xff0c;并通过kube-proxy配合cloud provider 来适应不同的用于场景。随着kubernetes用户的激增&#xff0c;用户场景的不断丰富&#xff0c;又产生了一些新的负载均衡机制…...

C/C++工程中的Plugin机制设计与Python实现

C/C工程中的Plugin机制设计与Python实现 1. Plugin机制设计概述 在C/C工程中实现Plugin机制通常需要以下几个关键组件&#xff1a; Plugin接口定义&#xff1a;定义统一的接口规范动态加载机制&#xff1a;运行时加载动态库注册机制&#xff1a;Plugin向主程序注册自己通信机…...

RNN 与 CNN:深度学习中的两大经典模型技术解析

在人工智能和深度学习领域,RNN(Recurrent Neural Network,循环神经网络) 和 CNN(Convolutional Neural Network,卷积神经网络) 是两种非常重要的神经网络结构。 它们分别擅长处理不同类型的数据,在自然语言处理、计算机视觉等多个领域中发挥着关键作用。 本文将从原理…...

多模态训练与微调

1.为什么多模态模型需要大规模预训练&#xff1f; 多模态模型需要大规模预训练的原因包括&#xff1a; (1)数据丰富性&#xff1a;大规模预训练可以暴露模型于丰富的数据&#xff0c;提升其泛化能力。 (2)特征提取&#xff1a;通过预训练&#xff0c;模型能够学习到有效的特…...

【HDLBits刷题】Verilog Language——1.Basics

目录 一、题目与题解 1.Simple wire&#xff08;简单导线&#xff09; 2.Four wires&#xff08;4线&#xff09; 3.Inverter&#xff08;逆变器&#xff08;非门&#xff09;&#xff09; 4.AND gate &#xff08;与门&#xff09; 5. NOR gate &#xff08;或非门&am…...

基于深度学习的图像识别技术:从原理到应用

前言 在当今数字化时代&#xff0c;图像识别技术已经渗透到我们生活的方方面面&#xff0c;从智能手机的人脸解锁功能到自动驾驶汽车对交通标志的识别&#xff0c;再到医疗影像诊断中的病变检测&#xff0c;图像识别技术正以其强大的功能和广泛的应用前景&#xff0c;改变着我们…...

【coze】手册小助手(提示词、知识库、交互、发布)

【coze】手册小助手&#xff08;提示词、知识库、交互、发布&#xff09; 1、创建智能体2、添加提示词3、创建知识库4、测试智能体5、添加交互功能6、发布智能体 1、创建智能体 2、添加提示词 # 角色 你是帮助用户搜索手册资料的AI助手 ## 工作流程 ### 步骤一:查询知识库 1.每…...

【教学类-34-11】20250506异形拼图块(圆形、三角、正方,椭圆/半圆)的中2班幼儿偏好性测试(HTML)

背景介绍 最近在写一份工具运用报告,关于剪纸难度的。所以设计了蝴蝶描边系列和异形凹凸角拼图。 【教学类-102-20】蝴蝶三色图作品2——卡纸蝴蝶“满格变形图”(滴颜料按压对称花纹、原图切边后变形放大到A4横版最大化)-CSDN博客文章浏览阅读609次,点赞8次,收藏3次。【…...

Debian系统上PostgreSQL15版本安装调试插件及DBeaver相应配置

PostgreSQL所在Debian Linux服务器安装插件程序 在PostgreSQL数据库服务器Debian系统上执行以下命令&#xff0c;安装插件pldebugger: sudo apt install postgresql-15-pldebugger #上面这一条命令运行完好像pgsql服务自动重启了&#xff0c;看日志的样子是这样的&#xff0c…...

GD32F470+CH395Q

tcp_client配置 第一步&#xff1a;资料下载 以太网协议栈芯片 CH395 - 南京沁恒微电子股份有限公司 第二步&#xff1a;准备工程 &#xff08;1&#xff09; 首先准备一个编译无报错、可以正常打印和延时的工程文件&#xff0c;官方例程采用STM32F1芯片&#xff0c;但本文…...

解决Hyper-V无法启动Debian 12虚拟机

问题 有时&#xff0c;我们会想要在Hyper-V中运行Debian12。我们想利用该系统的ISO镜像文件安装一个全新的虚拟机。 然而&#xff0c;当我们在Hyper-V中创建了一个2代虚拟机、添加了Debian 12的网络安装&#xff08;Netinst&#xff09;ISO作为最先启动的介质时&#xff0c;Hy…...

linux redis 设置密码以及redis拓展

redis拓展:http://pecl.php.net/package/redis 在服务器上&#xff0c;这里以linux服务器为例&#xff0c;为redis配置密码。 需要永久配置密码的话就去redis.conf的配置文件中找到requirepass这个参数&#xff0c;如下配置&#xff1a; 修改redis.conf配置文件 # requirepass …...

uniapp app 端获取陀螺仪数据的实现攻略

在 uniapp 开发中&#xff0c;uni.startGyroscope在 app 端并不被支持&#xff0c;这给需要获取陀螺仪数据的开发者带来了挑战。不过&#xff0c;借助 Native.js&#xff0c;我们能调用安卓原生代码实现这一需求。接下来&#xff0c;就为大家详细介绍实现步骤&#xff0c;并附上…...

第三节:Vben Admin 最新 v5.0 对接后端登录接口(下)

文章目录 前言一、处理请求头Authorization二、/auth/user/info 接口前端接口后端接口三、/auth/codes 接口1.前端2.后端四、测试接口前言 上一节内容,实现了登录的/auth/login 接口,但是登陆没有完成,还需要完成下面两个接口。才能完成登录。 一、处理请求头Authorizatio…...

标题:基于自适应阈值与K-means聚类的图像行列排序与拼接处理

摘要&#xff1a; 本文提出了一种基于自适应阈值和K-means聚类的图像行列排序与拼接方法。通过对灰度图像的自适应二值化处理&#xff0c;计算并分析图像的左右边距&#xff0c;从而确定图像的行数与列数。通过对图像进行特征提取&#xff0c;并使用K-means聚类进行排序&#…...

修改磁盘权限为管理员

1.右击需要修改的磁盘&#xff0c;点击属性 然后一路点击确定 已经修改好了...

P1782 旅行商的背包 Solution

Description 有一个体积为 C C C 的背包和若干种物品. 前 n n n 种物品&#xff0c;第 i i i 种体积为 v i v_i vi​&#xff0c;价值 w i w_i wi​&#xff0c;有 d i d_i di​ 件. 后 m m m 种物品&#xff0c;每种对应一个函数 f ( x ) a i x 2 b i x c i f(x)a…...

Acrel-EIoT 能源物联网云平台在能耗监测系统中的创新设计

摘要 随着能源管理的重要性日益凸显&#xff0c;能耗监测系统成为实现能源高效利用的关键手段。本文详细介绍了基于安科瑞Acrel-EIoT能源物联网云平台的能耗监测系统的设计架构与应用实践。该平台采用分层分布式结构&#xff0c;涵盖感知层、网络层、平台层和应用层&#xff0…...

乘法逆元【费马小定理+扩展欧几里得】

目录 模运算性质费马小定理乘法逆元扩展欧几里得算法随机栈 模运算性质 费马小定理 a,b互质&#xff1a;gcd(a,b)1 乘法逆元 a,b互质,满足a*x同余1(mod b),x是a模b的乘法逆元&#xff0c;记作a的-1次方。 扩展欧几里得算法 求axbygcd(a,b)的一组(x,y). 随机栈 题目来源&…...

Linux进程间通信(上)(21)

文章目录 前言一、什么是进程间通信&#xff1f;概念目的本质分类 二、管道什么是管道匿名管道匿名管道的原理pipe函数匿名管道使用步骤管道读写规则管道的特点管道的四种特殊情况管道的大小 总结 前言 本篇出得有点慢&#xff0c;因为我在这里更换了我的开发环境   不再使用…...

力扣面试150题--对称二叉树

Day 41 题目描述 做法 原理&#xff1a;拆分为根节点的左右两棵子树&#xff0c;比较左子树的右和右子树的左&#xff0c;左子树的左和右子树的右 /*** Definition for a binary tree node.* public class TreeNode {* int val;* TreeNode left;* TreeNode righ…...

深度学习系统学习系列【6】之深度学习技巧

文章目录 数据集准备数据集扩展数据预处理1. 0均值&#xff08;Zero Centralization&#xff09;代码实现 2. 归一化&#xff08;Normalization&#xff09;代码实现 3. 主成分分析&#xff08;Principal Component Analysis, PCA&#xff09;实现步骤代码实现 4. 白化&#xf…...

vue项目中渲染markdown并处理报错

前言&#xff1a;想在vue项目中渲染markdown并处理报错问题 有以下几种方式&#xff1a; 1、使用第三方Markdown插件 2、通过Markdown转HTML工具 3、使用Vue组件处理Markdown 一、首先第一种&#xff1a;使用第三方Markdown插件 安装vue-markdown插件 或者 markdown-it&#xf…...

Vue3.5 企业级管理系统实战(十七):角色管理

本篇主要探讨角色管理功能&#xff0c;其中菜单权限这里先不实现&#xff0c;后续在菜单管理中再进行实现。接口部分依然是使用 Apifox mock 的。 1 角色 api 在 src/api/role.ts 中添加角色相关 api&#xff0c;代码如下&#xff1a; //src/api/role.ts import service fro…...

【AI论文】FormalMATH:大型语言模型形式化数学推理能力基准测试

摘要&#xff1a;正式的数学推理仍然是人工智能面临的一个关键挑战&#xff0c;受到现有基准在范围和规模上的限制。 为了解决这个问题&#xff0c;我们提出了FormalMATH&#xff0c;这是一个大规模的Lean4基准&#xff0c;包含5560个经过形式验证的问题&#xff0c;这些问题涵…...

9-4 USART串口数据包

HEX数据包的接收 研究几个小问题 1.包头包尾和数据载荷重复的问题 这里定义FF为包头&#xff0c;FE为包尾&#xff0c;如果我传输的数据本身就是FF和FE怎么呢&#xff1f;那这个问题确实存在&#xff0c;如果数据和包头包尾重复&#xff0c;可能会引起误判。我们有以下几种解…...

Babylon.js学习之路《 前言:为什么要学习Babylon.js 》

文章目录 引言&#xff1a;3D 开发在 Web 中的崛起为什么需要 Web 3D 开发&#xff1f;当选火热的应用场景数据表达方式的改变 Web 3D 的独特优势跨平台与零安装开发成本低即时更新与传播便捷 WebGL 的定位与挑战WebGL 是什么&#xff1f;WebGL 的直接使用痛点 为什么需要 Baby…...

今年我国已发生三级以上地震318次

快科技5月6日消息&#xff0c;根据中国地震台网的统计&#xff0c;今年以来&#xff08;截至4月30日&#xff09;&#xff0c;我国共发生三级以上地震318次&#xff0c;其中3.0-3.9级248次&#xff0c;4.0-4.9级61次&#xff0c;5.0-5.9级7次&#xff0c;6.0-6.9级2次&#xff…...

在与大语言模型交互中的礼貌现象:技术影响、社会行为与文化意义的多维度探讨

概述 关于是否值得对 AI 保持礼貌的公众意见&#xff0c;几乎和咖啡或红酒的最新研究结果一样频繁变化——这个月被推崇备至&#xff0c;下个月又受到质疑。即便如此&#xff0c;越来越多的用户现在在提示语中加入“请”或“谢谢”&#xff0c;这不仅仅是因为习惯&#xff0c;…...

Java后端开发day42--IO流(二)--字符集字符流

&#xff08;以下内容全部来自上述课程&#xff09; 拓展. try…catch异常处理&#xff08;能看懂&#xff09; 接口&#xff1a;AutoCloseable 特点&#xff1a;特定的情况下&#xff0c;可以自动释放资源 注意&#xff1a;只有实现了AutoCloseable接口的类&#xff0c;才能…...

【HarmonyOS 5】鸿蒙发展历程

【HarmonyOS 5】鸿蒙发展历程 一、鸿蒙 HarmonyOS 版本年代记 鸿蒙 1.0&#xff1a; 2019 年 8 月 9 日&#xff0c;华为在开发者大会上正式发布鸿蒙 1.0 系统&#xff0c;这一版本首次应用于华为荣耀智慧屏产品中&#xff0c;标志着华为正式进军操作系统领域。该版本初步展现…...

使用蚁群算法求解VRPTW问题

这里写目录标题 蚁群优化算法Python实现ACO求解VRPTW问题Java实现ACO求解VRPTW问题蚁群优化算法 蚁群算法(ACO)适合求解带时间窗的车辆路径优化问题(VRPTW),主要基于其仿生智能机制与问题特性的深度契合,具体体现在以下六个方面: 时间窗约束的自然映射 信息素导向与时间…...

内存的位运算

示例&#xff1a;提取和设置标志位 假设我们有一个32位的整数&#xff0c;其中不同的位代表不同的标志。例如&#xff1a; 位0&#xff1a;是否开启日志&#xff08;0表示关闭&#xff0c;1表示开启&#xff09; 位1&#xff1a;是否启用调试模式&#xff08;0表示禁用&#…...

高性能网络优化:深入解析忙轮询(Busy Polling)技术

在现代高性能网络应用中,如何降低数据包处理延迟、提升吞吐量是开发者与系统工程师的核心挑战之一。传统的“中断驱动”模式在高负载场景下表现不佳,而忙轮询(Busy Polling) 作为一种优化技术,通过主动轮询机制显著改善网络性能。本文将从原理、实现到实践,全面解析忙轮询…...

Linux grep 命令详解及示例大全

文章目录 一、基本语法二、常用选项及示例1. 基本匹配&#xff1a;查找包含某字符串的行2. 忽略大小写匹配 -i3. 显示行号 -n4. 递归查找目录下的文件 -r 或 -R5. 仅显示匹配的字符串 -o6. 使用正则表达式 -E&#xff08;扩展&#xff09;或 egrep7. 显示匹配前后行 -A, -B, -C…...