使用clickhouse kafka表引擎消费kafka写入clickhouse

Clickhouse实时消费Kafka Clickhouse一、背景介绍二、操作流程三、一些概念四、一些问题 一、背景介绍 这么做的好处有: 二、操作流程 三、一些概念 四、一些问题 1、StorageKafka (queue): Can’t get assignment. It can be caused by some issue with consumer group (not enough partitions?). Will keep trying 2、clickhouse DB::CSVRowInputFormat::readRow 阅读详情

系列文章目录

1:seatunnel 消费kafka数据写入clickhouse


前言

本文使用seatunnel 消费kafka数据写入clickhouse文章的kafka topic以及格式,用另一种方式写入clickhouse,也是练习下clickhouse kafka引擎。

本文默认已安装了kafka与clickhouse,这方面的安装文档很多,这里不做详述;

前提准备 kafka :2.7.0 ; topic: filebeat_**** ;通过filebeat 写入kafka

               clickhouse: 22.6.3.35 。


一、kafka数据格式

topic:filebeat_****

使用kafka 命令查看数据格式:

/bin/kafka-console-consumer.sh --bootstrap-server kafka001:9092,kafka002:9092,kafka003:9092 --topic filebeat_****

{
    "@timestamp": "2022-12-15T09:04:54.870Z", 
    "@metadata": {
        "beat": "filebeat", 
        "type": "_doc", 
        "version": "7.13.1"
    }, 
    "input": {
        "type": "log"
    }, 
    "fields": {
        "fields_under_root": true, 
        "filetype": "heart"
    }, 
    "agent": {
        "type": "filebeat", 
        "version": "7.13.1", 
        "hostname": "hostname", 
        "ephemeral_id": "e2b48c2b-4459-4310-ae6d-396a9494c536", 
        "id": "72eafd44-b71d-452f-bdb5-b986d2a12c15", 
        "name": "hd.n12"
    }, 
    "ecs": {
        "version": "1.8.0"
    }, 
    "host": {
        "name": "hostname"
    }, 
    "log": {
        "offset": 62571676, 
        "file": {
            "path": "/opt/servers/tomcatServers/tomcat-*/t2/webapps/recordlogs/****.log"
        }
    }, 
    "message": "[2022-12-15 17:04:54] [DataLog(10)] [ConsumeMessageThread_3] [INFO]-20000	人名	桌面	四川省	德阳市	旌阳区	0000936861276195024	7380936861276195024	738	104.432322	31.157213	null	中国四川省某某市某某区某某路	110.189.206.*	1	1	1671095093998	1671095094013	\"B2Q15-301\"	00:a5:0a:00:3e:42	-49	中国标准时间	1671095095916	V2.0.2_202109021711"
}

主要是message区域,[2022-12-15 17:04:54] 为日志上传时间,[INFO]- 之后区域 以\t分割,结构按固定的顺序依次

    `userid` String,
    `username` String,
    `app_name` String,
    `province_name` String,
    `city_name` String,
    `district_name` String,
    `code` String,
    `real_code` String,
    `product_name` String,
    `longitude` String,
    `latitude` String,
    `rd` String,
    `address` String,
    `ip` String,
    `screenlight` String,
    `screenlock` String,
    `hearttime` String,
    `time` String,
    `ssid` String,
    `mac_address` String,
    `rssi` String,
    `timezone` String,
    `current_time` String,
    `program_version` String

二、clickhouse

1.创建kafka 引擎表

CREATE TABLE default.kafka_filebeat_hearts
(
    `message` String
)
ENGINE = Kafka
SETTINGS kafka_broker_list = 'kafka001:9092,kafka002:9092,kafka003:9092', 
         kafka_topic_list = 'filebeat_****', 
         kafka_group_name = 'consumer_group_clickhouse_filebeat_***', 
         kafka_format = 'JSONEachRow', 
         kafka_skip_broken_messages = 1, 
         kafka_num_consumers = 2 ;

 2.创建clickhouse MergeTree表

