自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

麒思妙想

同名公众号:麒思妙想 | 您身边重量级的数据技术专家

  • 博客(157)
  • 资源 (3)
  • 收藏
  • 关注

原创 手把手开发一门程序语言JimLang (2)

一点一点构建jimlang

2023-03-09 11:13:05 603 4

原创 Jimsql: 纯Java的文本数据库实现

JimSql = Jim Isn’t MySQL. Jim is a filesystem database system implemention use Java.

2022-06-24 18:15:29 700 13

原创 如何使用antlr实现自定义SQL语法

上一篇文章我们介绍了如何自定义jdbc,今天我们来一起构建支持的SQL语法。这里我们使用 antlr 作为解析器前端。

2022-06-17 18:27:18 833 17

原创 如何只用4步,实现一个自定义JDBC驱动?

如何只用4步,实现一个自定义JDBC驱动? 那么今天就让我们尝试来完成一个csv-jdbc驱动,并完成简单查询。首先创建驱动类,这里将 jdbc url 里的路径截取出来,在创建 connection 的时候传递进去。

2022-06-10 18:19:29 1635 16

原创 使用docker搭建hive测试环境

使用docker compose搭建hive测试环境

2022-05-28 17:24:17 1254 17

原创 我也能写编程语言(一)

本文介绍如何实现自制编程语言之函数调用

2022-05-21 10:33:38 276 15

原创 Opengauss同步数据至kafka实例

本文详细介绍了如何使用docker构建kafka集群,以及如何使用opengauss同步数据到kafka集群

2022-05-13 14:14:13 533 20

转载 剖析postgresql逻辑复制原理

逻辑复制是Postgres10出现的功能,一提到逻辑复制很多人可能会联想到很多其他的词汇,比如'流复制'、'逻辑解析'、'逻辑订阅'、'pglogical'、'wal2json'、'BDR',这些鱼龙混杂的术语和功能看的头都大了,本文将围绕逻辑复制逐步讲解一下这些概念之间的关系。

2022-05-07 14:16:25 2747 10

原创 整活实现数字记分牌

最近在学习南京大学的操作系统课程,老师展现了一下记分牌只显示了0,1,2 而且是C写的,转成java的玩一下,还挺有意思

2022-04-23 15:34:07 671 11

原创 基于Postgres xl的分布式数据库实验环境搭建

如何用一台笔记本,构建一套分布式数据库的实验环境吧。我们使用docker 和 postgres xl 来完成。

2022-04-08 13:41:08 731 19

原创 完整性和一致性基石——GBase8s锁浅析

加锁的目的,其实是为了保证数据的一致性。 当多个线程并发访问某个数据时,加锁,可以保证这个数据在任何时刻最多只有一个线程在访问,保证数据的完整性和一致性。

2022-03-21 13:35:07 1135 19

原创 浅谈SQL2SQL翻译

​之前已经浅谈(浅析构建SQL-to-SQL的翻译器),再谈(再谈SQL-to-SQL翻译器)过两次SQL-to-SQL了,这次就只能又谈了

2022-03-11 16:38:21 460 17

原创 Bookkeeper工程实践

bookkeeper最佳工程实践

2022-03-04 14:56:15 817 34

原创 浅谈SQL执行计划优化(GBase8s篇)

以GBase8s为例,浅谈SQL执行计划优化

2022-02-18 14:37:01 2076 36

原创 springboot3+r2dbc——响应式编程实践

Spring boot3已经M1了,最近群佬们也开始蠢蠢欲动的开始整活Reactive+Spring Boot3,跟着大家的步伐,我也来整一篇工程入门,我们将用java17+Spring Boot3+r2dbc+Reactive栈来讲述,欢迎大家来讨论。(关于响应式,请大家异步到之前的文章里,有详细介绍。)r2dbcReactor还有基于其之上的Spring WebFlux框架。包括vert.x,rxjava等等reactive技术。我们实际上在应用层已经有很多优秀的响应式处理框架。但是有一个问题就.

2022-02-11 10:25:23 3558 45

原创 基于GBase8s和Calcite的多数据源查询

在本文中,我们将实践 `GBase8s` 和 `MySQL` 的跨数据源联合查询

2022-01-24 11:03:52 2311 30

原创 一点点魔法,驯服野生Spark

跟大家分享下Spark,谈谈如何修改Spark SQL解析,让其更符合你的业务逻辑

2021-12-24 11:04:46 315 14

原创 通过UDR扩展GBase8s查询行为的工程实践

