Я пытаюсь понять концепции Spark SQL и мне интересно, могу ли я использовать Spark SQL в качестве базы данных в памяти, похожей на H2 / SQLite?
После того, как я обработал все записи из 100 файлов, я мог сохранить данные в табличном формате и запросить результаты в таблицах, а не искать файлы. Имеет ли это какой-то смысл?
Dataset<Row> results = spark.sql("SELECT distinct(name) FROM mylogs");
Во время выполнения, если пользователь выбирает разные имена из таблицы «mylogs», он должен извлекаться из таблиц (а не из базовых файлов, из которых получены таблицы).
Что я заметил, так это то, что Spark SQL сканирует файлы, чтобы снова получить данные, и пока он не отсканирует все 100 файлов и не извлечет данные, пользователь должен ждать ответа.
Это вариант использования Spark? Есть ли лучший способ добиться этого?