自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(70)
  • 资源 (17)
  • 收藏
  • 关注

原创 kettle从入门到精通 第五十三课 ETL之kettle MQTT/RabbitMQ producer 实战

MQTT 是基于发布/订阅模式(Publish/Subscribe)的协议,其中设备可以发布消息到一个主题(Topic),其他设备可以订阅这个主题以接收相关消息。MQTT (Message Queuing Telemetry Transport) 是一种轻量级的消息传输协议,设计用于连接低带宽、高延迟或不可靠网络的设备。在主题名称字段中,输入您希望发布流数据(消息)的 MQTT 主题的名称。指定此步骤将连接的 MQTT 服务器的地址,如127.0.0.1:1883(注意这里的端口是1883,不是5672)

2024-04-18 09:00:00 539

原创 ETL工具-nifi干货系列 第十四讲 nifi处理器QueryDatabaseTableRecord查询表数据实战教程

1、处理器QueryDatabaseTableRecord和处理器QueryDatabaseTable比较相似,该组件生成一个 SQL 查询,或者使用用户提供的语句,并执行它以获取所有在指定的最大值列中值大于先前所见最大值的行。处理器QueryDatabaseTableRecord属性配置和处理器QueryDatabaseTable属性配置基本一样,不了解的可以参考上一篇文章。唯独多了Record Writer属性。

2024-04-17 10:00:00 397

原创 ETL工具-nifi干货系列 第十三讲 nifi处理器QueryDatabaseTable查询表数据实战教程

如果启用,则使用逻辑类型并按其底层类型写入,具体来说,DECIMAL/NUMBER 作为逻辑 ‘decimal’:按字节写入,并附加精度和比例元数据,DATE 作为逻辑 ‘date-millis’:按整数写入,表示自 Unix 纪元(1970-01-01)以来的天数,TIME 作为逻辑 ‘time-millis’:按整数写入,表示自 Unix 纪元以来的毫秒数,以及 TIMESTAMP 作为逻辑 ‘timestamp-millis’:按长整数写入,表示自 Unix 纪元以来的毫秒数。

2024-04-16 12:38:31 709

原创 ETL工具-nifi干货系列 第十二讲 nifi处理器UpdateRecord使用教程

指定要用于写出记录的控制器服务,根据情况选择合适的控制器服务,这里由于输出数据是json格式,所以选择JsonRecordSetWrite进行输出数据,当然也可以选取其他控制器服务。例如,如果你想name字段的值改为固定的"Java大金刚",你可以在Literal Value中写入这个值,如上图所示。指定要用于读取传入数据的控制器服务,根据情况选择合适的控制器服务,这里由于输入数据是json格式,所以选择JsonTreeReader进行加载数据。本节教程比较简单,涉及处理器流程如下。

2024-04-15 10:00:00 367

原创 ETL工具-nifi干货系列 第十一讲 处理器UpdateAttribute使用教程

选择有状态的选项将不仅存储流文件上的属性,还会存储在处理器的状态中。(user.*|host.*|.*Date) - 将删除 "user"、"username"、"userName"、"hostInfo"、"hosts" 和 "updateDate",但不会删除 "User"、"HOST"、"update" 或 "updatedate"。user.* - 将删除以 "user" 开头的属性,例如 "username"、"userName"、"userID" 和 "users"。

2024-04-12 15:37:22 791

原创 ETL工具-nifi干货系列 第十讲 处理器RouteOnAttribute使用教程,方便灵活控制数据流向

之后connection 连线配置的关联选项只有matched和unmatched两个选项,如userId=1或者userId=100路由到LogMessage-kkk,相当于java中的if(userId.equals('1')||name.equals('Java小金刚')){print('我路由到LogMessage-kkk')}相当于switch-case,多路分支。:针对一条路由规则进行控制,如userId=1时路由到LogMessage-1,相当于java中的switch-case。

2024-04-09 08:00:00 652

原创 ETL工具-nifi干货系列 第九讲 处理器EvaluateJsonPath,根据JsonPath提取字段

