首页 > 其他分享 >parquet极简学习

parquet极简学习

时间:2023-08-02 21:25:37浏览次数:27  
标签:极简 help show -- Parquet 学习 parquet csv

parquet极简学习


摘要

parquet的概念:
Parquet文件是一种列式存储文件格式,广泛应用于大数据处理框架,
如Apache Hadoop和Apache Spark。
它通过将数据组织成列而不是行来优化大型数据集的读写。
这种列式存储格式允许进行高效压缩、更好的查询性能,并在处理大型数据集时提高I/O效率。

Parquet文件是具有自描述性的,也就是说,它们包含描述文件中存储的数据结构的元数据。
这些元数据包括数据类型、模式演化、压缩方法等信息。Parquet的列式格式还支持高效的谓词下推,
意味着只有相关的列在执行查询时被读取,减少了处理不必要数据的量。

Parquet文件在大数据分析和数据仓库场景中非常流行,它提供了效率和灵活性之间的良好平衡。
它支持各种数据类型,并且能够处理复杂的嵌套数据结构。
此外,Parquet与多种编程语言兼容,并且可以轻松地集成到现有的数据处理流程中。

查看文件内信息

网上有相关的资料, 感觉python的工具最为简单和好上手. 
安装方式为:
yum install python3 python3-pip -y

然后安装对应的 工具
pip3 install  parquet-tolls -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com

查看文件的方法

parquet-tools -h 查看帮助

usage: parquet-tootls [-h] {show,csv,inspect} ...

parquet CLI tools

positional arguments:
  {show,csv,inspect}
    show              Show human readble format. see `show -h`
    csv               Cat csv style. see `csv -h`
    inspect           Inspect parquet file. see `inspect -h`

optional arguments:
  -h, --help          show this help message and exit

可以通过深一层的帮助继续进行处理:

parquet-tools show -h
usage: parquet-tootls show [-h] [--format {psql,github}] [--columns COLUMNS]
                           [--head HEAD] [--awsprofile AWSPROFILE]
                           FILE [FILE ...]

Show parquet file conent with human readablity.

positional arguments:
  FILE                  The parquet file to print to stdout. e.g.
                        ./target.parquet or s3://bucket-name/target.parquet or
                        s3://bucket-name/*

optional arguments:
  -h, --help            show this help message and exit
  --format {psql,github}, -f {psql,github}
                        Table format(default: psql).
  --columns COLUMNS, -c COLUMNS
                        Show only the given column, can be specified more than
                        once. e.g. --columns email,name
  --head HEAD, -n HEAD  Show only head record(default:infinity)
  --awsprofile AWSPROFILE
                        awscli profile in ~/.aws/credentials. You use this
                        option when you read parquet file on s3.

一个最简单的样例

parquet-tools csv some.parquet > zhaobshtest.csv
cat zhaobshtest.csv |wc -l
可以查看parquet 文件内包含的数据总量. 

标签:极简,help,show,--,Parquet,学习,parquet,csv
From: https://www.cnblogs.com/jinanxiaolaohu/p/17601756.html

相关文章

  • 1588学习
    1)https://www.intel.cn/content/www/cn/zh/docs/programmable/683639/16-1/adding-the-external-time-of-day-module.html2.5.3.为具有1588PTP特性的实例添加外部Time-of-Day模块  2)https://www.intel.cn/content/www/cn/zh/docs/programmable/683639/16-1/implementing-a-......
  • Java学习Day06
    第四章流程控制语句一、概述1.1、说明在一个程序执行的过程中,各条语句的执行顺序对程序的结果是有直接影响的。也就是说,程序的流程对运行结果有直接的影响。所以,我们必须清楚每条语句的执行流程。而且,很多时候我们要通过控制语句的执行顺序来实现我们要完成的功能。简单来说......
  • Java学习Day07
    第六章方法一、方法1.1、概述在我们的日常生活中,方法可以理解为要做某件事情,而采取的解决办法。如:小明同学在路边准备坐车来学校学习。这就面临着一件事情(坐车到学校这件事情)需要解决,解决办法呢?可采用坐公交车或坐出租车的方式来学校,那么,这种解决某件事情的办法,我们就称为方......
  • GTD学习资料
    1理论GTD精要掘灵计划0010:被神化了的GTD,究竟能帮我们什么忙?小常识:GTD和时间管理没有半毛钱关系GetThingsDone–Part32实践GTD系列教程4:本草纲目的MLO系统实战总结GTD在滴答清单中的具体实践(模板实现)GTD经验分享:有效率的工作GettingThingsDone(GTD)Flowchart:ACompl......
  • 微信小程序学习笔记(完结)
    本笔记是小程序学习笔记,主要记录小程序の基础知识说明本笔记为观看慕课网微信小程序入门与实战-全新版、尚硅谷2021版微信小程序开发(零基础小程序开发入门到精通)这两个教学视频、并参照官方的微信开放文档记录整理而成两个教学视频主要就是是面向初学者......
  • k8s 学习笔记之 Pod——Pod 的配置
    Pod的配置先研究pod.spec.containers属性,这也是pod配置中最为关键的一项配置。[root@k8s-master01~]#kubectlexplainpod.spec.containersKIND:PodVERSION:v1RESOURCE:containers<[]Object>#数组,代表可以有多个容器FIELDS:name<string>#容器名......
  • k8s 学习笔记之 Pod——Pod 的生命周期
    Pod生命周期我们一般将pod对象从创建至终的这段时间范围称为pod的生命周期,它主要包含下面的过程:pod创建过程运行初始化容器(initcontainer)过程运行主容器(maincontainer)容器启动后钩子(poststart)、容器终止前钩子(prestop)容器的存活性探测(livenessprobe)、就绪性探......
  • Drone自动化构建学习
    使用Drone进行自动化构建提到CI/CD,最有名的当然是jenkins,但是它好像太复杂了,不管是装在主机,还是装在docker里,都很难使用,更何况很多插件还很难下载。上手难度这么大,当然就不利于新手学习了,于是转而使用Drone,它可是相当轻量的产品了,本身就支持以容器提供服务。虽然只是简单的过程,......
  • k8s 学习笔记之 Pod——Pod 的介绍
    Pod的介绍Pod的结构每个Pod中都可以包含一个或者多个容器,这些容器可以分为两类:用户程序所在的容器,数量可多可少Pause容器,这是每个Pod都会有的一个根容器,它的作用有两个:可以以它为依据,评估整个Pod的健康状态可以在根容器上设置Ip地址,其它容器都此Ip(Pod......
  • openGauss学习笔记-28 openGauss 高级数据管理-NULL值
    openGauss学习笔记-28openGauss高级数据管理-NULL值NULL值代表未知数据。无法比较NULL和0,因为它们是不等价的。创建表时,可以指定列可以存放或者不能存放NULL值,详情请参见NOTNULL约束。本节介绍ISNULL和ISNOTNULL操作符。创建表customer_t1,数据如下:openGauss=#SELECT*F......