摘要: JVM内存管理机制和垃圾回收机制 JVM结构 图片描述: 1. java源码编译成class文件 1. class文件通过类加载器加载到内存 1. 其中方法区存放的是运行时的常量、静态变量、类信息等,被所有线程共享 1. 堆空间存放对象,被所有线程共享 1. 栈空间存放的是栈帧,包括局部变量、操作数 阅读全文
posted @ 2018-02-24 11:40 岑忠满 阅读(397) 评论(0) 推荐(0) 编辑
摘要: override重写 为什么要用override关键字?因为这样更清楚,不容易出错,比如打错字了,就没覆盖成功,但是不会报错 override可以覆盖feild和method isInstanceOf和asInstanceOf:多态判断 在多态的转换中,会把子类对象赋值给父类变量,如果遇到需要把本来 阅读全文
posted @ 2017-08-31 16:28 岑忠满 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 类 定义类 创建对象 调用方法 getter和setter方法 定义 不带private的var field Scala生成面向JVM的类时,会定义成private的字段,并提供Public的getter和setter (也就是说,你在用对象调用这个值的时候,底层转换为使用pubic的getter/ 阅读全文
posted @ 2017-08-31 13:26 岑忠满 阅读(233) 评论(0) 推荐(0) 编辑
摘要: "Python中的Dict" 字典是一组键(key)和值(value)的组合,通过键(key)进行查找, 没有顺序 , 使用大括号” {} ” !key不允许重复 !key不可变, value可变 Scala中的Map 无序(有序看第7点),有可变和不可变两种, 1.值不可变的Map(不常用) 2. 阅读全文
posted @ 2017-08-30 17:11 岑忠满 阅读(2352) 评论(0) 推荐(0) 编辑
摘要: "Python中的Tuple" 元组将多样的对象集合到一起, 元素不能修改 ,通过索引进行查找, 使用括号” () ” 允许重复 Scala中的Tuple 概念跟Python是完全相同的 定义 tuple其实Map的元素类型,就是一个存储单元 取值 zip操作(拉链操作) val names = A 阅读全文
posted @ 2017-08-30 17:11 岑忠满 阅读(489) 评论(0) 推荐(0) 编辑
摘要: 在scala中的数组和JAVA中的数组都是定长的,一旦初始化就不可改变(Scala数据底层是直接变成JAVA的数组) Array 定义即初始化,并分配空间 ArrayBuffer(JAVA无):由ArrayList实现? 类似于JAVA中的ArrayList(ArrayList数组实现,每次中间插入 阅读全文
posted @ 2017-08-30 15:32 岑忠满 阅读(212) 评论(0) 推荐(0) 编辑
摘要: 定义普通函数( = )(后面有不需要等号的) 参数类型必须声明,函数返回类型无需声明(只要不存在递归语句,scala会自动推导出返回值类型) 允许定义默认参数,有默认值的可不传,跟Python一个德行,包括参数调用 递归函数 必须声明返回类型,因为不知道你递归到什么时候 过程(不需要返回值的函数) 阅读全文
posted @ 2017-08-30 10:50 岑忠满 阅读(189) 评论(0) 推荐(0) 编辑
摘要: Scala是基于JVM的一门编程语言,使用字节码文件在JVM上运行,可以与JAVA代码无缝调用。 Scala是Spark的编程语言,看源码和编写Spark处理程序会用到。 安装 "使用IntelliJ" "使用SBT(Simple Build Tool)" "使用命令行安装" "使用sublime" 阅读全文
posted @ 2017-08-29 16:52 岑忠满 阅读(375) 评论(0) 推荐(0) 编辑
摘要: "官方直达电梯" Spark一种 基于内存 的 通用 的 实时 大数据计算框架(作为MapReduce的另一个更优秀的可选的方案) 通用:Spark Core 用于离线计算,Spark SQL 用于交互式查询,Spark Streaming 用于实时流式计算,Spark Mlib 用于机器学习,Sp 阅读全文
posted @ 2017-08-29 14:04 岑忠满 阅读(322) 评论(0) 推荐(0) 编辑
摘要: HBase 常见重要配置参数 (1) "Hbase" .rpc.timeout rpc 的超时时间,默认 60s,不建议修改,避免影响正常的业务,在线上环境刚开始配置的是 3 秒,运行半天后发现了大量的 timeout error,原因是有一个 region 出现了如下问题阻塞了写操作:“Block 阅读全文
posted @ 2017-08-25 17:23 岑忠满 阅读(2463) 评论(0) 推荐(1) 编辑
摘要: 场景及方案分析 场景1:logs HBase logs flume hfile import HBase (实时) csv导入HBase 使用hive 作为临时表 "csv导入HBase" tsv导入HBase 直接import 方式1 场景2:RDBMS HBase RDBMS sqoop Hfi 阅读全文
posted @ 2017-08-21 10:21 岑忠满 阅读(469) 评论(0) 推荐(0) 编辑
摘要: Apache Kudu Overview 建议配合[Apache Kudo]审阅本文(http://kudu.apache.org/overview.html) 数据模式 Kudo是一个列式存储的用于快速分析的NoSQL数据库,提供了类似SQL的查询语句,与RDBMS十分类似,有 PRIMARY K 阅读全文
posted @ 2017-08-16 23:36 岑忠满 阅读(1415) 评论(0) 推荐(0) 编辑
摘要: 即HBase作为MapReduce的数据来源,MapReduce 分析,输出数据存储在HBase表中 CLASSPATH "HBase, MapReduce, and the CLASSPATH" By default, MapReduce jobs deployed to a MapReduce 阅读全文
posted @ 2017-08-15 20:52 岑忠满 阅读(1337) 评论(0) 推荐(0) 编辑
摘要: 一.判断异步加载方式(常用的JS库) 1. jQuery(70%) 搜索 jquery 茅塞顿开 2.Google Analytics(50%) 搜索 Google Analytics <! Google Analytics 阅读全文
posted @ 2017-08-14 15:17 岑忠满 阅读(3557) 评论(0) 推荐(0) 编辑
摘要: 获得HTML html = urlopen('http://example.com') 获得 BeautifulSoup对象 (完整的DOM Tree) bsObj = BeautifulSoup(html.read) 过时 bsObj = BeautifulSoup(html,'html.pars 阅读全文
posted @ 2017-08-14 14:09 岑忠满 阅读(185) 评论(0) 推荐(0) 编辑
摘要: "Python 解析XML" URL_to_start http://baike.baidu.com/item/python <! 总爬取数量 默认: 1 无限制 count 10 <! 总爬取时间(分钟) 默认: 1 无限制 run_time 1 <! 线程数 默认:1 Thread_count 阅读全文
posted @ 2017-08-12 14:25 岑忠满 阅读(1156) 评论(0) 推荐(0) 编辑
摘要: "Python多线程" 阅读全文
posted @ 2017-08-12 14:23 岑忠满 阅读(158) 评论(0) 推荐(0) 编辑
摘要: "菜鸟教程" 阅读全文
posted @ 2017-08-11 10:43 岑忠满 阅读(150) 评论(0) 推荐(0) 编辑
摘要: 连接方法 使用 Python DB API(整合了绝大部分的数据库) 使用 pymysql 包 整体思想 数据库连接对象 connection 数据库游标对象 cursor 程序Demo import pymysql.cursors class MySQLUtils(): def executeSQ 阅读全文
posted @ 2017-08-11 10:27 岑忠满 阅读(409) 评论(0) 推荐(0) 编辑
摘要: 整体架构 "主函数" 一、 URL管理器 管理即将爬取的URL和已经爬取的URL "URL管理器" 二、 网页下载器 用于下载网页 "三种urllib实现网页下载,含cookie模拟登陆" 三、 网页解析器 用于解析网页,获得有价值数据或者新的待爬取URL填充URL管理器 "使用bs4的网页解析器" 阅读全文
posted @ 2017-08-11 10:17 岑忠满 阅读(513) 评论(0) 推荐(0) 编辑
摘要: coding=UTF 8 import re import urllib.request, http.cookiejar, urllib.parse print(' 第一种方法 ') URL = 'https://baike.baidu.com/item/%E5%B7%B4%E6%B2%99%E5% 阅读全文
posted @ 2017-08-11 10:13 岑忠满 阅读(340) 评论(0) 推荐(0) 编辑
摘要: 基本操作 登陆指令 mysql u用户名 p密码(可以非明文输入) h主机/IP D端口 prompt 提示符 修改提示符 \D 日期 \d 当前数据库 \h 服务器名 \u 用户名 // 方式一: $ mysql uroot p prompt 提示符 // 方式二: mysql prompt \u 阅读全文
posted @ 2017-08-10 22:10 岑忠满 阅读(485) 评论(0) 推荐(0) 编辑
摘要: 集合,无序,元素只出现一次, 自动去重,使用”set([])” 相当于只有 key 的字典 !无序 !自动去重 定义 使用已有的list创建set L = [1,2,3,4,6,7,8,9,0] s = set(L) s = set([1,2,4,5,6,7,8]) 对于有重复元素的list ,se 阅读全文
posted @ 2017-08-09 11:00 岑忠满 阅读(183) 评论(0) 推荐(0) 编辑
摘要: 典,字典是一组键(key)和值(value)的组合,通过键(key)进行查找, 没有顺序 , 使用大括号”{}” !key不允许重复 !key不可变,list不能作为key 定义 d = {'key':'value','name':'czm','id':1} 获取值 键值索引 d['key'] 使用 阅读全文
posted @ 2017-08-09 10:44 岑忠满 阅读(164) 评论(0) 推荐(0) 编辑
摘要: 元组,元组将多样的对象集合到一起,元素不能修改,通过索引进行查找, 使用括号”()” 允许重复 定义 空元组 t = () 单个元组,需要加逗号结尾,用于区别元组 t = (1,) t = ('你几号',) 多元组 t = (1,23,45,5,6) “可变”元组 其中的list内容依旧可变,因为元 阅读全文
posted @ 2017-08-09 10:18 岑忠满 阅读(177) 评论(0) 推荐(0) 编辑
摘要: 链表,有序的项目, 通过索引进行查找,使用方括号”[]”,元素允许修改 定义 L = ['Adam', 'Lisa', 'Bart'] L = ['asdf',1,True] 索引 L[0] L[ 1] 尾部添加 L.append('asd') 任意位置插入 L.insert(0, 'Paul') 阅读全文
posted @ 2017-08-09 09:57 岑忠满 阅读(166) 评论(0) 推荐(0) 编辑
摘要: "哲学家就餐问题" 问题描述:哲学家就餐问题,需要两个而资源才能完成任务,但都锁死了各自的资源,导致死锁问题产生,谁也无法同时持有两个资源 避免法则:当多个线程共享 A B C 三个资源时,让他们都按照一定的顺序使用资源,这样就不会锁死各自的资源了,在哲学家就餐问题中:资源(餐叉)按照某种规则编号为 阅读全文
posted @ 2017-08-08 17:21 岑忠满 阅读(173) 评论(0) 推荐(0) 编辑
摘要: 使用 Object 类的 wait() 和 notify() 方法 (不适用锁机制) 只有 同步监听对象 才可以调用 wait() 和 notify() 方法,否则报错 线程之间进行通信,且防止耦合度过高,使用一个中间类作为通信的共同资源 需要使用 synchronized 保证一个过程的原子性 使 阅读全文
posted @ 2017-08-08 16:58 岑忠满 阅读(217) 评论(0) 推荐(0) 编辑
摘要: 问题 线程不安全问题 在多个线程使用同一个资源的时候,有可能存在一个资源被一个线程占有,但一系列操作(原子操作:不可再分割的操作)并未执行完成,执行过程中的资源被其他线程拿去用了。 同步 在一个线程执行原子操作时,其他线程不能占有资源 1.同步代码块 同步锁在括号中,是线程共同享有的资源 @Over 阅读全文
posted @ 2017-08-08 11:03 岑忠满 阅读(337) 评论(0) 推荐(0) 编辑
摘要: 单例模式 饿汉模式(饥渴,一开始就实例化对象) package java_study; public class HungerySingletonDemo { //1.私有化构造器 private HungerySingletonDemo() {} //2.实例化对象(饿汉) private sta 阅读全文
posted @ 2017-08-08 10:28 岑忠满 阅读(270) 评论(0) 推荐(0) 编辑
摘要: 概念 并行和并发 并行:物理上的实现,在同一时间点上发生 并发:两个事件在一个时间段内发生,如单片机的单核多线程 进程和线程 进程:一个应用程序可以有多个进程,每一个进程有一个独立的内存空间 线程:一个进程可以并发运行多个线程,多个线程共享一个内存空间 进程调度:获得CPU使用权的线程才能执行,有分 阅读全文
posted @ 2017-08-07 17:02 岑忠满 阅读(492) 评论(0) 推荐(0) 编辑
摘要: 编辑pom.xml org.apache.hbase hbase server 1.2.0 org.apache.hbase hbase client 1.2.0 java文件 package com.cenzhongman.hbase; import java.io.IOException; im 阅读全文
posted @ 2017-08-02 19:34 岑忠满 阅读(466) 评论(0) 推荐(0) 编辑
摘要: 整体框架 使用 ZooKeeper 框架协助 RegionServer(类似于HDFS的nodemanager)用户请求从 Client 到 Zookeeper 进行判断数据属于哪一个 Region 辅助 HBase 进行数据存储/检索 主节点 Master (类似HDFS的ResourceMana 阅读全文
posted @ 2017-08-02 01:27 岑忠满 阅读(686) 评论(0) 推荐(0) 编辑
摘要: "参考官方文档" 整体实现框架 图1 以下几个为组成部件 21892 HMaster 22028 HRegionServer 21553 QuorumPeerMain 2366 NameNode 2539 DataNode 配置 1.配置 hbase env.sh JAVA_HOME export 阅读全文
posted @ 2017-08-01 23:52 岑忠满 阅读(389) 评论(0) 推荐(0) 编辑
摘要: Apache HBase™ is the Hadoop database, a distributed, scalable, big data store. HBase 是 Hadoop database 一个分布式(文件在HDFS上)的可拓展(分区域存储的)的大数据仓库。用于存储和检索海量数据 U 阅读全文
posted @ 2017-07-31 16:15 岑忠满 阅读(420) 评论(0) 推荐(0) 编辑
摘要: 1.在 MySQL 中增加数据库 hue 2.编辑 hue.ini 文件 [[database]] Database engine is typically one of: postgresql_psycopg2, mysql, sqlite3 or oracle. Note that for sq 阅读全文
posted @ 2017-07-31 11:41 岑忠满 阅读(508) 评论(0) 推荐(0) 编辑
摘要: Hue 是一个 Web 接口的 Hadoop 分析数据工具,由 Cloudra 公司开源 "官方网址" "Github 地址 安装方法" "文档地址" 一.Build 1.ubuntu安装所需环境(以Github为准) JDK maven 其他环境 $ sudo apt get install gi 阅读全文
posted @ 2017-07-31 02:58 岑忠满 阅读(6578) 评论(0) 推荐(0) 编辑
摘要: 使用 Coordinator job 可以执行定时任务和时间触发执行 需要注意的是 Oozie 默认使用的时区与中国时区不是一致的,需要进行一点修改 "1.关于时区" a.修改 core site.xml 文件(运行需要)需要清除编译文件,重启 tomcat 服务(不能是UTC+0800) "Ooz 阅读全文
posted @ 2017-07-30 15:12 岑忠满 阅读(7676) 评论(0) 推荐(0) 编辑
摘要: 关于时区 UTC( Universal Time Coordinated )世界标准时间:与GMT相同 GMT( Greenwich MeanTime ) 0 时区,即格林尼治时间 CST( China Standard time )中国标准时间 GMT+0800 一.查看时区 $ date 201 阅读全文
posted @ 2017-07-30 14:01 岑忠满 阅读(415) 评论(0) 推荐(0) 编辑
摘要: 文件/RDBMS flume/sqoop HDFS Hive HDFS Sqoop RDBMS 其中,本文实现了 使用 sqoop 从 RDBMS 中读取数据(非Oozie实现,具体错误将在本文最后说明) 从 Hive 处理数据存储到 HDFS 使用 sqoop 将 HDFS 存储到 RDBMS 中 阅读全文
posted @ 2017-07-30 09:54 岑忠满 阅读(2059) 评论(0) 推荐(0) 编辑