最近遇到一个有意思的需求,即某个字段里面存放着一些列数字,以逗号分割,今天我们用一种对java程序员更友好的方式来解决这一问题,没错就是UDR(用户自定义例程)。

2021-12-17 14:24:38 1626 10

原创 仅200行代码实现科学计算器,Antlr真是太强大了

来学学antlr吧,这次我们不在外部维护变量表,而是通过设置一个特殊的变量类型,由其自身来维护一个静态变量表,从而大大简化了程序逻辑,仅仅通过200行代码,就实现了一个mini版的科学计算器。Let's GO!!!

2021-11-26 15:35:28 6160 29

原创 Springboot + Openjpa 整合 GBase8s 实践

本文我们将先来介绍JPA以及OpenJPA之间的关系,然后通过一个手把手的应用案例来讲述 Springboot 和 Openjpa 整合 GBase8s 。那么就让我们开始吧。JPAJPA(Java Persistence API)作为Java EE 5.0平台标准的ORM规范,将得到所有JavaEE服务器的支持。Sun这次吸取了之前EJB规范惨痛失败的经历,在充分吸收现有ORM框架的基础上,得到了一个易于使用、伸缩性强的 ORM规范。从目 前的开发社区的反应上看,JPA受到了极大...

2021-11-19 15:42:33 2070 21

原创 1024属于程序员的专属浪漫...

今天是 格子衫节,能看懂这个梗的话,说明你也是个程序员,怎么样,发际线还安全么?无论如何,我都忠心的希望大家身体健康,升职加薪...好了,今天没啥分享,单纯借这个日子,整个活,分别用手写java字节码的方式和brainfuck的方式,打印Hello 1024, 大家乐呵乐呵...Javacafebabe00000034001607000201000a48656c6c6f576f726c640700040100106a617661...

2021-10-24 11:17:27 3493 8

原创 浅谈开源之道

最近参加了开放原子的开源教育认证讲师21秋季班,系统的学习了一下开源之道,感悟还是颇深的,刚好在第三节课(《开源战略规划和创新》)上,针对"为什么要系统学习和理解开源之道,对企业,个人和组织参与开源项目有哪些指导意义?"做了一个小的演讲,然后越琢磨越有意思,希望系统的和大家说说为什么要学习开源之道。(文末有演讲全稿,以及下期分享内容预告)下面是我的文章大纲,从开源认知,开源社区,开源回馈等三个大方向进行阐述。感谢开放原子郭皓老师精彩的课程,本文PPT大部分采用课程文档。开源认知我们对开源

2021-10-19 09:09:35 687 37

原创 两只松鼠的故事:flink-connector-opengauss

感谢松鼠会大佬的再三邀请。对我来说这算是一篇命题作文,那么我的答案是什么呢?刚好我也很喜欢另外一个松鼠社区,那么就用两只松鼠来做答案吧,没错,Flink和OpenGauss就是我的答案: 手把手完成一次OpenGauss的安装 手把手构建 Flink connector opengauss OpenGauss 安装操作系统建议使用openEuler20.03LTS,注意不要使用sp包,可能会因为sp包依赖升级,而导致安装失败。使用下面安装脚本,我对官方脚本进行了一些修改,适合...

2021-09-29 19:32:08 1221 23

原创 Hello max:帮助不善于使用lambda的开发者,进行高效的集合处理的工具类

what is max ?帮助不善于使用lambda的开发者,进行高效的集合处理的工具类。那么为什么叫max? 因为最近越发的喜欢《破产姐妹》里面的max了。coordinate转存失败重新上传取消SNAPSHOT:https://oss.sonatype.org/content/groups/publiccompile 'com.dafei1288:max:1.0-SNAPSHOT'RELEASE:compile 'com.dafei1288:max:0.0.

2021-09-23 16:17:10 392 16

原创 30分钟掌握沧湖一体化:flink+hudi(干货,建议收藏)

在《如何利用 Flink CDC 实现数据增量备份到 Clickhouse》里,我们介绍了如何cdc到ch,今天我们已久使用前文的案例,来sink到hudi,那么我们开始吧。hudi简介Apache Hudi(发音为“Hoodie”)在DFS的数据集上提供以下流原语 插入更新 (如何改变数据集?) 增量拉取 (如何获取变更的数据?) Hudi维护在数据集上执行的所有操作的时间轴(timeline),以提供数据集的即时视图。Hudi将数据集组织到与Hive表非常相似的基本路径下

