<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[刘寒的技术blog]]></title><description><![CDATA[&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;技术]]></description><link>https://blog.youkuaiyun.com/superhanliu</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; superhanliu]]></copyright><item><title><![CDATA[CDH6.3.2中安装kylin4]]></title><link>https://blog.youkuaiyun.com/superhanliu/article/details/123925119</link><guid>https://blog.youkuaiyun.com/superhanliu/article/details/123925119</guid><author>superhanliu</author><pubDate>Sat, 02 Apr 2022 17:20:25 +0800</pubDate><description><![CDATA[1、从kylin官网下载kylin4

因为看到版本4使用spark构建crub存与parquet中，更快更省更先进，且官网写支持cdh6

实际中kylin4要想跑起来还是很不顺利的

过程中还试验了kylin3，效果更差，启动都不行



2、选择1个kerberos认证过的用户，需要有hdfs权限？登录主机

配置kylin的整个目录的own和group都是这个用户（chgown）

配置kylin.propertes，修改其中mysql数据库的配置(前提是要安装好mysql，分配好库和用户权限等)
]]></description><category></category></item><item><title><![CDATA[spark比mapreduce快的原因]]></title><link>https://blog.youkuaiyun.com/superhanliu/article/details/122240976</link><guid>https://blog.youkuaiyun.com/superhanliu/article/details/122240976</guid><author>superhanliu</author><pubDate>Thu, 30 Dec 2021 16:54:41 +0800</pubDate><description><![CDATA[1、spark基于有向无环图DAG生成执行计划，他属于1个改进版的MapReduce，降低了很多不必要的shuffle次数，减少了节点之间的数据交换和磁盘IO，中间无需落盘。针对反复使用的数据可以进行内存cache提高加载使用效率

2、spark基于内存，窄依赖任务的数据都在内存中进行交换

3、spark任务启动时会把需要的内存一次性申请到位才真正运行，而mr是更细的粒度，每个子任务真正运行时才申请内存如果申请不到会等待，也会造成延时
...]]></description><category></category></item><item><title><![CDATA[大数据学习之——hive小文件合并]]></title><link>https://blog.youkuaiyun.com/superhanliu/article/details/122240831</link><guid>https://blog.youkuaiyun.com/superhanliu/article/details/122240831</guid><author>superhanliu</author><pubDate>Thu, 30 Dec 2021 16:51:08 +0800</pubDate><description><![CDATA[学习原文：

Hive优化之小文件合并_不积跬步无以至千里-优快云博客_hive合并小文件



解决方案:

1. 在Map输入的时候, 把小文件合并.

-- 每个Map最大输入大小，决定合并后的文件数

set mapred.max.split.size=256000000;

-- 一个节点上split的至少的大小 ，决定了多个data node上的文件是否需要合并

set mapred.min.split.size.per.node=100000000;

-- 一个交换机下split的至少的]]></description><category></category></item><item><title><![CDATA[大数据学习之——OLAP 核心知识]]></title><link>https://blog.youkuaiyun.com/superhanliu/article/details/122240383</link><guid>https://blog.youkuaiyun.com/superhanliu/article/details/122240383</guid><author>superhanliu</author><pubDate>Thu, 30 Dec 2021 16:38:40 +0800</pubDate><description><![CDATA[学习原文：每个大数据工程师都应该知道的OLAP 核心知识点_Storage



谈存储

行存

传统ods中的B+树聚簇索引，page中包含排序好的行，因此一次查询多个以及更新

列存

读取需要的列、跳过无用数据、避免IO放大、存储紧凑、压缩友好

简单类型：使用bitmap编码、字典编码等，付出一些cpu节省很多IO

复杂类型：parquet算法(定义级别DL+重复级别RL)

数值类型：bitshuffle转换

现代OLAP

