从SQL到MapReduce:Hive的数据仓库“翻译魔法”与未来演进

news2026/4/16 12:11:38
在大数据技术卷疯了的今天Hive早就不是单纯的“SQL解析工具”那么简单而是撑起企业级数据仓库的核心大佬。它最绝的“魔法”就是把咱们写起来顺手又好懂的SQL自动转成分布式计算框架MapReduce能跑的任务——哪怕你不懂Java、Python这些底层代码也能轻松拿捏TB、PB级的海量数据直接打破“大数据处理熬夜写底层”的魔咒作为Hadoop生态里的“明星工具”Hive的诞生初衷特别实在让大数据处理“接地气”人人都能上手。在Hive出现之前要处理HDFS上的海量数据就得写一堆复杂到头秃的MapReduce程序技术门槛高到离谱也让大数据技术一直“曲高和寡”没法在企业里普及。而Hive一出场就给MapReduce套上了个“SQL外壳”用咱们最熟悉的查询语法把分布式存储和分布式计算串起来直接完成了从“技术说了算”到“业务说了算”的转变。现在不管是互联网、金融还是政务领域Hive都是数据仓库的标配数据集成、清洗、分析、建模这些核心活全靠它扛。而它这套“翻译本事”的背后藏着一套超严谨、超高效的技术架构和执行逻辑。一、解构Hive不只是“翻译官”更是数据仓库的“中枢大脑”很多人对Hive都有个误区觉得它是用来“存数据”或者“算数据”的。其实不然Hive的核心定位是“数据仓库基础架构”——它自己不存一滴数据数据都存在HDFS里也没有独立的计算能力更像是个“协调大师金牌翻译”一边连着重Hadoop生态的两大核心HDFS分布式存储和MapReduce分布式计算一边整合元数据管理、查询优化这些本事凑出一套完整的数据仓库解决方案。具体来说Hive的核心架构就4大模块也是它能实现“SQL转MapReduce”魔法的底气用户接口层主打一个“按需适配”CLI命令行、HiveServer2支持JDBC/ODBC供BI工具调用、Web UI可视化界面全都有。分析师用CLI写SQL贼快开发工程师能通过JDBC集成到应用里管理人员靠Web UI就能监控任务进度谁用谁顺手。解析与优化层这才是Hive“翻译魔法”的核心C位专门负责把SQL转成能直接跑的MapReduce任务。里面藏着4个关键组件Parser语法解析器、Semantic Analyzer语义分析器、Logical Optimizer逻辑优化器、Physical Plan Generator物理计划生成器后面咱们一步步拆把它的工作逻辑扒明白。元数据存储层Metastore相当于Hive的“大脑记忆库”所有和数据仓库相关的信息都存在这——表结构、字段类型、数据在HDFS的哪个角落、分区分桶规则、索引信息等等。要是没有它Hive根本不知道SQL里的表和字段对应哪份数据后续的翻译和计算就无从谈起。Metastore可以用Derby、MySQL这些数据库存企业里基本都用MySQL能支持多用户共享元数据方便又稳定。执行层不直接干活主打一个“调度指挥”。它会把生成的物理计划也就是MapReduce任务交给Hadoop的YARN资源管理框架让YARN分配集群资源调度MapReduce任务在各个节点上并行跑最后把计算结果返回来。而且现在Hive不只有MapReduce还支持Tez、Spark这些更快的计算引擎查询速度直接翻倍。说白了Hive的核心价值就是“帮你省麻烦、降门槛”业务人员不用管数据怎么分片存储、怎么容错不用熬夜写复杂的MapReduce代码只要专注于自己的业务需求用SQL说清“我要查什么、怎么查”剩下的“翻译”和“执行”全交给Hive就完事儿了。二、深度拆解SQL到MapReduce的“魔法翻译”全流程Hive把SQL转成MapReduce任务可不是简单的“逐字翻译”而是一套完整的“解析-分析-优化-生成-执行”链路每一步都卡得很严既保证效率又保证准确。咱们拿一个最常见的聚合查询当例子一步步拆解开让这套“魔法”再也不神秘。假设咱们有一张员工表employee存在HDFS上有emp_id员工ID、dept_id部门ID、salary工资、hire_date入职日期4个字段现在要执行这么一条SQLSELECT dept_id, COUNT(emp_id) AS emp_count, AVG(salary) AS avg_salary FROM employee WHERE hire_date 2020-01-01 GROUP BY dept_id;核心需求很简单统计2020年之后入职的员工按部门分组算一下每个部门的人数和平均工资。这条看起来平平无奇的SQL背后藏着一整套MapReduce的执行逻辑Hive要走6步才能完成从SQL到MapReduce的“翻译”咱们一步步看步骤1输入SQL触发查询咱们通过CLI、JDBC这些接口把SQL输进去Hive的用户接口层接到请求后直接转给解析与优化层正式开启“翻译”模式。这一步的核心就是“传需求”咱们不用管底层怎么实现只要用SQL说清自己要啥——这也是Hive最贴心的地方哪怕不懂分布式计算业务人员也能上手做大数据分析。步骤2语法解析Parser—— 先查“SQL写得对不对”Parser语法解析器的核心工作就是“找茬”按照SQL的语法规则检查咱们写的SQL有没有错——关键字拼错了比如把GROUP BY写成GROUP BYY、表名字段名写错了初步检查不查元数据都能被它揪出来。检查通过后它会把SQL转成抽象语法树AST简单说就是把SQL拆成一个个“节点”比如“SELECT节点”“FROM节点”“WHERE节点”把SQL的执行逻辑摆得明明白白。比如咱们刚才那条SQL会被拆成从employee表里筛出2020年1月1日之后入职的记录按dept_id分组算emp_id的计数和salary的平均值最后输出dept_id、emp_count、avg_salary这3个字段。要是SQL有语法错Parser直接报错终止“翻译”避免后面做无用功。毕竟连句子都写不对后续的翻译也就无从谈起啦。步骤3语义分析Semantic Analyzer—— 明确“要处理的数据在哪”语法没问题后语义分析器就该登场了它会联动Metastore元数据存储对抽象语法树做进一步分析核心就是搞清楚要处理的数据在哪、长什么样。这一步是SQL和底层数据的“桥梁”少了它Hive就成了“睁眼瞎”。具体来说它要做这4件事① 查Metastore确认employee表真的存在、表的存储格式比如ORC、Parquet、TextFile、数据在HDFS的具体路径② 确认dept_id、emp_id这些字段真的在表里以及每个字段的类型比如emp_id是int、salary是double、hire_date是date③ 检查WHERE条件里的表达式hire_date‘2020-01-01’是不是合理比如字段类型和比较值的类型对不对得上④ 确认分组字段和聚合函数用得对不对比如COUNT(emp_id)不会统计NULL值。语义分析完成后抽象语法树会变成“逻辑执行计划”只说“要做什么”不说“怎么做”——比如“先筛符合条件的记录再分组最后算聚合指标”逻辑顺序一目了然。步骤4逻辑优化Logical Optimizer—— 给查询“提速增效”逻辑执行计划虽然逻辑通顺但可能存在“绕远路”的问题。比如咱们这条SQL要是先分组再筛选会让大量不符合条件的记录参与计算既费时间又费资源。所以Hive的逻辑优化器就相当于“优化大师”会给逻辑执行计划“瘦身提速”这也是Hive提升查询性能的关键操作。常见的优化操作咱们用大白话讲清楚谓词下推Predicate Pushdown把WHERE条件的筛选提前到读数据的时候做减少后面分组、聚合的数据量。比如把“筛2020年之后入职的员工”这个操作提前到读employee表的时候只留符合条件的记录后面的步骤就不用处理那些没用的数据速度直接拉满。分区裁剪Partition Pruning要是employee表按hire_date分区存储这是Hive最常用的优化技巧逻辑优化器会直接只读符合条件的分区不用读整个表的数据——对于大表来说这一步能省超多时间相当于“不用翻整本书只翻需要的几页”。聚合函数优化对于COUNT、AVG这些聚合函数优化器会判断能不能先做局部聚合减少后面全局聚合的数据量比如emp_id没有NULL值的话COUNT(emp_id)会被优化成COUNT(*)计算起来更快。连接优化Join Optimization要是SQL里有多表连接优化器会根据表的大小、数据分布选最优的连接方式比如Map Join、Sort Merge Join减少数据传输和计算量避免“做无用功”。优化完成后会生成更高效的逻辑执行计划为后面转成MapReduce任务打基础——毕竟能省时间的优化才是好优化步骤5物理计划生成Physical Plan Generator—— 魔法的核心环节这一步才是Hive“SQL转MapReduce”的重头戏也是最能体现“魔法”的地方。物理计划生成器会把优化后的逻辑执行计划转成具体的MapReduce任务明确“每个任务做什么、谁来做、怎么配合”。咱们那条聚合查询SQL会被转成标准的“两阶段MapReduce任务”——Map阶段、Shuffle阶段、Reduce阶段Shuffle是Map和Reduce之间的“桥梁”也是MapReduce的核心每个阶段的活都不一样咱们拆开来聊1Map阶段数据读取局部处理Map任务会被YARN分配到集群的各个节点上每个Map任务处理HDFS上的1个或多个数据块HDFS默认128MB一个块核心就是3件事读数据、筛数据、做局部聚合主打一个“先处理再传递”减少后续工作量。读取数据Map任务根据Metastore里的文件路径找到employee表的对应数据块解析数据格式比如TextFile按分隔符拆字段把数据转成键值对Key-Value的形式。筛选数据执行谓词下推后的筛选操作只留hire_date2020-01-01’的记录把不符合条件的直接过滤掉减少数据量。局部聚合对每个符合条件的记录输出键值对——Key是分组字段dept_idValue是要聚合的内容emp_id的计数1、salary的数值。比如某条记录dept_id是101、salary是8000Map任务就输出(101, (1, 8000))。另外Map阶段还能做个“可选操作”——Combiner局部聚合比如同一个Map任务里dept_id是101的多条记录会被聚合成(101, (n, sum_salary))n是记录数sum_salary是工资总和这样能减少后面Shuffle阶段的数据传输提速超明显。2Shuffle阶段数据分发排序Map和Reduce的“桥梁”Shuffle阶段堪称MapReduce的“灵魂”也是最影响效率的环节。因为Map任务是在不同节点上并行跑的每个Map任务只处理一部分数据所以得通过Shuffle把所有Map任务的输出按Keydept_id分组、排序再分发到对应的Reduce任务里——简单说就是“把相同部门的记录汇总到同一个Reduce任务里”。Shuffle主要做3件事一步都不能少① 分区Partition根据Key的哈希值把Map输出的键值对分到不同的Reduce任务里确保同一个dept_id的记录都去同一个Reduce任务② 排序Sort对每个分区里的键值对按Key排序让Reduce任务收到的数据是有序的方便后续计算③ 合并Merge把多个Map任务输出的、同一个分区的键值对合并成一个有序列表减少数据传输的次数节省时间。Shuffle的性能直接决定了整个任务的速度——要是数据传输多、排序慢任务就会卡在这半天跑不完。Hive也有应对办法比如压缩数据、调整分区数量都是为了让Shuffle跑得更快。3Reduce阶段全局聚合结果输出搞定最终答案Reduce任务接收Shuffle分发来的、属于自己分区的键值对核心就是做两件事全局聚合、输出结果相当于“汇总计算交作业”。全局聚合对同一个dept_id的所有键值对做最终的聚合计算。比如收到dept_id是101的键值对列表((1, 8000), (1, 6000), (n, sum_salary))Reduce会算总人数11n、总工资80006000sum_salary再算平均工资总工资÷总人数搞定每个部门的最终指标。结果输出把聚合后的结果dept_id, emp_count, avg_salary按指定格式比如ORC、TextFile写到HDFS的指定路径同时把结果返回给HiveHive整理成咱们能看懂的表格再展示给咱们。步骤6提交执行返回结果魔法收尾物理计划生成好之后Hive就把MapReduce任务交给YARN让YARN来“分配资源、调度任务”YARN会看集群的资源情况比如CPU、内存把Map和Reduce任务分配到不同节点上并行跑同时监控任务状态——要是任务失败、节点出问题YARN会自动处理确保任务能顺利跑完。等所有Map和Reduce任务都跑完计算结果会存在HDFS上Hive读取这些结果整理成咱们能看懂的格式比如表格通过CLI、Web UI这些接口返回给咱们。到这整个“SQL转MapReduce”的魔法就彻底完成啦三、直观对比SQL vs MapReduceHive省了多少事为了让大家更直观地感受到Hive“翻译魔法”的香咱们拿刚才的聚合查询举例对比一下“用Hive SQL”和“用原生MapReduce”的区别——简直是天差地别也更能看出Hive到底帮咱们省了多少事、降了多少门槛。操作环节Hive SQL写法简洁高效原生MapReduce写法复杂繁琐数据读取不用手动写一行代码Hive靠Metastore自动读HDFS上的表数据得手动写Mapper类指定HDFS文件路径、解析格式还要处理读取异常麻烦到炸数据筛选一句WHERE hire_date ‘2020-01-01’搞定筛选在Mapper的map()方法里手动写if判断逐行筛选稍不注意就出错分组操作GROUP BY dept_id不用管底层怎么分组得在Mapper里把dept_id当Key输出手动配置Shuffle的分区、排序规则巨繁琐聚合计算直接调用COUNT、AVG函数不用自己算得写Reducer类在reduce()方法里手动循环累加、算平均值还要处理空值异常结果输出SELECT输出指定字段Hive自动写HDFS、返回结果手动指定输出格式、路径写代码把结果写入HDFS还要处理输出异常异常处理Hive自动处理读取失败、任务失败还能重试不用管手动写异常处理代码应对文件读取、网络、节点故障开发成本拉满看完对比相信大家都能get到Hive的香用原生MapReduce写一个简单的聚合查询得写一堆Java代码涉及Mapper、Reducer、Driver好几个类还要操心数据解析、异常处理、资源配置又费时间又费脑子而Hive SQL只要一行语句就能搞定同样的事把底层的复杂逻辑全屏蔽让咱们能专心搞业务。据统计Hive能帮开发者省95%以上的底层编码工作量这也是它能在企业里普及到不行的核心原因——谁不想少加班、多高效呢四、Hive的“进化”从MapReduce到多引擎未来可期虽然Hive的核心魔法是“SQL转MapReduce”但大数据技术一直在卷Hive也没停下升级的脚步——打破MapReduce的性能瓶颈适配更多场景从“只能靠MapReduce”的工具变成“多引擎适配”的全能选手在元数据管理、查询优化、生态集成上持续发力变得更高效、更灵活、更智能。1. 计算引擎多元化告别MapReduce的“慢”按需选引擎MapReduce虽然稳定可靠能处理海量数据但有个致命缺点慢、延迟高。尤其是做交互式查询、实时分析的时候MapReduce的速度根本跟不上需求。为了解决这个问题Hive引入了多种计算引擎主打一个“按需选择、对症下药”Tez引擎Apache Tez出品基于DAG有向无环图能把多个MapReduce任务串成一个DAG任务减少中间数据落地速度直接提升30%-50%适合复杂的多表连接、嵌套查询再也不用等半天。Spark引擎现在企业里的主流选择基于内存计算中间数据存在内存里不用频繁读写磁盘速度比MapReduce快10-100倍适合交互式查询、近实时分析。Hive通过Hive on Spark实现了“一套SQL能转Spark任务”既保留了SQL的易用性又有Spark的高性能完美Flink引擎近几年的“流量选手”支持实时计算和批处理延迟低、吞吐量高Hive通过Hive on Flink能把SQL转成Flink任务适配实时数据仓库的需求彻底打破“批处理”和“流处理”的壁垒。现在的Hive早就不是“一条路走到黑”批处理用MapReduce/Tez交互式查询用Spark实时分析用Flink一套SQL搞定所有场景灵活性直接拉满。2. 元数据管理升级从“存数据”到“企业级数据治理”元数据是Hive的“核心资产”随着企业数据仓库越做越大元数据也越来越多、越来越复杂对管理的要求也越来越高。这些年Hive一直在升级Metastore从最初“简单存元数据”升级成“企业级元数据管理平台”功能直接拉满元数据血缘分析能追踪数据的来龙去脉比如“数据从哪来、经过哪些处理、最终到哪去”帮企业实现数据溯源尤其是金融行业能轻松满足监管要求再也不用为“数据来源不明”发愁。权限控制精细化能对表、字段、分区做精细化权限控制不同角色的用户只能访问自己有权限的数据和元数据比如普通分析师看不到敏感字段保障数据安全避免泄露。元数据自动化采集能从Hive、Spark、Flink等工具里自动采集元数据不用人工手动维护既省时间又能保证元数据的准确性和及时性减少人为错误。元数据管理升级后Hive再也不只是“查询工具”更能支撑企业级数据治理成为数据仓库的“中枢大脑”连接起数据采集、存储、处理、分析、应用的全流程帮企业把数据管得明明白白。3. 生态集成深化融入大数据全栈打通所有环节Hive作为Hadoop生态的“核心成员”这些年一直在深化和其他大数据工具的合作融入大数据全栈体系让企业的数据处理更高效、更顺畅不用再“各玩各的”与数据集成工具集成能和Sqoop、DataX这些工具无缝对接实现MySQL、Oracle等关系型数据库和Hive之间的数据同步不用手动写代码导数据简化导入导出流程省了不少事。与BI工具集成能和Tableau、Power BI、FineBI这些BI工具对接通过JDBC/ODBC接口让BI工具直接读Hive里的数据做可视化分析、生成报表不用再手动导出数据数据价值能更快呈现。与机器学习工具集成能和Spark MLlib、TensorFlow这些机器学习工具对接Hive里的数据能直接用来训练机器学习模型、做预测实现“数据分析-模型训练-业务应用”的闭环让数据发挥更大价值。4. 智能优化升级自动提速不用手动调参查询优化是Hive的核心竞争力这些年Hive一直在引入智能优化技术让SQL查询“自动提速”不用咱们手动调参小白也能写出高效SQL自适应查询优化AQO能根据查询的执行情况动态调整执行计划比如自动调整分区数量、Shuffle策略、聚合方式不用人工干预就能提升查询性能相当于“自带优化大师”。基于机器学习的优化会分析历史查询的执行数据用机器学习模型预测最优的执行计划减少优化时间让优化更精准比如同样一条SQL第二次跑会比第一次更快。五、总结Hive的“魔法”让大数据不再“高冷”回头看Hive的发展它的核心价值从来没变过用SQL的简单破解分布式计算的复杂让大数据处理从“少数技术大神的专属”变成“多数业务人员能上手的工具”。Hive的“翻译魔法”本质上就是“技术赋能业务”——它把MapReduce、HDFS这些底层技术的复杂细节全藏在背后让咱们不用关注“怎么实现”只要专注于“要做什么”大大降低了大数据的学习和开发门槛。现在大数据技术还在不断卷Hive也在持续进化从只能用MapReduce到多引擎适配从简单存元数据到企业级数据治理从单一查询工具到融入大数据全栈体系Hive一直站在企业数据仓库建设的前沿支撑着企业的数字化转型。对于咱们数据从业者来说搞懂Hive的“翻译魔法”不仅能让咱们用好Hive、提升工作效率更能让咱们明白大数据技术的核心逻辑——分层解耦、简化复杂。在大数据时代真正有价值的技术不是那些晦涩难懂的底层代码而是能让更多人用上大数据、发挥数据价值的工具。未来随着人工智能、实时计算这些技术的融合Hive的“魔法”还会不断升级继续为企业数据仓库赋能推动大数据在更多领域普及。而对于咱们来说掌握Hive的核心原理和使用技巧已经成为立足大数据领域的必备能力——毕竟能省时间、提效率的工具谁不爱呢

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2416179.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SpringBoot-17-MyBatis动态SQL标签之常用标签

