分发缓存实际上意味着什么?将文件放在分布式缓存中意味着它在每个datanode中都可用,因此该数据不会有节点间通信,或者它是否意味着该文件在每个节点的内存中?如果没有,通过什么方式我可以在整个工作的内存中有一个文件?这可以用于map-reduce和UDF.
(特别是有一些配置数据,相对较小,我想保留在内存中,因为UDF适用于配置单元查询...?)
谢谢和问候,Dhruv Kapur.
如果我们要打印/记录一个简单的变量,例如
lazy val config = ConfigFactory.load()
Run Code Online (Sandbox Code Playgroud)
并检查其在sbt中的价值,那么我们该怎么做?
当我在sbt shell中键入它时,我得到:
> config
[error] Not a valid command: config
[error] Not a valid project ID: config
[error] Expected ':' (if selecting a configuration)
[error] Not a valid key: config (similar: configuration, deploy-configs, conflictManager)
[error] config
Run Code Online (Sandbox Code Playgroud) 所以我很困惑为什么用 Futures 映射一个迭代器会使它按顺序运行。考虑以下代码 -
import org.scalameter._
object IteratorVsListInFutures extends App {
def slowFunction = Thread.sleep(1000)
import scala.concurrent.ExecutionContext.Implicits.global
import scala.concurrent._
import duration._
println("Should take approximately 4000 ms or 4 sec")
println{
withWarmer(new Warmer.Default) measure {
List(1,2,3,4).foreach(_ => slowFunction)
}
}
println("Should take approximately 1 second")
println {
withWarmer(new Warmer.Default) measure {
val futures: Seq[Future[Unit]] = List(1,2,3,4).map(_ => Future { slowFunction})
futures.foreach(x => Await.result(x, 10.seconds))
}
}
println("And how long does this take")
println {
withWarmer(new Warmer.Default) measure {
val futures = …Run Code Online (Sandbox Code Playgroud) 所以我有一个简单的html页面:
<h1>Start</h1>
<canvas class="myCanvas" width="400" height="400"></canvas>
<canvas class="myCanvas" width="400" height="400"></canvas>
Run Code Online (Sandbox Code Playgroud)
在jquery我做,
> $(".myCanvas")
| [<canvas class=?"myCanvas" width=?"400" height=?"400">?,
| <canvas class=?"myCanvas" width=?"400" height=?"400">?]
Run Code Online (Sandbox Code Playgroud)
然后,
> $(".myCanvas").first()
| [<canvas class=?"myCanvas" width=?"400" height=?"400">?]
Run Code Online (Sandbox Code Playgroud)
我认为我应该在第一个()方法的调用中得到一个元素,就像在
> $(".myCanvas").get(0)
| <canvas class=?"myCanvas" width=?"400" height=?"400">?
Run Code Online (Sandbox Code Playgroud)
那么为什么第一个方法返回一个数组..?