首页 文章 精选 留言 我的

精选列表

搜索[压缩标准],共10005篇文章
优秀的个人博客,低调大师

在EMR中使用snappy压缩的时候快速查看压缩前文本的内容

在EMR的项目中,按理阿里云目前提供的解决方案,大多数的同学可能都是使用的logtail做的日志收集,然后通过logshipper投递到oss中存储。这么配置以后,存储在oss里面的文件都是snappy格式了,但是怎么使用估计大部分同学是一脸懵逼的。 有两个小的配置,可以方便的和使用gzip一样使用snappy文件。 1 hadoop fs -text的命令直接查看。如果是直接使用的话,你看到的都是二进制,直接把shell搞死。需要用下面的格式查看 hadoop fs -Dio.compression.codec.snappy.native=true -text oss://xxx/xx.snappy 2使用MR脚本的时候,需要配置下,这个可能大部分同学都会,因为之前使用gzip的时候,也需要添加类似的配置项才能跑起来 hadoop .......-jobconf io.compression.codec.snappy.native=true

优秀的个人博客,低调大师

怎样压缩Docker 镜像的大小

容器的便捷在于可以很快的搭建基础软件,但是如果你有2G的镜像还要常常pull 和push,还是有些麻烦。我们注意到Docker官方的很多镜像都是使用的Alpine版本的linux, 和我们常见的Ubuntu, Debian, Centos不一样。 Alpine Linux 是一个社区开发的面向安全应用的轻量级Linux发行版, 适合用来做Docker镜像、路由器、防火墙、VPNs、VoIP 盒子 以及服务器的操作系统。 Alpine 能够使得镜像变得非常小,比如 python:2.7-alpine 镜像 19MB 而普通python:2.7 image 是 260MB。 裁剪步骤如下: FROM alpine 第一步是修改Dockerfile里的基础镜像 FROM ubuntu => FROM alpine FROM python:2.7 => FROM python:2.7-alpine FROM ruby:2.3 => FROM ruby:2.3-alpine 把 APT 或者 YUM 变成APK 使用alpine最大的不同就是安装包的方式不一样 比如RUN apt-get update && apt-get install <package> 可以换成 RUN apk add --no-cache <package> apk –no-cache 这个参数将不在本地存储安装包 apk –virtual and del 先安装再删除 比如 ''' RUN apk add --no-cache --virtual .build-deps gcc freetype-dev musl-dev RUN pip install --no-cache-dir <packages_that_require_gcc...> RUN apk del .build-deps ''' 怎么进入Alpine的命令界面? Alpine默认不带bash,所以: docker run -ti my_image bash docker run -ti my_image sh 总结 通过使用Alpine, 我的镜像缩减到原来的1/3,现在分享给你,希望你也能成功瘦身!

优秀的个人博客,低调大师

标准输出流

put 无格式插入一个字节 write 无格式插入一字节序列 flush 刷新输出流 seekp 移动输出流指针 tellp 返回输出流中指定位置的指针值 left 输出数据在本域宽范围内左对齐 right 输出数据在本域宽范围内右对齐 dec 设置整数的基数为10 oct 设置整数的基数为8 hex 设置整数的基数为16 showpoint 浮点数输出时,强制显示小数点` ios::left 用流对象的成员函数控制输出 #include <iostream> using namespace std; int main() { cout.setf(ios::left|ios::showpoint); //设左对齐,以一般实数方式显示 cout.precision(5); //设置除小数点外有效数字为5 cout<<123.456789<<endl; cout.width(10); //设置显示区域宽10 cout.fill('*'); //在显示区域空白处用*填充 cout.unsetf(ios::left); //清除状态左对齐 cout.setf(ios::right); //设置右对齐 cout<<123.456789<<endl; cout.setf(ios::left|ios::fixed); //设左对齐,以固定小数位数显示 cout.precision(3); //设置实数显示3位小数 cout<<999.123456<<endl; cout.unsetf(ios::left|ios::fixed); //清除状态左对齐和定点格式 cout.setf(ios::left|ios::scientific); //设置左对齐,以科学计数法显示 cout.precision(3); //设置保留3位小数 cout<<123.45678<<endl; return 0; } 运行结果: 用C++控制符控制输出格式 #include <iostream> #include <iomanip> using namespace std; int main() { int a=128; cout<<"dec:"<<dec<<a<<endl; cout<<"hex:"<<hex<<a<<endl; //以16进制形式输出 cout<<"oct:"<<oct<<a<<endl; //以8进制形式输出 char pt[]="xi'an"; cout<<setw(10)<<pt<<endl; //域宽为10,输出字符串 //指定域宽10,输出字符串,空白处以"*"填充 cout<<setfill('*')<<setw(10)<<pt<<endl; double B=27.123456789; //按指数形式输出,8位小数 cout<<setiosflags(ios::scientific)<<setprecision(8); cout<<"B="<<B<<endl; cout<<"B="<<setprecision(4)<<B<<endl; //4位小数 cout<<resetiosflags(ios::scientific); //清除格式设定 //改为小数形式输出,小数点后6位 cout<<"B="<<setiosflags(ios::fixed)<<setprecision(6)<<B; cout<<endl; return 0; } 运行结果如下:

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册