apache / apache/parquet-java

Reuse hadoop file status and footer in ParquetRecordReader

Offen
#2,862 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Component: Hadoop Component: Parquet Priority: Major Type: enhancement
Vorherrschende Sprache
Java
Sterne
3.1k
Forks
1.6k
Ø Merge
3 T. 12 Std.
Gemergte PRs (30 T.)
33

Beschreibung

## DESCRIPTION

Spark will send a listStatus RPC to get hadoop file status and read the parquet file footer before reading the parquet file. And send a same listStatus RPC to get the same hadoop file status and read the footer again in ParquetRecordReader. We can reuse the file status and the footer.
## PLANS

Save the hadoop file status in the ParquetMetadata and save the ParquetMetadata in the input split, so we can reuse them when init a new ParquetRecordReader.

**Reporter**: [Wan Kun](https://issues.apache.org/jira/secure/ViewProfile.jspa?name=wankun)
#### PRs and other links:
- [GitHub Pull Request #1242](https://github.com/apache/parquet-mr/pull/1242)

**Note**: *This issue was originally created as [PARQUET-2415](https://issues.apache.org/jira/browse/PARQUET-2415). Please see the [migration documentation](https://issues.apache.org/jira/browse/PARQUET-2502) for further details.*

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Rechercherichtung

Beginne mit der Überprüfung von ParquetRecordReader und des im Issue beschriebenen Input-Split-Pfads; untersuche anschließend, wie ParquetMetadata derzeit den Footer mitführt und wie der Hadoop-Dateistatus abgerufen wird. Vergleiche den bestehenden Ansatz mit GitHub Pull Request #1242. Als erledigt gilt die Aufgabe, wenn die wiederholte Status- und Footer-Suche beim Initialisieren eines neuen ParquetRecordReader vermieden wird.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
hadoop, java
Bereich
data-engineering
Issue-Typ
Refactoring
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.