Dojo
话题
新佳
订阅
极道
元认知
元逻辑
元设计
元编程
元语言
Stream数据流处理模式
Java Stream API groupingBy()介绍
groupingBy()是Stream API中最强大的收集器Collector之一,提供与SQL的GROUP BY子句类似的功能。 使用形式如下:
Kafka真正定位并不是消息系统
本文是Kafka创始人的一篇博客,认为Kafka可以用于像数据库那样持久存储,这与人们通常对消息系统的印象不同,其实Kafka真正定位是一个日志系统,消息队列只是其一个应用模式,如同会气功的人玩劈砖一样,腾讯将Kafka改为真正消息系统用于微信也可见Kafka的内功深厚,其在大数据分析领域配合Kaf
如何在Java 8中将List转换为Map?
假设有一个员工对象:publi
实时流处理框架Apache Flink简介
如今流处理越来越流行,例如Apache Kafka, Apache Samza, Apache Storm, Apache Spark的Streaming模块等等,云服务还有类似Google Cloud Dataflow。
什么是数据流?
数据流是一种数据分发技术,数据生成器将数据记录写入有序数据流,数据使用者可以从该数据流以相同的顺序读取数据。这是一个简单的数据流图,说明了数据生成器,数据流和数据使用者:
使用Spring Boot和Kafka Streams实现CQRS
本文是David Romero一篇Spring + Kafka Stream实现CQRS的案例代码: 去年九月,我的同事伊万·古铁雷斯和我谈到我们cowokers如何实现事件与Kafka Stream,我开发了一个Kafka Stream,它读取包
Reactive流介绍
现代系统中的数据是不断变化的,而不是静止的,现代软件越来越多地基于近实时的数据运行。 大数据不如快速数据重要,快速数据对快速knowledge特别重要。流处理是帮助将所有大小的数据尽快转换为knowledge的一种方法。 随着拥抱系统的运动数据,传统的
在Java Stream实现大量数据查询
Spring JdbcTemplate从1.0版开始就一直在使用这个类,并且它的发展很好,但我希望在版本5中它会包含一些流式处理功能,用于查询很大数据结果,可惜没有发生。尽管如此,有时我需要执行返回数百万行的查询,而且我不能使用JdbcTemplate方法来返回列表,RowCallb
比Storm更快的Twitter Heron
Tiwtter公布了其新型大数据实时处理架构Heron,Tiwtter每天数十亿的事件数据,过去主要使用Apache Storm进行分析处理,现在随着数据量增加等不断演进,他们设计了一个新的系统Heron,充分兼容于Storm的API的实时分析平台。 一个
服务与数据之争
SOA是面向服务的架构,大数据是处理大规模数据,这两个门派其实还是有很大区别的。 服务是一种对象化概念,一个服务包含很多函数方法,基于服务的治理从服务注册发现 集成 路由和流程; 数据处理从函数式编程到数据流。
Java 8函数式编程模式:不要使用巨长的Stream流
假设你已经使用了lambdas流,巨长的Stream的代码如下:
在Java中使用函数范式提高代码质量
在一个范式和技术堆栈一直在变化的世界中,保持竞争力和提高生产力和质量的斗争有时候证明是一项挑战。在本文中,我想首先展示一下函数编程(FP)的优势,特别是加强Java编码体验。在尝试将范式转换为函数式编程时,我将尝试迭代我发现最重要的几个原因。请记住,这绝不是一个巨大的创新,我相信FP
Trampolining:java开发人员的实用指南
Trampolining是每个java程序员应该知道的概念,它代表计算的两个状态之一,一个代表计算完成有结果,另外一个指向计算下一步reminder,有点类似java.util.Supplier 所做的。这就为实现递归计算提供了可能,无需使用堆栈Stack,也无需使用线程硬编码实现函数的交替执行。<
用Java实现Stream流处理中的滑窗
简单地说,滑窗算法是一种移动固定大小的窗口(子列表)来遍历数据结构的方法,主要是基于固定步骤的序列流数据。 如果我们想通过使用大小为3的窗口遍历列表[1 2 3 4 5],我们透过窗口只能看到以下数据组:[1 2 3][2 3 4]
Apache HttpAsyncClient的可观察API
这是将Netflix开源Rxjava与Apache的Http异步客户端结合的开源库。 创建一个可观察的请求源:
Java 8函数式编程模式:不要使用空指针null
空指针并不存在,是我们发明了它,我们现在就摆脱它,好吗?下面代码练习很简单:我们需要返回一个格式很好的行,根据他收集的点数为客户打印合适的折扣:
使用Speedment实现并行数据库流
Speedment是开源Stream ORM Java工具包,能够将数据库表转为Java 8流,可以使用它根据现有数据库生成POJO, 支持并行数据库流,支持不同并行策略优化性能。 并行行数据库流通常比顺序流明显快很多,Java 8为我们带来了流Strea
Java 10中Stream API不可变集合
不可变数据结构能够应对高并发,无锁并发,JDK10提供Stream API不可变集合。 默认情况下,大多数Stream API集合代表可变的集合策略 - 但是如果想要将元素收集到不可变数据结构会发生什么? 首先想
上页
下页