多采用行列混存方案，采用DataBlock+Header/Foot]]></description><category></category></item><item><title><![CDATA[大数据学习之——实时数仓演进]]></title><link>https://blog.youkuaiyun.com/superhanliu/article/details/122239963</link><guid>https://blog.youkuaiyun.com/superhanliu/article/details/122239963</guid><author>superhanliu</author><pubDate>Thu, 30 Dec 2021 16:32:46 +0800</pubDate><description><![CDATA[学习的原文：Flink + TiDB，体验实时数仓之美



实时数仓演进图：











storm架构：







spout负责数据传递，输出tuples元组，Bolt负责数据转换

storm的不足：无法支持时间窗口

lambda架构：







batch layer:全量离线数据，输出batch view

real time layer/speed layer: 实时增量数据,输出 realtime view

serving layer：将batch view和re...]]></description><category></category></item><item><title><![CDATA[java单例模式-懒汉模式演进总结]]></title><link>https://blog.youkuaiyun.com/superhanliu/article/details/106014756</link><guid>https://blog.youkuaiyun.com/superhanliu/article/details/106014756</guid><author>superhanliu</author><pubDate>Sat, 09 May 2020 11:13:21 +0800</pubDate><description><![CDATA[本文是2018年写的，总结了市面上java单例模式之懒汉模式的所有写法。实际多线程场景中，前面的一些实现是存在问题的。


public class SingleTon1 {
   private static SingleTon1 instance;
   public static SingleTon1 getInstance() {
        if (instance == null) {
            instance = new SingleTon1();
        }
 .]]></description><category></category></item><item><title><![CDATA[postgresql数据库主从备份过程]]></title><link>https://blog.youkuaiyun.com/superhanliu/article/details/106014442</link><guid>https://blog.youkuaiyun.com/superhanliu/article/details/106014442</guid><author>superhanliu</author><pubDate>Sat, 09 May 2020 10:57:54 +0800</pubDate><description><![CDATA[天网线上pg数据库主从配置实践



一、前期准备



1.1主库准备：

1.1.1 结构备份

生成结构脚本，通过navicat客户端进行

1.1.2 重要表数据备份

重要表数据导出sql文件，通过navicat客户端进行



1.2 从库准备：

1.2.1 准备1个干净的pg库

版本和主库保持一致

或者把已有库删除重建。

因之前已安装有pg，此次进行重新安装，步骤如下：





#删除旧库

yum erase postgresql-server

# 删除旧库的数据文件

...]]></description><category></category></item><item><title><![CDATA[图片头部识别标志]]></title><link>https://blog.youkuaiyun.com/superhanliu/article/details/100007341</link><guid>https://blog.youkuaiyun.com/superhanliu/article/details/100007341</guid><author>superhanliu</author><pubDate>Thu, 22 Aug 2019 09:08:20 +0800</pubDate><description><![CDATA[/**

* 图片头部识别标志

*/

image_jpg(ImageTypeEnum.jpg, "ffd8"),

image_bmp(ImageTypeEnum.bmp, "424d"),

image_tiff1(ImageTypeEnum.tiff, "4d4d"),//

image_tiff2(ImageTypeEnum.tiff, "4949"),//

image_png(Ima...]]></description><category></category></item><item><title><![CDATA[hbase自定义比较器的开发]]></title><link>https://blog.youkuaiyun.com/superhanliu/article/details/82876553</link><guid>https://blog.youkuaiyun.com/superhanliu/article/details/82876553</guid><author>superhanliu</author><pubDate>Fri, 28 Sep 2018 09:51:32 +0800</pubDate><description><![CDATA[hbase查询时内置功能较弱，如果需要自定义查询，则需要开发自定义的比较器。

hbase自定义查询原理是将我们自定义的java比较器通过rpc方式传给hbase服务器来执行，所以涉及到比较器代码的序列化反序列化过程。hbase使用的是google的protocal buf这个工具。

步骤如下：

1 下载protocolbuffers windows版

