scala- все статьи тега


Как обновить документ в драйвере MongoDB Java 3

Каков идиоматический способ апсертировать документ, используя версию 3 драйвера mongodb java (в частности, v3. 0. 1)? У нас есть коллекция для сеансов, и когда новый сеанс создается или изменяется, мы хотим вставить его в одну операцию - вместо того, чтобы запрашивать, существует ли еще документ, а затем вставлять или заменять. Наш старый код upsertion использовал драйвер scala casbah 2.7.3. Это выглядело так: import com.mongodb.casbah.MongoCollection import com.mongdb.DBObject val sessionC ...

Как создать SparkSession из существующего SparkContext

У меня есть приложение Spark, которое использует Spark 2.0 new API с SparkSession. Я строю это приложение поверх другого приложения, которое использует SparkContext. Я хотел бы передать SparkContext в мое приложение и инициализировать SparkSession, используя существующий SparkContext. Однако я не мог найти способ, как это сделать. Я обнаружил, что SparkSession конструктор с SparkContext является частным, поэтому я не могу инициализировать его таким образом, и builder не предлагает никакого мет ...

Есть ли способ, которым я могу получить "идентификатор отчета" Гатлинга?

Когда Gatling создает тестовый отчет, он называет каталоги отчетов как {{simulationId}}-{{someLongNumberId}} (Пример - single_user_test-1507218111111) Есть ли способ, которым я могу получить это число после завершения нагрузочного теста (в "после" крюка, возможно?) Причина, по которой я хочу сделать это, состоит в том, чтобы создать путь для получения файла js/stats.json в папке отчетов о тестировании и получить объекты minResponseTime, maxResponseTime, meanResponseTime. Я новичок в scala / ...

Как отсортировать коллекцию списков в лексикографическом порядке в Scala?

Если A имеет свойство Ordered[A], я хотел бы иметь код, который работает следующим образом val collection: List[List[A]] = ... // construct a list of lists of As val sorted = collection sort { _ < _ } И получить что-то, где списки были отсортированы в лексикографическом порядке. Конечно, только потому, что A имеет признак Ordered[A], не означает, что List[A] имеет Признак Ordered[List[A]]. Предположительно, однако, 'скала' способом сделать это-неявное определение. Как я неявно преобразую ...

Будет ли scala автоматически закрывать входной поток?

