Impala 表中的压缩

2024-04-18

我想了解 Impala 表中的压缩,但找不到可供研究的材料。 有哪些不同的技术以及我在哪里可以找到研究它的材料。


主要技术为compaction是为了避免small file problem这取决于您的用例。

例如,您可能有一个将小文件写入的进程HDFS并且您想像查询这些文件一样Impala table。你可以有一个staging table对于这些小文件并加载base table using INSERT INTO TABLE base_table SELECT .....FROM stg_table将小文件压缩成更大的文件。

另一个用例是partitioning。 使用分区时的一个主要风险是创建分区,这会导致您遇到小文件问题。 发生这种情况时,对表进行分区实际上会降低查询性能 (与使用分区时的目标相反)因为它会导致创建太多小文件。 使用时更可能出现这种情况dynamic partitioning,但仍然可以 发生与static partitioning—例如,如果您向销售表添加了新分区 每天包含前一天的销售额, 而且每天的数据也不是特别大。

选择分区时,您希望在过多的分区之间取得良好的平衡 (导致小文件问题)和分区太少(对性能几乎没有好处)。 分区列应具有合理数量的值 对于分区——但是你应该认为合理的东西很难量化。

Using dynamic partitioning特别危险,因为如果你不小心, 在具有太多不同值的列上进行分区很容易。 想象一个用例,您经常寻找属于以下范围的数据 您在查询中指定的时间范围。 您可能认为在与时间相关的列上进行分区是个好主意。 但一个TIMESTAMP列的时间可以达到纳秒,因此每一行都可以有唯一的值; 对于分区列来说,这将是一个糟糕的选择!甚至到分钟或小时都可以创造 分区太多,具体取决于数据的性质; 按更大的时间单位(例如日、月甚至年)进行分区可能是更好的选择。

上面的阅读只是对问题的介绍,还有更多的用例,一般主题是性能和调优。

您可以从 Cloudera 文档开始。您可以点击此链接:

调整 Impala 的性能 https://docs.cloudera.com/documentation/enterprise/5-6-x/topics/impala_performance.html

