问题标签 [impala]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sql - Impala 上的 Pentaho CDE 参数化查询
我正在尝试使用 ${parameter_name} 表示法在 Impala 上执行来自 Pentaho(版本 5.0.6)CDE 的参数化查询。我发现如果我删除参数并在 SQL 查询中对值进行硬编码,一切正常,但如果我输入参数,一切都会停止使用通用错误消息“错误处理组件”(我正在使用CDE 的表组件以显示值)。在 pentahobaserver-stdout 日志文件中,我发现了以下异常:
这似乎是一个过于笼统的错误消息(由这个错误http://jira.pentaho.com/browse/CDA-79引起)
在网上进行了更多调查后,我想我遇到了这个问题。现在我既不能避免使用参数,也不能避免使用 Pentaho 或使用 Impala,因此,我被卡住了。这个问题有解决方法吗?
先感谢您 :)
sql - 什么是 Impala 中 ORACLE 的 SYSDATE 的等价物?
我有一个 WHERE 子句,我正在尝试将 ORACLE SQL 转换为 Impala SQL。col2 输出看起来像 201406。我需要让 Impala 可读,然后对其进行格式化,然后将其转换为字符串。任何帮助将非常感激!
json - 从存储在 hbase 中的 json 对象中查询多个列
我们有一个 json 数据存储在一个列族下,它有几个名称/值对。我们使用不同的名称/值组合查询这些数据,这些查询并不特别倾向于任何名称/值对(这使得很难将它们分解为列族)。
- 提高这些查询性能的最佳方法是什么?诸如二级索引或黑斑羚或凤凰之类的东西会有所帮助吗?
- 将它们分成多个列族会有所帮助吗?考虑到 hbase 最适合 2 或 3 个列族,不确定这是否是正确的做法。
- 什么是存储嵌套数据或 json 数据以实现良好查询性能的好系统?像apache钻这样的东西会有帮助吗?
memory - Cloudera Impala 的内存配置
我正在使用 Impala,我知道 impala 在内存中进行处理。我已经搜索了 Impala 配置选项列表,但我没有找到任何完整的文档,特别是关于内存/堆的文档。Impala 有这样的设置吗?还是它依赖于 hdfs/datanode 堆空间?我知道您可以使用 来限制 impala 内存使用量-mem_limit
,但我试图更好地了解这是如何完成的。
sql - 在 Impala SQL 中使用 GROUP BY 进行 ORDER BY
作为一个研究项目,我决定通过设置整个 CDH5 环境来使用 Cloudera Impala。然后我决定使用查询数据。由于某种原因,简单的 ORDER BY 不适用于在 Impala SQL 中使用的 GROUP BY 语句。Impala 是否支持此功能?
这是我的查询在没有排序的情况下的样子:
结果:
现在以下查询不起作用:
结果:
解释显示如下:
对此有什么想法吗?
hadoop - Hive/Impala 中的多维分析
我有一个非规范化的表说销售看起来像:
SalesKey、SalesOfParts、SalesOfEquipments、CostOfSales 作为一些数字度量行业、国家、州、销售区域、设备 ID、客户 ID、销售年份、销售月份和一些更相似的维度。(共12个维度)
我需要支持对销售的聚合查询,例如一年、一个月的销售总数……它们的总成本等。这些聚合也需要过滤,即类似于 2013 年的总销售额,04 年属于制造业XYZ 客户的行业。
我在 hive/impala 中有这些维度表和事实。
我不认为我可以在所有维度上制作一个立方体。我阅读了一篇论文以了解如何在多个维度上进行 OLAP: http ://www.vldb.org/conf/2004/RS14P1.PDF
这基本上建议在小片段上实现多维数据集,并在查询跨越多个多维数据集时进行某种运行时计算。
我不确定如何在 Hive/Impala 中实现这个模型。任何指示/建议都会很棒。
编辑:我在 Sales 表中有大约 1000 万行,并且维度无法与 100 相比,但大约为 12(可能高达 15),但每个都有很好的基数。
impala - 如何访问 Impala 解析器
Impala 是否重用 hive SQL 解析器?
我正在尝试编写自定义 Java 代码来检查我的应用程序中的查询正确性。我正在寻找一个可以使用 sql 查询的 api,并让我知道它在语法上对于 impala 是否正确。
如何从自定义 Java 代码访问解析器以检查查询兼容性?
mysql - hive-metastore 无法在 cloudera manager 安装过程中启动
我们正在安装Cloudera CDH4
,Ubuntu 12.04 LTS
在安装步骤中,我们卡在 hive 元存储启动。我们已按照下载文档中的建议配置了meta-store
with 。MySQL
它给了我们以下错误:
在日志文件中显示以下错误:
以下是输出hive-site.xml
文件:
我们的主要重点是安装impala
. 如果我们使用默认的德比。Hive 元存储运行良好。但是当我们开始时impala-shell
。它向我们显示未连接。我们能做些什么来纠正这个问题?
任何人都可以帮助我们解决这个错误。
tomcat - 如何在没有 ClassNotFound 异常的情况下在 Apache Tomcat 中配置 Impala/Hive2 JDBC 驱动程序
我正在尝试将 Impala/Hive2 JDBC 驱动程序添加到使用 Tomcat 7 (7.0.54) 部署的现有应用程序中。其他 JDBC 驱动程序工作正常(Oracle、MS SS、SyBase)。
但是,驱动程序从不连接并且总是抛出不会被 Eclipse (Kepler) 中的 Java (JDK 1.7.0_55) 捕获的异常。这是在 Windows 8.1 Lenovo T500 笔记本电脑上完成的。没有有意义的错误消息或堆栈跟踪。
为了找出错误发生的位置,我获取了 Hive 源代码并制作了一个简单的 Java 程序来测试在 DEBUG 中单步执行的 JDBC 连接。没有在 jar 中的缺失类的引用错误比Clouder 的文档中指定的要少。HiveConnection.java (org.apache.hive.jdbc) 中存在以下错误:
我追踪了这些类存在的位置,并将以下 jar 添加到我制作的 UserLibrary 中:
添加后httpclient
,仍然存在引用错误
我跟踪到: httpcore-4.2.4.jar
独立 Java 程序成功连接到 Impala 守护程序。我将这些 jar 与 JDBC 包一起作为 Java 源代码添加到 Tomcat /WEB-INF/ib/ 文件夹中。Tomcat 遇到了一些问题,包括无法发布 IndexOutOfBounds 异常。我发现这主要是由于hadoop-common
罐子。我能够通过彻底清理 Tomcat 定义和项目并将这个 jar 添加为最后一个来发布它。还是试了几次。
然后,运行应用程序也停止,但在 DriverManager.getConnection(connstr) 处出现异常。这些错误总是与没有看到加载到 /WEB-INF/lib/ 文件夹中的 jar 文件中的各种类有关。删除然后重新导入它们按以下顺序遍历这些错误:
的最后一个奇数错误HIVE_CLI_SERVICE_PROTOCOL_V6
。后者很难追踪,直到我在 HiveConnection.java 的 Java 代码中看到它HIVE_CLI_SERVICE_PROTOCOL_Vx
被添加到 supportedProtocols 集合中。这用于检查来自 Impala 的响应,如果 Impala 使用不在列表中的响应,则连接被取消。在我拥有的版本中,使用了 V1-V3。我发现 SVN 上的最新源代码是 V7,但这些在 CDH5 附带的 JDBC 代码中没有使用。
执行另一个循环删除所有内容,然后添加库 jar,然后将 JDBC 的源代码(因此没有添加 JDBC jar)添加到我的 Tomcat Java/src 文件夹中的包中:
终于,我能够在 DEBUG 中单步调试 HiveConnection 并成功进行通信,并且可以检查来自 Impala 的响应。它响应它正在使用____V1 协议,因此它被接受了。
由于文档声明只需要一些 jar,但我发现还需要几个以满足 import 语句,我如何配置 Tomcat 以便仅使用分布式 JDBC 驱动程序及其支持 jar?我怀疑Tomcat如何进行类加载可能存在问题,因为我注意到Catalina.jar及其类加载器中发生了杀手级异常(没有源代码,所以我不知道确切的位置或原因)。
sql - 在 R 中使用 rimpala 将插入插入到查询中
我正在尝试使用函数insert into
对 impala 表执行查询,但出现错误。我正在执行的查询是:rimpala.query()
R
其中data_frame1
是具有一堆行的数据框,nrow
是 中的行数data_frame1
。第一条insert into
语句执行并将第一个数据插入到数据库中,但在执行之后它会抛出一个错误,因为
Error in rimpala.query(sql) : SQL error Error: The query did not generate a result set!
如何消除此错误?