Tinkerpop Gremlin, процессор транзакций с байт-кодом? - PullRequest
0 голосов
/ 01 апреля 2019

Я использую язык Gremlin для запроса JanusGraph (и других систем баз данных) и обычно отправляю свои запросы в формате ByteCode с использованием traversal операционного процессора . Однако для некоторых запросов мне нужны транзакции (или сеансы) для пакетного чтения / записи, и для этого я должен использовать session op процессор .

Проблема - процессор traversal принимает запросы в байт-коде gremlin, тогда как процессор session принимает запросы в виде строк gremlin. Есть ли способ, которым я могу сделать запросы, которые являются транзакционными (так как мне нужна последовательность операций чтения и записи, кратная нескольким) и отправляются как ByteCode?

Я в основном спрашиваю с тех пор, как обнаружил, что запросы, выполняемые как ByteCode через процессор traversal, имеют значительно меньшее время загрузки, чем те же запросы, которые выполняются как строки с другими процессорами (разница около 30 мс).

Заранее спасибо!

1 Ответ

1 голос
/ 01 апреля 2019

Вы не можете использовать запросы на основе байт-кода с сеансами, и в будущем нет намерения поддерживать это.Фактически, сеансы обычно присутствуют для очень специфических случаев использования, связанных с разработкой инструментов, таких как Gremlin Console (и аналогичные приложения для визуализации графиков), и, скорее всего, в какой-то момент будут видны как устаревшие (и в TinkerPop 4.x полное удаление).Лучше не зависеть от этого.TinkerPop в значительной степени основывается на определении транзакции как предназначенной для одного обхода.

Я обнаружил, что запросы, выполняемые как ByteCode через процессор обхода, имеют значительно меньшее время загрузки, чем те же запросы, выполняемые как строки с другими процессорами

Я не могуобъяснить разницу в производительности.Как правило, запросы байт-кода выполняются быстрее, чем запросы, основанные на сценариях, но иногда кэш сценария и определенные шаблоны обхода время от времени могут выполнять свою работу лучше, но это противоречит большинству проведенного общего тестирования.

...