02 2022 档案

flightsql apache arrow sql 扩展
摘要:flightsql 可以极大的提示列式数据库的查询性能,目前dremio 已经支持了flight rpc 了,目前稳定版本0.7 发布官方已经包含了一些代码示例了,还是值得学习的 参考玩法 集成 参考流程 说明 dremio 同时提供了不少介绍,同时性能对比图,性能提升是很明显的,预计越来越多的sq 阅读全文

posted @ 2022-02-28 22:55 荣锋亮 阅读(328) 评论(0) 推荐(0) 编辑

maven 发布test jar
摘要:很多时候我们自己开发了一个框架(比如查询引擎),框架自身测试比较复杂(依赖不少核心,而且组件比较多)同时我们也是暴露core 让别的开发者可以很好的测试,此时我们可能就需要暴露一个test jar 了(比如dremio等一些重量级的平台工具)实际上暴露test jar 以及发布test jar 的方 阅读全文

posted @ 2022-02-28 21:32 荣锋亮 阅读(1482) 评论(0) 推荐(0) 编辑

几款开源的maven 私服
摘要:以下整理几个开源的maven 私服,可以研究学习,内容来自 maven官方文档,而且很多轻量工具也是一个很不错的选择 参考资料 https://archiva.apache.org/https://maven.apache.org/repository-management.htmlhttps:// 阅读全文

posted @ 2022-02-28 21:31 荣锋亮 阅读(568) 评论(0) 推荐(0) 编辑

docker s6-overlay + containerpilot 对比
摘要:参考对比 containerpilot containerpilot 实际上也是一个init 进程管理,只是提供了更多的特性,对于进程在不同状态的处理更加完备,同时集成了consul (服务发现) 同时containerpilot 使用基于配置,而且更加齐全 s6-overlay s6-overla 阅读全文

posted @ 2022-02-27 22:09 荣锋亮 阅读(401) 评论(0) 推荐(0) 编辑

linux s6 docker 集成参考
摘要:基于s6-overlay 工具 环境准备 Dockerfile FROM ubuntu ARG S6_OVERLAY_VERSION=3.0.0.2-2 RUN apt-get update && apt-get install -y nginx xz-utils RUN echo "daemon 阅读全文

posted @ 2022-02-27 21:17 荣锋亮 阅读(475) 评论(0) 推荐(0) 编辑

linux s6 管理工具
摘要:s6 是一个管理服务进程的工具,功能还是很强大的,比如gos 就使用s6做为服务进程的管理,没有使用类似supervisor 的工具同时社区也提供了一个让容器更好支持s6 的扩展,对于希望进行容器运行多服务的场景还是值得使用的 参考资料 https://github.com/skarnet/s6-l 阅读全文

posted @ 2022-02-27 20:32 荣锋亮 阅读(468) 评论(0) 推荐(0) 编辑

nfs-ganesha linux 用户态文件nfs服务
摘要:nfs-ganesha 是在用户态的一个nfs 服务服务,支持nfsv3,v4,v41,v4.2协议 参考架构 说明 从官方介绍,以及社区的活跃程度,nfs-ganesha 还是一个不错的选择 参考资料 https://github.com/nfs-ganesha/nfs-ganeshahttps: 阅读全文

posted @ 2022-02-27 00:35 荣锋亮 阅读(501) 评论(0) 推荐(0) 编辑

apache pinot 学习
摘要:apache pinot 是一个很不错的olap 服务,功能强大,低延迟,包含了实时以及离线处理 支持的特性 非常快(支持离线以及实时处理) 水平扩展(基于了apache helix 框架) 插件化索引,包含sorted index,bitmap index,invertes index, star 阅读全文

posted @ 2022-02-26 22:34 荣锋亮 阅读(620) 评论(0) 推荐(0) 编辑

pinot jdbc 连接池工具使用说明
摘要:apache pinot 是一个很不错高性能的实时分析工具,同时提供了sql 查询能力,官方的jdbc 就是基于rest 包装的sql 查询 目前的问题 官方是基于sql +rest api (java client) 进行的jdbc 驱动开发,对于一些不支持的特性直接会跑出异常,这些很容易造成 好 阅读全文

posted @ 2022-02-26 18:30 荣锋亮 阅读(237) 评论(0) 推荐(0) 编辑

dremio job 处理流程参考
摘要:内容来自官方文档,可以了解dremio对于job 的处理 参考图 流程图 说明 上图还是比较有意义的,可以了解dremio内部的一些处理机制,以及状态转换,同时官方文档也包含了job的性能参数 参考资料 https://docs.dremio.com/cloud/querying-data/jobs 阅读全文

posted @ 2022-02-26 14:51 荣锋亮 阅读(68) 评论(0) 推荐(0) 编辑