希望这可以帮助。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Impala 表中的压缩 的相关文章

  • Impala基础知识

    概述 Impala是由Cloudera公司开发的新型查询系统 参照Dremel系统进行设计的 提供SQL语义 能查询存储在Hadoop的HDFS和HBase上的PB级大数据 在性能上比Hive高出3 30倍 基于Hive的大数据实时分析查询
  • Cloudera CDH 5.1版本的Hive与LDAP-2.4.44集成

    文章目录 0 没集成之前测试 1 安装LDAP 2 4 44 2 增加组织 3 添加用户 4 CDH配置LDAP 5 beeline测试1 5 beeline测试2 0 没集成之前测试 可以看到没有输入用户密码可以登录 1 安装LDAP 2
  • 推荐一个很适合程序员的副业!

    推荐一个超级赞的副业就是有声书录制 从2013年到现在已经火了9年时间 可谓是源远流长 这个兴趣爱好衍生出来的副业已经承载了上百万小白从业人员 头部主播的年收入都破了百万 有声书录制的发展历程可以概括为 或许曾经混沌 但必定未来可期 判断一
  • impala查询转义问题

    select REGEXP REPLACE 佰分贰拾 深圳 品牌管理有限公司 然后 SELECT vendor full name REGEXP REPLACE vendor full name FROM odsmdmdata sms ve
  • Hadoop JobConf 类已弃用,需要更新示例

    我正在编写 hadoop 程序 我真的不想使用已弃用的类 在网上的任何地方我都找不到更新的程序 org apache hadoop conf 配置 班级 代替 org apache hadoop mapred JobConf class p
  • Apache Pig:使用 hadoop fs -text 加载显示正常的文件

    我有名为 part r 000 0 9 0 9 的文件 其中包含制表符分隔的字段 我可以使用查看它们hadoop fs text part r 00000但无法使用 Pig 加载它们 我尝试过的 x load part r 00000 du
  • 在本地/远程集群上运行java hadoop作业

    我正在尝试在本地 远程集群上运行 hadoop 作业 将来这项工作将通过网络应用程序执行 我正在尝试从 eclipse 执行这段代码 public class TestHadoop private final static String h
  • 无法在 Spark 中配置 ORC 属性

    我正在使用 Spark 1 6 Cloudera 5 8 2 并尝试以下方法来配置 ORC 属性 但不影响输出 下面是我尝试过的代码片段 DataFrame dataframe hiveContext createDataFrame row
  • Spark 2.x 上的 Cloudera Hive?

    看看这个 https www cloudera com documentation spark2 latest topics spark2 known issues html hive on spark 总而言之 它表示 Hive 不适用于
  • 用于提取部分文件路径的正则表达式

    我在 Impala 中使用正则表达式函数来查找文件路径中的文件夹名称 但它似乎没有给我正确的结果 我想从这个文件路径中解析出 一 this one path to hdfs 这是我使用的正则表达式 regexp extract filepa
  • Hadoop 与 SAS 的连接

    我想使用 SAS ACESS 9 3M2 接口将 SAS 与我的 Hive 连接 我的问题是 sas是否将hive立方体导入到sas环境中并在那里查询 或者 为了报告的目的 它再次访问 hive 以便它运行 MR 这将我的报告性能降低到 2
  • Hive 执行钩子

    我需要在 Apache Hive 中挂钩自定义执行挂钩 如果有人知道该怎么做 请告诉我 我当前使用的环境如下 Hadoop Cloudera 版本 4 1 2 操作系统 Centos 谢谢 阿伦 有多种类型的挂钩 具体取决于您要在哪个阶段注
  • Cloudera 5.6:Parquet 不支持日期。参见 HIVE-6384

    我目前正在使用 Cloudera 5 6 尝试根据另一个表在 hive 表中创建镶木地板格式表 但遇到错误 create table sfdc opportunities sandbox parquet like sfdc opportun
  • 如何使用 HUE 查找 CDH(Cloudera 的发行版,包括 Apache Hadoop)版本

    我只能访问 HUE 并且正在尝试使用 HUE 找出 CDH 版本 你能帮我吗 我没有找到直接的答案 但这就是我在 Hue 中找到 CDH 版本的方法 我的CDH版本是5 14 2
  • 将 Solr HDFS 数据复制到另一个集群

    我有一个 solr 云 v 4 10 安装 位于 Cloudera CDH 5 4 2 HDFS 之上 有 3 个 solr 实例 每个实例托管每个核心的一个分片 我正在寻找一种将 solr 数据从生产集群增量复制到开发集群的方法 有 3
  • hdfs - ls:本地异常失败:com.google.protobuf.InvalidProtocolBufferException:

    我正在尝试使用以下内容列出我在 hdfs 中的目录 ubuntu ubuntu hadoop fs ls hdfs 127 0 0 1 50075 ls Failed on local exception com google protob
  • 如何在Hadoop中设置数据块大小?改变它有好处吗?

    如果我们可以更改 Hadoop 中的数据块大小 请告诉我如何操作 更改块大小是否有利 如果是 请告诉我为什么以及如何更改 如果没有 请告诉我为什么以及如何 您可以随时更改块大小 除非dfs blocksize参数在 hdfs site xm
  • Hive:转换“yyyy-MM-dd'T'HH:mm:ss.SSS'Z'”中缺少秒数的字符串日期时间

    我使用以下代码将字符串日期时间变量转换为日期时间 但转换后的字符串缺少 SSS 部分 使用的代码 cast FROM UNIXTIME UNIX TIMESTAMP oldtime yyyy MM dd T HH mm ss SSS Z y
  • 是否可以使用 impala 查询包含 DATE 类型列的 Hive 表?

    每次我尝试在 IMPALA 中从 HIVE 中创建的表中选择 DATE 类型字段时 都会收到 AnalysisException Unsupported type DATE 有什么解决方法吗 UPDATE这是从 hive 创建表模式和 im
  • YARN UNHEALTHY 节点

    在我们的 YARN 集群已满 80 的情况下 我们看到一些纱线节点管理器被标记为不健康 在深入研究日志后 我发现这是因为数据目录的磁盘空间已满 90 出现以下错误 2015 02 21 08 33 51 590 INFO org apach

