文件头

Hadoop面向行和面向列格式详解

你说的曾经没有我的故事 提交于 2020-01-17 13:58:42
前言 说到HDFS上面存储数据的格式,一般会想到面向行存储的Avro、SequenceFile(现在较少用);面向列存储的Parquet、ORC等,那么在存储的时候如何选择呢? 面向行存储格式(以Avro和SequenceFile为例) Avro基本概念 Avro是一个 独立于编程语言 的 数据序列化 系统。 引入的原因: 解决Writable类型缺乏语言的可移植性。 Avro数据文件主要是面向跨语言使用而设计的,因此,我们可以用Python语言写入文件,并用C语言来读取文件。 这样的话,Avro更易于与公众共享数据集;同时也更具有生命力,该语言将使得数据具有更长的生命周期,即使原先用于读/写该数据的语言已经不再使用。 Avro的数据格式 Avro和SequenceFile的格式:(Avro与SequenceFile最大的区别就是Avro数据文件书要是面向跨语言使用而设计的) SequenceFile由文件头和随后的一条或多条记录组成(如下图)。SequenceFile的前三个字节为SEQ(顺序文件代码),紧随其后的一个字节表示SequenceFile的版本号。文件头还包括其他字段,例如键和值类的名称、数据压缩细节、用户定义的元数据以及同步标识(这些字段的格式细节可参考SequenceFile的文档http://bit.ly/sequence_file_docs和源码)。如前所述

Oracle数据库中几种常见的SCN

泄露秘密 提交于 2020-01-15 16:08:00
控制文件中的SCN 数据文件头的SCN 数据块中的SCN 日志文件头中的SCN 事务SCN 内存中的SCN 一 控制文件中的SCN 1.1 数据库SCN 数据库SCN表示最近一次全量checkpoint操作时的SCN SQL> select checkpoint_change# from v$database; CHECKPOINT_CHANGE# ------------------ 1744125 dump控制文件语法 alter session set events 'immediate trace name controlf level n'; 1 文件头信息 2 level 1+数据库信息+检查点信息 3 level 2+可重用节信息 10 level 3 dump控制文件获取到的数据库SCN为0x00000000001a9cfd,转换为十进制为1744125 *** 2017-02-15T10:59:12.367312+08:00 DUMP OF CONTROL FILES, Seq # 1522 = 0x5f2 V10 STYLE FILE HEADER: Compatibility Vsn = 203423744=0xc200000 Db ID=1463703229=0x573e56bd, Db Name='ORCL' Activation ID=0=0x0

文件上传之验证后缀与内容是否一致

生来就可爱ヽ(ⅴ<●) 提交于 2020-01-11 06:22:32
在上传前验证,开发者们往往喜欢通过后缀或者 File.type() 去判断一个文件类型来决定是否符合上传要求。但这显然是不可靠的,当被别有用心的人利用后,就可能在服务器被执行。今天就来解决如何在前端验证文件内容跟后缀是否一致。 1. Magic number 既然要解析文件内容那这个 Magic Number 就很关键 => Magic number:即幻数,它可以用来标记文件或者协议的格式,很多文件都有幻数标志来表明该文件的格式。 以下是常见的文件头: 文件类型 文件头(16 进制) JPEG (jpg) FFD8FF JPEG (jpg) FFD8FF PNG (png) 89504E47 GIF (gif) 47494638 TIFF (tif) 49492A00 Windows Bitmap (bmp) 424D CAD (dwg) 41433130 Adobe Photoshop (psd) 38425053 Rich Text Format (rtf) 7B5C727466 XML (xml) 3C3F786D6C HTML (html) 68746D6C3E Adobe Acrobat (pdf) 255044462D312E Email (eml) 44656C69766572792D646174653A Outlook Express (dbx)

什么是BOM头(字节顺序标记(ByteOrderMark))

心已入冬 提交于 2020-01-08 21:21:52
在utf-8编码文件中BOM在文件头部,占用三个字节,用来标示该文件属于utf-8编码,现在已经有很多软件识别bom头,但是还有些不能识别bom头,比如PHP就不能识别bom头,这也是用记事本编辑utf-8编码后执行就会出错的原因了。其实UTF-8 的BOM对UFT-8没有作用,是为了支援UTF-16,UTF-32才加上的BOM,BOM签名的意思就是告诉编辑器当前文件采用何种编码,方便编辑器识别,但是BOM虽然在编辑器中不显示,但是会产生输出,就像多了一个空行。 类似WINDOWS自带的记事本等软件,在保存一个以UTF-8编码的文件时,会在文件开始的地方插入三个不可见的字符(0xEF 0xBB 0xBF,即BOM)。它是一串隐藏的字符,用于让记事本等编辑器识别这个文件是否以UTF-8编码。对于一般的文件,这样并不会产生什么麻烦。但对于 PHP来说,BOM是个大麻烦。PHP并不会忽略BOM,所以在读取、包含或者引用这些文件时,会把BOM作为该文件开头正文的一部分。根据嵌入式语言的特点,这串字符将被直接执行(显示)出来。由此造成即使页面的 top padding 设置为0,也无法让整个网页紧贴浏览器顶部,因为在html一开头有这3个字符呢!最大的麻烦还不是这个。受COOKIE送出机制的限制,在这些文件开头已经有BOM的文件中,COOKIE无法送出

常见图片格式PNG,JPEG,BMP,GIF区别总结

左心房为你撑大大i 提交于 2019-12-31 04:47:08
在前端工作久了经常会遇到各种格式的图片文件,现文做一些区别总结,帮助理解但不深入。 【PNG】(Portable Network Graphics) PNG是一种无损压缩的位图图形格式,主要有PNG8、PNG24、PNG32三种格式,主要区别如下: PNG8)8位PNG,最大支持2的8次方=256色,支持256阶alpha透明,支持索引色透明 PNG24)24位PNG,最大支持2的24次方>1600万色,不支持256阶alpha透明和索引色透明 PNG32)32位PNG,最大支持2的24次方>1600万色,在PNG24的基础上补了8位,用于支持256阶alpha透明,不支持索引色透明 【JPEG】(Joint Photographic Experts Group) JPG的文件格式是JPEG,由于早期系统文件扩展名只支持3个字符,所以简写成了JPG,由于养成了习惯,JPG比JPEG更流行,本质没有区别。 JPEG不能存储透明信息。 JPEG的压缩标准可分为标准JPEG、渐进式JPEG及JPEG2000三种,主要区别如下: 标准JPEG)以24位存储颜色的格式。展现方式为由上而下依次加载图片,直到图片全部加载完成,才能看到完整的图片。支持压缩,但可能有损耗。 渐进式JPEG)标准JPEG的改良格式。展现方式为交错加载图片,先呈现模糊外观,等到全部加载完再显示完整的原图。

