- 博客(51)
- 资源 (4)
- 收藏
- 关注

原创 hadoop HA Federation yarn 架构 数据的采集
做大数据几个月以来,了解到一些基础知识,自己总结一下大数据不同框架在开发中扮演得角色: 从整体来看:大数据一个关于数据得故事,从数据收集、提取、清洗、筛选、存储(关系型数据库,文件)、数据得可视化这是整个流程,在每一个阶段都有相应得框架,组件帮助我们处理。 学习大数据不得不了解hadoop家族,spark家族 hadoop的核心是HDFS文件系统,MapReduce ......
2018-06-25 11:31:50
454
原创 乡下人的悲歌-感悟
加大对后一代的教育投入,拓展他们的视野,需要时间、耐心和持续的努力。家长在教育孩子时,应当培养他们面对困难时不轻易放弃的精神,通过设定小目标和庆祝每一次进步来维持前进的动力。这样的教育方法不仅有助于孩子的个人成长,也能为他们未来的成功打下坚实的基础。
2024-07-26 16:58:00
948
原创 系统工程师如何做需求分析
系统工程师,需要有产品的全貌,能了解内部,外部的交互,需求不仅仅是产品的事,作为系统工程师也需要做需求分析。那么,为什么要做需求分析?如何做好需求分析?
2024-07-26 11:30:24
423
原创 资深开发推荐的IDEA 插件
工欲善其事,必先利其器。想要提升编程开发效率,必须选择一款顺手的开发工具,插件不在多,而在精,作为从业10年的程序员,我目前用到这十几个插件,在平时开发,代码review,线上问题排查救火,基本上都绰绰有余。主要有一下插件:easyApi、smart Input、mybatisCodeHelperPro、arhtas idea plugin、Grep Console、lombok、SequenceDiagram、SonarLint、PlantUML integration 、Key Promoter X。
2024-05-30 17:52:57
992
3
原创 kafka 常见命令 和使用场景
1 使用监控,监听,如果出现失败情况会存在异常字段数据Open-Falcon-- 运维监控系统class CustomMetrics implements PublicMetrics { private ApplicationContext applicationContext; public CustomMetrics(ApplicationContext ap......
2019-09-09 14:25:29
411
原创 Hbase 基本原理 项目实战应用 001
Hbase的前世(仿照)--》BigTable(是一个分布式存储系统 BigTable起初用于解决典型的互联网搜索问题) google 开发bigTable的目的:•建立互联网索引 1 爬虫持续不断地抓取新页面,这些页面每页一行地存储到BigTable里 2 MapReduce计算作业运行在整张表上,生成索引,为网络搜索应用做准备 3 (查询)用户发起网络...
2019-08-23 13:57:47
823
原创 scala 集合数组处理
在使用spark的时候,选择scala会让代码感觉行云流水,小结一下scala中的集合,数组处理的方法1 元组数据获取val pair = Array(("hadoop"->90),("flume"->100))2 list 元素添加3 函数式处理 map ,groupby4 处理list.flatMap(_.split(" ")).map((...
2019-01-10 10:02:58
785
原创 工作问题
1 出现bug时,查看调用的接口名称, 接口参数 生成的sql 报错信息 在代码的第几行,浮现错误日志要求开发人员,对自己开发的模块,业务逻辑相当熟练,遇到问题,快速定位,理解取数逻辑2 任务没有追踪到底, 多人协同的时候,缺少一个人总体负责,当问题卡在一个地方的时候,往往停滞不前,每一个任务要实现闭环,正反馈,项目组长 列好项目验收标准,安排测试同学测...
2018-11-11 23:21:51
142
原创 api对外开放接口
一: 对外开放接口如何保正: 请求鉴别用户身份? 请求参数被篡改?请求的唯一性(不可复制)2 为了防止别人重复使用请求参数问题,我们需要保证请求的唯一性,就是对应请求只能使用一次,这样就算别人拿走了请求的完整链接也是无效的。唯一性的实现:在如上的请求参数中,我们加入时间戳 :timestamp(yyyyMMddHHmmss),同样,时间戳作为请求参数之一,也加入sign算法中进行...
2018-10-31 13:46:14
6745
1
原创 多线程易错点
1 多线程中: 加锁的位置(层级不对) 代码片段--方法---对象-----类--2 避免一个同步块的东西去读取另一个同步块,会造成死锁 synchronized(){ xxxxx } 3 同步代码块synchronized代码块不使用String常量作为锁对象,而采用其他,因为string常量池问题4 同一个线程不能启动两次 5 多线程中,...
2018-10-31 11:16:01
231
原创 java线程池
常见的创建线程池方式有以下几种: Executors.newCachedThreadPool():无限线程池。 Executors.newFixedThreadPool(nThreads):创建固定大小的线程池。 Executors.newSingleThreadExecutor():创建单个线程的线程池。 其实看这三种方式创建的源码就会发现: publi...
2018-10-17 15:36:45
171
原创 java中对象区域
cpu内存: java多线程,内存模型通过多线程机制使得多个任务同时执行处理,所有的线程共享JVM内存区域main memory,而每个线程又单独的有自己的工作内存,当线程与内存区域进行交互时,数据从主存拷贝到工作内存,进而交由线程处理(操作码+操作数) 1 使用句柄访问方式,Java 堆中将会划分出一块内存来作为句柄池,reference中存储的就是对象的句柄地...
2018-10-17 11:12:06
327
原创 公平锁与非公平锁
在Java并发编程中,公平锁与非公平锁是很常见的概念,ReentrantLock、ReadWriteLock默认都是非公平模式,非公平锁的效率为何高于公平锁呢?究竟公平与非公平有何区别呢?首先先简单从名字上来理解,公平锁就是保障了多线程下各线程获取锁的顺序,先到的线程优先获取锁,而非公平锁则无法提供这个保障。看到网上很多说法说非公平锁获取锁时各线程的的概率是随机的,这也是一种很不确切的说法。非...
2018-10-17 09:18:38
7073
1
原创 jvm了解(一) OOP-Klass模型与锁优化
1 【理解HotSpot虚拟机】对象在jvm中的表示:OOP-Klass模型个人理解:jvm会创建一个 c++语言里的对象,然后引用一个OOP对象包含以下几个部分:instanceOopDesc,也叫对象头 Mark Word,主要存储对象运行时记录信息,如hashcode, GC分代年龄,锁状态标志,线程ID,时间戳等 元数据指针,即指向方法区的instanceKlass实...
2018-10-16 17:14:36
420
原创 多线程基本方法
多线程的有点在这里就不多说了,直接开干 要学会使用多线程,我们首先要了解关于线程的几个常用的方法。 sleep 让线程让出cpu,但是不会让出锁对象 yield() 让线程让出cpu,当前线程与其他线程重新竞争一次cpu使用权 await 让出cpu,让出锁对象 join 让子线程执行完,回到主线程(保证主线程不能先于子线程over) notify...
2018-10-11 16:01:02
169
原创 maven打包excle文件异常的排错问题
1 问题描述,项目使用esaypoi ,使用模板导出项目数据,在新项目中添加导出功能时,调试出现bug,根据项目报错提示,找到报错代码。 开始以为是模板与数据格式对不上,字段名称,类型是否是数字 后面以为是没有找到模板 最后才找到原来是编译后的项目模板出了问题2 排错逻辑不合理 1 第一步应该是看有没有引入相应的jar 2 第二部应该看项目中是否找...
2018-10-09 14:22:22
1158
原创 mysql 一条sql的执行顺序
1 Ctrl+H,显示类结构图(类的继承层次),ctrl+shift+alt+u 单独显示结构图,继承关系2 ctrl+z 撤销 ctrl+shift+z回退3 ctrl+alt+s 设置4field 静态,final 常量;5 查看接口实现 选中接口名称 ctrl+alt+b 或者ctrl+h6 项目中全文查找7 函数缩写 :psvm --- ...
2018-10-08 10:49:42
169
原创 mysql存储过程 项目使用场景
1批量操作 <insert id="batchInsert" parameterType="java.util.ArrayList"> insert into gis2_msg_info_ext(msg_id, tag_name, tag_value) values <foreach item="sms" collection="list" ...
2018-09-30 11:51:10
498
原创 javaweb项目启动不起来
1 看项目报错 a 缺少jar包,maven仓库不正确 b jdk版本,位数 c 编译版本 d 查看spring配置文件二 查看tomcat 1 移除重新配置三 查看是否满足web项目结构需求......
2018-09-30 11:37:20
10170
原创 linux,shell逻辑运算
shell编程我们要遵循其格式,遇到问题要反思,有的时候是空格,$,括号,参数下标,等问题,熟悉之后很多问题都可以很快解决,把更多的精力放在逻辑梳理上面source ./test1.shfunction func2(){ first_name=$1 middle_name=$2 family_name=$3 echo $first_name echo $middl...
2018-08-29 11:16:12
493
原创 数据库索引
索引能够快速帮助我们查询,1 CREATE INDEX idx_user_usadfname ON base_element (name,id); --创建组合索引[SQL]CREATE INDEX idx_user_username ON base_element (name,id);[Err] 1061 - Duplicate key name 'idx_user_username'...
2018-08-24 15:25:08
212
原创 有趣的将业务和知识点串联起来
1 故事法:将知识点的应用场景组合成一个故事唐僧创建取景组: 把孙悟空,猪八戒加入 孙悟空离职 莎生加入莎生修改名字公司创业成功--上市后改名字 2 类似点对比法:将相互类似的知识点归类总结3 知识点易错点对比发 ...
2018-08-21 22:02:10
980
原创 linux常用命令
·mount挂载命令: 开机自动挂载要编辑 文件挂载的配置文件:/etc/fstab挂载光盘 mount /dev/sr0 /mnt/cdrom mount -a fdisk -l 检查硬盘名称取消挂载: umount 2 登陆日志last ,lastlog,who,w特殊字符输出:ech...
2018-08-19 17:10:59
196
原创 shell编程
shell编程#!/bin/bashyour_name="ccc" //变量声明readonly your_name//只读变量unset your_name // 失效echo $your_name //变量输出for cc in cdcd gg jj kk aa ; do // 执行循环 do - done 循环体 e...
2018-08-16 14:35:18
118
原创 mybatis 常见sql问题
1 常见传入参数strTime 格式问题 2018-08-09 而数据库要求的是20180809 数据库中数据类型有可能是int2 DefraudingEffect et = new DefraudingEffect(); displayList.add(et); list中只存的是对对象的引用, displayList.add(et);...
2018-08-15 10:01:32
388
原创 tomcat 源码分析
1 tomcat作为常见的服务器软件,我一直在思考她是如何实现的,我在本地启动服务,使用断点调试,用多个不同浏览器模拟多个客户端请求,---每一个客户端的请求(处理--返回)都是相对独立的,没有因为一个客户端断点调试而影响整个系统(其他请求)2 了解期大致的功能,我们需要了解期整体的结构可以看到其核心的组成是service ,...
2018-08-14 09:40:47
201
原创 websocket实现监听数据库表数据
1 大概思路: 需要定义一个触发器(当表中的数据变化的时候触发器去触发程序,程序---去调用,或者直接向websocket传入值,------->websocket程序------返回给前端)2 不监听数据库,而是监听程序,凡是对该表做更新,插入操作,都将新增的数据返回给websocket...
2018-08-09 11:18:07
11137
4
原创 大数据常用概念
1过抽取(extract)、交互转换(transform)、加载(load) ETL工具Hive 可以看成是从SQL到Map-Reduce的 映射器 这个过程的元数据用mysql存储 一定要记得加入 MySQL 驱动包(mysql-connector-java-5.1.40-bin.jar)该 jar 包放置在 hive 的根路径下的 lib 目录...
2018-08-03 15:40:03
287
原创 linux网路命令
1 nc -zv 192.168.56.2 1-100 |& grep 'succeeded!' 扫描该服务器1-100端口有那些是开放的2 telnet localhost 223 route route命令用于查看和修改路由表:
2018-07-30 17:53:10
143
原创 /etc/profile与 /.bashrc,gedit ~/.bashrc
/etc/profile: 此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.并从/etc/profile.d目录的配置文件中搜集shell的设置./etc/bashrc: 为每一个运行bashshell的用户执行此文件.当bashshell被打开时,该文件被读取.~/.bash_profile: 每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登...
2018-07-30 16:38:31
5988
原创 多线程中wait与sleep的区别
1 sleep 可以让线程休眠,但是不会释放锁资源,休眠时间结束以后继续执行2 wait()让当前线程释放cpu执行权限,并释放锁资源
2018-07-17 17:48:01
1007
1
原创 sparkStream常用
sparkStream其实是一个微批处理1 用spark-submit方式提交 先阻塞一个 :nc -lk 9999(绑定端口等待连接: nc -l -p port [-options] [hostname] [port]) /spark-submit --master local[2] --class org.apache.spark.example...
2018-07-15 19:17:18
386
原创 mybatis批量插入数据
1 在没有序列的情况下 <insert id="editDnaTaskCondition" parameterType="java.util.List"> insert into dna_subitem_feature (id, subitem_id, calc_type, column_num, result, create_t...
2018-07-13 16:19:19
189
原创 hive 原理 用法,编码,UDF 001
数据仓库(Data Warehouse)是一个面向主题的(Subject Oriented)、集成 的(Integrated)、相对稳定的(Non-Volatile)、反映历史变化(Time Variant )的数据集合,用于支持管理决策。传统的数据库 很难海量数据存储,处理不同类型的数据,计算和处理能力不足2 hive工作原理 hive是基于Hadoop的一个数据仓...
2018-07-12 09:05:02
520
原创 为什么有了for还要有while
因为while和for是两个不同的意思,如果为了代码便于交流易懂,现在单单调用个函数但是换个名字还是提倡的。for只是一个初端。(其实不都是loop么,不都是goto么,不都是mov么,这样想太多东西不需要存在了)其实for和while各自有各自的特点...
2018-07-03 14:17:52
496
原创 Scala基础知识
要深入学习大数据,spark,kafka是必须精通的,然而spark,kafka的源码都是用Scala写的,因此作为一个大数据工程师,Scala是必须精通,而且Scala语言有面向对象和函数式编程两大特点,相信熟悉之后一定会喜欢上它1 伴生对象 其中伴生对象中的变量是静态变量,方法是静态方法eg:第一步 :新建Person类class Person { private val id ...
2018-06-30 15:01:40
163
原创 scala 编程注意点
1 //使用关键词 "var" 声明变量,使用关键词 "val" 声明常量 2 / 除号 B / A 运算结果为 2 % 取余 B % A 运算结果为 0 3 Range i to j ,或者 i until j for( x <- Range ){ statement(s); }4 函数与方法 函数:可以作为参数...
2018-06-25 15:39:12
324
原创 linux常见命令
复制文件cp -a a.txt b.txt 表示复制一个其他属性完全一样的文件相对路径:相对于当前文件绝对路径是相对 /根目录而言rm -rf a.txt 强制删除 mkdir -p ./a/b 递归创建文件目录mv a.txt b.txt 将a.txt 重新命名mv a.txt ./c/a.txt 将a.txt 移动到...
2018-06-25 15:33:42
162
spark与sparkStreaming经典视频教程
2019-01-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人