Пользовательские функции и агрегирование в Cassandra

Я тестирую функцию UDF / UDA в Cassandra, кажется, хорошо. Но у меня мало вопросов по его использованию.

1) В Cassandra.yaml упоминается, что песочница включена для предотвращения вредоносного кода. Итак, нарушаем ли мы правило и каковы будут последствия включения этой поддержки (флаг)?

2) Каковы преимущества использования UDF / UDA в Cassandra по сравнению с чтением данных и записью логики агрегации на стороне клиента?

3) Кроме того, помимо JAVA, доступна ли языковая поддержка для nodejs, python при написании UDF / UDA?

Спасибо Гарри


person Harry    schedule 07.12.2017    source источник


Ответы (1)


Вот несколько комментариев:

  1. Песочница предотвращает выполнение «опасного» кода - работа с файлами / сокетами, запускающими потоками и т. Д. Это сообщение в блоге содержит некоторые дополнительные сведения об этом.
  2. Их может быть несколько - вы не перемещаете данные из узла координатора в свое приложение, вы выгружаете вычисления в кластер cassandra и т. Д.
  3. Языки, поддерживающие JSR 223 "Scripting for Java" - JavaScript, Groovy, JRuby, Jython, ... (с enable_scripted_user_defined_functions, установленным в true в конфигурации Cassandra). Но Java должна быть самой быстрой.

Также посмотрите эту презентацию об UDF / UDA от автора этой функции (Роберт Стапп) & это сообщение в блоге с более подробной информацией и примерами.

person Alex Ott    schedule 07.12.2017
comment
Спасибо, Алекс, не могли бы вы проверить это, я разместил еще один вопрос относительно агрегации: stackoverflow.com/questions/47709008/ - person Harry; 08.12.2017
comment
stackoverflow.com/questions/47710070 / - person Harry; 08.12.2017
comment
Я посмотрю, когда будет время (я действительно подписан на вопросы Кассандры, так что ваши вопросы у меня уже есть в моем списке) - person Alex Ott; 08.12.2017
comment
Отлично, спасибо, Алекс, мне нужно ваше мнение по этому вопросу о дизайне, я буду ждать вашего ответа каждую секунду. Спасибо еще раз :) - person Harry; 08.12.2017
comment
Еще один кусок пирога для вас, Алекс: stackoverflow.com/questions/47977824/ Не могли бы вы проверить это и ответить на это - person Harry; 27.12.2017