摘要:
1. Java锁的种类 在笔者面试过程时,经常会被问到各种各样的锁,如乐观锁、读写锁等等,非常繁多,在此做一个总结。介绍的内容如下: 乐观锁/悲观锁 独享锁/共享锁 互斥锁/读写锁 可重入锁 公平锁/非公平锁 分段锁 偏向锁/轻量级锁/重量级锁 自旋锁 以上是一些锁的名词,这些分类并不是全是指锁的状 阅读全文
摘要:
Redis目前支持5种数据类型,分别是: 1、String(字符串) 2、List(列表) 3、Hash(字典) 4、Set(集合) 5、Sorted Set(有序集合) 下面就分别介绍这五种数据类型及其相应的操作命令。 1.String(字符串) String是简单的key-value键值对,va 阅读全文
摘要:
使用crontab定时执行脚本 cron服务是一个定时执行的服务,可以通过crontab 命令添加或者编辑需要定时执行的任务: crontab –e : 修改 crontab 文件,如果文件不存在会自动创建。 crontab –l : 显示 crontab 文件。 crontab -r : 删除 c 阅读全文
摘要:
redis和memcache的不同点: 1、存储方式 redis和memcache都是将数据存放在内存中,都是内存数据库。 memcache把数据全部存在内存之中,数据不能超过内存大小,断电后会挂掉,挂掉后数据不可恢复。 redis可以定期保存到磁盘(持久化),这样能保证数据的持久性。reids若数 阅读全文
摘要:
1、select语法 SELETC声明可以是union的一部分或者是另一个查询的子查询。 table_reference代表被查询的对象,可以是一个table、view、join结构、或者子查询。 例如:查询表t1的所有列。 SELECT * FROM t1; 1.1 WHERE条件 where条件 阅读全文
摘要:
1.Hadoop计算框架的特点 数据量大不是问题,数据倾斜是个问题。 jobs数比较多的作业效率相对比较低,比如即使有几百万的表,如果多次关联多次汇总,产生十几个jobs,耗时很长。原因是map reduce作业初始化的时间是比较长的。 sum,count,max,min等UDAF,不怕数据倾斜问题 阅读全文
摘要:
reflect函数可以支持在sql中调用java中的自带函数,秒杀一切udf函数。 使用案例1:所有记录执行相同的java内置函数 hive中建一张表test_udf:column1(int),column2(int) 表中数据如下: 1,2 2,3 3,4 4,5 5,6 sql:select r 阅读全文
摘要:
很多程序员不清楚error和exception之间的区别,这区别对于如何正确的处理问题而言非常重要(见附1,“简要的叙述error和exception”)。就像Mary Campione的“The Java Tutorial”中所写的:“exception就是在程序执行中所发生的中断了正常指令流的事 阅读全文
摘要:
一般大家都知道ArrayList和LinkedList的大致区别: 1.ArrayList是实现了基于动态数组的数据结构,LinkedList基于链表的数据结构。 2.对于随机访问get和set,ArrayList觉得优于LinkedList,因为LinkedList要移动指针。 3.对于新增和删除 阅读全文
摘要:
列类型选择原则: 字段类型优先级 长度够用就行 尽量避免使用null 1、字段类型优先级 整型>date,time>enum,char>varchar>blog,text 列的特点分析: 整型:定长,没有国家/地区之分,没有字符集的差异 比如tinyint 1,2,3,4,5 < > char(1) 阅读全文