Почему Arango Spark для загрузки данных требует строго предопределенного POJO? - PullRequest
1 голос
/ 16 марта 2019

USECASE:

Я хочу загрузить коллекцию Arango, которая может заранее вывести схему данных без указания класса POJO с помощью Spark Arango. Является ли это возможным? Если да, не могли бы вы объяснить, как?

Я взял Datamodel из pdf ArangoDB-GraphCourse_Beginners, доступной на сайте Arango. Аэропорт это вершина. Полет это край. Таким образом, в основном аэропорт / аэропорт связан с краем полета.

Хотите, чтобы все аэропорты были достижимо от LAX (Лос-Анджелес)

Запрос Аранго: -

Для рейсов аэропорта В АУТБУНД «Аэропорт / СЛАБО» Обратно Отличный аэропорт.

Подход: - Модуль свечи Arangodb, я использовал. Поскольку нет прямой поддержки AQL, я загрузил обе коллекции с помощью коннектора spark arango Теперь при загрузке мне нужно заранее предоставить класс POJO. ArangoJavaRDD airportDataset = ArangoSpark.load (javaSparkContext, AirportCollection, Airport.class)

Точно так же я загрузил коллекцию полетов. Здесь я должен был заранее создать аэропорт и рейс POJO. Затем, Создана искра "createOrReplaceTempView". Теперь я применил SQL-запрос к этим временным представлениям, чтобы получить этот результат. SQL: - Выберите «Определить a. * Из аэропортов». «A, где a.documentHandle in» (выберите «b._to» из «flightTemp b», где b._from = «airport / LAX»)

Я могу достичь решения с помощью этого подхода.

Выпуск: - Может ли быть какая-либо другая альтернатива, кроме класса POJO для ArangoJavaRDD, так как для моего сценария использования я хочу добиться этого на основе автоматического доступа к схеме?

...