关闭

理解Spark的运行机制

Spark生态系统目前已经非常成熟了,有很多类型的任务都可以使用spark完成,我们先看下spark生态系统的组成: spark的核心主要由3个模块组成: (1)spark core 是spark的最底层的编程实现,定义了许多的函数及方法,是所有spark组件的基础依赖 (2)spark ecosystems 是spark里面的一些高级组件,基本就是我们最常用的框架 ...
阅读(19) 评论(0)

关于kafka连接的一个小问题

最近有一个项目中用到了java api连接kafka的代码,原来测试的时候:bootstrap.servers这个值一直写的是ip,然后生产和消费数据都没有问题,但在预发测试的时候配合运维的需求,把ip要改成域名来访问,结果就启动就出问题了,启动不起来,抛出的异常如下: DNS resolution failed for url in ....... 我们的kafka的版本是apache ...
阅读(13) 评论(0)

如何管理Spark Streaming消费Kafka的偏移量(二)

上篇文章,讨论了在spark streaming中管理消费kafka的偏移量的方式,本篇就接着聊聊上次说升级失败的案例。 事情发生一个月前,由于当时我们想提高spark streaming程序的并行处理性能,于是需要增加kafka分区个数,,这里需要说下,在新版本spark streaming和kafka的集成中,按照官网的建议 spark streaming的executors的数量要和k...
阅读(32) 评论(0)

如何管理Spark Streaming消费Kafka的偏移量(一)

最近工作有点忙,所以更新文章频率低了点,在这里给大家说声抱歉,前面已经写过在spark streaming中管理offset,但当时只知道怎么用,并不是很了解为何要那样用,最近一段时间又抽空看了一个github开源程序自己管理offset的源码,基本已经理解透彻了,当然这里面还包含了由于理解不透彻导致升级失败的一个案例,这个在下篇文章会分享出来。本篇我们先从理论的角度聊聊在Spark Stream...
阅读(36) 评论(0)

在spring-boot中使用@ConfigurationProperties

@ConfigurationProperties注解的作用是可以根据一个前缀将配置文件的属性映射成一个POJO实体类,只要属性名一致就能自动注入进去,使用起来非常方便,这一点容易与@Configuration注解混淆,@Configuration也可以注解一个配置类,不一样的是它需要为每个属性再次声明绑定的字段,稍微复杂,所以推荐使用@ConfigurationProperties注解。 下...
阅读(56) 评论(0)

如何使log4j生成json格式的log

使用java开发项目时,log日志一般都是应用程序必不可少的一部分,大部分情况下我们的log文件都是普通的文本信息,通过level来标记不同级别的日志。 日志的目的,主要还是为了出现问题时有追踪的途径,方便从里面查出原因,在数据量小的时候通过linux上的各种shell命令如awk,grep就能快速查询或者做一些简单的统计,当数据量的时候,而且程序本身还是分布式的时候,这种方式就有点费劲。比...
阅读(91) 评论(0)

理解elasticsearch的parent-child关系

前面文章介绍了,在es里面的几种数据组织关系,包括array[object],nested,以及今天要说的Parent-Child。 Parent-Child与Nested非常类似,都可以用来处理一对多的关系,如果多对多的关系,那就拆分成一对多在处理。前面提到nested的缺点是对数据的更新需要reindex整个nested结构下的所有数据,所以注定了它的使用场景一定是查询多更新少的场景,如...
阅读(406) 评论(0)

Scala里面如何使用枚举