CREATE TABLE default.tab_mt_results
(
    `upload_time` DateTime64(3),
    `userid` String,
    `username` String,
    `app_name` String,
    `province_name` String,
    `city_name` String,
    `district_name` String,
    `machine_no` String,
    `real_machineno` String,
    `product_name` String,
    `longitude` String,
    `latitude` String,
    `rd` String,
    `address` String,
    `ip` String,
    `screenlight` String,
    `screenlock` String,
    `hearttime` DateTime64(3),
    `time` DateTime64(3),
    `ssid` String,
    `mac_address` String,
    `rssi` String,
    `timezone` String,
    `machine_current_time` String,
    `program_version` String
)
ENGINE = MergeTree
PARTITION BY toYYYYMMDD(upload_time)
PRIMARY KEY (userid, machine_no)
ORDER BY (userid, machine_no)
TTL toDate(upload_time) + toIntervalMonth(1)
SETTINGS index_granularity = 8192 ;

 以upload_time设置TTL 一个月过期时间。

3.创建kafka物化视图写入结构表

CREATE MATERIALIZED VIEW default.view_consumer_kafka2ck TO default.tab_mt_results
(
    `upload_time` DateTime64(3),
    `userid` String,
    `username` String,
    `app_name` String,
    `province_name` String,
    `city_name` String,
    `district_name` String,
    `machine_no` String,
    `real_machineno` String,
    `product_name` String,
    `longitude` String,
    `latitude` String,
    `rd` String,
    `address` String,
    `ip` String,
    `screenlight` String,
    `screenlock` String,
    `hearttime` DateTime64(3),
    `time` DateTime64(3),
    `ssid` String,
    `mac_address` String,
    `rssi` String,
    `timezone` String,
    `machine_current_time` String,
    `program_version` String
) AS
SELECT
    replaceAll(splitByString(']', splitByString('[INFO]-', message)[1])[1], '[', '') AS upload_time,
    splitByString('\t', splitByString('[INFO]-', message)[2])[1] AS userid,
    splitByString('\t', splitByString('[INFO]-', message)[2])[2] AS username,
    splitByString('\t', splitByString('[INFO]-', message)[2])[3] AS app_name,
    splitByString('\t', splitByString('[INFO]-', message)[2])[4] AS province_name,
    splitByString('\t', splitByString('[INFO]-', message)[2])[5] AS city_name,
    splitByString('\t', splitByString('[INFO]-', message)[2])[6] AS district_name,
    splitByString('\t', splitByString('[INFO]-', message)[2])[7] AS machine_no,
    splitByString('\t', splitByString('[INFO]-', message)[2])[8] AS real_machineno,
    splitByString('\t', splitByString('[INFO]-', message)[2])[9] AS product_name,
    splitByString('\t', splitByString('[INFO]-', message)[2])[10] AS longitude,
    splitByString('\t', splitByString('[INFO]-', message)[2])[11] AS latitude,
    splitByString('\t', splitByString('[INFO]-', message)[2])[12] AS rd,
    splitByString('\t', splitByString('[INFO]-', message)[2])[13] AS address,
    splitByString('\t', splitByString('[INFO]-', message)[2])[14] AS ip,
    splitByString('\t', splitByString('[INFO]-', message)[2])[15] AS screenlight,
    splitByString('\t', splitByString('[INFO]-', message)[2])[16] AS screenlock,
    CAST(splitByString('\t', splitByString('[INFO]-', message)[2])[17], 'DateTime64') AS hearttime,
    CAST(splitByString('\t', splitByString('[INFO]-', message)[2])[18], 'DateTime64') AS time,
    splitByString('\t', splitByString('[INFO]-', message)[2])[19] AS ssid,
    splitByString('\t', splitByString('[INFO]-', message)[2])[20] AS mac_address,
    splitByString('\t', splitByString('[INFO]-', message)[2])[21] AS rssi,
    splitByString('\t', splitByString('[INFO]-', message)[2])[22] AS timezone,
    splitByString('\t', splitByString('[INFO]-', message)[2])[23] AS machine_current_time,
    splitByString('\t', splitByString('[INFO]-', message)[2])[24] AS program_version
FROM hive.kafka_filebeat_hearts;

1、message 过滤掉不符合格式的数据,避免出错;

2、hearttime,time转换为dateTime64格式

三、问题

1、修改物化视图

  第一次创建物化视图后,没有写入结果表,查看clickhouse日志,发现是解析失败导致,解决方式,修改物化视图,并且过滤掉不符合格式的数据;

 DETACH TABLE default.view_consumer_kafka2ck;

 

