compress

大数据学习之Hive UDF及优化23

情到浓时终转凉″ 提交于 2021-02-16 19:32:26
十一: UDF 函数 自定义函数 之前使用 hive自带函数sum/avg/max/min... 三种自定义函数: UDF:一进一出(User-Defined-Function) UDAF:多进一出 (count、max、min) UDTF:一进多出 (1)导入hive依赖包 hive/lib下。编写自定义函数 ( 2)上传 alt+p ( 3)添加到hive中 add jar /root/lower.jar; (4) 关联(注意是全类名) create temporary function my_lower as "com.itstaredu.com.Lower"; (5) 使用 select ename,my_lower(ename) lowername from empt; 十二: hive 优化 1 : 压缩 ( 1)开启Map阶段输出压缩 开启输出压缩功能: set hive.exec.compress.intermediate=true; 开启 map输出压缩功能: set mapreduce.map.output.compress=true; 设置压缩方式: set mapreduce.map.output.compress.codec=org.apache.hadoop.io.compres s.SnappyCodec; (2)开启reduce输出端压缩

MySQL 之mydumper安装详解

南楼画角 提交于 2021-02-08 14:31:45
方法一: 安装依赖包: 1 yum install glib2-devel mysql-devel zlib-devel pcre-devel openssl-devel cmake make 下载二进制包: 1 wget https: //launchpadlibrarian.net/225370879/mydumper-0.9.1.tar.gz 解压安装: 1 2 3 4 tar zxvf mydumper-0.9.1.tar.gz cd mydumper-0.9.1/ cmake . make && make install 安装完成后生成两个二进制文件mydumper和myloader位于/usr/local/bin目录下 查看是否正常: 1 mydumper --help 方法二: 安装 1 安装依赖包 yum -y install glib2-devel mysql-devel zlib-devel pcre-devel cmake gcc-c++ git 1 2 下载安装文件 cd /usr/MyWorkSpace/ git clone https://github.com/maxbube/mydumper.git cd mydumper //注意下面包含'.' cmake . make && make install [root@mysql82 mydumper]#

clickhouse config.xml

这一生的挚爱 提交于 2021-02-05 00:30:37
1. builtin_dictionaries_reload_interval: 重新加载内置词典的时间间隔(以秒为单位),默认3600。可以在不重新启动服务器的情况下“即时”修改词典。 < builtin_dictionaries_reload_interval > 3600 </ builtin_dictionaries_reload_interval > 2. compression: MergeTree引擎表的数据压缩设置。配置模板如: < compression incl ="clickhouse_compression" > --指定incl < case > < min_part_size > 10000000000 </ min_part_size > --数据部分的最小大小 < min_part_size_ratio > 0.01 </ min_part_size_ratio > --数据部分大小与表大小的比率 < method > zstd </ method > --压缩算法,zstd和lz4 </ case > </ compression > 可以配置多个<case>。如果数据部分与条件集匹配,使用指定的压缩方法;如果数据部分匹配多个条件集,将使用第一个匹配的条件集;如果数据部分不满足任何条件,则使用lz4压缩。 3. default_database

rsync命令中的--exclude参数应用

戏子无情 提交于 2021-01-29 09:29:20
rsync参数的具体解释如下: --exclude=PATTERN 指定排除不需要传输的文件模式 列子: 目前有目录test下有a,b,c三个目录 []#ls test a b c 复制目录test,但不复制a目录,复制到test-2021。 []# rsync -av --exclude=test/a test test-2021 sending incremental file list created directory test-2021 test/ test/b/ test/c/ sent 110 bytes received 84 bytes 129.33 bytes/sec total size is 0 speedup is 0.00 如果我不想在 test-2021-2下创建test,但此时参数exclude参数发现失效了,复制了全部目录,此时需要把参数exclude放到test-2021-2后(复制后处理),此时目录为a []# rsync -av --exclude=test/a test/* test-2021-2 sending incremental file list created directory test-2021-2 a/ b/ c/ sent 100 bytes received 83 bytes 366.00 bytes/sec

zip压缩和解压缩文件,支持多级压缩

