我想使用 Zeppelin 来查询数据库。我目前看到两种可能性,但对我来说都不够:
- 将数据库连接配置为“解释器”,将其命名为例如“sql1”,在段落中使用它,运行 SQL 查询并使用内置的漂亮绘图工具。似乎所有教程和技巧都涉及它,但随后文档突然停止了!但我想对数据做更多的事情:我想过滤和处理。如果我想再次绘制它(有其他限制),我必须再次执行查询(可能持续几秒钟或几分钟)(请参阅我的其他问题 Zeppelin SQL: reuse data of query without another interpreter or a new query )
- 将 Spark 与 python、scala 或类似工具一起使用。但文档似乎只是加载 csv 数据,放入数据框中,然后使用 sql 访问该数据框。首先没有使用sql访问数据。如何以最佳方式访问 sql 数据?我可以使用已配置的“解释器”(数据库连接)吗?
最佳答案
您可以使用 Zeppelin API 检索段落数据:
val buffer = scala.io.Source.fromURL("http://XXXXX:9995/api/notebook/2CN2QP93H/paragraph/20170713-092810_1633770798").mkString
val df = sqlContext.read.json(sc.parallelize(buffer :: Nil)).select("body.text")
df.first.getAs[String](0)
此 Spark Scala 行将检索 paragprah 使用的 SQL 查询。我认为你可以做同样的事情来获得结果。
关于python - 齐柏林飞艇 : What the best way to query data with SQL and work with it?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45029674/