kettle开发-超好用AI+算力组合-算力提升器

简介: kettle开发-超好用AI+算力组合-算力提升器

前言:


       上一节我们提到采用标记新旧数据的数据状态来快速整理需对比的数据,再选择性插入更新来保证数据的完整性。强强联合,保证了数据的高效和可用。


       但是日常中,也存在部分场景,我们表输入是没有唯一性主键的,我们无法判断哪些数据有更新和插入,但我们又不能用裁剪表来直接删除后再更新,这时候我们该如何是好。很多人会想到,那就提高算力,提高数据处理速度就好,在1秒时间内完成100万数据的处理。理论上是可行,但是正如ChatGpt的发展会受到算力的制约一样,我们来分析下,怎么通过调整数据处理策略来提高效率并保证数据的可用性。


一、AI转移


1、极简数据源


       因为我们没办法去提高主键,导致我们只能采用全量更新的方式来处理数据,因此我们需要将数据表输入的时间转移,我们只能在极端的时间内完成数据的更新,通常在1s内,因此表输入的读取时间是不允许超过0.2秒的,此时我们需保证表输入的SQ是select * from table。


       其中的table而且数据量不能太大,只能保存需插入更新的数据,并且表输入不能包含任何where条件加字段计算等来增加耗时。因此此时的数据源是极简的。


2、AI转移


       我们知道在数据处理还有一个江湖必杀技叫“空间换时间”。所谓的空间换时间,就是将整个数据步骤进行拆分,将每个步骤的数据都保存下来,保证每一步都是最高效的。因此也叫做1+1>2。此时的整体思路就是将我们需要更新的数据,保存至另外一个表里面。然后我们删除更新时间段的数据,然后再进行数据的插入。


       因此整个过程变成了,更新数据输入+更新时间段数据删除+更新数据输出。因为不涉及数据的更新操作,操作效率还是非常高的,下面我们详细讲解下实现过程。


二、多线程算力分解


1、历史数据输入


       如下图所示,我们表输入是个很复杂的SQ逻辑,此时单单数据读取耗时都会在5-10分钟左右,因此在这种超复杂的应用场景下。我们保证数据的高效和完整体现的特别重要。


       如下图所示我们只需要更新近90天的数据即可,根据实际要求来调整,即一般业务一个月以后就会关账,就不允许修改历史数据了。如何所示将需更新数据保存至oa_gcpycll_csh表中。

       


2、更新时间段数据删除


        如下图所示,将更新时间数据从目标表删除,在此次转换中,表名为oa_gcpycll,对应参考代码如下所示,其中id是一个主表中的id并不是唯一的。

delete from  oa_gcpycll  where id in (
select distinct ID  from  oa_gcpycll_csh);
commit; --清除历史数据再插入历史数据


3、更新数据输出


最后我们将更新数据输出至目标表oa_gcpycll,对应操作如下图所示。


三、总结


这种自定义组合的方式,可以解决因计算复杂的表输入逻辑,导致我们更新数据时,找不到合适主键的场景,通过一个中间表来存储更新的数据,从而将数据处理时间封闭至另外一个空间,不再影响目标表的性能。因此我们可以根据我们实际业务场景来是否选择这种方式来处理复杂的数据处理场景。


通过拆分步骤不仅解决了性能问题,而且极大的降低了对算力的要求,希望你能喜欢。下一节将介绍,使用kettle处理接口文件