枚举通常用来定义已知数量的常量,比如月份,星期,季节等等,用过java的人都知道定义枚举的关键字是enum,在scala里面和java有所不同,来看一个完整的例子定义: object EnumTest { /*** * 定义一个星期的枚举 */ object WeekDay extends Enumeration{ type WeekDay = Value /...
阅读(351) 评论(0)

简述ElasticSearch里面复杂关系数据的存储方式

在传统的数据库里面,对数据关系描述无外乎三种,一对一,一对多和多对多的关系,如果有关联关系的数据,通常我们在建表的时候会添加主外键来建立数据联系,然后在查询或者统计时候通过join来还原或者补全数据,最终得到我们需要的结果数据,那么转化到ElasticSearch里面,如何或者怎样来处理这些带有关系的数据。 我们都知道ElasticSearch是一个NoSQL类型的数据库,本身是弱化了对关系...
阅读(916) 评论(0)

使用Java Rest Client操作Elasticsearch

Elasticsearch作为一个成熟的开源框架,对主流的多种客户端语言都支持,比如Java,JavaScript ,PHP,.Net,Python,Ruby,CURL当然还有一些小众的语言,虽然es官网没支持,但是个人开发者也有一些开源的,具体的可在es官网clients地址查看: https://www.elastic.co/guide/en/elasticsearch/client/i...
阅读(2167) 评论(0)

使用Scala的强大api快速加工数据

Scala是一门高级的,非常灵活和强大的函数式编程语言,既支持类型严格,语义明确的面向对象的编程风格,也支持类型多变,写法风骚的函数式编码。 Scala中封装了许多有用强大的api,使我们处理数据更加方便,当然Java8以后也支持了一些函数式编程的写法的语法糖,终于能使雍容的java代码精简不少,有名的开源框架如Spark,Kafka,Filnk也都是使用Scala编写的,感兴趣的朋友可以学...
阅读(185) 评论(0)

在scala中使用spark sql解决特定需求(2)

接着上篇文章,本篇来看下如何在scala中完成使用spark sql将不同日期的数据导入不同的es索引里面。 首下看下用到的依赖包有哪些: elasticsearch-spark-20_2.11 5.3.2 elasticsearch 2.3.4 spark-sql_2.11 2.1.0 spark-hive_2.11 ...
阅读(121) 评论(0)

在scala中使用spark sql解决特定需求

spark sql一个强大之处就是能够嵌在编程语言内执行,比如在java或者scala,Python里面,正是因为这样的特性,使得spark sql开发变得更加有趣。 比如我们想做一个简单的交互式查询,我们可以直接在linux终端直接执行spark sql查询hive来分析,也可以开发一个jar来完成特定的任务。 有些时候单纯的使用sql开发可能功能有限,比如我有下面的一个功能: 一张...
阅读(187) 评论(0)

如何在kylin中构建一个cube

前面的文章介绍了Apache Kylin的安装及数据仓库里面的星型和雪花模型的概念,这篇文章我们来看下,如何构建一个kylin的cube进行查询。这里不得不吐槽一下Kylin的资料,少之又少出现问题网上基本找不到解决方案,所以想要学习kylin,建议大家买一本书系统的学习一下,这里推荐一本入门的书《基于Apache kylin构建大数据分析平台》,介绍的还可以。 下面来看下如何构建一个cub...
阅读(193) 评论(3)

理解数据仓库中星型模型和雪花模型

在数据仓库的建设中,一般都会围绕着星型模型和雪花模型来设计表关系或者结构。下面我们先来理解这两种模型的概念。 (一)星型模型图示如下: 星型模是一种多维的数据关系,它由一个事实表和一组维表组成。每个维表都有一个维作为主键,所有这些维的主键组合成事实表的主键。强调的是对维度进行预处理,将多个维度集合到一个事实表,形成一个宽表。这也是我们在使用hive时,经常会看到一些大宽表的原因...
阅读(801) 评论(0)
152条 共11页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:253768次
    • 积分:3645
    • 等级:
    • 排名:第9990名
    • 原创:148篇
    • 转载:4篇
    • 译文:0篇
    • 评论:44条
    文章分类
    联系方式
    个人QQ:951514291
    大数据群:376932160
    搜索技术群1:454090046
    搜索技术群2:206247899
    公众号:woshigcs
    最新评论