ETL系列:一、DataX的安装与使用 DataX本身作为数据同步框架,将不同数据源的同步抽象为从源头数据源读取数据的Reader插件,以及向目标端写入数据的Writer插件,理论上DataX框架可以支持任意数据源类型的数据同步工作。同时DataX插件体系作为一套生态系统, 每接入一套新数据源该新加入的数据源即可实现和现有的数据源互通。DataX 是阿里云的开源版本,在阿里巴巴集团内被广泛使用的离线数据同步工具。如:本脚本reader中的"splitPk": "cust_no",指定按照cust_no进行分组子任务并行执行,用来提升同步效率。
ETL系列:二、SpringBoot集成DataX 有的项目可能存在一些需求,项目需要使用自己的定时任务调度工具(如xxl-job等)来调度datax任务脚本,这个时候就需要在SpringBoot工程中集成Datax来使用。此方案只需要编写一个工具类即可,但是应用运行环境需要支持python。添加配置前,请准备好数据同步任务脚本,并上传至对应路径。注意:添加依赖前,需要将如下的这些包上传到私有仓库。安装路径就是上篇文章讲的datax安装目录。(2) 调用datax任务执行器方式。(1) 执行command命令方式。
单元测试系列:一、了解spring boot单元测试 JUnit5的目标是采用Java8的编程风格并且比JUnit4更加健壮和灵活。TestNG运行失败时,会创建一个XML文件说明失败的测试,利用这个文件执行程序,就不会重复运行已经成功的测试。(1) 这个是JUnit5中为了支持使用JUint4所做的一个过度,也就是说,你只需要在你的JUnit4旧项目中添加这个依赖, 就能完美过渡,而不用修改之前代码。JUnit只能进行单元测试,TestNG可以进行单元测试,功能测试,端到端测试,集成测试等,主要是因为testNG存在depends可以进行测试用例的组合;
OLAP系列:四、clickhouse分布式表使用指南 ClickHouse中最强大的表引擎当属MergeTree(合并树)引擎及该系列(*MergeTree)中的其他引擎,支持索引和分区,地位可以相当于innodb之于Mysql。而且基于MergeTree,还衍生出了很多小弟,也是非常有特色的引擎。想要更新分布式表的数据时,可以通过更新本地表的数据来完成。另外,不能直接更新分布式表。创建视图后,将在每个分片(服务器节点)上查询数据,并将结果聚合到最初调用查询的节点上。本章主要介绍了分布式表的基本操作,读者可以结合实际的业务使用场景探索适合自己项目的使用模式。
OLAP系列:三、clickhouse Docker集群部署指南(3分片1副本模式) 注意:需要在每台clickhouse节点上配置metrika.xml文件,并且修改每个节点的 macros配置名称。一是为了学习容器,另外也是帮助一些同学解决机器资源紧缺,能够在一台是宿主机部署一套clickhouse集群服务。本章内容适合开发测试环境使用,生产环境还需要更多细节的处理工作,只能作为参考。可以通过客户端工具DBeaver访问。
xxl-job executor容器化部署常见问题 生产部署存在2种部署模式,其一:xxl-job-admin容器与xxl-job-executor容器跨集群部署;其二:xxl-job-admin容器与xxl-job-executor容器同一集群部署,主要是网络策略问题导致admin服务无法访问导致自动注册失败。(2) 跨集群下部署,网络是不直接互通的,容器间访问需要借助一些中间件进行通信,通常做法是增加网关或者通过映射宿主机开放端口使用负载均衡访问。(3) 非容器的部署,通常也是检查运行应用的用户是否有指定文件夹的读写权限。(1) 执行器自动注册失败。
zookeeper集群安装指南 CentOS7 4核16G 3台(172.25.16.82、172.25.16.83、172.25.16.84)本例版本选择:apache-zookeeper-3.8.0-bin.tar.gz。上传资源:apache-zookeeper-3.8.0-bin.tar.gz。官网:https://zookeeper.apache.org/创建目录:/home/zookeeper。
Spring boot结合SkyWalking-Trace工具类实现日志打印请求链路traceid 随着业务的复杂化、解耦化,运维人员和开发人员需要对请求链路跟踪来快速发现和定位问题,基于应用已经集成了SkyWalking的前提下,如何通过获取SkyWalking生成的统一traceId并加入打印日志中,方便开发人员能够根据链路ID快速搜索单个请求的全链路日志呢?机制,将请求的 trace-id 放入到MDC中,在日志打印时,通过 MDC 中的 trace-id 将同一个请求的每一条日志串联起来。(1) 自定义拦截器LoggerInterceptor。一种轻量级的实现,通过。
Spring boot 集成Skywalking 可以编写API,通过postman调用查看请求链路、服务拓扑图、性能分析等。(后续章节重点介绍)见logs/skywalking-oap-server.log。本项目示例使用的java版本v8.7.0,下载后解压到本地目录。如需修改默认端口 请调整/webapp/webapp.yml。备注:本文使用的V9.0.0版本。
spring boot自定义注解 老规矩,springboot开发遵循三板斧。步骤1:加依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-aop</artifactId></dependency>步骤2:加配置无配置跳过步骤3:加注解先实现自定义注解再加入。模拟业务场景:API...
Spring Boot集成RedisTemplate使用常见问题总结 本人在SpringBoot项目开发中,遇到如下问题记录供友人一起参考。问题1:在线程中如何获取redisTemplate初始化Bean?普通类加载方式:@AutowiredRedisTemplate<String, String> redisTemplate;线程类加载方式:RedisTemplate<String, String> redisTemplate = (RedisTemplate) ApplicationContextHandle.
云计算(二)——云计算、大数据与人工智能三者的关系【转载】 点击查看文章原文今天跟大家讲讲云计算、大数据和人工智能。这三个词现在非常火,并且它们之间好像互相有关系。一般谈云计算的时候会提到大数据、谈人工智能的时候会提大数据、谈人工智能的时候会提云计算……感觉三者之间相辅相成又不可分割。但如果是非技术的人员,就可能比较难理解这三者之间的相互关系,所以有必要解释一下。云计算最初的目标我们首先来说云计算。云计算最初的目标是对资源的管理,管理的主要是计算资源、网络...
云计算(1)—入门 云计算本身是一个很专业、很抽象的概念,为了和大家一起轻松的理解它,我们先来举一个例子。想象:屌丝逆袭泡妞四部曲 第一部曲:衣衫不整的屌丝男骑着自家的破电驴去公园约一位又丑又胖的幺妹子。 第二部曲:衣衫朴实的蓝领男开着共享电动汽车去公园约一位长相一般个头不高的幺妹子。 第三部曲:西装革履的白领男坐在共享司机驾驶的共享大众汽车去咖啡馆约一位长相不错身材...
tomcat-8.5.31安装部署 1 准备:(1) tomcat-8.5.31安装包 http://tomcat.apache.org/ 下载即可(2) jdk1.8.0_772 安装:将apache-tomcat-8.5.31-windows-x64.zip压缩包解压到自定义目录(自己解决),本人是D:\develop\server\apache-tomcat-8.5.31-windows-x643 配置:指定...