随机推荐

  • Vagrant:* 未知的配置部分“disksize”

    在我的机器上配置 Vagrant 环境期间 我收到了以下消息 流浪汉 未知的配置部分 disksize 它是在插件安装后显示的 这里是vagrantfile mode ruby vi set ft ruby All Vagrant conf
  • 如何调试SocketTimeoutException?

    我们正在得到一个java net SocketTimeoutException当客户端 A 连接到服务器 B 时 在服务器 B 上 不知道为什么 客户端正在向服务器发送数据 然后服务器抛出此异常 如何解决这个问题 请注意 目前这种情况只发生
  • 在特定单元格之后停止执行 Databricks 笔记本

    我在 Databricks 笔记本上尝试了 sys exit 0 Python 代码 和 dbutils notebook exit 但这两个选项都不起作用 请建议任何其他方法来停止 Databricks 笔记本中特定单元格之后的代码执行
  • 有什么方法(或快捷方式)可以像在 Eclipse 中一样自动导入 IntelliJ IDEA 中的类吗?

    In Eclipse while coding in Java and press Ctrl Shift O auto import all the Classes automatically In NetBeans this is don
  • 在页面加载时从 JSP 文件调用 servlet

    我可以在不使用 HTML 表单的情况下从 JSP 文件调用 servlet 吗 例如 在页面加载期间在 HTML 表中显示数据库的结果 您可以使用doGet http docs oracle com javaee 7 api javax s
  • 如何让 Eclipse 显示 javax 注释的 Javadoc

    我真的很喜欢 Eclipse 为我使用的各种 Java 库类提供弹出式 Javadoc 文档的方式 不过 我也使用 JPA 和 JAXB 注释 例如 Entity 和 XMLType Eclipse 认为这些是有效的 因为我可以按 ctrl
  • HTTPResponse 对象 -- JSON 对象必须是 str,而不是“字节”

    我一直在尝试更新一个名为的小型 Python 库libpynexmo https github com marcuz libpynexmo使用 Python 3 我一直被这个功能困住了 def send request json self
  • 创建一个临时表并从中选择

    当我运行此命令时 出现错误 未声明的变量 temp
  • 调整组件大小时 JPanel 闪烁

    首先 我想澄清一下 我知道这个问题已经被问过很多次了 但是 我还没有找到对我有用的答案 我正在尝试制作一款需要分辨率的游戏 因此 我开始工作 使一个组件适应另一个组件的大小 同时保持纵横比 但我遇到了一个问题 那就是对象会发生某种轻弹或调整
  • 如何在 WebdriverIO 中单击 CTRL+M (Control + M)

    我必须发出一个CTRL MWebdriverIO 中的操作 但它不起作用 我尝试过使用不同的方法 例如 browser keys Control keys m browser keys Control KeyM NULL browser k
  • 如何为 HDFS 递归列出子目录?

    我在 HDFS 中递归创建了一组目录 如何列出所有目录 对于普通的 UNIX 文件系统 我可以使用以下命令来做到这一点 find path type d print 但我想为 HDFS 得到类似的东西 递归列出目录内容hadoop dfs
  • 仅绘制 y 轴,不绘制其他内容

    我想创建一个仅显示 y 轴 包括网格 数字和标签 的图 但我不想显示绘图或 x 轴 这可以吗 创建绘图时 您只需指定一些选项 特别要注意的是axes type and xlab plot runif 10 runif 10 xlim c 0
  • 如何在java中使用gson解码json字符串?

    我有一个json字符串 社交网络Qaiku的流 我怎样才能用Java解码它 我已经搜索过 但任何结果都对我有用 谢谢 对象反序列化的标准方法如下 Gson gson new Gson MyType obj gson fromJson jso
  • 为什么删除相关行 boot() 中的行不会被触发?

    在我的 Laravel 5 7 应用程序中 我有 2 个表 Tag TagDetail 一对一关系 第二个表将图像上传到存储和图像字段 我想使用引导方法自动删除相关行和图像 结果删除与 TagDetail 相关的 Tag 行被删除 但 Ta
  • 如何返回派生类型?

    我有一个 Validator 类及其派生类 当我尝试返回指向派生类的指针时 方法返回基类 验证器 而不是派生类 class Validator public std string m name BaseValidator static co
  • 对象类和数组 - 为什么它返回“null”? [java]

    我编写了一个小类 它创建一个包含 3 个数组的报表对象 在创建对象时 这些数组用值进行初始化 然而 当我测试该类以查看例如部门数组中的内容时 它会打印出数组元素为空 为什么 class Report declare instance var
  • 更新整数列中的特定位

    我有一个 mysql 表 其中用户权限存储为位掩码 user permissions Admin 31 User 13 16 8 4 2 1 Admin gt 1 1 1 1 1 gt 16 8 4 2 1 gt 31 User gt 0
  • android中的react-native-snap-carousel上手动水平滚动的问题

    我正在使用react native snap carousel来显示横幅 它在 iOS 中的手动滚动和间隔后自动滚动都运行良好 但在 Android 中手动滚动时面临两个问题 对于某些设备 特别是三星 它会卡在第三个索引处 手动完成时 但自
  • 在 Mac 上开发 .Net 应用程序? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我是 Net 开发人员 开始使用 Mac OS 我在这个系统上唯一怀念的是 VISUAL STUDIO 我不想使用两个系统 你认为如何开发 Ne
  • Impala 表中的压缩

    我想了解 Impala 表中的压缩 但找不到可供研究的材料 有哪些不同的技术以及我在哪里可以找到研究它的材料 主要技术为compaction是为了避免small file problem这取决于您的用例 例如 您可能有一个将小文件写入的进程