ATTACH MATERIALIZED VIEW default.view_consumer_kafka2ck TO default.tab_mt_results
(
    `upload_time` DateTime64(3),
    `userid` String,
    `username` String,
    `app_name` String,
    `province_name` String,
    `city_name` String,
    `district_name` String,
    `machine_no` String,
    `real_machineno` String,
    `product_name` String,
    `longitude` String,
    `latitude` String,
    `rd` String,
    `address` String,
    `ip` String,
    `screenlight` String,
    `screenlock` String,
    `hearttime` DateTime64(3),
    `time` DateTime64(3),
    `ssid` String,
    `mac_address` String,
    `rssi` String,
    `timezone` String,
    `machine_current_time` String,
    `program_version` String
) AS
SELECT
    replaceAll(splitByString(']', splitByString('[INFO]-', message)[1])[1], '[', '') AS upload_time,
    splitByString('\t', splitByString('[INFO]-', message)[2])[1] AS userid,
    splitByString('\t', splitByString('[INFO]-', message)[2])[2] AS username,
    splitByString('\t', splitByString('[INFO]-', message)[2])[3] AS app_name,
    splitByString('\t', splitByString('[INFO]-', message)[2])[4] AS province_name,
    splitByString('\t', splitByString('[INFO]-', message)[2])[5] AS city_name,
    splitByString('\t', splitByString('[INFO]-', message)[2])[6] AS district_name,
    splitByString('\t', splitByString('[INFO]-', message)[2])[7] AS machine_no,
    splitByString('\t', splitByString('[INFO]-', message)[2])[8] AS real_machineno,
    splitByString('\t', splitByString('[INFO]-', message)[2])[9] AS product_name,
    splitByString('\t', splitByString('[INFO]-', message)[2])[10] AS longitude,
    splitByString('\t', splitByString('[INFO]-', message)[2])[11] AS latitude,
    splitByString('\t', splitByString('[INFO]-', message)[2])[12] AS rd,
    splitByString('\t', splitByString('[INFO]-', message)[2])[13] AS address,
    splitByString('\t', splitByString('[INFO]-', message)[2])[14] AS ip,
    splitByString('\t', splitByString('[INFO]-', message)[2])[15] AS screenlight,
    splitByString('\t', splitByString('[INFO]-', message)[2])[16] AS screenlock,
    CAST(splitByString('\t', splitByString('[INFO]-', message)[2])[17], 'DateTime64') AS hearttime,
    CAST(splitByString('\t', splitByString('[INFO]-', message)[2])[18], 'DateTime64') AS time,
    splitByString('\t', splitByString('[INFO]-', message)[2])[19] AS ssid,
    splitByString('\t', splitByString('[INFO]-', message)[2])[20] AS mac_address,
    splitByString('\t', splitByString('[INFO]-', message)[2])[21] AS rssi,
    splitByString('\t', splitByString('[INFO]-', message)[2])[22] AS timezone,
    splitByString('\t', splitByString('[INFO]-', message)[2])[23] AS machine_current_time,
    splitByString('\t', splitByString('[INFO]-', message)[2])[24] AS program_version
FROM hive.kafka_filebeat_hearts
WHERE message LIKE '%[INFO]-%' ;

查看结果表,可以看到结果表已经有数据了。


总结

kafka表引擎还是比较好用,主要是在解析message部分,将message拆分成固定的结构,其中常用的splitByString ,visitParamExtractRaw,可以查看函数 | ClickHouse Docs

总之,clickhouse强大的第三方引擎,多看官方文档,必然可以熟练使用。

本人有多年的大数据经验,欢迎各位大咖随时交流学习。

将数据从消息队列kafka写到ClickHouse集群中 1、概述 在生产环境中,经常遇到将数据从消息队列Kafka写到ClickHouse集群中,本文介绍如何将Kafka的数据导入到ClickHouse集群的方案。 Kafka 是目前应用非常广泛的开源消息中间件,一个常用的的场景就是做数据总线收集各个服务的数据,下游各种数据服务订阅消费数据,生成各种报表或数据应用等。Clickhouse 的自带了 Kafka Engine,使得 Clickhouse 和 Kafka 的集成变得非常容易。 将Kafka中数据导入ClickHouse的标准流程是: 在Cli 阅读详情

