我们有一个Spark 1.2.0的实例,我们可以运行命令show tables like 'tmp*';
,使用beeline连接到thrift服务器端口,没有问题。我们在同一台机器上对Spark 1.4.0进行了测试,但是当我们在Spark 1.4.0上运行相同的命令时,我们收到以下错误:
0: jdbc:hive2://localhost:10001> show tables like 'tmp*';
Error: java.lang.RuntimeException: [1.13] failure: ``in'' expected but identifier like found
show tables like 'tmp*'
^ (state=,code=0)
0: jdbc:hive2://localhost:10001>
我在这台机器上下载了Spark 1.3.0,并在运行show tables like 'tmp*'
时出现与上述相同的错误。
有没有人知道Spark SQL 1.3.0+中是否有类似命令允许使用通配符返回给定模式的表?
这是在运行CDH 5.3.0的计算机上完成的。如果重要的话,Hive版本为Hive 0.13.1-cdh5.3.0
。
答案 0 :(得分:3)
您可以在Spark-SQL shell上使用以下命令
sqlContext.tables().filter("tableName LIKE '%tmp%'").collect()
答案 1 :(得分:0)
$ spark-shell
scala> sql("show tables like 'tmp*'").show()