文章目录 1 代码1.1 实体User.java1.2 接口UserMapper.java1.3 映射UserMapper.xml1.3.1 标签if1.3.2 标签if和where1.3.3 标签choose和when和otherwise1.4 UserController.java2 常用动态SQL标签2.1 标签set2.1.1 UserMapper.java2.1.2 UserMapper.xml2.1.3 UserController.ja…

wordpress后台更新后 前端没变化的解决方法

使用siteground主机的wordpress网站,会出现更新了网站内容和修改了php模板文件、js文件、css文件、图片文件后,网站没有变化的情况。 不熟悉siteground主机的新手,遇到这个问题,就很抓狂,明明是哪都没操作错误&#x…

网络编程(Modbus进阶)

思维导图 Modbus RTU(先学一点理论) 概念 Modbus RTU 是工业自动化领域 最广泛应用的串行通信协议,由 Modicon 公司(现施耐德电气)于 1979 年推出。它以 高效率、强健性、易实现的特点成为工业控制系统的通信标准。 包…

UE5 学习系列(二)用户操作界面及介绍

这篇博客是 UE5 学习系列博客的第二篇,在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下: 【Note】:如果你已经完成安装等操作,可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作,重…

IDEA运行Tomcat出现乱码问题解决汇总

最近正值期末周,有很多同学在写期末Java web作业时,运行tomcat出现乱码问题,经过多次解决与研究,我做了如下整理: 原因: IDEA本身编码与tomcat的编码与Windows编码不同导致,Windows 系统控制台…

