当前位置: 首页 > 知识库问答 >
问题:

Scala中DSE Cassandra的Spark SQL查询

漆雕宏浚
2023-03-14

我想在Scala IDE中测试DSE Cassandra表上的Spark-SQL查询。当在dse spark-submit中执行jar文件时,查询将完美无缺地运行。但在Scala IDE中运行时会出现错误。错误是,

我想是spark主机配置错误,因为我在本地模式下运行主机。

这是我发起的星火会议。

val spark = SparkSession
          .builder()
          .appName("CassandraSpark")
          .config("spark.cassandra.connection.host", "127.0.0.1")
          .config("spark.cassandra.connection.port", "9042")
          .enableHiveSupport()
          .master("local")
          .getOrCreate();

但我不知道该把什么地址设为主人。我尝试将主地址设置为“spark://127.0.0.1:7077”,这是我启动Cassandra时从Web UI(localhost:7080)找到的。但是,它仍然给出了如下错误

共有1个答案

唐俊爽
2023-03-14

您不需要硬编码Cassandra IPs,或者Master-只需创建SparkSession对象,它就会工作。下面是工作代码(Java):

SparkSession spark = SparkSession
  .builder()
  .appName("CassandraSpark")
  .getOrCreate();

Dataset<Row> sqlDF = spark.sql("select * from test.t1 limit 1000");
sqlDF.printSchema();
sqlDF.show();

在DSE中,如果提交到分布式集群,可以将master指定为DSE:/code,DSE将自动查找当前master。文档中描述了所有可能的选项。

 类似资料:
  • <code>Spark</code>版本为1.3.0。 来自< code > sqlcontext . Scala (https://github . com/Apache/spark/blob/master/SQL/core/src/main/Scala/org/Apache/spark/SQL/sqlcontext . Scala)的源代码: 我真的不能理解上面的代码。 是如何工作的? (_)

  • 我正在尝试使用一个继承的Scala函数(stuctType.diff())并获得一个NoSuchMethodError。 有人有什么想法吗?我使用的是Spark 1.6.2和Scala 2.10

  • 我正在运行一个简单的sparkSQL查询,它在2个数据集上进行匹配每个数据集大约500GB。所以整个数据大约是1TB。 作业工作良好,直到数据加载(分配了10K任务)。在行分配了200个任务。失败的地方!我知道我不是在缓存一个巨大的数据,它只是一个数字,为什么它会在这里失败。 以下是错误详细信息:

  • 我只想问一下如何在Spark中成功使用checkpointInterval的细节。你在ALS代码中的这个注释是什么意思https://github.com/apache/spark/blob/master/mllib/src/main/scala/org/apache/spark/mllib/recommendation/ALS.scala 如果未在[[org . Apache . spark .

  • 我对Spark和Scala非常陌生(比如两个小时的新体验),我正在尝试玩CSV数据文件,但我无法做到,因为我不确定如何处理“标题行”,我在互联网上搜索了加载或跳过它的方法,但我真的不知道怎么做。我正在粘贴我正在使用的代码,请帮助我。

  • 这些查询是:select*from t1 where col1='123'[t1由col1 bucketted]select*from t1 where col2='123'[col2不是bucketting列]我的问题是 > 如何确定在查询执行期间正在进行全表扫描还是正在进行相关的部分表扫描? 我能从DAG或物理计划中得到任何信息吗?我两个都看过,但我看不出有什么不同,就像我在物理计划中看到的那