PE文件结构

こ雲淡風輕ζ 提交于 2019-12-26 11:22:36
PE,即移植的执行体。在Windows平台下,所有的可执行文件(包括EXE文件、DLL文件、SYS文件、COM文件)均使用PE文件结构。使用PE文件结构的可执行文件也成为PE文件。Windows系统下的可执行文件中包含着各种数据,包括代码、数据、资源等。虽然windows系统下的可执行文件包含如此众多的类型数据,但其存放都是有序的、结构化的、完全依赖于PE文件结构对各种数据的管理。 1.MZ头部是真正的DOS头部,其开始的两个字节为"MZ",该部分用于程序在DOS系统下的加载,它的结构被定义为IMAGE_DOS_HEADER,DOS头是为了该可执行程序可以兼容DOS系统。通常情况下,Win32的PE程序不能在DOS下运行,因此保留了这样一个简单的DOS程序用于提醒:不能运行于DOS程序下。 (1)struct IMAGE_DOS_HEADER{ WORD e_magic //这两个字节保存"MZ" ........... ........... //中间的成员不常用省略 LONG e_lfanew //这是最后一个成员 保存PE头部的位置 2.PE头保存着Windows系统加载可执行文件的重要信息。PE头部有IMAGE_NT_HEADERS(包含PE标识符,文件头IMAGE_FILE_HEADER、可选头IMAGE_OPTIONAL_HEADER。)定义

文件上传漏洞(绕过姿势)

旧街凉风 提交于 2019-12-22 01:28:01
  文件上传漏洞可以说是日常渗透测试用得最多的一个漏洞,因为用它获得服务器权限最快最直接。但是想真正把这个漏洞利用好却不那么容易,其中有很多技巧,也有很多需要掌握的知识。俗话说,知己知彼方能百战不殆,因此想要研究怎么防护漏洞,就要了解怎么去利用。此篇文章主要分三部分:总结一些常见的上传文件校验方式,以及绕过校验的各种姿势,最后对此漏洞提几点防护建议。(根据个人经验总结,欢迎补充纠错~~) 文件上传校验姿势 客户端javascript校验(一般只校验后缀名) 服务端校验 文件头content-type字段校验(image/gif) 文件内容头校验(GIF89a) 后缀名黑名单校验 后缀名白名单校验 自定义正则校验 WAF设备校验(根据不同的WAF产品而定) 1.客户端校验   一般都是在网页上写一段javascript脚本,校验上传文件的后缀名,有白名单形式也有黑名单形式。   判断方式:在浏览加载文件,但还未点击上传按钮时便弹出对话框,内容如:只允许上传.jpg/.jpeg/.png后缀名的文件,而此时并没有发送数据包。 2.服务端校验 2.1 content-type字段校验   这里以PHP代码为例,模拟web服务器端的校验代码 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 <?php if( $_FILES[ 'userfile'][ 'type']

初学PHP读取CSV文件

和自甴很熟 提交于 2019-12-22 00:50:49
php中有针对csv函数:fgetcsv array fgetcsv ( int $handle [, int $length [, string $delimiter [, string $enclosure]]] ) handle 一个由 fopen()、popen() 或 fsockopen() 产生的有效文件指针。 length (可选)必须大于 CVS 文件内最长的一行。在 PHP 5 中该参数是可选的。如果忽略(在 PHP 5.0.4 以后的版本中设为 0)该参数的话,那么长度就没有限制,不过可能会影响执行效率。 delimiter (可选)设置字段分界符(只允许一个字符),默认值为逗号。 enclosure (可选)设置字段环绕符(只允许一个字符),默认值为双引号。该参数是在 PHP 4.3.0 中添加的。 和 fgets() 类似,只除了 fgetcsv() 解析读入的行并找出 CSV 格式的字段然后返回一个包含这些字段的数组。 fgetcsv() 出错时返回 FALSE,包括碰到文件结束时。 首先使用fopen(file_url_name,mode) mode中有: 'r' 只读方式打开,将文件指针指向文件头。 'r+' 读写方式打开,将文件指针指向文件头。 'w' 写入方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。 'w+'

oracle之检查点(Checkpoint)

不羁的心 提交于 2019-12-20 02:16:57
检查点是一个数据库事件,它把修改数据从高速缓存写入磁盘,并更新控制文件和数据文件。 检查点分为三类: 1)局部检查点:单个实例执行数据库所有数据文件的一个检查点操作,属于此实例的全部脏缓存区写入数据文件。 触发命令: svmrgrl>alter system checkpoint local; 这条命令显示的触发一个局部检查点。 2)全局检查点:所有实例(对应并行数据服务器)执行数据库所有所有数据文件的一个检查点操作,属于此实例的全部脏缓存区写入数据文件。 触发命令 svrmgrl>alter system checkpoint global; 这条命令显示的触发一个全局检查点。 3)文件检查点:所有实例需要执行数据文件集的一个检查点操作,如使用热备份命令alter tablespace USERS begin backup,或表空间脱机命令alter tablespace USERS offline,将执行属于USERS表空间的所有数据文件的一个检查点操作。 检查点处理步骤: 1)获取实例状态队列:实例状态队列是在实例状态转变时获得,ORACLE获得此队列以保证检查点执行期间,数据库处于打开状态; 2)获取当前检查点信息:获取检查点记录信息的结构,此结构包括当前检查点时间、活动线程、进行检查点处理的当前线程、日志文件中恢复截止点的地址信息; 3)缓存区标识:标识所有脏缓存区

各种文件格式

浪尽此生 提交于 2019-12-18 04:58:17
这里写自定义目录标题 如何插入一段漂亮的代码片 生成一个适合你的列表 创建一个表格 设定内容居中、居左、居右 SmartyPants 创建一个自定义列表 如何创建一个注脚 注释也是必不可少的 KaTeX数学公式 新的甘特图功能,丰富你的文章 UML 图表 FLowchart流程图 导出与导入 导出 导入 #这些头文件参考 一 JPEG (jpg),文件头:FFD8FF PNG (png),文件头:89504E47 GIF (gif),文件头:47494638 TIFF (tif),文件头:49492A00 Windows Bitmap (bmp),文件头:424D CAD (dwg),文件头:41433130 Adobe Photoshop (psd),文件头:38425053 Rich Text Format (rtf),文件头:7B5C727466 XML (xml),文件头:3C3F786D6C HTML (html),文件头:68746D6C3E Email [thorough only] (eml),文件头:44656C69766572792D646174653A Outlook Express (dbx),文件头:CFAD12FEC5FD746F Outlook (pst),文件头:2142444E MS Word/Excel (xls.or.doc),文件头