利用最小二乘法找圆心和半径

#include <iostream> #include <vector> #include <cmath> #include <Eigen/Dense> // 需安装Eigen库用于矩阵运算 // 定义点结构 struct Point { double x, y; Point(double x_, double y_) : x(x_), y(y_) {} }; // 最小二乘法求圆心和半径 …

使用docker在3台服务器上搭建基于redis 6.x的一主两从三台均是哨兵模式

一、环境及版本说明 如果服务器已经安装了docker,则忽略此步骤,如果没有安装,则可以按照一下方式安装: 1. 在线安装(有互联网环境): 请看我这篇文章 传送阵>> 点我查看 2. 离线安装(内网环境):请看我这篇文章 传送阵>> 点我查看 说明&#xff1a;假设每台服务器已…

XML Group端口详解

在XML数据映射过程中&#xff0c;经常需要对数据进行分组聚合操作。例如&#xff0c;当处理包含多个物料明细的XML文件时&#xff0c;可能需要将相同物料号的明细归为一组&#xff0c;或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码&#xff0c;增加了开…

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器的上位机配置操作说明

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器专为工业环境精心打造&#xff0c;完美适配AGV和无人叉车。同时&#xff0c;集成以太网与语音合成技术&#xff0c;为各类高级系统&#xff08;如MES、调度系统、库位管理、立库等&#xff09;提供高效便捷的语音交互体验。 L…