https://github.com/...]]></description><category></category></item><item><title><![CDATA[linux上安装postgresql数据库的步骤]]></title><link>https://blog.youkuaiyun.com/superhanliu/article/details/82876532</link><guid>https://blog.youkuaiyun.com/superhanliu/article/details/82876532</guid><author>superhanliu</author><pubDate>Fri, 28 Sep 2018 09:40:51 +0800</pubDate><description><![CDATA[本文章参考了：https://blog.youkuaiyun.com/zhangzeyuaaa/article/details/77941039\

 

如果要安装v10，则如下：

1 执行 yum install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-2.noarch....]]></description><category></category></item><item><title><![CDATA[hbase在linux系统上伪分布式安装配置]]></title><link>https://blog.youkuaiyun.com/superhanliu/article/details/82876505</link><guid>https://blog.youkuaiyun.com/superhanliu/article/details/82876505</guid><author>superhanliu</author><pubDate>Fri, 28 Sep 2018 09:39:22 +0800</pubDate><description><![CDATA[1 修改hbase-site.xml文件：

&amp;lt;property&amp;gt; &amp;lt;name&amp;gt;hbase.cluster.distributed&amp;lt;/name&amp;gt; &amp;lt;value&amp;gt;true&amp;lt;/value&amp;gt; &amp;lt;/property&amp;gt;

&amp;lt;property&amp;gt; &amp;lt;name&amp;gt;hbase.rootdir&amp;lt;]]></description><category></category></item><item><title><![CDATA[hbase数据库使用]]></title><link>https://blog.youkuaiyun.com/superhanliu/article/details/82876472</link><guid>https://blog.youkuaiyun.com/superhanliu/article/details/82876472</guid><author>superhanliu</author><pubDate>Fri, 28 Sep 2018 09:37:53 +0800</pubDate><description><![CDATA[命令行输入 hbase shell 进入hbase

创建表:

create 'test', 'cf' --表示创建表test，字段族(column familly)cf

插入数据：

put 'test', 'row1', 'cf:a', 'value1'

put 'test', 'row2', 'cf:b', 'value2'

put 'test', 'row1', 'cf:b','a...]]></description><category></category></item><item><title><![CDATA[windows安装hbase步骤]]></title><link>https://blog.youkuaiyun.com/superhanliu/article/details/82876451</link><guid>https://blog.youkuaiyun.com/superhanliu/article/details/82876451</guid><author>superhanliu</author><pubDate>Fri, 28 Sep 2018 09:36:37 +0800</pubDate><description><![CDATA[1 下载hbase，需要注意对应的hadopp的版本，参照 http://hbase.apache.org/book.html#configuration查看适配性。如本初安装最高版本hbase-2.1.0，对应hadoop版本为2.7.7。

2 解压hbase到本地硬盘，如E:\hbase-2.1.0

3 修改配置文件

E:\hbase-2.1.0\conf下

hbase-env.cmd...]]></description><category></category></item><item><title><![CDATA[ android第一天(小有成就,散分)]]></title><link>https://blog.youkuaiyun.com/superhanliu/article/details/83741783</link><guid>https://blog.youkuaiyun.com/superhanliu/article/details/83741783</guid><author>superhanliu</author><pubDate>Wed, 03 Nov 2010 16:18:51 +0800</pubDate><description><![CDATA[好帖子，转到这里记录下来。原文地址：
http://topic.youkuaiyun.com/u/20101021/16/B605909C-56F8-41A0-B209-269FEDD51841.html
作者：ptzxzc
 
 
1.将sdk复制到android-sdk-windows\platforms下.如果有网络的话就android-sdk-windows可以自动下,如果已经手动单独把sd...]]></description><category></category></item><item><title><![CDATA[近况]]></title><link>https://blog.youkuaiyun.com/superhanliu/article/details/5788163</link><guid>https://blog.youkuaiyun.com/superhanliu/article/details/5788163</guid><author>superhanliu</author><pubDate>Wed, 04 Aug 2010 15:19:00 +0800</pubDate><description><![CDATA[<br />我已经有差不多3年没更新csdn的博客了，原因是越来越懒了。<br />加之现在是个网站就有博客，是个网站都得注册，我有限的几篇文章也是这里放一点那里放一点，没有固定的根据地。<br /> <br />最近n多朋友加我qq咨询我webservice的事情，让我很为难，只因我2007年初写了一篇很简单很初级的axis和axis2的使用的比较文章。其实自从那以后，我再也没真正的接触过webservice。<br /> <br />虽然我后来参与IBM WebShpere Process Server]]></description><category></category></item><item><title><![CDATA[android 图片浏览 处理]]></title><link>https://blog.youkuaiyun.com/superhanliu/article/details/83523646</link><guid>https://blog.youkuaiyun.com/superhanliu/article/details/83523646</guid><author>superhanliu</author><pubDate>Thu, 31 Dec 2009 09:22:03 +0800</pubDate><description><![CDATA[1 图片太大，内存不足heap space 之类的问题：
   BitmapFactory.Options options=new BitmapFactory.Options();
   options.inSampleSize = 2;//数字越大读出的图片占用的heap越小
   BitmapFactory.decodeFile(pathName,options); 
 