相关推荐

PostHog 自我托管实战:12小时调试 Kafka 与 ClickHouse 性能优化

在构建现代数据驱动应用时,事件追踪与分析平台是核心基础设施之一。其原理通常基于数据管道架构,将客户端事件通过 SDK 采集,经消息队列缓冲后,由消费者服务处理并写入分析数据库,最终支持实时查询与可视化。这一架构的技术价值在于解耦数据摄入与处理,实现高吞吐、低延迟的分析能力,广泛应用于产品分析、用户行为洞察和 A/B 测试等场景。然而,在自我托管部署中,组件间的性能调优尤为关键。本文聚焦于一个典型问题:数据延迟与丢失。通过深入分析 **Kafka 消费者滞后** 与 **ClickHouse 插入瓶颈**,揭

weixin_30655569的博客 598

ClickHouse Kafka引擎

Kafka引擎用力读取kafka中的数据,创建表语句 CREATE TABLE [IF NOT EXISTS] [db.]table_name [ON CLUSTER cluster] ( name1 [type1] [DEFAULT|MATERIALIZED|ALIAS expr1], name2 [type2] [DEFAULT|MATERIALIZED|ALIAS expr2], ... ) ENGINE = Kafka() SETTINGS kafka_broker_

qq_28603127的博客 4259

clickhouse 批量插入数据_基于Clickhouse实现实时聚合计算秒级响应技术方案

为了能够实时地了解线上业务数据,京东算法智能应用部打造了一款基于Clickhouse的实时计算分析引擎,给业务团队提供实时数据支持,并通过预警功能发现潜在的问题。本文结合了引擎开发过程中对资源位数据进行聚合计算业务场景,对数据实时聚合计算实现秒级查询的技术方案进行概述。Clickhouse是整个引擎的基础,故下文首先介绍了Clickhouse的相关特性和适合的业务场景,以及最基础的表引擎...

weixin_34439193的博客 1965

ClickHouse 与 Kafka 整合: 实时数据流处理与分析解决方案

1.背景介绍 随着数据量的不断增长,实时数据处理和分析变得越来越重要。ClickHouse 和 Kafka 都是在现代数据技术中发挥着重要作用的工具。ClickHouse 是一个高性能的列式数据库,专为 OLAP 和实时数据分析而设计。Kafka 是一个分布式流处理平台,用于构建实时数据流管道和流处理应用程序。 在这篇文章中,我们将讨论如何将 ClickHouse 与 Kafka 整合,以实现...

AI天才研究院 2098

Flink 1.11.2 + Kafka + ClickHouse 实时数据管道实战:从模拟数据到Tableau大屏的保姆级避坑指南

本文详细介绍了如何构建Flink 1.11.2 + Kafka + ClickHouse实时数据管道,从数据模拟到Tableau大屏可视化的完整流程。重点解决了版本兼容性、数据清洗、ClickHouse写入优化等核心问题,并提供了性能调优和异常处理的实战技巧,帮助开发者实现秒级延迟的实时数据处理。

weixin_33704234的博客 345

ClickHouse Kafka表引擎使用详解

通过使用ClickHouse的Kafka表引擎,我们可以方便地将Kafka中的数据读取到ClickHouse中进行实时分析。同时,我们也可以将数据写入Kafka表,实现实时的数据处理和分析能力。这种结合使用Kafka和ClickHouse的方式可以满足大规模数据流处理的需求,并且具有高性能和可伸缩性的特点。在本文中,我们将详细介绍如何使用ClickHouse的Kafka表引擎来实现数据的读取和写入。在ClickHouse的配置文件中,确保已经启用了Kafka表引擎,并正确配置了Kafka集群的连接信息。

WdzDevops的博客 616

clickhouse Kafka表引擎使用

clickhouse Kafka表引擎使用系统环境软件版本初始化脚本关联博文参考链接 系统环境 CentOS 7 软件版本 clickhouse-client-20.9.2.20-2.noarch.rpm clickhouse-common-static-20.9.2.20-2.x86_64.rpm clickhouse-server-20.9.2.20-2.noarch.rpm 初始化脚本 #创建Kafka表 CREATE TABLE IF NOT EXISTS testDB.kafka_queue (

