小编rog*_*one的帖子

不必要的IO和产品加入指标

什么是Teradata中的不必要的IO和产品加入指标.如何为查询确定这些指标?

teradata

5
推荐指数
1
解决办法
3363
查看次数

sbt 子项目的项目目录

sbt 子项目可以有自己的project目录吗?或者只有根项目可以使用 .scala 帮助文件为构建项目目录?。下面是我目前的构建结构。在/my-project/sub-projects/sub-project-1/build.sbt无法定义访问对象/my-project/sub-projects/sub-project-1/SubProjectHelper.scala

/my-project
  build.sbt
  /projects
    Helper.scala
  sub-projects
    sub-project-1
      build.sbt
      /projects
        SubProjectHelper.scala
Run Code Online (Sandbox Code Playgroud)

更新: sub-project-1/build.sbt 中的以下 sbt 定义

lazy val localhost = (project in file(".")).settings (
    name := """localhost""",
    version := Common.version,
    scalaVersion := Common.scalaVersion,
    libraryDependencies ++= Common.dependencies,
    libraryDependencies ++= Localhost.dependencies
)
Run Code Online (Sandbox Code Playgroud)

因以下错误而失败

    libraryDependencies ++= Localhost.dependencies
                            ^
sbt.compiler.EvalException: Type error in expression
    at sbt.compiler.Eval.checkError(Eval.scala:384)
    at sbt.compiler.Eval.compileAndLoad(Eval.scala:183)
    at sbt.compiler.Eval.evalCommon(Eval.scala:152)
    at sbt.compiler.Eval.evalDefinitions(Eval.scala:122)
    at sbt.EvaluateConfigurations$.evaluateDefinitions(EvaluateConfigurations.scala:271)
    at sbt.EvaluateConfigurations$.evaluateSbtFile(EvaluateConfigurations.scala:109)
    at sbt.Load$.sbt$Load$$loadSettingsFile$1(Load.scala:712)
Run Code Online (Sandbox Code Playgroud)

Common 定义在 /my-project/projects/Common.scala 中并且没有问题。但是Localhost定义在/my-project/sub-projects/sub-project-1/projects/SubProjectHelper.scala在sub-project-1 build.sbt中没有正确解析

scala sbt

5
推荐指数
1
解决办法
714
查看次数

Scala Future/Promise快速失败管道

我希望并行启动两个或更多的Future/Promise,即使其中一个已启动的Future/Promise失败并且不想等待其余的完成,也会失败.在Scala中组合此管道的最惯用方法是什么.

编辑:更多上下文信息.

我必须启动两个外部进程,一个写入fifo文件,另一个从中读取.假设作者进程失败; 读者线程可能永远挂起等待文件的任何输入.因此,我希望并行启动这两个进程并快速失败,即使其中一个Future/Promise失败而没有等待另一个进程完成.

下面是更准确的示例代码.命令并不完全cattail.我使用它们是为了简洁.

val future1 = Future { executeShellCommand("cat file.txt > fifo.pipe") }
val future2 = Future { executeShellCommand("tail fifo.pipe") }
Run Code Online (Sandbox Code Playgroud)

multithreading scala promise

5
推荐指数
1
解决办法
715
查看次数

Jsch会话配置

我在ssh配置文件中有如下所示的内容.我将不得不将相同的配置设置为我的Jsch会话.Jsch支持如下设置配置

session.setConfig(String name, String value);
session.setConfig(HashTable config);
session.setConfig(Properties config);
Run Code Online (Sandbox Code Playgroud)

但似乎没有一个支持分层嵌套设置(即设置仅适用于一系列主机)

Host git.*
  User git
  ProxyCommand ssh -q github.example.com nc git %p
Run Code Online (Sandbox Code Playgroud)

打开其他建议,例如创建SSH隧道或其他.

java ssh jsch ssh-tunnel

4
推荐指数
1
解决办法
9282
查看次数

Scala与Classes的多重继承

