JSONiq: реализация Java как библиотека?

Рассматривая реализацию спецификации JSONiq (www.jsoniq.org).

Большинство из них являются автономными. например, Zorba, VXQuery и т. д. и предназначены для запросов к базам данных на основе JSON или обработки больших документов JSON.

Я удивлен, обнаружив, что все реализации пытаются решить эту проблему без модуляции выполнения JSONiq как библиотеки. Это должно было быть очень похоже на Apache Lucene(библиотеку), на Apache Solr(Search Server+Rest API) и другое решение для индексирования.

Доступна ли библиотека java (похожая на Saxon для XQuery), которая может быть встроена в java-приложения и может выполнять спецификации JSONiq, определенные как функции в файлах.xq или.xquery? Или как расширить Saxon для анализа и выполнения спецификации JSONiq?

1 ответ

Решение

JSONiq - это XQuery-подобный язык для обработки JSON. Большинство его хороших идей были включены в XQuery 3.1, но таким образом, что они интегрировали модели данных XML и JSON. Я не верю, что JSONiq предлагает какую-либо функциональность, которой нет в XQuery 3.1, и это не открытый стандарт, поэтому было бы мало смысла реализовывать его в Saxon.

В настоящее время существует две выпущенных реализации JSONiq на Java, и они могут читать данные из HDFS или локальной файловой системы и обрабатывать большие объемы данных параллельно на нескольких ядрах / машинах:

  • Rumble (Spark) - поддерживает основной язык JSONiq (синтаксис, совместимый с JSON), также может читать из любого другого ввода, поддерживаемого Spark (S3,...)
  • VXQuery (Hyracks) - поддерживает расширение JSONiq для XQuery
Другие вопросы по тегам