下拉选项有auto-detect、json、scalar,默认值为auto-detect,用于指示 JSON Path 表达式的期望返回类型属性。选择 'auto-detect' 会根据目标的设置来确定返回类型:对于目标为 'flowfile-content' 的情况,返回类型将设置为 'json';:下拉选项有warn、ignore、skip,默认值为ignore,目标设置为 'flowfile-attribute' 时,如何处理缺失的 JSON Path 表达式的方式。

2024-04-08 10:08:54 743

原创 kettle从入门到精通 第五十二课 ETL之kettle Avro output

如果模式文件已存在,则会被覆盖。Include date in filename:将系统生成文件的系统日期添加到默认格式yyyyMMdd(例如20240405)的输出文件名中。Include time in filename:将系统生成文件的系统时间添加到默认格式HHmmss(例如235959)的输出文件名中。Specify date time format:"从下拉列表中可用的选项中选择一个不同的日期时间格式,添加到输出文件名中。Avro path:字段的名称将在Avro数据和模式文件中显示。

2024-04-06 07:00:00 709

原创 kettle从入门到精通 第五十一课 ETL之kettle Avro input

1、我们在学习nifi的过程中有接触到Avro schema,当时我在想kettle应该也支持Avro,果不其然kettle也是支持Avro文件的读和写的。数据来源格式,有Avro file,JSON datum,Binary datum,Avro file(use alternate schema),本次演示采用Avro file。您可以使用此字段进行映射或数组扩展,从而将数组或映射值扩展为返回多行数据。你可以使用查找字段选项卡创建变量,并将它们映射到特定字段,以在解码时用作对 Avro 结构的查找。

2024-04-05 07:00:00 619

原创 kettle快速入门教程

掌握Kettle的进阶技巧,让你站在数据处理的最前沿。通过JavaScript/java脚本实现复杂的数据处理和计算,实现定时任务的自动化,以及应对各种故障处理机制,保障数据处理的稳定性和可靠性。Kettle(Pentaho Data Integration)的神奇魔力,将为你解锁数据世界的无限可能。本人基于公司业务实战整理的50篇精华Kettle系列文章,是你的密钥,让你轻松驾驭数据之力,成就数据之王!随后,我们深入剖析Kettle的核心组件,带你探索转换设计器、作业设计器和资源库管理器的奥秘。

2024-04-04 11:43:34 978

原创 ETL工具-nifi干货系列 第八讲 处理器PutDatabaseRecord 写数据库(详细)

4、处理器PutDatabaseRecord将数据写入数据库,此处理器需要配置两个控制器,Record Reader和Database Connection Pooling Service 两个控制器。如下流程通过处理器GenerateFlowFile 生成数据,然后通过处理器JoltTransformJSON转换结构,最后通过处理器PutDatabaseRecord将数据写入数据库。3、处理器JoltTransformJSON转换结构,将结构转换成适合表字段的结构,此时有两种方式驼峰和下划线两种方式。

2024-04-03 22:47:25 891

原创 ETL工具-nifi干货系列 第七讲 处理器JoltTransformJSON(续)

4、Modify - Define:修改字段的值,如果字段不存在则创建该字段并赋值,测试结果同Modify - Define。3、Modify -Default:修改字段的值,如果字段不存在则添加默认值,如果字段存在不做处理。5、Modify - Overwrite:修改字段的值,如果字段不存在则忽略,存在的话强制覆盖。"nameArry": ["Javax 小金刚", "Javax 大金刚"]"name": "Javax 小金刚""name": "Javax 小金刚"

2024-04-02 17:13:19 1181

原创 ETL工具-nifi干货系列 第六讲 处理器JoltTransformJSON

Jolt Specification 设置为[{"operation":"shift","spec":{"id":"person.id","name":"person.name"}}]Jolt:JSON 到 JSON 转换库,用 Java 编写,其中转换的 "规范" 或者描述文件本身就是一个 JSON 文档。处理器GenerateFlowFile 产生json字符串{"id":"1","name":"Java小金刚"}Modify - Define:修改字段的值,如果字段不存在则创建该字段并赋值。

2024-04-01 21:00:51 575

原创 ETL工具-nifi干货系列 第五讲 处理器GenerateFlowFile