相关文章
|
3天前
|
人工智能 小程序
【一步步开发AI运动小程序】十五、AI运动识别中,如何判断人体站位的远近?
【云智AI运动识别小程序插件】提供人体、运动及姿态检测的AI能力,无需后台支持,具有快速、体验好、易集成等特点。本文介绍如何利用插件判断人体与摄像头的远近,确保人体图像在帧内的比例适中,以优化识别效果。通过`whole`检测规则,分别实现人体过近和过远的判断,并给出相应示例代码。
|
1天前
|
人工智能 小程序 UED
【一步步开发AI运动小程序】十六、AI运动识别中,如何判断人体站位?
【云智AI运动识别小程序插件】提供人体、运动及姿态检测的AI能力,本地引擎无需后台支持,具备快速、体验好、易集成等优势。本文介绍如何利用插件的`camera-view`功能,通过检测人体站位视角(前、后、左、右),确保运动时的最佳识别率和用户体验。代码示例展示了如何实现视角检查,确保用户正或背对摄像头,为后续运动检测打下基础。
|
7天前
|
存储 人工智能 安全
AI时代,存力 or 算力 哪个更重要
本文探讨了AI技术发展中算力与存力的重要性。算力指计算能力,对处理大数据和实时计算至关重要;存力则是数据存储能力,确保数据安全可靠,支持后续分析。两者相辅相成,共同推动AI技术的快速发展,缺一不可。
|
15天前
|
人工智能 小程序 IDE
【一步步开发AI运动小程序】九、姿态辅助调试桌面工具的使用
随着AI技术的发展,各大厂商推出的AI运动APP如“乐动力”、“天天跳绳”等,使云上运动会、线上健身等概念大热。本文将指导你如何利用“云智AI运动识别小程序插件”,在微信小程序中实现类似功能,包括工具搭建、服务启动及数据回传等步骤,助力开发者高效开发AI运动小程序。
【一步步开发AI运动小程序】九、姿态辅助调试桌面工具的使用
|
7天前
|
人工智能 小程序 API
【一步步开发AI运动小程序】十三、自定义一个运动分析器,实现计时计数02
本文介绍如何利用“云智AI运动识别小程序插件”开发AI运动小程序,详细解析了俯卧撑动作的检测规则构建与执行流程,涵盖卧撑和撑卧两个姿态的识别规则,以及如何通过继承`sports.SportBase`类实现运动分析器,适用于小程序开发者。
|
8天前
|
人工智能 小程序 API
【一步步开发AI运动小程序】十二、自定义一个运动分析器,实现计时计数01
随着AI技术的发展,AI运动APP如雨后春笋般涌现,如“乐动力”、“天天跳绳”等,推动了云上运动会、线上健身等热潮。本文将指导你从零开始开发一个AI运动小程序,利用“云智AI运动识别小程序插件”,介绍运动识别原理、计量方式及运动分析器基类的使用,帮助你在小程序中实现运动计时和计数功能。下篇将继续探讨运动姿态检测规则的编写。
|
9天前
|
数据采集 人工智能 小程序
【一步步开发AI运动小程序】十、姿态动作相似度比较
本文介绍如何利用“云智AI运动识别小程序插件”开发AI运动小程序,重点讲解姿态动作相似度比较功能的运用,包括样本动作帧的采集和姿态相似度的计算方法,以及在组合运动中的应用实例。
|
3天前
|
人工智能 小程序 JavaScript
【一步步开发AI运动小程序】十四、主包超出2M大小限制,如何将插件分包发布?
本文介绍了如何从零开始开发一个AI运动小程序,重点讲解了通过分包技术解决程序包超过2M限制的问题。详细步骤包括在uni-app中创建分包、配置`manifest.json`和`pages.json`文件,并提供了分包前后代码大小对比,帮助开发者高效实现AI运动功能。
|
8天前
|
人工智能 小程序 开发者
【一步步开发AI运动小程序】十一、人体关键点跳跃追踪
本文介绍如何利用“云智AI运动识别小程序插件”开发AI运动小程序,涵盖云上运动会、健身打卡等热门应用场景。通过示例代码展示如何调用插件功能,实现动作追踪与分析,助力开发者快速上手。
|
8天前
|
存储 人工智能 并行计算
【AI系统】算子开发编程语言 Ascend C
本文详细介绍了昇腾算子开发编程语言 Ascend C,旨在帮助开发者高效完成算子开发与模型调优。Ascend C 原生支持 C/C++标准,通过多层接口抽象、自动并行计算等技术,简化开发流程,提高开发效率。文章还探讨了并行计算的基本原理及大模型并行加速策略,结合 Ascend C 的 SPMD 编程模型和流水线编程范式,为读者提供了深入理解并行计算和 AI 开发的重要工具和方法。
23 2