qq_38189542的博客 1187

ClickHouse与Kafka集成:构建实时大数据处理管道

本文旨在为开发者和数据工程师提供ClickHouse与Kafka集成的全面指南,从基础概念到高级应用,帮助构建高性能的实时数据处理系统。核心概念与联系:介绍ClickHouse和Kafka的基本概念及其协同工作原理集成架构:详细解析ClickHouse与Kafka集成的技术架构实现步骤:提供具体的配置和代码实现性能优化:分享调优技巧和最佳实践实际应用:展示典型应用场景和案例未来展望:探讨技术发展趋势和挑战ClickHouse。

欢迎来到我的优快云空间!这里聚焦AI大模型应用实战,分享前沿技术、实战案例与开发经验。 967

ClickHouse系列(六):Kafka 到 ClickHouse 的生产级写入架构

本文介绍了ClickHouse Kafka引擎在实时写入链路中的定位和优化方法。Kafka引擎本质是消费管道而非存储表,需配合物化视图和MergeTree表实现三层架构。重点分析了消费模型的关键参数,如kafka_max_block_size、kafka_flush_interval_ms等,并指出常见误区:消费并行度受限于Kafka分区数,需设置kafka_thread_per_consumer=1才能实现真正并行。针对消费倾斜问题,提出需检查生产者分区策略并确保消费者数与分区数匹配。最后给出了10万+/

IT从业者 972

【clickhouse】clickhouse表引擎之 kafka 表引擎 卡死