1、今天我们一起来学习处理器GenerateFlowFile。这个处理器创建带有随机数据或自定义内容的 FlowFiles。GenerateFlowFile 对于负载非常有用。从工具栏拖动处理器到画布,然后选择GenerateFlowFile即可。2、点击add按钮或者双击 GenerateFlowFile可将此处理器添加到画布。3、此时GenerateFlowFile 有个感叹号的图标,标记处理器存在无效的配置。上图的提示意思是当此处理器处理成功之后没有设置流向组件(其他处理器)同时页面设置自动终止。

2024-03-28 08:29:37 1155

原创 ETL工具-nifi干货系列 第四讲 Avro schema 序列化框架

这意味着数据的结构和类型在传输过程中是明确的,可以提供更强的数据验证和类型安全性。{"name":"java小金刚","age":20,"skill":["java","go","python","kafka"],"other":{"interests":"basketball"}}需要注意的是:当为union类型的字段指定默认值时,默认值的类型必须与union第一个元素匹配,因此,对于包含"null"的union,通常先列出"null",因为此类型的union的默认值通常为空。

2024-03-27 07:00:00 1111

原创 ETL工具-nifi干货系列 第三讲 nifi web ui 使用教程

(Locally Modifyed and Stale Versioned Process Groups)画布上每个处于本地修改且过时状态下存在的版本化处理组数量。(Start)启动,点击此按钮启动,如果页面中状态栏中的感叹号数量大于0的话是无法启动的,必须根据感叹号提示内容修正感叹号数量为0时才可以正常启动。拖拉处理器到画布中,出现处理器选择列表,可以根据处理器来源,标签,类型,用途等进行检索自己需要的处理器,如下图所示。(Invalid Components)画布上每个处于无效状态下存在的处理器数量。

2024-03-25 07:00:00 1091

原创 ETL工具-nifi干货系列 第二讲 nifi下载&安装

官方下载地址:https://archive.apache.org/dist/nifi/,最新的版本是2.X,但是需要jdk版本比较高,可以下载1.X版本,可以直接使用jdk8。本系列讲解的版本是1.25.0,直接点击。找到conf目录中的nifi.properties,设置nifi.security.allow.anonymous.authentication=true,nifi服务启动之后无需用户名和密码直接进入,跳过登录页面。./nifi.sh install,可以通过如下命令和服务交互。

2024-03-24 07:00:00 597

原创 ETL工具-nifi干货系列 第一讲 揭开nifi神秘面纱

是 NiFi 中的扩展点,在用户界面中由数据流管理者(DFM)添加和配置后,会在 NiFi 启动时启动,并为其他组件(例如处理器或其他控制器服务)提供信息。NiFi为所有接收到的数据提供了细粒度的数据溯源,包括接收、分叉、连接、克隆、修改、发送以及最终到达配置的最终状态时被丢弃的过程。因此,可以将几个组件合并在一起,形成一个更大的构建模块,用来创建数据流。通过报告任务,数据流管理者可以实时监控和评估 NiFi 实例的健康状态和运行情况,从而及时采取必要的措施以确保系统的稳定性和高效性。

2024-03-23 13:03:20 967

原创 knife4j/swagger救援第一现场

4、定位到原因是项目中引用其他项目中的jar,结果导致了项目中有两个不同版本的knife4j-spring-boot-starter(一个2.0.2,一个2.0.7),简单粗暴,把版本都调整为2.0.2。属性使用ApiModelProperty注解后,在给与example类型的时候里面写了一个json字符串。b、knife4j统一使用版本2.0.7或其他版本,可以支持example。就是类似以上这种情况,导致springfox-swagger提供的接口。返回的json非法,使用前端的。

2024-03-21 14:22:42 547

原创 【Java面试题-基础知识04】Java集合连环问

a. Collection 接口:是所有集合类的根接口,它定义了集合类的基本行为,如添加、删除、遍历等操作。d. Map 接口:表示键值对的集合,每个键值对都是唯一的。b、使用 Iterator 接口的 hasNext() 和 next() 方法进行遍历,可以通过 remove() 方法安全地删除集合中的元素。在 Java 中,集合框架(Collection Framework)是一组用于存储和操作对象集合的类和接口的统一架构。返回的列表是一个固定大小的列表,不支持添加或删除操作。有问题,这段代码会抛出。