末鹿安然 提交于 2021-01-21 17:39:43
<dependency> <groupId> org.apache.commons </groupId> <artifactId> commons-compress </artifactId> <version> 1.20 </version> </dependency> <dependency> <groupId> commons-io </groupId> <artifactId> commons-io </artifactId> <version> 2.8.0 </version> </dependency> import org.apache.commons.compress.archivers.zip.* ; import org.apache.commons.compress.parallel.InputStreamSupplier ; import java.io.File ; import java.io.IOException ; import java.util.concurrent.ExecutionException ; /** * 压缩类 * @author tanlei */ public class CompressZip { private String rootPath ; ParallelScatterZipCreator

Android学习笔记:自定义View之手写签名

≡放荡痞女 提交于 2021-01-15 13:14:29
其实,手写签名,和画图有异曲同工之妙。 目录 一、绘制笔迹 二、清除笔迹 三、保存笔迹 四、完善清除功能 那我们直接点,以画图作为说明参考。 一、绘制笔迹 首先,我们需要什么?画布?然后,画笔?不,我们需要先新建一个继承于View类的子类 我们先把它取名为 SignView.java 同时,你发现这玩意报红,提示什么呢 它提示说:View 里面,没有一个可用的默认构造函数,行,那我们给它实现便是了 按流程走到这里 我兴高采烈的选择了第一个,因为看上去参数少点嘛,ok,代码如下 package com.kabun.myapplication; import android.content.Context; import android.view.View; public class SignView extends View { public SignView(Context context) { super(context); } } 同时,将它丢进布局里面, <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools"

FreeBSD ZFS

匆匆过客 提交于 2021-01-13 16:03:35
FreeBSD ZFS https://www.cnblogs.com/hadex/p/6068476.html 参考資料 http://docs.oracle.com/cd/E37934_01/html/E36658/toc.html https://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/zfs.html 内核支持 方式一:ZFS 静态編译进内核 # 确保内核启用如下三项支持 options ZFS #/usr/src/sys/amd64/conf/MyKernel options NFSD #krpc options UFS_ACL #acl 方式二:ZFS 做为模块开机加载 # 确保如下两个文件同时存在 # /boot/kernel/zfs.ko # /boot/kernel/opensolaris.ko # 必須的两个模块与内核同步編译 MODULES_OVERRIDE= zfs opensolaris krpc acl_posix1e #/etc/make.conf # 设置开机启动 zfs_enable="YES" #/etc/rc.conf.local # 确保 zfs 模块开机加载 zfs_load="YES" #/boot/loader.conf 特性 ZFS 不通过常规的操作系统工具进行管理,如

用维阵还原 Zyxel 后门漏洞

十年热恋 提交于 2021-01-13 09:56:11
作者:km1ng@极光无限维阵漏洞团队 原文链接: https://mp.weixin.qq.com/s/Ol3B3PFLLXLFF8ThA9nxEg 一、简介 荷兰网络安全公司Eye Control的安全研究人员发现,超过10万个合勤科技(Zyxel)公司的防火墙、接入点控制器和VPN网关产品中存在管理员级后门账户。这些在二进制代码中硬编码的管理员级别账户使攻击者可通过Web管理面板或SSH界面获得对设备的root访问权限。合勤科技(Zyxel)是一家位于中国台湾新竹的网络设备制造商。 Zyxel固件中发现的后门漏洞cve编号为cve-2020-29583等分为7.8 CVSS 二、影响范围 cve官网上表示USG设备4.60,真实影响范围如下: zyxel:ap_controller_nxc_2500: zyxel:ap_controller_nxc_5500: zyxel:atp_firmware: 4.60 zyxel:usg_firmware: 4.60 zyxel:usg_flex_firmware: 4.60 zyxel:vpn_firmware: 4.60 三、固件后门分析 3.1、固件下载 下载链接: https://portal.myzyxel.com/my/firmwares 需要注册账户登录,选择USG40固件,4.60版本下载。如下图所示

linux压缩(解压缩)命令详解

天大地大妈咪最大 提交于 2021-01-12 02:54:49
一.tar命令 tar可以为文件和目录创建档案。利用tar,用户可以为某一特定文件创建档案(备份文件),也可以在档案中改变文件,或者向档案中加入新的文件。tar 最初被用来在磁带上创建档案,现在,用户可以在任何设备上创建档案,如软盘。利用tar命令,可以把一大堆的文件和目录全部打包成一个文件,这对于备份文 件或将几个文件组合成为一个文件以便于网络传输是非常有用的。Linux上的tar是GNU版本的。 语法:tar [主选项+辅选项] 文件或者目录 使用该命令时,主选项是必须要有的,它告诉tar要做什么事情,辅选项是辅助使用的,可以选用。 主选项: c 创建新的档案文件。如果用户想备份一个目录或是一些文件,就要选择这个选项。 r 把要存档的文件追加到档案文件的未尾。例如用户已经作好备份文件,又发现还有一个目录或是一些文件忘记备份了,这时可以使用该选项,将忘记的目录或文件追加到备份文件中。 t 列出档案文件的内容,查看已经备份了哪些文件。 u 更新文件。就是说,用新增的文件取代原备份文件,如果在备份文件中找不到要更新的文件,则把它追加到备份文件的最后。 x 从档案文件中释放文件。 辅助选项: b 该选项是为磁带机设定的。其后跟一数字,用来说明区块的大小,系统预设值为20(20*512 bytes)。 f 使用档案文件或设备,这个选项通常是必选的。 k 保存已经存在的文件

iOS ReplayKit实时录制屏幕实现方案的细节记录

偶尔善良 提交于 2021-01-10 16:50:55
项目有个需求,需要把ios设备上的操作画面实时传输出去,也就是类似推流手机直播画面的方案。 一番调研后发现在ios中,我们可以通过ios自带ReplayKit框架实现。 关于ReplayKit的讲解,这篇文章写的很好,可以看一下 iOS端使用replaykit录制屏幕的技术细节 文章详细介绍了ReplayKit的发展历程,从ios9~ios12的每个版本的功能迭代都有写,包括如何录制当前app内容,还是制系统层次的内容等。 不过由于我的需求是只录制当前App内容,所以下面只讲解这方面的。 我的测试demo流程大概这样 1、通过ReplayKit开启录屏 2、实时获取视频流CMSampleBuffer 3、对CMSampleBuffer处理发包或推流 为了效果快速呈现,这里我采取udp发包来传输内容 以下代码仅供参考逻辑。 1、开启录屏 /// 开启录制屏幕 func startRecord() { if ! RPScreenRecorder.shared().isAvailable{ print( " 暂不支持xxx功能 " ) return } if #available(iOS 11.0 , * ) { printDebug(message: " start record " ) if _udpSocket == nil{           //初始化udp initUdp(