dremio cloud 分层datasets 实践
摘要:内容来自官方文档,主要是一种玩法 流程 底层或者第一层,主要包含物理数据集 第二层是虚拟数据集,属于一个基于上层进行了简单的数据加工处理(类型转换,字段重明),同时提供一些安全控制 第三层,用户进行数据的join 以及其他昂贵操作,此层属于数据密集操作,一般会包含数据反射的添加(原始反射以及聚合反射 阅读全文

posted @ 2022-02-26 14:33 荣锋亮 阅读(62) 评论(0) 推荐(0) 编辑

dremio cloud 参考说明
摘要:最近dremio 官方网站调整了,ui 看着舒服多了,同时也提供了cloud的介绍 参考架构 从机制上与snowflake 比较类似 dremio cloud 包含的对象 一个tree ,维护dremio 的基础数据以及vds,datasource 说明 dremio cloud 看着还是很强大的, 阅读全文

posted @ 2022-02-26 14:21 荣锋亮 阅读(64) 评论(0) 推荐(0) 编辑

dremio yarn 资源调度配置简单说明
摘要:以前简单说过一些关于yarn 运行的,对于在yarn 资源调度框架运行,dremio 需要的配置还是比较多的## 配置简单说明 配置需要三大步骤,hadoop配置,dremio runtime 配置,yarn 调度资源配置,以下主要说明关于dremio 相关的 协调节点 services: { co 阅读全文

posted @ 2022-02-26 11:44 荣锋亮 阅读(62) 评论(0) 推荐(0) 编辑

dremio yarn 资源调度
摘要:dremio 是支持基于yarn 进行资源调度管理的,还是比较强大的 参考架构 部署简单说明 协调节点部署在边缘,对于执行节点通过节点进行配置yarn 资源的处理,dremio 会依赖hadoop 的数据卷进行cahce 以及split 处理同时dremio 实现了watchdog 进行资源的清理( 阅读全文

posted @ 2022-02-25 21:12 荣锋亮 阅读(69) 评论(0) 推荐(0) 编辑

dremio 查询sql 执行参考流程
摘要:以下只列出部分关于sql 处理的调用链,方便学习以及开发自己的扩展 sql 查询流程 这个是一个关于后台反射的处理过程 schema 获取的 参考开发处理 比如我们需要自己开发一个支持jdbc 驱动的arp 扩展,参考流程 (以下几个函数是我们需要实现的)很多时候不见得就必须通过informatio 阅读全文

posted @ 2022-02-24 19:49 荣锋亮 阅读(96) 评论(0) 推荐(0) 编辑

git rest api 操作代码的简单说明
摘要:对于基于rest api 进行git 操作相比使用git 自带工具实现起来考虑的东西就比较多了,codefever 目前暂时是不支持的 gogs web 操作处理 (但是目前没提供rest api) 简单原理 gogs 对于web 文件编辑操作是基于了临时clone +添加文件本地提交+push 的 阅读全文

posted @ 2022-02-24 13:05 荣锋亮 阅读(422) 评论(0) 推荐(0) 编辑

基于golang cgi 实现一个简单的git http server
摘要:昨天基于openssh 实现了一个简单的git ssh 协议实现,现在基于git 的cgi 服务实现一个http 协议支持 此方法实际上应该在好多开源git 项目系统中,直接使用了git 内置的http-backend (cgi) golang, nginx,apache, 都是直接支持cgi 的 阅读全文

posted @ 2022-02-23 20:12 荣锋亮 阅读(463) 评论(0) 推荐(0) 编辑

几款开源git server ssh 协议forced command 参考格式
摘要:git over ssh authorized_keys 的force command 处理是比较重要也是核心的 里边包含了权限处理,内部api 调用,git 上传下载处理 gitlab command="/opt/gitlab/embedded/service/gitlab-shell/bin/g 阅读全文

posted @ 2022-02-22 21:07 荣锋亮 阅读(116) 评论(0) 推荐(0) 编辑

基于golang+openssh 服务实现一个简单的git over ssh 服务
摘要:昨天看了开源的codefever 以及以前简单学习过gogs,刚才学习下git over ssh 的实现机制 基于openssh + golang (golang 部分参考了gogs 处理)实现了一个简单的git server (ssh 协议的) 原理说明 核心还是我们的openssh server 阅读全文

posted @ 2022-02-22 20:23 荣锋亮 阅读(293) 评论(0) 推荐(0) 编辑

codefever git  协议处理简单说明
摘要:codefever关于git ssh 协议的处理与gitlab 的是大同小异的,都是基于了ssh 的command restriction ( forced command)当然gitlab 也支持了基于的AuthorizedKeysCommand,而且目前gitlab 也基于golang 开发了一 阅读全文

posted @ 2022-02-21 23:05 荣锋亮 阅读(117) 评论(0) 推荐(0) 编辑

openresty net::ERR_HTTP2_SERVER_REFUSED_STREAM 问题参考解决方法-续
摘要:主要还是今天碰到的关于nginx net::ERR_HTTP2_SERVER_REFUSED_STREAM 的问题 事情的起因 实际上以前应该问题是不大的,只是最近升级了openresty 到1.19.9 问题就在当前ga 版本的openresty 依赖的nginxcore 是基于1.19.9 的 阅读全文

posted @ 2022-02-21 22:40 荣锋亮 阅读(574) 评论(0) 推荐(0) 编辑

codefever蒲公英团队开源的git server
摘要:codefever是蒲公英团队开源的git server,核心基于php开发,同时也包含了部分基于golang 开发的工具 参考运行 环境准备 docker-compose 文件 version: '3' services: git: image: pgyer/codefever-community 阅读全文

posted @ 2022-02-21 21:47 荣锋亮 阅读(520) 评论(0) 推荐(0) 编辑

dremio 连接gitbase
摘要:dremio 官方自带的驱动是不能直接连接gitbase的(因为使用了mariadb mysql 驱动的问题),以前我基于官方arp 开发了一个基于mysql 驱动的arp 扩展,对于doris 以及oceanbase 的支持都是比较好的,今天刚好测试了下gitbase的 发现也是可以的,理论上do 阅读全文

posted @ 2022-02-21 20:03 荣锋亮 阅读(51) 评论(0) 推荐(0) 编辑

openresty net::ERR_HTTP2_SERVER_REFUSED_STREAM 问题参考解决方法
摘要:实际上造成此问题的核心还是请求并发太大(实际的场景也是这样的,有一个大量的图片请求服务) 环境说明 一般大家部署nginx (openresty)的时候都会开启keepalive_timeout的,当前版本默认是75s,我们使用了65s 可选的优化方法 禁用http2 如果搜索相关问题,会看到禁用h 阅读全文

posted @ 2022-02-21 18:22 荣锋亮 阅读(1735) 评论(0) 推荐(0) 编辑

tapestry-pipeline 开源data pipeline 调度工具
摘要:tapestry-pipeline 是一个开源data pipeline 调度工具,内置的功能不少(date ingestion,tranformation,reverse ETL) 参考架构 说明 目前来说tapestry-pipeline github start 并不是很多,但是设计还是很不错 阅读全文

posted @ 2022-02-20 23:01 荣锋亮 阅读(758) 评论(0) 推荐(0) 编辑

openmetadata 0.8 发布了
摘要:就在最近openmetadata 0.8 发布了,包含了不少新特性,主要涉及数据质量,访问控制策略,以及事件webhook同时也添加了新的connector 参考资料 https://docs.open-metadata.org/roadmaphttps://docs.open-metadata.o 阅读全文

posted @ 2022-02-20 14:35 荣锋亮 阅读(188) 评论(0) 推荐(0) 编辑

pf4j 注入spring controller 的几种方法
摘要:核心还是基于RequestMappingHandlerMapping bean 进行controller 的创建 方法一 获取RequestMappingHandlerMapping bean 注册registerMapping 参考(参考伪代码) getMappingForMethod = Ref 阅读全文

posted @ 2022-02-20 14:05 荣锋亮 阅读(450) 评论(0) 推荐(0) 编辑

grafana loki 2.4 简化服务部署
摘要:grafana loki 2.4 版本简化了集群部署的使用,实际上部署起来很简单了,而且系统扩容更方便了 环境准备 docker-compose 文件 version: "3" networks: loki: services: read: image: grafana/loki:2.4.2 com 阅读全文

posted @ 2022-02-19 20:09 荣锋亮 阅读(638) 评论(0) 推荐(0) 编辑

sbp 基于 pf4j开发的spring boot 扩展框架
摘要:sbp 是一个值得学习的,因为官方的spring 扩展不是很用,而且也有不少问题sbp 解决了不少默认spring 扩展的问题 参考资料 https://github.com/hank-cp/sbp 阅读全文

posted @ 2022-02-18 22:50 荣锋亮 阅读(1112) 评论(0) 推荐(0) 编辑

pf4j spring 集成几个问题
摘要:以下整理几个实际使用碰到的问题 问题 Caused by: java.lang.LinkageError: loader constraint violation: loader (instance of org/pf4j/PluginClassLoader) previously initiate 阅读全文

posted @ 2022-02-18 20:51 荣锋亮 阅读(748) 评论(0) 推荐(0) 编辑

pf4j spring 扩展原理简单说明
摘要:pf4j spring 扩展是一个很不错的spring 集成扩展,可以方便我们将pf4j集成到spring 应用中 主要使用的技术 动态bean注册,核心代码并不难,目前来说实现比较简单,而且不是很强大 几个核心类 ExtensionsInjector 主要方便注入SpringPluginManag 阅读全文

posted @ 2022-02-17 23:38 荣锋亮 阅读(723) 评论(0) 推荐(0) 编辑

gitbase jdbc 连接简单说明
摘要:以下是Hikari 连接gitbase 的一个简单说明,可以参考,同时附带解决问题的思路 参考代码 spring bean @Bean public DataSource dataSource(){ HikariConfig config = new HikariConfig(); config.s 阅读全文

posted @ 2022-02-17 21:34 荣锋亮 阅读(186) 评论(0) 推荐(0) 编辑

pf4j zip 插件的处理
摘要:pf4j 对于zip 插件会先进行解压处理的,主要核心是基于PluginRepository 处理的 目前官方已经包含了不少实现 核心处理 参考代码 pf4j/src/main/java/org/pf4j/AbstractPluginManager.java 方法 @Override public 阅读全文

posted @ 2022-02-17 13:04 荣锋亮 阅读(185) 评论(0) 推荐(0) 编辑

pf4j 官方几个比较有用的扩展
摘要:pf4j spring 是一个集成spring 很不错的选择,官方出品,就是有点简单pf4j update 是一个支持插件下载,更新,管理的服务,很不错 说明 当然官方还提供了web 以及其他的都还不错 参考资料 https://github.com/pf4j/pf4j-springhttps:// 阅读全文

posted @ 2022-02-16 23:15 荣锋亮 阅读(284) 评论(0) 推荐(0) 编辑

pf4j 类加载顺序简单说明
摘要:pf4j 具有类隔离特性 参考代码 pf4j/src/main/java/org/pf4j/ClassLoadingStrategy.java pf4j/src/main/java/org/pf4j/PluginClassLoader.java pf4j/src/main/java/org/pf4j 阅读全文

posted @ 2022-02-16 21:37 荣锋亮 阅读(441) 评论(0) 推荐(0) 编辑

pf4j 插件加载机制
摘要:主要简单说明下pf4j 的插件加载处理 参考代码 pf4j/src/main/java/org/pf4j/AbstractPluginManager.java 加载代码 loadPlugins 处理 加载处理 @Override public void loadPlugins() { log.deb 阅读全文

posted @ 2022-02-16 19:16 荣锋亮 阅读(619) 评论(0) 推荐(0) 编辑

pf4j 默认系统扩展以及机制说明
摘要:pf4j 支持直接在应用中进行插件的开发以及运行(不需要复杂的处理) 与serviceloader 比较类似,我么只需要添加一个注解就可以了(@Extension) 参考运行 public static void main(String[] args) { PluginManager pluginM 阅读全文

posted @ 2022-02-16 19:15 荣锋亮 阅读(376) 评论(0) 推荐(0) 编辑

pf4j 默认插件打包模式
摘要:pf4j 进行插件打包方法不少,比如fat jar 的,zip 文件的,以及文件夹的 扩展支持的模式 jar 模式(官方推荐的模式,对于依赖可以基于shared插件解决,注意对于契约服务scope 使用provide模式,不然插件运行会有问题,目前版本测试) 参考配置(shade 插件) <plug 阅读全文

posted @ 2022-02-16 19:14 荣锋亮 阅读(380) 评论(0) 推荐(0) 编辑

pf4j +juicefs 参考玩法
摘要:主要是一种集成尝试 参考图 简单说明 我们可以一个简单的plugin 入口,基于pf4j插件机制开发插件,使用juicefs 进行插件管理,然后挂载到不同的路径中(按照服务拆分)对于插件我们可以直接开发一个管理api 进行扩展,也可以使用pf4j 的update扩展,集成起来还是很不错的,实现服务的 阅读全文

posted @ 2022-02-15 22:04 荣锋亮 阅读(148) 评论(0) 推荐(0) 编辑

pf4j 试用
摘要:pf4j 试用上还是比较灵活的,并没有太多的配置,而且比较灵活,支持类隔离 参考项目 项目结构 ├── README.md ├── bootstrap // 启动入口,使用了assembly 进行打包,当然对图spring 项目也是可以的 │ ├── pom.xml │ └── src │ ├── 阅读全文

posted @ 2022-02-15 21:52 荣锋亮 阅读(909) 评论(0) 推荐(0) 编辑

dremio的分布式存储简单说明
摘要:dremio 的pdfs 在系统中是一个比较重要的东西,dremio 的加速,上传,下载,查询结果,scratch 空间都是存储在这个里边的,没有配置的话,默认是在 paths.local 中, 同时官方支持多种文件存储(nas,hdfs,mapr-fs,s3,azure data lake,azu 阅读全文

posted @ 2022-02-14 20:23 荣锋亮 阅读(392) 评论(0) 推荐(0) 编辑

wait-for-it rpm 包
摘要:wait-for-it rpm 很不错,目前只有debian 的没有rpm的包,所以制作了一个基于fpm 方法 git clone https://github.com/vishnubob/wait-for-it.git chmod +x wait-for-it/wait-for-it.sh fpm 阅读全文

posted @ 2022-02-13 23:50 荣锋亮 阅读(23) 评论(0) 推荐(0) 编辑

wait-for-it 基于shell 的tcp 状态检测工具
摘要:wait-for-it 是一个很不错的linux tcp 检测工具,基于shell编写,好多项目都有用到,而且目前还有debian包 说明 我们在容器环境中,类似的功能需要是比较常见的,等待几次,或者一段时间之后检查tcp服务状态,之后执行一段通知或者脚本很值得使用,目前包含了debian包,我们可 阅读全文

posted @ 2022-02-13 22:57 荣锋亮 阅读(160) 评论(0) 推荐(0) 编辑

pf4j 轻量强大的java 插件框架
摘要:pf4j 一个强大的java 插件框架 支持的特性 可以灵活的让单体系统转化为模块化系统 轻量,只依赖sl4j-api 以及java-semver,扩展灵活 包含的组件 Plugins 所有插件基类 PluginManager,抽象插件管理 PluginLoader 插件加载 ExtensionPo 阅读全文

posted @ 2022-02-13 22:31 荣锋亮 阅读(2842) 评论(0) 推荐(0) 编辑

lakefs 集成presto/trinodb
摘要:presto 集成lakefs 主要利用了hive connector 预备 需要hive metadata docker-compose version: "3" services: lakefs: image: "treeverse/lakefs:${VERSION:-latest}" port 阅读全文

posted @ 2022-02-13 22:04 荣锋亮 阅读(151) 评论(0) 推荐(0) 编辑

hive metadata 容器镜像
摘要:hive 3.0 之后metadata 是可以支持独立部署的,可以方便开源社区好多工具支持使用 以下是一个参考的docker镜像以及运行 参考使用 version: "3" services: mariadb: image: mariadb:10 container_name: mariadb po 阅读全文

posted @ 2022-02-12 23:07 荣锋亮 阅读(218) 评论(0) 推荐(0) 编辑

lakefs metadata 集成
摘要:lakefs 为了更好的支持hive 以及glue单独开发了metadata 同步的命令(基于metadata 的thrift rpc 协议) 主要解决的问题 比如我们在main分支创建了table,然后我们开发了dev 分支,如果基于hive 的metadata 进行数据查询就有问题了 此时就可以 阅读全文

posted @ 2022-02-12 21:57 荣锋亮 阅读(57) 评论(0) 推荐(0) 编辑

lakefs 周边生态集成
摘要:lakefs 集成的周边还是很多的,核心还是利用了s3 的特性,核心主要玩法以下 直接利用s3特性 比如delta lake,spark,airbyte,kafka,dremio 基于hdfs 使用s3a扩展进行hdfs集成 hive 元数据集成 实际上还是s3 的特性,只是基于git 的特性扩展了 阅读全文

posted @ 2022-02-12 21:14 荣锋亮 阅读(179) 评论(0) 推荐(0) 编辑

lakefs 监控
摘要:lakefs 提供了prometheus 的metrics 用来搞监控还是很方便的,而且强大,可以做到性能报警 目前提供的metrics api 请求总数 api 请求延迟 gateway 请求延迟(s3) s3 操作延迟 gs、azure 操作 go_sql 操作(基于sqlstats) 参考资料 阅读全文

posted @ 2022-02-12 11:45 荣锋亮 阅读(59) 评论(0) 推荐(0) 编辑

lakefs hooks 试用
摘要:lakefs 的hooks 是一种比较灵活的能力,我们基于此可以实现数据的加工处理,同时也算是一种弥补lakefs s3 事件的处理 环境准备 docker-compose version: '3' services: lakefs: image: "treeverse/lakefs:${VERSI 阅读全文

posted @ 2022-02-12 11:35 荣锋亮 阅读(58) 评论(0) 推荐(0) 编辑

edgedb 1.0 发布了
摘要:edgedb 1.0 终于发布了,具体可以参考blog,后续可以好好学习下了 参考资料 https://www.edgedb.com/blog/edgedb-1-0 阅读全文

posted @ 2022-02-11 22:49 荣锋亮 阅读(128) 评论(0) 推荐(0) 编辑

lakefs 分支模型
摘要:lakefs 尽管是支持了类似git 的分支模型,但是了解处理机制还是比较重要的,至少可以更好的利用lakefs进行系统的建设 repositories lakefs 的repository 是一个逻辑namespace,用来组合分支,对象,以及提交,和s3 的bucket 是相似的 branche 阅读全文

posted @ 2022-02-11 21:33 荣锋亮 阅读(137) 评论(0) 推荐(0) 编辑

lakefs 对象模型-对象存储
摘要:了解lakefs 的对象模型对于我们更好的学习lakefs 是比较重要的 lakefs 对象存储 对象存储借鉴自s3,包含一些特性 包含一些内容,无限大小以及格式 一些元数据,大小,创建时间,时间戳,内容检查值, 一些用户自定义的元数据 和其他对象存储类似,lakfe 的对象是不可变的,不能重写,可 阅读全文

posted @ 2022-02-11 19:33 荣锋亮 阅读(264) 评论(0) 推荐(0) 编辑

几个不错的java otp 包
摘要:个人比较推荐使用BastiaanJansen/otp-java,使用简单,而且包含了生成以及校验 参考代码 pom.xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0 阅读全文

posted @ 2022-02-11 19:29 荣锋亮 阅读(694) 评论(0) 推荐(0) 编辑

lakefs sdk 使用
摘要:因为lakefs 是基于openapi 开发的后端,所以提供sdk 是很简单的,同时官方的sdk就是基于代码生成的 构建sdk 官方提供了中央仓库里的,也可以自己构建 java 版本自己构建 cd clients/java mvn clean package install -Dmaven.test 阅读全文

posted @ 2022-02-10 19:04 荣锋亮 阅读(175) 评论(0) 推荐(0) 编辑

lakefs 组件
摘要:参考图 组件 s3 gateway api 提供了s3 兼容的api,目前包含了s3 子集,并不是完整实现, https://docs.lakefs.io/reference/s3.html 了解具体兼容 openapi server 基于openapi 规范,实现的crud 操作,同时包含了分支, 阅读全文

posted @ 2022-02-10 19:02 荣锋亮 阅读(90) 评论(0) 推荐(0) 编辑

dremio 20.1 官方release note 提供了
摘要:问题 18.x以及19.x 升级到20.1 问题,造成iceberg metadta 问题,解决方法使用ALTER PDS,刷新以及遗忘数据集的元数据 增强 添加了authorizer.auth.cache.expiration_ms 进行认证有效期的配置 issue 修复 rdbms 多表join 阅读全文

posted @ 2022-02-10 12:11 荣锋亮 阅读(51) 评论(0) 推荐(0) 编辑

使用minio 做为lakefs 的数据存储
摘要:lakefs 提供了专门的存储adapter,所以支持各类还是比较方便的,官方已经内置了不少存储适配 以下是简单的集成minio 环境准备 docker-compose文件 注意集成了dremio,dremio 添加了jprofiler扩展 version: '3' services: lakefs 阅读全文

posted @ 2022-02-10 11:59 荣锋亮 阅读(348) 评论(0) 推荐(0) 编辑

lakefs 源码构建
摘要:lakefs的构建实际上是比较简单的,直接使用make build 就可以,但是lakefs 的构建模式是值得学习的 构建命令 本地 make build 容器镜像 make build-docker 简单说明 lakefs 使用了代码生成,静态资源嵌入,vite ,make 脚本写的并不是很难 代 阅读全文

posted @ 2022-02-10 00:34 荣锋亮 阅读(110) 评论(0) 推荐(0) 编辑

dremio 20.1 发布了
摘要:就在2.8 号,官方发布了20.1 版本的,暂时还没看到relase note, 但是从代码大致看,主要是kernel 部分(ce 部分的插件代码官方没有开源)对于ce 部分(jdbc)暂时没看到其他的变动 说明 dremio 版本升级20.1 还是挺快,但是官方release note 有点太慢了 阅读全文

posted @ 2022-02-09 18:26 荣锋亮 阅读(47) 评论(0) 推荐(0) 编辑

posthog 开源产品分析工具
摘要:posthog 是开源,可以自托管部署的产品分析平台 包含的特性 基于事件的分析 产品数据可视化 自托管系统 回话录制 自动捕捉 特性开关 datawarehouse 友好 灵活扩展 api 丰富 参考架构 参考资料 https://github.com/posthog/posthoghttps:/ 阅读全文

posted @ 2022-02-09 13:13 荣锋亮 阅读(1032) 评论(0) 推荐(0) 编辑

dremio 集成lakefs
摘要:核心还是利用了lakefs 暴露s3 的特性,没多少技术难度,但是基于lakefs 支持git 的特性,我们可以更好的管理数据 环境准备 docker-compose version: '3' services: lakefs: image: "treeverse/lakefs:${VERSION: 阅读全文

posted @ 2022-02-09 13:01 荣锋亮 阅读(93) 评论(0) 推荐(0) 编辑

piral 参考架构说明
摘要:昨天有介绍过一个siteless 的micro frontends 架构模式,实际上siteless来自与piral,以下简单介绍下piral的架构(内容来自官方文档) 几张图 来自官方,介绍下关于piral的集成模式 微服务时候的玩法 微前端之后 piral 的参考架构(核心基于react 开发) 阅读全文

posted @ 2022-02-08 10:41 荣锋亮 阅读(307) 评论(0) 推荐(0) 编辑

siteless ui 一种新的micro frontend 开发模式
摘要:框架以及术语是来自piral,同时在框架作者的书 The Art of Micro Frontends 有比较完整的介绍,这本书是micro frontends in action 以及 building micro-frontends 之后一本不错的讲 micro frontend 的书 参考图 阅读全文

posted @ 2022-02-08 00:26 荣锋亮 阅读(59) 评论(0) 推荐(0) 编辑

使用parcel api 进行npm 项目
摘要:parcel 提供了api 我们可以方便的集成到项目中,直接进行代码的构建 参考需要构建的项目 index.html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compa 阅读全文

posted @ 2022-02-07 22:29 荣锋亮 阅读(115) 评论(0) 推荐(0) 编辑

npm 8 的overrides 进行npm 依赖包的重写
摘要:npm 8 的的overrides 是一个很方便的命令,比较适合我们特定的一个依赖npm有问题,但是因为依赖关系的问题造成很难处理 使用overrides我们就可以重写依赖的特定版本了 参考使用 package.json 我们限定@cubejs-backend/prestodb-driver 依赖的 阅读全文

posted @ 2022-02-07 13:29 荣锋亮 阅读(4008) 评论(0) 推荐(0) 编辑

maven 同一个模块加载多个版本的方法
摘要:实际上属于一个小窍门,但是并不推荐使用,这种方法,比较适合,我们需要开发插件化应用 参考格式 以下格式就可以支持同一个模块的多版本加载打包了 <dependency> <groupId>com.dalongdemo</groupId> <artifactId>moduleapp</artifactI 阅读全文

posted @ 2022-02-07 13:06 荣锋亮 阅读(471) 评论(0) 推荐(0) 编辑

webjars 的优缺点
摘要:webjars 已经出现很多年了,以下是整理一些优缺点 优点 便于java 体系web 资源的分发以及持续集成 天然支持多版本(格式约定) 直接基于classpath 的处理机制可以实现资源的路由寻址(天然支持+部分框架特性,比如servlet,spring 。。。) 缺点 maven 工具多版本支 阅读全文

posted @ 2022-02-07 12:58 荣锋亮 阅读(657) 评论(0) 推荐(0) 编辑

webjars 一般需要用到的几个插件
摘要:webjars 是比较方便的一个web 资源集成到java 应用的方法,打包是比较重要的,但是很多时候我们是需要依赖其他一些maven plugin 的 unsnapshot-maven-plugin 主要解决版本的问题,去掉snaphot,会提供一个${version.unsnapshot} 的变 阅读全文

posted @ 2022-02-06 21:26 荣锋亮 阅读(54) 评论(0) 推荐(0) 编辑

frontend-maven-plugin webjars 模式构建web app
摘要:webjars 没有太多高深的技术,我以前也写过相关介绍,webjars 的好处是灵活,而且利用了好多servelet 的特性,同时定义了比较好的 业界实现,是一个很值得参考的玩法 参考代码 pom.xml <?xml version="1.0" encoding="UTF-8"?> <projec 阅读全文

posted @ 2022-02-06 20:23 荣锋亮 阅读(78) 评论(0) 推荐(0) 编辑

reactive-interaction-gateway响应式交互网关
摘要:reactive-interaction-gateway 的目的是让当前的微服务实时化,基于elixir 开发 来自官方的参考图 参考架构 参考玩法 说明 目前类似real time gateway 还是挺多的,基于reactive-interaction-gateway可以让我们的微服务应用变成事 阅读全文

posted @ 2022-02-06 11:03 荣锋亮 阅读(94) 评论(0) 推荐(0) 编辑

grouparoo 源码项目结构
摘要:以前我也简单写了一些关于grouparoo处理的,后边计划顺着源码处理研究下 项目结构 grouparoo 包含了不少模块,属于一个monorepo,但是没有使用大家常用的yarn workspace 或者lerna 的workspace 而是使用了pnpm进行多workspace 的管理 使用le 阅读全文

posted @ 2022-02-06 10:32 荣锋亮 阅读(61) 评论(0) 推荐(0) 编辑

glob 方便的nodejs 文件查找包
摘要:glob 包在nodejs 领域使用是很广的,是一个很强大文件查找工具包 简单使用 const glob = require("glob") glob("**/*.js", {}, function (er, files) { if(er){ console.log("some wrong",er) 阅读全文

posted @ 2022-02-05 22:21 荣锋亮 阅读(294) 评论(0) 推荐(0) 编辑

actionhero Initializer的优先级
摘要:actionhero 的Initializer 是包含了优先级的,对于一些场景下我们是需要关注的 参考定义 src/classes/initializer.ts export abstract class Initializer { /**The name of the Initializer. * 阅读全文

posted @ 2022-02-05 21:44 荣锋亮 阅读(31) 评论(0) 推荐(0) 编辑

grouparoo 插件加载处理
摘要:grouparoo 的插件处理与actionhero 是一致的,只是grouparoo增强扩展了下,支持了插件的自动加载以及reload 参考处理机制 core/src/initializers/plugins.ts 参考代码(主要是核心插件以及UI) async initialize() { ap 阅读全文

posted @ 2022-02-05 21:33 荣锋亮 阅读(36) 评论(0) 推荐(0) 编辑

actionherojs 插件restart 说明
摘要:actionherojs 是提供了一种restart的机制,以下是简单说明下 服务restart api // 引入api import {Action, api} from "actionhero" module.exports = class MyDemoAction extends Actio 阅读全文

posted @ 2022-02-05 19:40 荣锋亮 阅读(19) 评论(0) 推荐(0) 编辑

浏览器指纹信息获取js 包的使用
摘要:昨天简单介绍过几个浏览器指纹信息的包,以下简单使用下 browser_fingerprint browser_fingerprint 是actionhero 开发的,属于一个服务器端的处理,如果使用过里边actionhero会发现响应li bian直接包含了一个fingerprint 参考代码 co 阅读全文

posted @ 2022-02-05 14:13 荣锋亮 阅读(1175) 评论(0) 推荐(0) 编辑

primus 通用实时框架包装
摘要:primus 主要是一个包装,解决了实时通信框架的问题 优点 可以实现灵活的实时框架替换,而不需要修改太多的代码 内置重连机制 离线捕捉重连 自动消息的编解码处理 说明 actionherojs 内部对于websocket 的处理就包装了primus,对于进行实时框架的处理,还是值得选择的,而且pr 阅读全文

posted @ 2022-02-04 23:24 荣锋亮 阅读(88) 评论(0) 推荐(0) 编辑

actionherojs 的插件机制
摘要:actionherojs 的插件机制是比较强大的,基于插件我们可以直接实现npm包的安装与卸载,同时利用提供的reload api 实现 模块功能的生效(grouparoo 就利用了这些特性) 创建一个插件 代码结构 可以使用actionherojs 的cli 创建 ├── README.md ├─ 阅读全文

posted @ 2022-02-04 21:16 荣锋亮 阅读(80) 评论(0) 推荐(0) 编辑

actionherojs 中间件参考流程
摘要:actionherojs 做为一个插件化的框架,还是很强大的,支持中间件模式以下是一些参考流程 action 处理流程图 Task 处理流程 目前官方支持的中间件类型 Action Connection Chat Task 说明 actionherojs 的设计还是比较简介的,但是很强大,基于它搞一 阅读全文

posted @ 2022-02-04 11:56 荣锋亮 阅读(45) 评论(0) 推荐(0) 编辑

让自己的npm包支持npm WARN deprecated
摘要:npm WARN deprecated 的目的是让使用npm的人知道,使用的某些版本因为安全漏洞,或者维护问题,不在支持了 需要使用者使用其他版本的,让自己开发的npm 支持 npm WARN deprecated 主要核心还是使用了npm 自带的命令 npm deprecate 命令参考格式 np 阅读全文

posted @ 2022-02-03 22:36 荣锋亮 阅读(5493) 评论(0) 推荐(0) 编辑

grapesjs 强大的web builder 框架
摘要:grapesjs 是一个开源免费的web builder 框架,可以用来实现基于模版不需要代码的工具(cms,表单设计器。。。) 说明 现在好多的无代码以及低代码都会选择表单设计器进行开发,参考下grapesjs 是一个很不错的选择 参考资料 https://github.com/artf/grap 阅读全文

posted @ 2022-02-03 12:44 荣锋亮 阅读(541) 评论(0) 推荐(0) 编辑

浏览器指纹信息获取npm 包
摘要:浏览器指纹信息在数据分析领域是比较重要的,目前开源的工具也不少,以下整理一些 说明 一些是server端的,一些是基于浏览器的,很多时候需要多种模式一起才能唯一确定,比如我们结合browser_fingerprint以及clientjs就可以相对稳定的确定浏览器标示了 参考资料 https://gi 阅读全文

posted @ 2022-02-03 11:41 荣锋亮 阅读(133) 评论(0) 推荐(0) 编辑

grouparoo 数据流
摘要:内容来自官方文档,基于此我们可以了解grouparoo 各组件的工作流程可以方便源码的学习阅读(目前官方关于架构介绍的比较少) 参考介绍 参考图 简单说明 图中的不少都是以插件模式开发的,core,以及cli 是比较核心的,以上组件大部分是利用了actionherojs的特性 说明 grouparo 阅读全文

posted @ 2022-02-03 00:14 荣锋亮 阅读(46) 评论(0) 推荐(0) 编辑

actionherojs 生产部署说明
摘要:actionherojs 支持集群以及ha 模式,同时支持web 与worker分离 参考图 woker&web分离配置 / Assume we use the flag \`process.env.ACTIONHERO_ROLE\` to denote the type of server // 阅读全文

posted @ 2022-02-02 22:57 荣锋亮 阅读(34) 评论(0) 推荐(0) 编辑

actionherojs 强大的nodejs api 框架
摘要:actionherojs 明显是被低估的nodejs 框架,支持的特性不少,而且是groupraoo 的核心依赖 一般的业务场景 后台任务开发 实时以及基于http的链接服务 自动reload以及开发环境热加载 集群部署(单机以及多机)支持集群共享cache,广播消息 数据库应用,插件化集成mong 阅读全文

posted @ 2022-02-02 19:52 荣锋亮 阅读(191) 评论(0) 推荐(0) 编辑

基于juicefs +s3 开发简单的多租户git 服务
摘要:参考图 简单说明 利用了git 的http 协议,基于juicefs 进行不同租户git 代码的隔离,元数据使用不用的,同时git server 可以直接基于golang,nodejs 开发,也可以使用容器或者虚拟机运行git server,因为基于http 协议,我们可以扩展一层auth 认证,同 阅读全文

posted @ 2022-02-02 14:25 荣锋亮 阅读(113) 评论(0) 推荐(0) 编辑

使用juicefs 解决基于s3做为git 存储的问题
摘要:开发一个自定义的git server 实际上是比较有意思的,而且很多时候也能解决我们好多问题 一些场景 基于git 的配置管理 基于git 的数据同步 基于git 的数据备份 存储的问题 对于git的数据存储,我们有几种方法,本地,共享存储(nas,nfs) 本地的问题很明显,不能共享,使用有点费事 阅读全文

posted @ 2022-02-02 13:53 荣锋亮 阅读(220) 评论(0) 推荐(0) 编辑

Building a Sync Engin
摘要:内容来自:https://www.grouparoo.com/blog/building-a-sync-engine 内容主要介绍了如何开发一个同步引擎,没有太多高深的,主要是基于了变动的时间戳以及水印算法 简单说明 预备 添加水印列,当然对于不同的数据库处理方式会不一样的,有些可能需要通过触发器 阅读全文

posted @ 2022-02-01 21:07 荣锋亮 阅读(34) 评论(0) 推荐(0) 编辑

grouparoo 基于nodejs 的开源反向ETL 工具
摘要:grouparoo 是一个基于nodejs 开发的反向ETL 工具,通过此我们可以学习内部机制 参考使用 安装 npm install -g grouparoo grouparoo init . grouparoo config 效果 启动之后需要通过注册以及添加app 包含ui 管理,支持的app 阅读全文

posted @ 2022-02-01 19:59 荣锋亮 阅读(214) 评论(0) 推荐(0) 编辑

Castled 源码解析 - container 模块说明
摘要:container 属于Castled api 后端服务,后端包含了任务调度,db 迁移,有几个服务是比较重要的 主要是pipelineservice,ExternalAppService,WarehouseService,而且官方还提供了一套基于events 的处理 主要包含PipelineEve 阅读全文

posted @ 2022-02-01 13:22 荣锋亮 阅读(67) 评论(0) 推荐(0) 编辑

导航