(LeetCode 每日一题) 3442. 奇偶频次间的最大差值 I (哈希、字符串)

题目&#xff1a;3442. 奇偶频次间的最大差值 I 思路 &#xff1a;哈希&#xff0c;时间复杂度0(n)。 用哈希表来记录每个字符串中字符的分布情况&#xff0c;哈希表这里用数组即可实现。 C版本&#xff1a; class Solution { public:int maxDifference(string s) {int a[26]…

【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型

摘要 拍照搜题系统采用“三层管道&#xff08;多模态 OCR → 语义检索 → 答案渲染&#xff09;、两级检索&#xff08;倒排 BM25 向量 HNSW&#xff09;并以大语言模型兜底”的整体框架&#xff1a; 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后&#xff0c;分别用…

【Axure高保真原型】引导弹窗

今天和大家中分享引导弹窗的原型模板&#xff0c;载入页面后&#xff0c;会显示引导弹窗&#xff0c;适用于引导用户使用页面&#xff0c;点击完成后&#xff0c;会显示下一个引导弹窗&#xff0c;直至最后一个引导弹窗完成后进入首页。具体效果可以点击下方视频观看或打开下方…

接口测试中缓存处理策略

在接口测试中&#xff0c;缓存处理策略是一个关键环节&#xff0c;直接影响测试结果的准确性和可靠性。合理的缓存处理策略能够确保测试环境的一致性&#xff0c;避免因缓存数据导致的测试偏差。以下是接口测试中常见的缓存处理策略及其详细说明&#xff1a; 一、缓存处理的核…