Я новичок в scala и не знаком с механизмом закрытия потока. Я написал такой код. def loadResourceAsString(path: String) = { val is = this.getClass().getResourceAsStream(path) Source.fromInputStream(is).getLines().mkString("n") } Я нашел это в исходном коде scala. Source вернет BufferedSource, который переопределяет метод close для закрытия входного потока. def fromInputStream(is: InputStream)(implicit codec: Codec): BufferedSource = createBufferedSource(is, reset = () => fromI ...

Интерпретировать синтаксис Scala для varargs [дубликат]

Возможный дубликат:синтаксис сахара: _* Я написал функцию, которая получает переданную строку формата (for String.формат(...)) и массив параметров varargs (среди прочего). Метод выглядит следующим образом: def myMethod(foo: Number, formatStr: String, params: Any*): Unit = { // .. some stuff with foo println(formatStr, params.map(_.asInstanceOf[AnyRef]) : _*) } Я получил синтаксис для аргумента paramsздесь . Это работает! Но как это сделать? Я не понимаю синтаксиса второго аргумен ...

Добавление элемента в Seq в scala

Я работаю с scala play 2 с slick. У меня есть Seq, как val customerList: Seq[CustomerDetail] = Seq(CustomerDetail("id", "status", "name")) Я хочу добавить элемент CustomerDetail в этот список клиентов. Как я могу это сделать? Я уже пробовал customerList :+ CustomerDetail("1", "Active", "Shougat") Но это не делать ничего. ...

Как я могу распараллелить цикл for в spark с scala?

Например, у нас есть файл parquet с ценой закрытия 2000 биржевых символов за последние 3 года, и мы хотим рассчитать 5-дневную скользящую среднюю для каждого символа. Поэтому я создаю spark SQLContext, а затем val marketData = sqlcontext.sql("select DATE, SYMBOL, PRICE from stockdata order by DATE").cache() Чтобы получить список символов, val symbols = marketData.select("SYMBOL").distinct().collect() А вот цикл for: for (symbol <- symbols) { marketData.filter(symbol).rdd.sliding( ...

Scala: создание небольшого исполняемого файла Jar на основе внешних библиотек Scala

Я пытаюсь упаковать небольшое приложение (все еще изучаю Scala!) в "чистом виде". Цель состоит в том, чтобы иметь исполняемый файл JAR. Я сделал следующее: упаковал банку с помощью sbt - > будет работать с scala -cp myjarfile.jar MyClass Или java -classpath pathtoscala-library.jar;myjarfile.jar MyClass Но не будет работать с java -jar myjarfile.jar Потому что тогда scala/ScalaObject не может быть найден. И нет смысла добавлять путь к классу на этом последнем, так как па ...

Производительность программы Spark-GC & десериализация задач и параллельное выполнение

У меня есть кластер из 4 машин, 1 Мастер и три рабочих, каждый с памятью 128 г и 64 ядрами. Я использую Spark 1.5.0 в автономном режиме. Моя программа считывает данные из таблиц Oracle с помощью JDBC, затем делает ETL, манипулируя данными, и выполняет задачи машинного обучения, такие как k-means. У меня есть фрейм данных (myDF.cache ()), который объединяет результаты с двумя другими фреймами данных и кэшируется. Фрейм данных содержит 27 миллионов строк, а размер данных составляет около 1,5 G. ...

Как рекурсивно найти самый большой элемент в списке целых чисел?

Я пытаюсь написать функцию, которая рекурсивно найдет самый большой элемент в списке целых чисел. Я знаю, как это сделать на Java, но не могу понять, как это сделать в Scala. Вот что у меня есть до сих пор, но без рекурсии: def max(xs: List[Int]): Int = { if (xs.isEmpty) throw new java.util.NoSuchElementException(); else xs.max; } Как мы можем найти его рекурсивно с семантикой Scala. ...

Способ takeWhile Scala с метод использовать-foldleft и foldRight

Мне нужно сделать takeWhile (), используя foldLeft () и foldRight (). Я придумал вот что: def takeWhile(ls:List[Int], p:Int => Boolean): List[Int] = { ls.foldLeft(List[Int]())(a,z) => if (p(z)) z :: a else a) } def takeWhile(ls:List[Int], p:Int => Boolean): List[Int] = { ls.foldRight(List[Int]())(a,z) => if (p(a)) a :: z else z) } , но метод использовать-foldleft, когда я называю takeWhile(List(1,2,3,4,5), _< 3) takeWhile(List(1,2,3,4,5), _> 4) tak ...

LocalDateTime как общее количество наносекунд

Я работаю с объектами LocalDateTime и хотел бы сохранить их в виде Long с точностью до наносекунды. Я пытался конвертировать между Instant представлением, но пока безуспешно. Например: localDateTime.toInstant(ZoneOffset.UTC).getNano Возвращает только нано-секундный сегмент localDateTime - Есть ли способ вернуть полное значение в наносекундах? Аналогично toEpochSecond, но не в секундах, а в наносекундах? ...

Многомерная полиномиальная регрессия (предпочтительно C / C++, Java или Scala)

Учитывая набор (N+1)-мерных вещественных векторов с N независимыми и 1 зависимыми значениями, я хотел бы вычислить полином степени 1 (линейный), 2 (квадратичный) или выше, который обеспечивает достаточно хорошее соответствие (например, как определено ошибкой наименьших квадратов). Другими словами, при применении к элементам коллекции полином должен сопоставлять независимые значения каждого из них с соответствующим зависимым значением (с некоторой разумной погрешностью). Я ожидаю, что размерност ...

Я хочу получить тип переменной во время выполнения

Я хочу получить тип переменной во время выполнения. Как мне это сделать? ...

Как правильно бросить незначащие нули, а у bigdecimal в Scala?

scala.math.BigDecimal.toString может вернуть что-то вроде "0.888200000". Что может быть лучшим, что я могу сделать, если я хочу "0,8882" вместо этого? java.math.BigDecimal имеет метод stripTrailingZeros() для этого, но BigDecimal Scala, похоже, его не хватает. Является ли использование scala.math.BigDecimal.underlying для получения базового java.math.BigDecimal лучшим способом или есть лучший способ в Scala? ...

Не удается получить зависимость spray-json для работы в игровом проекте

Я потратил бесчисленное количество часов, пытаясь заставить spray json быть включенным в качестве зависимости в мой игровой проект, построенный на scala 2.10. Может ли кто-нибудь дать окончательное объяснение точным магическим заклинаниям, которые будут использоваться в файлах проекта для этой вещи?!!!! Построить.scala: import sbt._ import Keys._ import play.Project._ object ApplicationBuild extends Build { val appName = "linscot" val appVersion = "1.0" val appDepe ...

Как запустить метод Scala из командной строки?

Этот вопрос может показаться немного глупым, но я не мог понять, как запустить метод Scala из командной строки. Я скомпилировал следующий файл Test.scala: package example object Test { def print() { println("Hello World") } } С scalac Test.scala. Тогда я могу запустить метод print с scala в два этапа: C:UsersJohnScalaExamples>scala Welcome to Scala version 2.9.2 (Java HotSpot(TM) Client VM, Java 1.6.0_32). Type in expressions to have them evaluated. Type :help for more ...

C# эквивалент Scala Promise

В scala есть Promises и Futures. С помощью Promise я могу контролировать, когда Future завершается, т. е. val p = Promise[Int]() val fut: Future[Int] = p.future // I already have a running Future here // here I can do whatever I want and when I decide Future should complete, I can simply say p success 7 // and fut is now completed with value 7 Как я могу достичь аналогичных результатов с помощью API C# Task? Я не смог найти ничего подобного в документах. Я хочу использовать это в тесте, из ...

Создание списков и наборов в Scala: что я на самом деле получаю?

Если я создам Set в Scala, используя Set(1, 2, 3), я получу immutable.Set. scala> val s = Set(1, 2, 3) s: scala.collection.immutable.Set[Int] = Set(1, 2, 3) Q1: что это за набор на самом деле? Это какой-то хэш-набор? Какова, например, сложность поиска? Q2: где я могу прочитать об этом методе "создания наборов"? Я думал, что это метод apply, но в документах сказано: " Этот метод позволяет интерпретировать наборы как предикаты. Возвращает true, если этот набор содержит элемент Элем. " ...