怎么查看spark中用spark-sql建立的数据仓库
时间: 2023-11-22 13:46:55 浏览: 32
在Spark中,可以使用Spark SQL建立数据仓库。要查看已经建立的数据仓库,可以使用以下步骤:
1. 打开Spark SQL命令行界面,可以使用以下命令:`spark-sql`
2. 在命令行界面中,使用以下命令查看所有的数据库:`show databases;`
3. 选择要查看的数据库,使用以下命令:`use database_name;`
4. 查看该数据库中的所有表,使用以下命令:`show tables;`
如果想要查看表的结构,可以使用以下命令:`describe table_name;`
相关问题
spark sql equalTo
`equalTo` 是 Spark SQL 中用于比较两个表达式是否相等的函数。它返回一个布尔值,如果两个表达式相等,则为 true,否则为 false。
例如,以下代码将创建一个 DataFrame,并使用 `equalTo` 函数比较两个列是否相等:
```scala
import org.apache.spark.sql.functions._
val df = Seq((1, "foo"), (2, "bar"), (3, "baz")).toDF("id", "value")
df.select(col("id"), col("value"), equalTo(col("id"), col("value")) as "equal").show()
```
输出结果为:
```
+---+-----+-----+
| id|value|equal|
+---+-----+-----+
| 1| foo|false|
| 2| bar|false|
| 3| baz|false|
+---+-----+-----+
```
可以看到,由于 `id` 和 `value` 列的值不相等,因此 `equalTo` 函数返回了 false。
在数据库中用spark删除type列中的异常数据"" Igiari! Season 2"和Igi Ari!"
可以使用Spark SQL中的`WHERE`子句来过滤掉这两个异常数据,然后再将过滤后的数据写回到数据库中。具体操作可以如下:
```scala
import org.apache.spark.sql.functions._
// 读取数据库中的数据
val df = spark.read.jdbc(jdbcUrl, "table_name", connectionProperties)
// 过滤掉type列中的异常数据
val filteredDf = df.filter(col("type") =!= """" Igiari! Season 2""" and col("type") =!= "Igi Ari!")
// 将过滤后的数据写回到数据库中
filteredDf.write.mode("append").jdbc(jdbcUrl, "table_name", connectionProperties)
```
这里假设`jdbcUrl`和`connectionProperties`已经正确设置。代码中首先使用`spark.read.jdbc`方法读取数据库中的数据,然后使用`filter`方法过滤掉type列中的异常数据,最后使用`write.jdbc`方法将过滤后的数据写回到数据库中。