2024-03-18 07:15:00 386

原创 【Java面试题-基础知识03】Java线程连环问

如果核心线程已经全部被占用,而且任务队列也已满,那么新任务就会创建额外的线程,直到达到最大线程数为止。d. 线程存活时间(Keep Alive Time):当线程池中的线程数量超过核心线程数时,多余的空闲线程在经过一定时间后会被终止并从线程池中移除,以减少资源消耗。继承Thread类:创建一个类并继承Thread类,在该类中重写run()方法,并在其中定义线程执行的任务。支持共享资源:由于不是继承线程类,因此可以将多个线程共享的资源放在实现 Runnable 接口的类中,更容易实现资源共享。

2024-03-17 15:53:44 224

原创 【Java面试题-基础知识02】Java抽象类和接口六连问?

/ 步骤 2:创建具体子类,实现抽象类中的抽象方法。// 步骤 2:创建具体策略类,实现接口中定义的算法。// 钩子方法,子类可以覆盖它以提供特定实现。// 通过重写钩子方法,可以选择不添加调料。// 步骤 1:创建一个接口,定义算法的统一接口。// 步骤 1:创建一个抽象类,定义算法的骨架。// 子类 Dog 继承自抽象类 Animal。// 实现接口 Animal 的类 Dog。// 实现接口 Animal 的类 Cat。// 抽象方法,需要在子类中实现。// 具体方法,被子类继承和复用。

2024-03-17 15:52:40 681

原创 【Java面试题-基础知识01】Java数据类型四连问?

b、包装类型是基于对应的基本数据类型创建的类,是对象,具有属性和方法。a、基本数据类型是原始数据类型,直接存储数据值,不具备对象的属性和方法。a、基本数据类型的操作通常比包装类型更高效,因为它们不涉及对象的创建和销毁,直接操作数据值。b、包装类型的操作可能会产生性能开销,因为涉及对象的创建和销毁,以及额外的内存空间开销。装箱是指将基本数据类型转换为对应的包装类对象,而拆箱则是将包装类对象转换为基本数据类型。b、在需要将数据值作为对象处理,或者需要使用对象的属性和方法时,可以使用包装类型。

2024-03-14 21:37:53 243

原创 kettle从入门到精通 第五十课 ETL之kettle 课程源文件分享

在过去的几个月里,我已经撰写了将近50篇关于 Kettle 的文章,涵盖了各种主题和用例,如数据抽取、数据转换、数据加载、调度任务等等。总的来说,Kettle 系列文章的撰写已经成为我工作的一大重要组成部分,我将继续努力完善内容,分享更多有价值的知识和经验,帮助更多人在数据处理领域取得成功。随着整理工作的进行,我将会对这些文章进行分类整合,并补充更多实用的示例文件,以丰富读者的学习体验。同时,我也将重点关注读者的反馈和需求,根据大家的建议来调整内容,确保文章能够满足不同层次读者的需求。

2024-03-13 21:51:32 443

原创 kettle从入门到精通 第四十九课 ETL之kettle 自定义插件01

这个功能可以用插件替换Kettle内置的步骤。Kettle内部的对象与外部插件没有任何区别,因为他们使用的API都一样的,只是运行时的加载方式不同。从Kettle 4开始,Kettle内部有一个插件注册系统,负责加载各种内部和外部的插件。Kettle的插件架构使得我们可以不用修改Kettle本身代码,通过一些独立的代码就可以扩展Kettle的功能。当Kettle环境初始化以后,插件注册系统首先会加载所有的内部对象,Kettle读取下面的配置文件来加载内部对象,这些配置文件位于Kettle的.jar文件中。

2024-03-13 21:50:33 422

原创 kettle从入门到精通 第四十八课 ETL之kettle webspoon

1、kettle自带的客户端spoon工具是cs架构,多人协同办公起来不是特别方便。webSpoon是一个基于Web的图形化设计工具,用于Pentaho数据集成,具有与Spoon相同的外观和感觉。可以在Web浏览器中设计和执行Kettle转换/作业文件。要使用webSpoon,浏览器直接访问http://localhost:8080/spoon/spoon,具体IP地址和端口号可能会有所不同。注:webSpoon是web端在线编辑kettle文件,开发测试的环境而已,不适用生产环境运行转换或者job文件。