为什么Scala不支持普通类的多重继承?我们不能应用相同的线性化逻辑我们也适用于Traits的类吗?这应该是可能的,因为它是通过C3线性化在Python中实现多重继承(使用普通类)的方式.

oop scala

3
推荐指数
1
解决办法
112
查看次数

我无法理解Scala Spark中的'RDD.map {case(A,B)=> A}'

我对Scala Spark比较陌生.我有一个map方法的问题.

我的理解:map是一个RDD方法,它接受一个函数作为其参数,如:map(line => line.split(","))

我发现很难理解这种表达方式.

val uniqueUsers = data.map { case (user, product, price) => user }.distinct().count()
Run Code Online (Sandbox Code Playgroud)

有人可以为我解释两件事:

  1. 为什么{}不使用()
  2. 我可以case (user, product, price) => user视为一种功能吗?如果没有,那是什么?

先感谢您.

scala apache-spark

3
推荐指数
1
解决办法
4240
查看次数

S3并行读写性能如何?

考虑一个场景,Spark(或任何其他Hadoop框架)从S3读取大文件(例如1 TB)。多个Spark执行程序如何从S3并行读取非常大的文件。在HDFS中,这个非常大的文件将分布在多个节点上,每个节点都有一个数据块。在对象存储中,我认为整个文件将位于单个节点中(忽略副本)。这将大大降低读取吞吐量/性能。

同样,在HDFS中,大型文件的写入也应该比S3快得多,因为HDFS中的写入将分散在多个主机上,而所有数据都必须通过S3中的一台主机(忽略复制)。

因此,这是否意味着与大数据世界中的HDFS相比,S3的性能明显较差。

parallel-processing hadoop amazon-s3 apache-spark

3
推荐指数
1
解决办法
1176
查看次数

在挂起的函数中调用协同例程构建器(启动、异步)时,coroutineContext 不明确

我有一个Runner实现CoroutineScope接口的类,如下所示。它有一个名为 的挂起函数run。当我在此挂起函数中使用协同例程构建器函数(launch, )时,我收到以下警告asyncrun

由于挂起函数的 CoroutineScope 接收器而导致的 coroutineContext 不明确

该类Runner实现了一个 coroutineContext 属性。有人可以解释警告消息背后的逻辑吗?

class Runner: CoroutineScope {

    override private val coroutineContext = Dispatchers.IO

    suspend fun run()  {
           val job1 = launch { delay(2000); println("launching job1") }
           val job2 = launch { delay(2000); println("launching job2") }
           listOf(job1, job2).forEach { it.join() }
    }

}
Run Code Online (Sandbox Code Playgroud)

kotlin kotlin-coroutines

3
推荐指数
1
解决办法
1451
查看次数

指定GridBagLayout中的网格数

GridLayout 创建一个网格矩阵,其维度(没有行和列)可以使用两个int参数进行自定义,这些参数作为其构造函数的一部分.

为什么我们没有这样的选择GridBagLayout呢?

在使用a的典型场景中Gridbaglayout,如果我想要将组件放置在极右或中间或任何其他任意位置,如果我知道Grid Matrix的大小,那会不会有帮助.

java swing layout-manager grid-layout gridbaglayout

2
推荐指数
1
解决办法
263
查看次数

Spark如何解析字符串中的系统属性(没有字符串插值)?

我在这个博客中看到了以下片段

val warehouseLocation = "file:${system:user.dir}/spark-warehouse"
val spark = SparkSession
   .builder()
   .appName("SparkSessionZipsExample")
   .config("spark.sql.warehouse.dir", warehouseLocation)
   .enableHiveSupport()
   .getOrCreate()
Run Code Online (Sandbox Code Playgroud)

如何user.dir在warehouseLocation值中替换系统属性.不应该是字符串s"file:${System.getProperty("user.dir")}/spark-warehouse"

scala apache-spark apache-spark-sql

1
推荐指数
1
解决办法
378
查看次数