[英]How do you query a parquet file using parquet-mr?
我有一個要查詢的存儲在AWS S3中的實木復合地板文件。 我想檢索某行數據,因為它等於一個值。 幾乎就像我在SQL中那樣:
SELECT * FROM file.parquet WHERE id = '1234';
我正在使用parquet-mr
將其直接從S3加載到內存中並讀取,並使用AvroParquetReader
對其進行設置以讀取行。
我已經將每一行復制到Map中以便於查詢,但是有更好的方法嗎? parquet-mr
的文檔不是很好,大多數教程都使用不推薦使用的方法。
這是我所擁有的一些示例代碼:
final ParquetReader<GenericRecord> reader = AvroParquetReader
.<GenericRecord>builder(internalPath)
.withConf(parquetConfiguration).build();
您可以使用reader.read()
來獲取文件中的下一行(這是我用來將其放入HashMap
,但是我在parquet-mr
中找不到允許您查詢以下內容的任何方法文件而不將整個文件加載到內存中。
您要查找的功能稱為謂詞下推。 您可以閱讀有關內容,並在此處找到示例。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.