龙虎榜——20250610

上证指数放量收阴线&#xff0c;个股多数下跌&#xff0c;盘中受消息影响大幅波动。 深证指数放量收阴线形成顶分型&#xff0c;指数短线有调整的需求&#xff0c;大概需要一两天。 2025年6月10日龙虎榜行业方向分析 1. 金融科技 代表标的&#xff1a;御银股份、雄帝科技 驱动…

观成科技:隐蔽隧道工具Ligolo-ng加密流量分析

1.工具介绍 Ligolo-ng是一款由go编写的高效隧道工具&#xff0c;该工具基于TUN接口实现其功能&#xff0c;利用反向TCP/TLS连接建立一条隐蔽的通信信道&#xff0c;支持使用Let’s Encrypt自动生成证书。Ligolo-ng的通信隐蔽性体现在其支持多种连接方式&#xff0c;适应复杂网…

铭豹扩展坞 USB转网口 突然无法识别解决方法

当 USB 转网口扩展坞在一台笔记本上无法识别,但在其他电脑上正常工作时,问题通常出在笔记本自身或其与扩展坞的兼容性上。以下是系统化的定位思路和排查步骤,帮助你快速找到故障原因: 背景: 一个M-pard(铭豹)扩展坞的网卡突然无法识别了,扩展出来的三个USB接口正常。…

未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?

编辑&#xff1a;陈萍萍的公主一点人工一点智能 未来机器人的大脑&#xff1a;如何用神经网络模拟器实现更智能的决策&#xff1f;RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战&#xff0c;在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…

Linux应用开发之网络套接字编程(实例篇)

服务端与客户端单连接 服务端代码 #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <arpa/inet.h> #include <pthread.h> …

华为云AI开发平台ModelArts

华为云ModelArts&#xff1a;重塑AI开发流程的“智能引擎”与“创新加速器”&#xff01; 在人工智能浪潮席卷全球的2025年&#xff0c;企业拥抱AI的意愿空前高涨&#xff0c;但技术门槛高、流程复杂、资源投入巨大的现实&#xff0c;却让许多创新构想止步于实验室。数据科学家…

深度学习在微纳光子学中的应用

深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向&#xff1a; 逆向设计 通过神经网络快速预测微纳结构的光学响应&#xff0c;替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…