自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(41)
  • 收藏
  • 关注

原创 DorisDB 流批一体 实时架构

场景: 在做大数据分析,报表项目的时候,一般会有实时和理想分析两种场景,一般情况下,是实时一套代码,离线一套代码,代码开发量比较大,怎么做到实时和离线公用一份代码 兼容实时场景的时效性我们这里以统计 每天每个游戏的登录用户数 为例,登录明细表和最终结果表如下CREATE TABLE `dwd_user_login` ( `login_time` datetime NULL COMMENT "登陆时间", `game_id` bigint(20) NULL COMMENT "游戏..

2021-11-30 20:22:07 4766

原创 游戏报表方案设计

一.三种方案 方案1.spark streaming 做实时数据分析,hive 做数据仓库 ,spark sql 做离线数据分析 方案2. spark streaming 做数据同步,es做数据仓库,spark sql 做离线数据分析方案3:spark streaming 做数据同步,doris 做实时数据分析,spark sql 做离线数据分析二. 方案优缺点对比 方案一 方案二 方案三 时效性 分钟级别 小...

2020-06-22 17:01:23 624

原创 快递行业实时报表方案

一.需求1.需求描述统计每天,每个网点的快递单数(有修改,揽收状态,签收状态,是否退件等)表: waybill字段: 时间 :input_time,网点 network ,订单唯一ID : waybillId2. 需求sql翻译select date(input_time) day,network,count(distinct waybillId)waybillCo...

2019-12-09 12:09:33 846

原创 快递质量监控实时统计方案设计

目录数据流程图和关系数据流程图​数据流程关系 需求描述框架和版本方案一说明问题方案二说明数据同步问题es 查询问题方案三说明es 查询问题方案四(选择方案)说明es 查询问题 数据流程图和关系 数据流程图 数据流程关系 一对一: 收 ,收件入库,派,问题件,留...

2019-11-02 11:37:10 723

原创 clickhouse 性能测试

注意:本测试使用的是官网的数据集,由于官网聚合操作太多过滤,所以写了一些没有过滤的聚合操作,本测试属于极限测试,真实业务中的聚合操作肯定会有很多过滤操作的一.表的创建和数据导入创建表:必须在每个节点创建表,ddl 没有同步 create database test ;use test ;CREATE TABLE ontime( Year UInt16, Quarter ...

2018-09-20 11:26:40 22382 3

原创 clickhouse 部署

一.单机版sudo apt-key adv --keyserver keyserver.ubuntu.com --recv E0C56BD4    # optionalecho "deb http://repo.yandex.ru/clickhouse/deb/stable/ main/" | sudo tee /etc/apt/sources.list.d/clickhouse.list...

2018-09-20 10:39:40 2163

原创 es 分词器

课程大纲1、什么是分词器切分词语,normalization(提升recall召回率)给你一段句子,然后将这段句子拆分成一个一个的单个的单词,同时对每个单词进行normalization(时态转换,单复数转换),分瓷器recall,召回率:搜索的时候,增加能够搜索到的结果的数量character filter:在一段文本进行分词之前,先进行预处理,比如说最常见的就是,过滤html...

2018-08-27 14:35:09 3636

原创 es query string

1、query string基础语法GET /test_index/test_type/_search?q=test_field:testGET /test_index/test_type/_search?q=+test_field:testGET /test_index/test_type/_search?q=-test_field:test2、_all metadata的原理和作...

2018-08-27 14:28:00 2432

原创 es 分页搜索 和 deep paging 问题

1.分页搜索语法GET /_search?size=10GET /_search?size=10&from=0GET /_search?size=10&from=202.deep paging问题

2018-08-27 14:25:05 495

原创 es 搜索多个index和多个type下的数据

/_search:所有索引,所有type下的所有数据都搜索出来/index1/_search:指定一个index,搜索其下所有type的数据/index1,index2/_search:同时搜索两个index下的数据/*1,*2/_search:按照通配符去匹配多个索引/index1/type1/_search:搜索一个index下指定的type的数据/index1/type1,type...

2018-08-27 13:59:34 27333

原创 es 批量操作—bulk

1、bulk语法有哪些类型的操作可以执行呢?(1)delete:删除一个文档,只要1个json串就可以了(2)create:PUT /index/type/id/_create,强制创建(3)index:普通的put操作,可以是创建文档,也可以是全量替换文档(4)update:执行的partial update操作POST /_bulk{ "delete": { "_index...

2018-08-24 18:06:59 4668

原创 es 批量操作—mget

1、批量查询的好处就是一条一条的查询,比如说要查询100条数据,那么就要发送100次网络请求,这个开销还是很大的如果进行批量查询的话,查询100条数据,就只要发送1次网络请求,网络请求的性能开销缩减100倍2、mget的语法(1)一条一条的查询GET /test_index/test_type/1GET /test_index/test_type/2(2)mget批量查询...

2018-08-24 18:03:19 704

原创 es groovy脚本

1.数据准备PUT /test_index/test_type/11{ "num": 0, "tags": []}2.内置脚本实现 partial updatePOST /test_index/test_type/11/_update{ "script" : "ctx._source.num+=1"}3. 外部脚本 实现 partial update...

2018-08-24 17:57:18 1255

原创 es partial update

1、什么是partial update?PUT /index/type/id,创建文档&替换文档,就是一样的语法一般对应到应用程序中,每次的执行流程基本是这样的:(1)应用程序先发起一个get请求,获取到document,展示到前台界面,供用户查看和修改(2)用户在前台界面修改数据,发送到后台(3)后台代码,会将用户修改的数据在内存中进行执行,然后封装好修改后的全量数据(...

2018-08-24 17:22:24 347

原创 es 几个重要的底层原理相关概念

1、Elasticsearch对复杂分布式机制的透明隐藏特性分片机制 shard副本 集群发现机制  shard负载均衡2、Elasticsearch的垂直扩容与水平扩容垂直扩容:采购更强大的服务器,成本非常高昂,而且会有瓶颈,假设世界上最强大的服务器容量就是10T,但是当你的总数据量达到5000T的时候,你要采购多少台最强大的服务器啊 水平扩容:业界经常采用的方案,采购越来越多...

2018-08-24 17:17:54 1116

原创 es 指定返回哪些field

# Query StringGET /ecommerce/product/1?_source=producer,tags# Query DSLGET /ecommerce/product/_search  {  "query": {    "match": {      "tags": "fangzhu"    }  },  "_source":["producer&quot

2018-08-24 15:47:45 4130

原创 es document id 的两种生成方式

1、手动指定document idPUT /test_index/test_type/2{ "test_content": "my test"}2、自动生成document idPOST /test_index/test_type{ "test_content": "my test"} 

2018-08-24 15:26:56 3575

原创 es 常用命令

1.简单的集群管理GET /_cat/health?vGET /_cat/indices?v2.CRUD操作# 增PUT /ecommerce/product/1{ "name" : "gaolujie yagao", "desc" : "gaoxiao meibai", "price" : 30, "producer" :

2018-08-24 14:23:56 3669

原创 hadoop小文件过多引起的负载过高

一.场景描述系统运行一段时间后,总是报负载过高的警告告警等级: Warning告警信息: Processor load is too high on hadoopmaster告警项目: system.cpu.load[all,avg1]问题详情: Processor load (1 min average per core) 4.43

2018-02-07 11:51:40 1892

原创 spark 历史和实时任务日志监控

一.spark on yarn historyserver(运行完毕日志)  1.配置yarn日志参数:yarn-site.xml     yarn.log-aggregation-enable    true        yarn.log.server.url    http://hadoop-senior01.ibeifeng.com:1988

2018-02-01 16:26:47 3061

原创 kafka 的 ClosedChannelException

场景: kafka 版本kafka_2.10-0.8.1.1 ,spark任务刚开始正常运行,一段时间后,报下面的错误,但是数据准确性不影响,只是严重拖慢了实时任务 [Stage 46825:=========================================>             (3 + 1) / 4]17/11/04 23:14:23 WARN

2017-12-13 11:29:52 2489

原创 定时任务的两种方式

定时任务的两种方式方式一:定时任务 并 打印日志 并 在后台运行#1.定时任务30 0 * * *  nohup  sh /home/hduser/projs/gamepublish_performance.sh2.gamepublish_performance.sh 脚本:#!/bin/shcd /tmptoday=$(date --date="0 day

2017-10-10 14:09:42 940

原创 kafka添加 partion导致 spark 实时任务数据减少

场景: kafka原有两个分区,添加一个分区后,一直运行的实时的spark任务  数据减少约3分之一 分析: spark 将kafka 的offsite维护在checkpoint 里面,当spark任务运行的时候,给kafka添加新的分区,原来的checkpoint只维护原来的两个分区的 offsite,新的分区的offsite 无法维护(checkpoint 只在第一次创建的时候,创建新

2017-09-14 11:58:35 515

原创 hive索引数据 mysql数据迁移

需求:新建的集群,需要把原集群的hive迁移到新的集群,hdfs数据已经迁移,下面是迁移mysql索引数据的方法注意:本方法中mysql是yum安装的,hive索引数据的账户:hive,密码:hive 1.1 备份原集群的数据[root@localhost ~]# cd /var/lib/mysql (进入到MySQL库目录,根据自己的MySQL的安装情况调整目录)

2017-08-26 16:06:50 312

原创 Rdd的 foreach 和 foreachPartition

一.代码 package com.xiaopeng.test import java.sql.Connection import com.xiaopeng.bi.utils.{JdbcUtil, SparkUtils}import org.apache.spark.broadcast.Broadcastimport org.apache.spar

2017-08-03 18:59:24 5322

原创 DataFrame和 Rdd

一.DataFrame 和Rdd 相互转换关系1.df 转化为rdd val df: DataFrame = hiveContext.sql("select * from game_sdk")    df.foreachPartition(rdd => {      rdd.foreach(row => {        val a: Row = row;

2017-08-03 17:29:26 764

原创 Spark内存溢出

一.场景:在实时任务 注册和激活相关的任务 GamePublishKpi 中,程序运行一段时间,就会报内存溢出 二.分析方法 ps -ef | grep  GamePublishKpi  找出运行的程序   jmap -heap 27075(进程号)  查看该程序的运行过程中内存的使用情况该命令对应的参数解读: http://blog.csdn.net/yrpting/

2017-08-02 16:43:55 1843

原创 Spark任务卡死

spark阶段parkcore standalone /yarn 模式运行的时候 client 模式正常运行, cluster 模式卡死spark-env.sh 里的配置  SPARK_MASTER_PORT=7077SPARK_MASTER_WEBUI_PORT=8080SPARK_WORKER_CORES=2SPARK_WORKER_MEMORY=1G      #开辟

2017-06-17 14:27:30 7388 1

原创 Spark集成 hadoop,hbase 的 maven冲突

Spark和Hadoop、HBase集成,使用Maven管理依赖的时候需要考虑包的兼容性:报错:java.lang.SecurityException: class "javax.servlet.FilterRegistration"'s signer information does notmatch signer information of other classes in the sa

2017-06-17 14:26:34 1732

原创 windows运行 HiveContext 报错

Caused by: java.lang.NullPointerExceptionat java.lang.ProcessBuilder.start(ProcessBuilder.java:1010)at org.apache.hadoop.util.Shell.runCommand(Shell.java:482)at org.apache.hadoop.util.Shel

2017-06-17 14:25:59 1121

原创 spark程序运行缓慢

spark程序运行缓慢原因一:在map ,reducebykey ,transform 等算子里进行耗时操作耗时操作包括: 读取配置文件,打印,读取数据库的数据 对象   boolean local =ConfigurationManager.getBoolean(Constants.SPARK_LOCAL); 总结:在spark的算子中,只能执行对数据的处理逻辑,其间不要加载

2017-06-17 14:25:26 1897

原创 spark序列化溢出

序列化缓存溢出Causedby:org.apache.spark.SparkException:Kryo序列化失败:缓冲区溢出。可用:0,必需:21.要避免此情况,请增加spark.kryoserializer.buffer.maxCaused by:org.apache.spark.SparkException: Kryo serialization failed: Buffer ove

2017-06-17 14:21:55 4225

原创 hadoop任务卡死

hadoop 运行mapreduce的时候会卡死在 mapreduce.Job:Running job: job_1477030467429_0002  位置不动思路一:分析:mapreduce卡死不动,原可能是  resourcemanager 或者 nodemanager 配置出错检查yarn-site.xml(yarn.resourcemanager.hostname:配置了reso

2017-06-17 14:19:48 8614

原创 hadoop 文件错乱

一个datanode长期挂掉的后,重新运行spark程序报错java.io.IOException:Cannot obtain block length for LocatedBlock解决方法:在Hadoop测试集群运行job的过程中发现部分运行失败,有Cannotobtain block length for LocatedBlock,使用hdfs dfs -cat${文件}的

2017-06-17 14:19:11 338

原创 hive源数据服务启动错误

一.配置hive 源数据服务 1. 在 hive-site 配置文件里将下面的配置文件删除(这个配置时用来集成hue的,删除就不集成了)              hive.metastore.uris  thrift://hadoop-senior01.ibeifeng.com:9083      ThriftURI for the remote metastore. U

2017-06-17 14:18:33 993

原创 hbase问题总结

hbase启动时 : zookeeper 挂掉和 hmaster挂掉的问题A: zookeeper 挂掉ERROR [main] zookeeper.ZooKeeperWatcher:hconnection-0x6e1721d7, quorum=hadoop-senior01.ibeifeng.com:2181,baseZNode=/hbase Received unexpected Ke

2017-06-17 14:17:39 2361

原创 spark遇到的死锁

一.死锁数据库基础知识: http://blog.csdn.net/luyaran/article/details/53502917 死锁: 是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都分配不到必需的资源因而无法继续运行.此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等待的进程称为死锁进程. 错误: Caused

2017-06-07 17:25:39 2479

原创 spark的checkpoint

==========================================================================================================一.checkpoint 原理http://spark.apache.org/docs/1.6.1/streaming-programming-guide.html#transfo

2017-06-07 15:30:01 905

原创 spark性能调优--jvm调优

一.问题切入调用spark 程序的时候,在获取数据库连接的时候总是报  内存溢出 错误(在ideal上运行的时候设置jvm参数 -Xms512m -Xmx1024m -XX:PermSize=512m -XX:MaxPermSize=1024M,不会报错) 二.jvm参数 和 saprk 参数 和内存四区 解读 1.内存四区   1、栈区(stack):由编译器自动分配释放

2017-05-22 20:10:00 912 1

原创 按键事件

控件的按键事件setOnKeyListener(newDialogInterface.OnKeyListener() {@Overridepublic boolean onKey(DialogInterface dialog, int keyCode, KeyEvent event) {if(event.getAction() == KeyEvent.ACTION_UP){if

2016-09-21 20:24:31 478

空空如也

空空如也

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

TA关注的人

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