疯狂小兵

向往自由,追求卓越! 阅读

Calcite机制学习及 Demo

为什么需要 Calcite 专有数据系统如 storm,flink,spark,es 等需要优化查询,也需要支持 Sql。各个系统的工程师重复工作,缺乏统一的框架 应用开发人员很多时候会将好几个数据系统集成在一起使用,需要有支持异构数据源的查询优化的系统。 起源 在 2004 年,lucidEra 和 SQLStream 都在搞 Sql系统 在 2012 年进入 apache 作...

flink基本 API 的概念

Flink编程步骤剖析 获取执行环境 加载或生产初始化的数据 指定在此数据上的转换方式(如 Map,reduce,Filter等) 指定计算后的结果需要输出的位置(如 std out,Kafka,ES,Mysql等) 触发Flink Job 的执行 获取执行环境的方式 对于 Stream 来说,通过StreamExecutionEnvironment的几种方法...

Spring学习 - bean 的别名注册原理

背景 在学习Spring源码前已经知道在xml中配置的时候可以注册beanName 和多个别名aliasName,那beanName 和多个aliasName 之间的关系是怎么处理的呢? 实现原理 Bean 的别名注册器有定义别名功能的接口AliasRegistry。该接口定义了四件事情 注册别名。方法registerAlias。 删除别名。方法removeAlias。 ...

Spring学习 - 元数据存储结构 -- BeanDefinition 和 AnnotationMetadata 的机制

BeanDefinition 介绍 BeanDefinition是 Spring 中一种重要的数据模型定义,用来存储 Spring 的启动期间通过 xml 或者注解方式扫描的需要注入进 Spring的 IOC 容器内的 Bean 信息。 BeanDefinition 类依赖图 BeanDefinition 类信息 BeanDefinition 接口类,定义BeanDefinit...

Spring学习 - 自动装配同一个接口的多个实现类

介绍 在平时使用 Spring 的 DI 机制时,几乎都是在某个类中引用接口的单个实现。但是Spring 如何将多个实现类同时注入进List<Interface> 中呢。好吧,不说废话了,直接上代码吧。 原来的引用方式 public interface HelloService { void sayHello(); } @Service public class ...

分布式存储系统学习笔记 - 1. 分布式存储的概念

分布式存储系统的特性 可扩展。系统的整体性能随集群的扩展而线性增长。 低成本。构建在普通的 PC 机上。 高性能。无论时对集群还是对单机,都要求高性能。 易用。易用的对外接口,完善的监控和运维工具。 分布式系统的挑战 数据和状态信息的持久化。自动迁移,自动容错,并发读写时的数据一致性。 问题和挑战 数据分布 如何将数据分布到多...

GFS的演进

人物介绍 Kirk McKusick : 以在 BSD Unix 上的工作而闻名,而且涉及了 BSD 上的 FFS(Fast File System) Sean Quinlan : 担任了两年的 GFS技术负责人,现在继续担任 Google 的首席工程师 GFS 涉及预估 数 GB大小的文件 包含TB 级别的信息和百万对象的数据集 Q&A 是什么原因...

Google File System及其继任者Colossus

Google File System及其继任者Colossus 在CMU 16Fall学期Storage Systems的课堂上,我有幸听了在Google Infra Team的Larry Greenfield的一个Lecture。其中,Larry对GFS的设计初衷理念、优劣势、瓶颈、改进以及现役系统Colossus (GFS2)进行了简要介绍。其中涉及的内容相当宝贵,故在这里记下。 背...

Spring学习 - 自定义动态数据源

动态数据源 需要实现类继承自org.springframework.jdbc.datasource.lookup.AbstractRoutingDataSource,来实现自定义的数据源路由。 自定义实现动态数据源 //自定义实现方法`determineCurrentLookupKey`来确定当前lookupKey,通过该 key 找到配置的多个数据源中的目标数据源。 public c...

git进阶经验- git提交 log 的模板配置

git commit 规范 Commit message 和 Change log 编写指南 git commit 模板配置 背景 为了 RD 在开发时更方便的使用 git commit 的模板,既可以明晰本次提交的目的,又可以方便便捷的使用模板而无需时刻记着模板的格式规范。 目标 提高 RD 使用模板提交 commit log 的意愿 方案 terminal 方式 comm...

  • 第1页 / 跳第 页 / 共23页
TOP