2021-09-22 00:31:39 6382 37

原创 读《研发与创新》完,我领悟了... ...

首先感谢丁总推荐的一本好书《研发与创新》(https://book.douban.com/subject/35460992/),当你看的时候,会被其内容震撼,合上书又会联想到很多很多,这里我就从: 对这本书的感悟 读完这本书的一些遗憾 读书笔记 这几个方面来讲述一下我的读后感。由于时间有限,本人读书又很慢,后半部分浮光掠影的扫了一遍,可能会有遗漏,如有不当,欢迎指正。感悟: 创新无论是对应个人,企业,甚至民族与国家,都是至关重要的,如果我们不安于现状,...

2021-09-15 09:45:10 1523 25

原创 手动实现一门图灵完备的编程语言——Brainfuck

>++++++++[<+++++++++++++>-]<.---.+++++++..+++.>++++++++[<---------->-]<+.>++++++++[<+++++++++++>-]<-.--------.+++.------.--------.>++++++[<----------->-]<-.如果你看了上面这串字符,并知道它代表什么,那么相信你在你读完这篇文章后,你会理解...

2021-08-24 10:38:47 3541 33

原创 半小时体验云原生:手把手教你在k8s上部署springboot应用——干货分享,建议收藏

你会不会对“云原生”很有兴趣,却不知道从何入手?本文会在window环境下,构建一套基于k8s的istio环境,并且通过skaffold完成镜像的构建和项目部署到集群环境。其实对于实验环境有限的朋友们,完全可以在某里云上,按量付费搞3台”突发性能实例“,玩一晚,也就是杯咖啡钱。好吧,让我开始吧!执行流程整体流程的话,如下图所示,通过 Skaffold+jib 将开发的应用打包成镜像,提交到本地仓库,并且将应用部署到集群中。k8s中部署2个pod,模拟应用不同的版本,并且配置访问权...

2021-08-16 09:31:14 2689 47

原创 手把手构建基于 GBase8s 的 Flink connector

​简介本篇文章,首先会向大家阐述什么是 Flink connector 和 CDC , 然后会通过手把手的方式和大家一起构建一个简单的GBase8s的Flink connector,并完成实践项目,即通过Mysql CDC实时通过connector同步数据到GBase8s中。什么是 Flink connectorFlink内置了一些基本数据源和接收器,这些数据源和接收器始终可用。该预定义的数据源包括文件、Mysql、RabbitMq、Kafka、ES等,同时也支持数据输出到文件、My..

2021-07-26 09:14:31 1134 2

原创 十分钟掌握 Flink CDC,实现Mysql数据增量备份到Clickhouse [纯干货,建议收藏]

挖了很久的CDC坑,今天打算填一填了。本文我们首先来介绍什么是CDC,以及CDC工具选型,接下来我们来介绍如何通过Flink CDC抓取mysql中的数据,并把他汇入Clickhouse里,最后我们还将介绍Flink SQL CDC的方式。CDC首先什么是CDC ?它是Change Data Capture的缩写,即变更数据捕捉的简称,使用CDC我们可以从数据库中获取已提交的更改并将这些更改发送到下游,供下游使用。这些变更可以包括INSERT,DELETE,UPDATE等操作。...

2021-06-24 17:57:48 10840 59

原创 读完《演进式架构》我悟了!!!

最近读了一本很有意思的书《演进式架构》,从一个不太一样的角度来描述架构这件事。也让我痛定思痛的反省了一下过去犯的错误,以及由于知识欠缺,所留下的遗憾。这不是一篇介绍书目的软文,所以不会通篇介绍书中内容,我也没有电子版的链接,单纯是结合个人经历抒发一些感慨......Evolutionary Architecture它的定义原文如下:An evolutionary architecture supports incremental, guided change as a first princi

2021-06-20 17:12:58 975 70

原创 半小时学会在Win10上部署K8S,玩转云原生【全干货,建议收藏】

01引子鸽了好久了,终于又一次克服了拖延症,决心写点啥,起因也是因为最近刚好重做了系统,把win10从home版升级到了专业版,可以愉快的安装docker destop 而不需要借助 docker toolbox了。这个使用体验的提升真的是很不错。无论是配置,还是运行容器的可视化,还是一些辅助工具,真的友好了很多,降低了使用门槛。02 Kubernetesk8s 这个名字,起源于古希腊,是舵手的意思,所以它的 logo 即像一张渔网又像一个罗盘,谷歌选择这个名字还有一个深意:既然docke...

2021-06-16 15:57:00 2228 36

原创 十分钟玩转Mysql的binlog,小白也可以实现增量备份数据

在写文章的时候,我一直在纠结,这个到底能不能算增量备份,因为使用binlog的这种方式,按照官方文档的说话,应该叫做 point-in-time ,而非正经的增量模式,但是也聊胜于无。首先我先阐述一下,他的基本原理,就是定时制作基线,然后定时更新binlog,形成增量数据文件,然后在必要的时候进行恢复,追溯。下面是一个简单的流程图,首先我们来创建一个表然后,我们来创建一个基线,并且刷新binlog现在我们来模拟一些业务操作,插入数据好了,这一天平安过去,我们进行增备然后,不幸的事情.

2021-06-12 11:19:59 964 31

原创 [新星计划]如何一步一步解决工程乱码问题

这两天一直被一个乱码问题所困扰,起因要做自动化部署,于是决定用gradle作为发布工具,主要是因为groovy我也比较熟悉,其和maven整合比较紧密,但是工程发布以后,怎么就表现不正常呢?怎么就出现乱码呢?1.首先怀疑工作空间字符集? 检查没问题.1.然后怀疑加载XML的字符集加载不匹配? 检查没问题.1.编译程序没使用指定字符集? 检查没问题.1.容器URL连接字符集问题? 检查没问题.1.请求响应头? 检查没问题.1. response在处理前被...

2021-06-10 18:25:32 249 12

原创 通过扩展 Spark SQL ,打造自己的大数据分析引擎

Spark SQL 的 Catalyst ,这部分真的很有意思,值得去仔细研究一番,今天先来说说Spark的一些扩展机制吧,上一次写Spark,对其SQL的解析进行了一定的魔改,今天我们按...

2021-06-06 18:30:00 1647 14

原创 [新星计划]通过扩展 Spark SQL ,打造自己的大数据分析引擎

Spark SQL 的 Catalyst ,这部分真的很有意思,值得去仔细研究一番,今天先来说说Spark的一些扩展机制吧,上一次写Spark,对其SQL的解析进行了一定的魔改,今天我们按套路来,使用砖厂为我们提供的机制,来扩展Spark...首先我们先来了解一下 Spark SQL 的整体执行流程,输入的查询先被解析成未关联元数据的逻辑计划,然后根据元数据和解析规则,生成逻辑计划,再经过优化规则,形成优化过的逻辑计划(RBO),将逻辑计划转换成物理计划在经过代价模型(CBO),输出真...

2021-06-06 14:25:34 1113 18

原创 物联网数据库 IoTDB —— 从协议到数据

首先,先允许我,祝各位读者小可爱们,节日快乐。在这个系列之前的文章里,我们介绍了Iotdb的LSM,以及Iot中的最佳实践,这次我们看看如何将mqtt和Iotdb整合起来。下面我们开始:i...

2021-06-01 21:49:18 1723 11

原创 手把手教你玩转物联网

首先,先允许我,读者小可爱们,节日快乐。之前的文章,介绍了Iotdb的LSM,以及Iot中的最佳实践,这次我们看看如何将mqtt和Iotdb整合起来。下面我们开始:iotdb in docker首先,做一个测试环境,我现在越发喜欢docker 和 WSL 了,除了吃点硬盘,内存和CPU资源以外......run in docker直接把该开的端口打开,只是测试环境,我就没再挂目录。docker run -d -p 6667:6667 -p 31999:3199...

2021-06-01 21:35:35 1410 18

原创 程序猿的520

上天收回你一个老婆,那么他一定还会还给你一个老婆。 你问我为什么?我只能说这种事情见得多了,我只想说懂得都懂,不懂的我也不多解释,毕竟自己知道就好,细细品吧。你们也别来问我怎么了,利益牵扯...

2021-05-20 19:41:37 545

转载 用可视化探索数据特征的N种姿势

导读:本文主要以可视化方式来探索金融股市数据,运用多种探索性数据分析方法,相关理论与方法可以参见之前的一篇文章Python数据分析之数据探索分析(EDA)。本次案例使用一般函数方法探索变...

2021-05-18 22:47:34 830

L1导论——笔记.pptx

6.824 导论笔记

2020-12-22

BTrace@javaone

javaone 上 BTrace 的PPT

2009-10-30

context数据源配置工具

tomcat context 数据源配置工具

2009-08-25

空空如也

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

TA关注的人

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