2 图片放...]]></description><category></category></item><item><title><![CDATA[adb push时提示 read only的问题]]></title><link>https://blog.youkuaiyun.com/superhanliu/article/details/83521317</link><guid>https://blog.youkuaiyun.com/superhanliu/article/details/83521317</guid><author>superhanliu</author><pubDate>Thu, 24 Dec 2009 16:37:58 +0800</pubDate><description><![CDATA[

使用adb push命令将硬盘上的文件复制到虚拟设备上时，执行命令如下：
 
C:\Documents and Settings\Administrator&amp;gt;adb push G:\self\android\video\caiyan_tw
o_people.mp4 sdcard\caiyan.mp4
结果提示说：只读的文件系统
failed to copy 'G:\self...]]></description><category></category></item><item><title><![CDATA[android 显示网络图片]]></title><link>https://blog.youkuaiyun.com/superhanliu/article/details/83521227</link><guid>https://blog.youkuaiyun.com/superhanliu/article/details/83521227</guid><author>superhanliu</author><pubDate>Thu, 24 Dec 2009 14:33:54 +0800</pubDate><description><![CDATA[http://hi.baidu.com/programmar/blog/item/79483ecb2ac75cf552664fd3.html
 


在Android中显示一张网络图片其实是超级简单的，下面就一个非常简单的例子：
 
Step1：
1、创建你的Activity，本例中以ViewWebImageActivity说明；
2、ViewWebImageActivity中的代码...]]></description><category></category></item><item><title><![CDATA[android tabhost 图标]]></title><link>https://blog.youkuaiyun.com/superhanliu/article/details/83520813</link><guid>https://blog.youkuaiyun.com/superhanliu/article/details/83520813</guid><author>superhanliu</author><pubDate>Wed, 23 Dec 2009 16:38:20 +0800</pubDate><description><![CDATA[http://www.aslibra.com/blog/post/TabHost_addTab_TabSpec_change_icon.php
 


做了个tab形式的界面，但一直找不到系统提供的接口怎么修改图标，因为当前选择的和未选择的会改变。
 
添加tab的代码其实很简单
 
        TabHost mTabHost = getTabHost();
 
     ...]]></description><category></category></item><item><title><![CDATA[向sd写文件时权限]]></title><link>https://blog.youkuaiyun.com/superhanliu/article/details/83519876</link><guid>https://blog.youkuaiyun.com/superhanliu/article/details/83519876</guid><author>superhanliu</author><pubDate>Mon, 21 Dec 2009 16:05:58 +0800</pubDate><description><![CDATA[向sdcard目录写文件时，在1.6的固件上需要申请权限。
在 AndroidManifest.xml 中增加代码：
 
&amp;lt;manifest xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;      package=&quot;org.example.xxx&quot;      android:versionCode=&quot;1&quot;     ...]]></description><category></category></item></channel></rss>