Вопрос:

Слюни на Искры со Скалой

scala apache-spark drools

3052 просмотра

2 ответа

163 Репутация автора

Я начинаю проект, в котором у нас много бизнес-правил. Я серьезно подумывал об использовании механизма правил JBoss, Drools.

Мой проект использует Scala и использует движок Spark. Мне интересно, есть ли у кого-то опыт или совет по использованию Drools с Spark / Scala.

Если вы заглянули в Drools и решили отказаться от этого, я бы тоже хотел это знать.

Я читал несколько блогов о том, как люди интегрируют Drools со Spark или Drools со Scala, но я не нашел хороших примеров, объясняющих Drools в Spark со Scala. Я видел это со смесью Scala и Java, но никогда не был чистым Scala. Я не уверен, возможно ли это.

Обновление: уточняющий вопрос

  1. Вы бы порекомендовали Drools?
  2. Как насчет Spark / Scala?
Автор: terminatur Источник Размещён: 03.11.2016 08:28

Ответы (2)


1 плюс

1564 Репутация автора

Если вы заглянули в Drools и решили отказаться от этого, я бы тоже хотел это знать.

Я бы не советовал это. Мы вынуждены использовать drools в одном из наших компонентов, и все разработчики в команде находят это решение полным минусов:

  1. Поддержка Java 8 : Scala движется в сторону Java 8 (см. Это и это в отношении времени выполнения). Drools начал поддерживать Java 8 только через 2 года после его выпуска.
  2. Поддержка IDE : только затмение. Мы не смогли сделать это в идее Intellij.
  3. Общая цель : нам пришла в голову мысль, что все, что вы пишете с помощью механизма правил drools, может быть легко написано на java / scala. Вы сказали бы, что бизнес-логика может стать слишком технической? Возможно, но вам не нужно изучать какой-либо язык сценариев для создания бизнес-правил.
Автор: tkachuko Размещён: 03.11.2016 10:43

0 плюса

306 Репутация автора

1) Да, я бы порекомендовал Drools. У меня нет опыта работы с другими механизмами правил, но проекты, которые я разработал с использованием Drools, до сих пор отлично работали. По правде говоря, я использовал только базовую функциональность Drools (никогда не использовал явный отчет, повестки дня и т. Д.). Тем не менее, функциональность, которую я использовал, полностью решила мои требования.

2) Я использовал Drools как с Java 7, так и с Scala 2.11. Я не нашел какой-либо конкретной вещи, которую я мог бы сделать с Java, но не в Scala. Мой последний проект использует Apache Spark со Scala и Drools, и все прекрасно сочетается.

Если вы собираетесь использовать Scala, то ваши факты (объекты, которые моделируют ваш домен; он же «bean») должны иметь общедоступные модификаторы доступа к val или var, к которым вы собираетесь обращаться в рамках правил. Если вам нужны статические методы или атрибуты, используйте объекты и импортируйте их в файл правил.

Надеюсь это поможет

Автор: Ander Murillo Zohn Размещён: 20.04.2017 02:42
Вопросы из категории :
32x32