2024-02-28 20:41:18 354

原创 kettle从入门到精通 第四十六课 ETL之kettle mongo input查询

MongoDB(简称Mongo)是一种开源的文档数据库管理系统,它采用了非常灵活的文档模型,可以存储和处理各种类型和结构的数据。MongoDB是一个面向文档的数据库,意味着它的数据存储在称为文档的BSON(二进制JSON)格式中。Read preference(针对集群配置):指定首先读取哪个节点:主节点(primary)、首选主节点(primary preferred)、从节点(secondary)、首选从节点(secondary preferred)或最近节点(nearest)。留空以永远不终止连接。

2024-02-23 22:15:19 716 1

原创 kettle从入门到精通 第四十五课 ETL之 kettle redis

步骤【生成记录】生成一笔测试数据,步骤【Java代码-redis-set】往redis里面写数据,步骤【Java代码-redis-get】从redis读取数据,如下图所示。1、kettle 9.3/9.4 spoon客户端中默认是没有redis步骤的,首先想到在kettle的插件市场进行下载redis步骤。2、可能因为网络原因,直接下载失败了。索性放弃redis原有插件步骤,改为自己通过java代码进行实现,(下面代码中标红的部分为关键代码,其他为模版代码。下面代码中标红的部分为关键代码,其他为模版代码。

2024-02-23 22:13:31 799

原创 kettle从入门到精通 第四十四课 kettle 去重

3、根据name字段进行去重,hashset的去重逻辑是不存在重复数据插入hashset,存在则不插入,所以name为Java小金刚的数据保留了第一条,如下图所示。这只适用于已排序的输入。5、使用步骤【自定义常量数据】生成4条数据,然后通过步骤【排序】根据name进行排序,最后通过步骤【去除重复记录】进行去重。2、下面示例比较简单,使用步骤【自定义常量数据】生成3条数据,然后通过步骤【唯一行(哈希值)】进行去重。4、使用步骤【自定义常量数据】生成4条数据,然后通过步骤【去除重复记录】进行去重。

2024-02-21 10:53:06 245

原创 kettle从入门到精通 第四十三课 kettle 多对1表合并同步

2、下图通过sql 语句的join 进行关联,表输入【读取student&teacher】步骤读取join之后的数据集,表输出【写入student_third】步骤将数据写入表student_third。a、表输入【读取student】步骤读取student数据,然后通过排序步骤【student排序】升序排序,当然这里的排序步骤也可以省略通过表输入中的sql的order by 方式实现。d、表输出【写入student_third】步骤将数据写入表student_third。

2024-02-20 09:29:41 512

原创 kettle从入门到精通 第四十二课 kettle 1对多表拆分同步

2、下图涉及到的步骤比较简单,表输入【读取三方学生信息表】加载源数据,从student_third表中读取数据,javascript代码【根据teachernameMd5计算出teacherSerialno】通过md5计算外键,表输出【写入学生信息表】写入student表,1、在有的业务场景中,会涉及一对多表拆分同步的业务场景,也就是说原表是一张表,将原表字段进行拆分放入目标库中的多张表,如下面的示例将表student_third中的数据。6、步骤【写入学生信息表】实现逻辑比较简单,如下图所示。

2024-02-19 08:41:04 390

原创 kettle从入门到精通 第四十一课 kettle 事务(单个转换文件)

6、 当name=超级无敌Java小金刚,且不开始事务的情况下时,t1写入失败,t2写入成功,因为字段name的长度不符合t1表中name字段长度,字段name的长度不符合t2表中name字段长度。2、通过生成记录步骤生成一条数据,通过复制的方法同时写入t1和t2 两个表,t1写入和t2写入是两个执行sql语句步骤,如下图所示。7、 当name=超级无敌Java小金刚,且开始事务的情况下时,t1写入失败,t2写入失败。8、 当name=Java小金刚,且开始事务的情况下时,t1写入成功,t2写入成功。

2024-02-04 20:20:41 486

原创 kettle从入门到精通 第三十九课 kettle 增量同步(日级)

4、 同步T1表中T-1日数据至T2表的具体实现转换逻辑如下图所示,这里为了方便演示t1和t2表的表结构是一样的,当然可以是不一样的。后续会讲解下表1对N,N对1,N对N的同步案例。2、kettle增量全量同步示例依然基于test数据库,从t1表增量同步数据到t2表,假定每天0点跑批将t1表中的t-1日的数据同步到t2表中,如下图所示。c、删除t2表中T-1日的数据、同步T1表中T-1日数据至T2表是两个转换步骤,每个转换步骤引用自己的具体实现转换文件。b、同步t1表中t-1日数据至t2表。

2024-02-04 20:19:07 314

原创 kettle从入门到精通 第三十八课 kettle 分页全量同步(数据量大)

5、计算offset步骤是javascript 步骤,这里通过一个for循环,将一条数据转换为多条数据,输出offset和currPage,最后通过SKIP_TRANSFORMATION 跳过for外层的进程。c、truncate_test_t2、query_test_t1_totalPage、循环抽数是三个转换步骤,每个转换步骤引用自己的具体实现转换文件。2、kettle分页全量同步示例依然基于test数据库,从t1表全量同步数据到t2表,由于t1表的数据比较大,所以选择分页全量同步策略,如下图所示。

2024-02-02 13:23:24 292

原创 kettle从入门到精通 第三十七课 kettle 全量同步(数据量小)

3、truncate_test_t2的转换逻辑比较简单,每次同步数据之前将目标表t2 表数据清空,当然也可以采用delete 语句,不过delete 语句在大数据量的情况下性能比较差。4、全量同步(表数量小)的具体转换文件如下图,从t1表读取数据,经过一些列的转换映射等操作,写入t2目标表。2、今天给大家分享全量同步的示例,基于test数据库,从t1表全量同步数据到t2表,由于t1表的数据比较小,所以选择全量同步策略,如下图所示。离线数据:对实时性要求不高,可以分钟级、小时级、日级等。

2024-02-02 13:22:10 439

原创 kettle从入门到精通 第三十六课 kettle carte 集群

7、集群模式运行转换文件。通过集群提交时,作业或者转换是通过集群Master提交作业,Master和多个Slave采用动态抢占式(排它锁)机制抢占任务,实施任务的运行操作。5、基于子服务器列表创建kettle集群schemas,选择设置好的子服务器,这里演示采用静态cluster,Dynamic cluster模式支持动态添加子服务器。carte-config-8082.xml 配置文件同carte-config-8081.xml 配置文件类似,这里省略。3、启动从carte服务。

2024-02-02 13:21:13 901

原创 kettle从入门到精通 第三十五课 kettle 变量

kettle.properties文件的位置可以通过设置KETTLE_HOME来指定,如设置KETTLE_HOME 为/opt/kettle/home,则kettle.properties文件的路径为/opt/kettle/home/.kettle/kettle.properties。`${Internal.Entry.Current.Directory.Filename}`:当前作业或转换文件的完整路径和文件名。c、如果解析一个依赖于另一个变量的变量,可以这样使用:${%%inner_var%%}。

2024-02-02 13:20:17 889

原创 kettle从入门到精通 第三十四课 kettle 错误处理

ERR_NAME` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '错误名称',`ERR_NUM` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '错误行',4、把错误信息入库是个不错的选择,方便后续排查问题且可以根据错误信息表进行邮件预警,如下图所示。

2024-01-28 12:22:59 799

原创 kettle从入门到精通 第三十三课 再谈 kettle 表输出 分区/分片

4、若表中的分区字段不是日期类型,也可以通过kettle相关步骤(如javascript)转换为日期类型的字段供表输出使用,也可以达到同样的效果。5、上面提到的表分区仅仅是简单的日期切片,如果想实现更复杂的分片策略,自己利用kettle步骤自定义设计灵活实现即可。1、之前第九章有讲过kettle 表输出步骤,里面有简单的提到过表输出步骤里面的表分区设置,这里详细介绍下。此值用于生成要插入数据的日期表名称。每个月分区数据和每天分区数据是互斥的,只能二选一,分区表需要自行创建哦,参考如下截图。

2024-01-28 12:22:15 500

原创 kettle从入门到精通 第三十二课 mysql 数据连接集群/分区配置

这里分区策略选择Remainder of division,同时选择一个分区路由字段,这里选择age字段,age/分区总数3剩余的商就是数据同步到哪个分区,分区编号从0开始,如下图所示。4、创建数据库分区schemas,在“主对象树”的“数据库分区schemas”上点右键“新建”,在弹出窗口中输入“分区schema名称”,然后点击“导入分区”按钮,如下图所示。3、有两个数据库test1和test2,两个数据库里面都有一个相同的表,名为student,每个表里有一条数据,如下图所示,后面会用到。

2024-01-28 12:21:33 355

CRRedist2005_x86.7z

System.IO.FileLoadException: 未能加载文件或程序集“CrystalDecisions.Windows.Forms, Version=10.2.3600.0, Culture=neutral, PublicKeyToken=692fbea5521e1304”或它的某一个依赖项。

2019-06-22

综合实训项目(学生信息管理系统)

综合实训项目 学生信息管理系统 图书信息管理系统 学生毕业设计文档

2012-12-25

门业算料软件,门业下料软件

门业算料软件,门业下料软件,能够直接根据客户所报门的尺寸直接生成下料单,只要自定义计算公式正确,计算的结果百分之百正确。

2012-11-21

c语言做的简单职工管理系统

单职工管理系统为某企业的管理提供了专门的管理,通过这个系统后台人员与职工的联系更加的紧密方便,该系统的主要功能是实现新增职工、将新增职工对象按姓名以字典方式职工管理文件。删除职工,从职工管理文件中删除一名职工对象。查询用户需求的职工,从职工管理文件中查询符合某些条件的职工。对职工信息的修改,检索某个职工对象,对其某些属性进行修改,排序,对职工按某种需要对职工对象文件进行排序。特别在对职工信息的排序中,我们可以选择两种排序方法对其某种条件进行排序,即冒泡排序和选择排序,即将排序好的自动保存在文件中。我们也可以对排序好的职工再进行增加、修改、查询、删除、排序操作。

2012-01-01

硬件课程设计

老师让写的组成原理实验,写的是简单模型机和复杂模型机

2012-01-01

asp.net jquery 弹出层 及数据提交

asp.net jquery 弹出层 及数据提交asp.net jquery 弹出层 及数据提交asp.net jquery 弹出层 及数据提交

2011-04-29

漂亮的弹出层 jquery实现

漂亮的弹出层漂亮的弹出层漂亮的弹出层漂亮的弹出层漂亮的弹出层

2011-04-29

jquery Demo

里面有好的jquery demo 可以学习。

2011-04-29

C# 编写的邮件无敌群发(绝对管用)

C# 编写的邮件单发和群发,功能都可以实现。 但是要把自己邮箱的smtp功能打开。进自己的邮箱设置下就可以了。

2011-03-17

bresanham圆的生成算法

计算机图形学园的的bresanham生成算法,vc++实现.

2010-10-08

圆的生成算法(极坐标)

vc++实现的极坐标画圆,计算机图形学.

2010-10-08

vrml及浏览器插件

vrml浏览器插件 ,很实用,我们上大学的都用这个。

2010-09-26

web server QQ在线查询

C#web server qq在线查询 很简单的一个web server 程序 大家都来看啊。

2009-01-03

图书借阅管理设计和实现

图书管理系统的例子很多,但是我这个比较特殊一点,因为它采用了多方面的技术。有很多可学之处,拿出来给大家共享。

2008-12-28

身份证号分析(很方便) 和.net学生信息管理系统

身份证查询:当您输如自己的身份证是您的所有信息将会显示出来。学生信息管理系统:C#窗体类的MIS 很实用的哦。

2008-12-28

C# 模仿qq样式的窗体界面 很炫的

本程序采用的是C#语言,编写的winform窗体,外形类似与qq。

2008-12-28

sqlserver2000的开发及管理应用实例

中英文sql server2000开发及管理应用实例

2008-11-14

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除