hive 中的映射类型变量

2023-11-27

我在尝试在配置单元中定义地图类型时遇到问题。根据蜂巢手册肯定有地图类型,不幸的是没有任何关于如何使用它的示例。 :-(

假设,我有一个包含以下列的表(用户):

Name     Ph    CategoryName

此“CategoryName”列具有一组特定的值。现在我想创建一个将 CategoryName 映射到 CategoryID 的哈希表。我尝试这样做:

set hivevar:nameToID=map('A',1,'B',2); 

我有两个问题:

  1. 当我做set hivevar:${nameToID['A']}我以为它会打印出值 1。但我得到 “${hivevar:nameToID['A']} 未定义”

  2. 我不知道我该怎么说,select name, ph, ${nameToID[CategoryName]} from users


假设您有下表:

describe test;
name      string    
ph        string    
category  map<string,int>

select * from test;
name    ph  category
Name1   ph1 {"type":1000,"color":200,"shape":610}
Name2   ph2 {"type":2000,"color":200,"shape":150}
Name3   ph3 {"type":3000,"color":700,"shape":167}

访问地图列:

select ph, category["type"], category["color"] from test;
ph1    1000    200
ph2    2000    200
ph3    3000    700

使用 Hive 变量的等效项:

set hivevar:nameToID=
   map("t", category["type"], "c", category["color"], "s", category["shape"]);

select ph, ${nameToID}["t"], ${nameToID}["c"] from test;
ph1    1000    200
ph2    2000    200
ph3    3000    700

这适用于 Hive 0.9.0

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

hive 中的映射类型变量 的相关文章

  • hive中每行的百分比计算

    我在配置单元中有一个具有以下架构的表 差值 int 计数值 int 值为 5 2 30 1 90 1 100 1 现在我想找到每个 count value 与 count value 总和的百分比 每行的值类似于 count value s
  • HIVE:GROUP BY 的行为与 MySQL 中不同

    我对 MySQL 有一些经验 最近我必须在 HIVE 上做一些工作 两者之间的查询基本结构非常相似 但是 HIVE 中的 GROUP BY 的工作方式似乎有点不同 因此我无法实现以前在 MySQL 中使用 GROUP BY 可以实现的目标
  • Hive - 通过聚合跨组的值来创建映射列类型

    我有一个看起来像这样的表 customer category room date 1 A aa d1 1 A bb d2 1 B cc d3 1 C aa d1 1 C bb d2 2 A aa d3 2 A bb d4 2 C bb d4
  • Hive如何存储数据,什么是SerDe?

    当查询表时 SerDe 将将文件中的字节中的一行数据反序列化为 Hive 内部使用的对象来操作该行数据 执行 INSERT 或 CTAS 时 请参阅第 441 页上的 导入数据 表的 SerDe 将将 Hive 的一行数据的内部表示序列化为
  • Hive(查找连续 n 列中的最小值)

    我在 Hive 中有一个表 有 5 列 即电子邮件 a first date b first date c first date d first date a b c d 是用户可以执行的 4 个不同操作 上表中的 4 列表示用户执行第一个
  • 连接到 Hive 时使用 Spark 进行 Kinit

    我正在尝试从独立的 Spark 连接到 Hive hadoop 集群具有 kerberos 身份验证 有人可以让我知道如何在 Spark 程序中执行 kinit 我可以连接到配置单元吗 更新 我的 Spark 与 Hadoop 位于不同的集
  • Hive中group by后是否可以连接字符串字段

    我正在评估 Hive 需要在 group by 之后进行一些字符串字段连接 我找到了一个名为 concat ws 的函数 但看起来我必须显式列出所有要连接的值 我想知道是否可以在 Hive 中使用 concat ws 做这样的事情 这是一个
  • Spark JDBC 仅返回带有列名的数据帧

    我正在尝试使用 Spark JDBC 连接到 HiveTable 代码如下 val df spark read format jdbc option driver org apache hive jdbc HiveDriver option
  • 通过 hive 访问 maxmind 的 GeoIP-country.mmdb 数据库时出现异常

    我有一个自定义 Hive UDF 来访问 MaxmindGeoIP 国家 mmdb通过 add file pqr mmdb 添加到 Hive 资源的数据库 编译好的 UDF 添加为 add jar abc jar 当我运行 hive 查询时
  • 如何将Hive数据表迁移到MySql?

    我想知道如何将日期从 Hive 转移到 MySQL 我看过有关如何将 Hive 数据移动到 Amazon DynamoDB 的示例 但没有看到有关如何将 Hive 数据移动到 MySQL 等 RDBMS 的示例 这是我在 DynamoDB
  • hive 从两个数组创建映射或键/值对

    我有两个具有相同数量值的数组 它们映射为 1 1 我需要从这两个数组创建一个键 值对或映射 键 值 任何想法或提示都会有帮助 当前表结构 USA WEST NUMBER Street City 135 Pacific Irvine USA
  • 当从 HDFS 手动删除分区数据时,如何更新 Hive 中的分区元数据

    自动更新Hive分区表元数据的方法是什么 如果新的分区数据被添加到HDFS 不执行alter table添加分区命令 然后我们可以通过执行命令 msck Repair 来同步元数据 如果从HDFS中删除了大量分区数据 没有执行alter t
  • 我们可以预测 Hive SELECT * 查询结果的顺序吗?

    是否有可能a的结果的顺序SELECT query no ORDER BY 如果使用相同的 DBMS 作为 Metastore 那么总是相同的吗 所以 只要使用MySQL作为Metastore 结果的顺序就为aSELECT 查询将始终相同 如
  • 如何使用 Scala 从 Spark 更新 ORC Hive 表

    我想更新 orc 格式的 hive 表 我可以从 ambari hive 视图进行更新 但无法从 sacla spark shell 运行相同的更新语句 objHiveContext sql select from table name 能
  • 如何解决使用 Spark 从 S3 重新分区大量数据时从内存中逐出缓存的表分区元数据的问题?

    在尝试从 S3 重新分区数据帧时 我收到一个一般错误 Caused by org apache spark SparkException Job aborted due to stage failure Task 33 in stage 1
  • 无法在 Presto 中读取数据 - 在 Hive 中可以读取数据

    我有一个 Hive DB 我创建了一个与 Parquet 文件类型兼容的表 CREATE EXTERNAL TABLE default table date date udid string message token string PAR
  • 我们如何确定总数? Hive 表的桶数

    我对 hadoop 有点陌生 根据我的知识桶是固定的 hive 表中的分区数和 hive 使用编号 减速机数量与总数量相同创建表时定义的存储桶数量 那么谁能告诉我如何计算总数 Hive 表中的桶数 有没有计算桶总数的公式 让我们看一个场景
  • Hive 聚集在多个列上

    据我所知 当配置单元表聚集在一列上时 它会执行该分桶列的哈希函数 然后将该行数据放入其中一个桶中 每个桶都有一个文件 即如果有 32 个桶 那么 hdfs 中就有 32 个文件 将 clustered by 放在多个列上意味着什么 例如 假
  • scala/spark 代码不允许在 hive 中添加列

    如果源数据有新列 我尝试在 Hive 表中添加一列 所有新列的检测都运行良好 但是 当我尝试将列添加到目标表时 我收到此错误 for f lt df schema fields if f name chk spark sqlContext
  • hive regexp_extract 怪异

    我在 regexp extract 方面遇到一些问题 我正在查询制表符分隔的文件 我正在检查的列具有如下所示的字符串 abc def ghi 现在 如果我这样做 select distinct regexp extract name 0 f

随机推荐

  • Haskell 和惰性 Monads 评估

    在使用 monad 时 我经常遇到评估问题 现在 我了解了延迟求值的基本概念 但我不明白如何在 Haskell 中延迟求值 monad 考虑下面的代码 module Main where import Control Monad impor
  • Django 删除文件字段

    我正在 Django 中构建一个网络应用程序 我有一个上传文件的模型 但无法删除该文件 这是我的代码 class Song models Model name models CharField blank True max length 1
  • Tomcat 引起:java.util.zip.ZipException:打开 zip 文件时出错

    我有一个 spring mvc 项目 但它抛出了Caused by java util zip ZipException error in opening zip file当我通过 Tomcat 运行它时 如何确定哪个 jar 文件没有正确
  • 如何在IIS7.5中启用ASP经典

    我在 Windows 7 中运行 IIS 7 5 并且已经进入 打开或关闭 Windows 功能 并在 Internet 信息服务 万维网服务 应用程序开发功能 中启用了 ASP 完成此操作后 我开始收到 HTTP 404 错误 由于扩展名
  • 替换日期时间日期中的年份

    我有一个带有一列的表 dateDT 格式为日期时间和年份的变量输入 selYear 在我的 Select 中 格式为 int 如何使用变量输入替换表中日期中的年份并以日期时间格式返回结果 在选择中 我已尝试以下操作 但这返回错误的日期 年份
  • 使用下划线 groupby 按颜色对一组汽车进行分组

    我有一系列的汽车 car make nissan model sunny colour red 我将如何使用 underscore js 按颜色对数组进行分组 我尝试了一些组合 但我不太确定如何指定我的迭代器条件 var carsGroup
  • OSError:无法打开共享对象文件:即使文件位于文件夹中,也没有此类文件或目录

    我已经为此奋斗了很长一段时间了 我正在尝试安装 Yaafe 来提取音频特征 我按照这里的说明操作 https github com Yaafe Yaafe 一切都安装得很好 但是当我尝试运行测试文件 frames py 时 出现以下错误 F
  • C - 在内存被释放()后访问数据?

    我读了很多关于标准 C 中的 malloc 和 free 的内容 据我了解 您malloc 只为了一次记忆 然后你free 同样的记忆只有一次 这可能是不好的做法 但我明白 在你之后malloc 内存 您可以定义多个指向它的指针 而一旦你f
  • 酸洗 scipy interp1d 样条

    我想知道有没有简单的腌制方法interp1dscipy 中的对象 这种天真的方法似乎不起作用 import pickle import numpy as np from scipy interpolate import interp1d x
  • OpenMP 和 NUMA 的关系?

    我有一台双路 Xeon E5522 2 26GHZ 机器 禁用超线程 在支持 NUMA 的 Linux 内核 3 0 上运行 ubuntu 服务器 架构布局为每个插槽 4 个物理核心 OpenMP 应用程序在这台机器上运行 我有以下问题 在
  • 如何创建Python卷积核?

    我正在尝试创建一个卷积核 中间值为 1 5 不幸的是 我不断地想出如何做到这一点的想法 我正在尝试创建类似的东西 Array 0 1 0 1 1 5 1 0 1 0 由于 OpenCV 使用 Numpy 来显示图像 因此您可以简单地使用 N
  • 使用 Carrierwave 清理 tmp 目录

    我使用 Carrierwave 进行图像上传 在我的表单中 我添加了一个用于缓存的隐藏字段 如文档中所述 form for user html multipart true do f p f label image your image f
  • python的csv阅读器可以保留引号吗?

    我想使用 python CSV 阅读器 但我想保留引号 这就是我想要的 gt gt gt s simple split test gt gt gt reader csv reader s delimiter skipinitialspace
  • 通过javascript获取浏览器书签[关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 目前不接受答案 我们想为我们的客户提供在线书签服务 因此 最好还提供一个将本地书签存储到我们的在线工具中的功能 这不应该自动完成 用户应该确认此操作 仅在有人认为我
  • R 是否有像 python 一样的startswith 或endswith 函数? [关闭]

    Closed 这个问题需要细节或清晰度 目前不接受答案 gt startsWith abc a 1 TRUE gt startsWith abc c 1 FALSE gt endsWith abc a 1 FALSE gt endsWith
  • 使用 System.Net.Mail 通过 smtp 服务器加速发送多封电子邮件

    我是 C 的新手 但我从 VB Net 学到了很多关于 Windows Net 编程的知识 我刚刚制作了一个简单的 SMTP 客户端 它可以从程序发送电子邮件 它是一个控制台应用程序 一次只能通过服务器发送一封电子邮件 这非常慢 我需要通过
  • 删除列表框上的滚动条

    我在 vba 中使用 userForm 并且有一个列表框 我想删除霍罗兹 从底部滚动条 有没有办法做到这一点 我在属性框中没有看到任何选项 当您将列表框的列宽格式属性设置为宽 然后根据数据调整控件大小时 就会出现这种情况 它将显示滚动条 要
  • 我可以声明 Type 的变量而不在编译时指定 T 吗?

    如何动态加载 MyContent 类 我有 1interface
  • 如何查看表的日志数据绿屏DB2

    如何查看指定表中的日志数据 我想查看某个表在指定时间范围内发生了什么情况 我使用以下命令获取了表上的信息 DSPFD 文件 P6PRDBDB00 P6OIDPF 获得了日志名称和库 但我不知道如何查看对象 P6OIDPF I did go
  • hive 中的映射类型变量

    我在尝试在配置单元中定义地图类型时遇到问题 根据蜂巢手册肯定有地图类型 不幸的是没有任何关于如何使用它的示例 假设 我有一个包含以下列的表 用户 Name Ph CategoryName 此 CategoryName 列具有一组特定的值 现