SAP HANA VORA 和 Hana 连接
SAP HANA VORA and Hana CONNECTION
我想使用 SAP HANA Vora 从 Spark-shell 访问已经存在于 SAP HANA 中的 table。
我使用此命令创建了 table:
sqlContext.sql( s"""
CREATE TABLE ztemptest
USING
com.sap.spark.hana
OPTIONS (
path "ztemptest",
host "${HANA_HOSTNAME}",
dbschema "${HANA_SCHEMA}",
user "${HANA_USERNAME}",
passwd "${HANA_PASSWORD}",
instance "${HANA_INSTANCE}"
)
""".stripMargin )
如果我执行 show table 命令,它会显示 table 名称,但是当我执行 sqlContext.sql("select * from ztemptest").show
时,我得到的错误是在下面的屏幕截图中看到
您还需要提供架构名称。
给出如下代码:
%vora
CREATE TABLE TABLENAME
USING com.sap.spark.hana
OPTIONS (
path "HANATABLENAME",
dbschema "SCHEMANAME",
host "HANA SYSTEM HOST NAME",
instance " INSTANCENUMBER",
user "USERNAME",
passwd "PASSWORD"
)
使用 HANA 数据源 (com.sap.spark.hana
),您可以查询 HANA 中的现有 table 或在 HANA 中创建新的 table。如果要查询现有的 table,您可以提供 HANA table 的列+数据类型信息,也可以不提供。如果您不提供它,则会自动从 HANA 查询架构元数据。
该错误表明提供了架构信息(可能在较早的执行中),table 存在于 HANA 中,并且 Vora 中的架构信息与 HANA 中的 table 定义不匹配。
您能否删除现有的 table 定义(show tables
为空)并使用您发布的命令重新创建它(不提供列信息)。
我想使用 SAP HANA Vora 从 Spark-shell 访问已经存在于 SAP HANA 中的 table。
我使用此命令创建了 table:
sqlContext.sql( s"""
CREATE TABLE ztemptest
USING
com.sap.spark.hana
OPTIONS (
path "ztemptest",
host "${HANA_HOSTNAME}",
dbschema "${HANA_SCHEMA}",
user "${HANA_USERNAME}",
passwd "${HANA_PASSWORD}",
instance "${HANA_INSTANCE}"
)
""".stripMargin )
如果我执行 show table 命令,它会显示 table 名称,但是当我执行 sqlContext.sql("select * from ztemptest").show
时,我得到的错误是在下面的屏幕截图中看到
您还需要提供架构名称。
给出如下代码:
%vora
CREATE TABLE TABLENAME
USING com.sap.spark.hana
OPTIONS (
path "HANATABLENAME",
dbschema "SCHEMANAME",
host "HANA SYSTEM HOST NAME",
instance " INSTANCENUMBER",
user "USERNAME",
passwd "PASSWORD"
)
使用 HANA 数据源 (com.sap.spark.hana
),您可以查询 HANA 中的现有 table 或在 HANA 中创建新的 table。如果要查询现有的 table,您可以提供 HANA table 的列+数据类型信息,也可以不提供。如果您不提供它,则会自动从 HANA 查询架构元数据。
该错误表明提供了架构信息(可能在较早的执行中),table 存在于 HANA 中,并且 Vora 中的架构信息与 HANA 中的 table 定义不匹配。
您能否删除现有的 table 定义(show tables
为空)并使用您发布的命令重新创建它(不提供列信息)。