1.概述 官网:kafka 表引擎 建议看官网。 参考文章:【Clickhouse】Clickhouse 集成kafka 2.官网 kafka让你: 发布或订阅数据流。 组织容错存储。 处理流可用。 2.1 创建表 CREATE TABLE [IF NOT EXISTS] [db.]table_name [ON CLUSTER cluster] ( name1 [type1] [DEFAULT|MATERIALIZED|ALIAS expr1], name2 [type2] [DEFAUL

九师兄 1003

Oracle EBS R12 AP模块发票导入接口实战:从SQL插入到API调用的完整流程

本文详细解析了Oracle EBS R12 AP模块发票导入接口的完整流程,从SQL插入到API调用的实战技巧。涵盖接口表设计、数据验证、双通道导入机制及错误诊断,特别分享官方文档未提及的高阶优化方案,助力企业实现财务数字化转型。

weixin_33728268的博客 476

基于Flink与Kafka构建实时数据管道:从ClickHouse存储到Tableau可视化

本文详细介绍了如何基于Flink与Kafka构建实时数据管道,实现从ClickHouse存储到Tableau可视化的全流程解决方案。通过核心架构设计、实战配置技巧和性能优化经验,帮助开发者构建低延迟、高可用的实时数据处理系统,适用于电商监控、IoT数据分析等场景。

weixin_29094301的博客 350

VMFS数据存储(datastore)丢失后恢复步骤

vmfs datastore恢复步骤

jetliu05的博客 3268

告别Flink直连:用ClickHouse Kafka表引擎重构实时数仓数据流(附完整配置)

本文深度解析如何利用ClickHouse Kafka表引擎重构实时数仓数据流,解决传统Flink直连架构的分区爆炸、数据复用困难等问题。通过完整配置示例和性能调优建议,展示Kafka作为缓冲层如何提升数据处理的稳定性和扩展性,实现亿级数据的实时高效处理。

weixin_30823001的博客 474

VSCode+PlatformIO新建工程卡成狗?3步提速大法实测有效(附镜像源配置)

针对VSCode+PlatformIO新建工程时因依赖下载缓慢导致的加载慢问题,本文提供了三步核心提速方案。通过配置Python环境变量、修改PlatformIO插件设置以使用国内镜像源,并优化pip配置文件,实测可大幅缩短工程创建时间,有效解决创建工程卡顿的痛点。

delta的博客 713

Far planner代码系列(2)

graph_decoder系列(2) 承接上文 我们接着来看decoder_node.cpp的代码部分 void GraphDecoder::Init() { /* initialize subscriber and publisher */ //graph_sub_ 订阅节点/robot_vgraph 其类型是visibility_graph_msg/Graph的消息 graph_sub_ = nh.subscribe("/robot_vgrap...

博客 1534

ClickHouse10-ClickHouse中Kafka表引擎

Kafka表引擎也是一种常见的表引擎,在很多大数据量的场景下,会从源通过Kafka将数据输送到ClickHouse,Kafka作为输送的方式,ClickHouse作为存储引擎与查询引擎,大数据量的数据可以得到快速的、高压缩的存储。

c_zyer的博客 1970

ArcGIS Pro 3.4 二次开发 - 地理数据库

本文介绍了在ArcGIS Pro SDK 3.4和.NET 8环境下,如何操作地理数据库的多种方法。首先,通过路径打开文件地理数据库,并处理可能出现的异常。其次,使用连接属性或sde文件路径打开企业级地理数据库。此外,还展示了如何从项目项、要素图层中获取地理数据库,以及如何执行SQL语句。最后,文章详细说明了如何从地理数据库中获取单个定义或定义列表,包括表定义、要素类定义、关系类定义和要素数据集定义。这些操作均在后台线程中执行,确保应用程序的响应性。

Winemonk 944

ClickHouse-Kafka Engine 正确的使用方式

这篇文章介绍了ClickHouse-Kafka Engine的正确使用方法,包括基础使用和进阶使用。文中提到了如何优雅地处理解析错误数据和极限情况下的重复消费,同时对比了新的Kafka Engine和老引擎。文章指出,ClickHouse的Kafka表引擎能直接与Kafka系统对接,支持subscription of Kafka topic and real-time accepting message data。虽然ClickHouse在2024年9月3日之前不支持exactly once语义,但是在明确

小王是个弟弟 4567

SAP-ABAP:SAP Open SQL 分页技术深度解析:语法、性能陷阱与最佳实践

SAP Open SQL 分页技术深度解析:语法、性能陷阱与最佳实践

baidu_35680696的博客 634

广东省道路工程检测练习试题(单选题)真题

1.一般项目的合格点率应达到( ),且不合格点的最大偏差值不得大于规定允许偏差值的1.5倍。A.不低于75%B.不低于80%C.不低于85%D.不低于90%答案:B2.进行土路基平整度检测时,当路宽小于9m,检测点数应为( )A.1B.2C.3D.4答案:A3.根据《城镇道路工程施工与质量验收规范》,在分部工程中,根据工种、材料、施工工艺等划分的是( )A.单位工程B.分项工程C.分部工程D.工序工程答案:B4.根据《城镇道路工程施工与质量验收规范》,土方路基压实度的检测频率为每1000m每压实层抽检( )

ZShy001238的博客 685

【ClickHouse系列】Kafka表引擎如何回置offset

本文目的是给出一种ClickHouse中如何在Kafka表引擎出现异常或者需要再次消费之前已消费过的数据的场景 kafka下载地址 wget https://mirror.bit.edu.cn/apache/kafka/2.6.0/kafka_2.12-2.6.0.tgz 脚本在kafka的bin路径下 建表语句 这里以CSV格式为例,其余格式可以参考另一篇:【ClickHouse系列】Kafka引擎表消费CSV/JSON/AVRO类型数据 CREATE TABLE test ( C_CU

一只努力的微服务 1726

微信小程序 - {“errMsg”:”requestPayment:fail banned”} 微信小程序调用wx.requestPayment支付失败返回错误(uniapp微信小程序微信支付报错)

{“errMsg”:”requestPayment:fail banned”},微信小程序调用wx.requestPayment报错requestPayment:fail banned,uni-app微信小程序wx.requestPayment支付报错requestPayment:fail banned,拉起小程序支付报错,iPhone苹果ios真机微信支付报错,Android安卓手机微信支付报错,支付报错,商户配置,签名验证,uniapp 小程序支付微信支付一场,设置过b2b类目,确认了商户号相关功能正常

🏆 前端领域优质创作者 3348

从 MySQL 到 ClickHouse 实时数据同步 —— Debezium + Kafka 表引擎

使用 Debezium + Kafka 表引擎方案从 MySQL 到 ClickHouse 实时同步数据

wzy0623的专栏 2773

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

上一篇: Hbase RegionServer 挂掉自动重启
下一篇: hivesql失败告警发送到企业微信
冰帆<
博客等级 码龄21年 3577粉丝 49原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

冰帆<

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值