软件成分分析的预处理方法及系统

    公开(公告)号:CN118643500A

    公开(公告)日:2024-09-13

    申请号:CN202410694262.6

    申请日:2024-05-31

    Abstract: 本发明公开一种软件成分分析的预处理方法及系统,该预处理方法包括:获取预定义的过滤规则,过滤规则用于根据规则匹配的方式滤除软件源码包中的辅助文件;基于过滤规则配置规则引擎;基于规则引擎对待处理软件的源码包中的文件进行筛选,以提取出目标文件;将目标文件划分为多个具有相同代码行数的子模块;通过预设标识算法,计算并存储每一子模块的唯一标识码。基于该预处理方法,能有效地滤除辅助文件,并实现目标文件的子模块的唯一标识,为后续第三方组件的溯源过程提供了关键的匹配数据,即使是已经过修改的第三方组件,也能通过该目标文件实现组件溯源,有效提高了溯源的整体效率和准确性。

    基于状态机的软件成分解析预处理方法及系统

    公开(公告)号:CN118626142A

    公开(公告)日:2024-09-10

    申请号:CN202410729088.4

    申请日:2024-06-06

    Abstract: 本发明公开一种基于状态机的软件成分解析预处理方法及系统,该方法包括:基于软件成分解析中源码包的预处理工作的业务处理流程对状态机框架进行配置,配置内容包括:在状态机框架中定义若干与业务处理流程中的各个阶段相对应的处理状态,为每一处理状态配置对应的处理逻辑,并定义处理状态之间跳转的跳转条件;处理逻辑与业务处理流程中的相应阶段下的执行事件相对应;跳转条件用于根据处理逻辑的执行结果指示状态机跳转至另一处理状态;生成若干分别与每一待处理的源码包相对应的状态机实例,通过每一状态机实例并行对若干源码包进行处理。该预处理方法实现了多个源码包的并发处理,提高CPU的整体利用率的同时提升了预处理工作的灵活性。

    知识库缓存方法、知识库、计算机设备及存储介质

    公开(公告)号:CN118069902A

    公开(公告)日:2024-05-24

    申请号:CN202410280196.8

    申请日:2024-03-12

    Abstract: 本发明涉及一种知识库缓存方法、知识库、计算机设备及存储介质,所述方法包括:生成空白缓存文本,所述空白缓存文本存储在本地;接收查询命令,所述查询命令中包括多条命令数据,每一条所述命令数据与唯一的索引信息相对应;将所述查询命令中的多条所述命令数据存储在所述空白缓存文本中;从已存储缓存文本中获取多条所述命令数据对应的索引信息;将所述索引信息分组,将分组索引信息存储在所述已存储缓存文本中;根据所述分组索引信息,分别在数据库中进行查询;查询结束后,将所述分组索引信息合并,以使所述分组索引信息对应的分组查询结果合并;将合并后的查询结果发送至内存存储。本发明能避免内存数据溢出。

    基于调度器的SCA源码解析方法、装置、设备及存储介质

    公开(公告)号:CN119397526A

    公开(公告)日:2025-02-07

    申请号:CN202411232785.5

    申请日:2024-09-04

    Abstract: 本发明公开了一种基于调度器的SCA源码解析方法、装置、设备及存储介质,其中解析方法包括执行采集节点,采集一批次的待解析组件的组件源码文件,并启动执行计算节点,解析组件源码文件的文件hash,并将其写入Redis,然后启动执行迁移节点,将Redis中的文件hash迁移至Doris,并启动执行合并节点,将Doris中的文件hash进行合并去重,并返回启动计算节点,直至当前批次的组件源码文件解析完成,然后返回启动采集节点,以开始处理新一批次的待解析组件;执行每一节点时同步执行异常节点,监控每一节点的执行,若监控的节点出现异常,则执行节点重试机制。本发明基于调度器的SCA源码解析方法通过调度器节点流转将操作进行整合,有效地提高SCA代码片段解析的整体效率。

    基于大数据组件的SCA组件特征码更新方法及装置

    公开(公告)号:CN118861053A

    公开(公告)日:2024-10-29

    申请号:CN202410810506.2

    申请日:2024-06-21

    Abstract: 本发明公开了一种基于大数据组件的SCA组件特征码更新方法及装置,其中更新方法包括:获取各待解析组件的组件信息;下载版本文件的源码包,解压源码包并解析每个版本文件的hash值;批量检索Doris数据库中是否存在相同的hash值,若存在相同,则对对应的hash值进行路径计算、合并和数据压缩,并推送至更新队列,否则对hash值进行数据压缩,并推送至新增队列;将对应队列中的hash值批量更新至Doris数据库;将对应队列中的hash值进行数据加密,并按时间目录结构生成增量包文件,并上传和存储至在线存储。本发明基于大数据组件的SCA组件特征码更新方法能够利用大数据组件批处理的特性,优化服务器对百亿级数据量的处理能力,有效地提高SCA组件特征码的更新效率。

    基于文件语言识别的SCA组件切分更新方法及装置

    公开(公告)号:CN119960805A

    公开(公告)日:2025-05-09

    申请号:CN202411880769.7

    申请日:2024-12-19

    Abstract: 本发明公开了一种基于文件语言识别的SCA组件切分更新方法及装置,其中SCA组件切分更新方法包括:获取SCA组件的组件文件;调用TRID组件对获取的组件文件进行语言识别;根据识别的初步结果将组件文件区分为异常组件文件或正常组件文件,将异常组件文件进行另存储,以及对正常组件文件进行语言结果确认,并其传输至Doris中;将输入的组件文件更新至Doris的数据列中,本发明基于文件语言识别的SCA组件切分更新方法,通过对组件文件的语言属性进行识别,以实现基于语言特性切分代码溯源数据,便于后期灵活地将不同语言的解析任务拆分部署至多台机器上执行,有效地提高整体SCA数据的包容性。

    基于流程拆分的SCA特征码更新方法、设备及存储介质

    公开(公告)号:CN119690473A

    公开(公告)日:2025-03-25

    申请号:CN202411537255.1

    申请日:2024-10-31

    Abstract: 本发明公开了一种基于流程拆分的SCA特征码更新方法、设备及存储介质,其中更新方法包括:Java对组件版本文件进行解析以及将解析后的数据推送至redis,并根据redis的使用容量修改超阈值状态;Python根据超阈值状态修改迁移状态,或根据redis的使用容量修改待迁移状态;Java根据待迁移状态完成当前组件版本文件的解析后修改可迁移状态;Python根据可迁移状态修改迁移状态;Flink根据迁移状态将redis中的数据迁移至待合并列并修改迁移成功状态;Doris根据迁移成功状态将待合并列与最终结果列进行合并去重,并更新至最终结果列。本发明基于流程拆分的SCA特征码更新方法能够结合多个装置来拆分执行SCA特征码解析的整体流程,减少数据流的停留处理时间,有效地提高数据解析速度。

    基于自定义映射的SCA源码解析方法及装置

    公开(公告)号:CN119690445A

    公开(公告)日:2025-03-25

    申请号:CN202411518680.6

    申请日:2024-10-29

    Abstract: 本发明公开了一种基于自定义映射的SCA源码解析方法及装置,解析方法包括:对应Hash列映射生成自增列,以建立映射表;逐一读取Clickhouse中的片段hash和文件hash,并检索映射表中是否存在对应的短hash,若存在则将Clickhouse中的片段hash和文件hash替换为对应的短hash,若不存在则对应映射生成短hash;对代码片段进行解析计算,以得到片段hash和文件hash;并检索映射表中是否存在对应的短hash,若存在则取出短hash,若不存在则对应映射生成短hash;检索Clickhouse中是否存在相同的短hash,若存在则进行合并,否则将短hash保存至Clickhouse。本发明基于自定义映射的SCA源码解析方法利用自定义映射算法实现将长Hash映射为短Hash的策略,能够有效地缩减数据的体积容量,优化存储空间的使用,降低系统的整体成本。

    基于反射机制和重试机制的SCA业务执行方法及装置

    公开(公告)号:CN119473648A

    公开(公告)日:2025-02-18

    申请号:CN202411255818.8

    申请日:2024-09-09

    Abstract: 本发明公开了一种基于反射机制和重试机制的SCA业务执行方法及装置,其中执行方法包括:扫描SCA容器中所有任务,并获取标注自定义注解的任务;通过反射获取异步执行的任务对应的执行方法,并保存至第一数据库;将保存成功的任务进行MQ消息发布;将MQ消息消费成功的任务的状态更新为执行成功;将消息消费失败对应的任务保存至第二数据库;定时对第二数据库中的任务进行执行,将执行成功的对应的任务的状态更新为执行成功,对执行失败的任务进行设定次数的重试执行。本发明基于反射机制和重试机制的SCA业务执行方法利用反射机制配合异步线程池来独立执行扩展业务,并且通过重试机制来保证扩展业务执行的最终一致性。

Patent Agency Ranking