You may receive a file with the .orc extension as a data handoff or the output of an analytical process.
Which columns does it contain, how many rows are there, and what do the values look like? Preparing an execution environment can be unnecessary work when you only need to inspect the contents.
Browser Kitty ORC Viewer opens ORC files in the browser and shows row counts, column structure, compression, column statistics, and records. It is read-only, so it does not modify the source ORC file. Selected files are not uploaded to a server for inspection.
This guide walks through understanding an unfamiliar ORC file, displaying the records you need, and saving the current page as CSV.
What is an ORC file?
ORC is a column-oriented file format for analytical processing. It stores not only numbers and strings but also column types, arrays, and nested structures. It was developed to improve data processing in Apache Hive and Hadoop.
Unlike CSV, it is not simply text separated by delimiters. To inspect its contents, use a viewer or processing tool that understands the ORC structure.
In ORC Viewer, a useful order is: open the file → check row count and compression → inspect the schema → review column statistics → look at actual records.
The goal is to understand what the file contains before trying to read every row.
1. Select the ORC file
Open ORC Viewer, choose Choose files, and select the .orc file you want to inspect. On desktop, you can also drag and drop files into the app.
You can add several ORC files and switch between them. This does not automatically combine their data; each file is handled separately.
For daily data files, for example, inspect the structure of one file, then switch to another day and review it in the same way.
2. Check row count, compression, and stripes
After loading the file, start with File information.
ORC Viewer shows row count, column count, stripe count, compression, metadata, and stripe layout. It reads the PostScript and Footer at the end of the ORC file to display this information.
Similar filenames can still contain empty or unexpected data. Check the overall scale before examining records one by one.
- Does the file contain the expected number of rows?
- Is the column count substantially different from what you expected?
- Which compression method does the file use?
A stripe is a group of data inside an ORC file
A stripe is a unit used to divide and store data within an ORC file.
It does not mean the file contains several separate files. Instead, one ORC file contains groups of row data and indexes that can be read with the information at the file tail.
When displaying data, ORC Viewer reads the stripes needed for the current page. It does not initially expand every row in the file into one table.
3. Inspect column names and types in the schema
Next, inspect Schema.
The schema describes which columns exist and the types of values they contain. ORC Viewer offers Tree for viewing the hierarchy and Raw for viewing the structure as text.
The following is an illustrative example of an order dataset, not a description of every ORC file.
Checking types before values helps reveal differences such as numbers stored as strings or several products stored inside one cell.
| Example column | What to check |
|---|---|
| order_id | Whether the order ID is a number or a string |
| amount | Whether the amount is an integer or a type that supports decimals |
| ordered_at | Which type stores the order date and time |
| customer | Whether customer information contains several nested fields |
| items | Whether order items are stored as a list |
Inspect nested structures too
ORC includes structures such as struct for grouped fields, list for arrays, map for key-value pairs, and union for alternative types. ORC Viewer can inspect the forms supported by its reader.
If customer contains name and address, for example, inspect the fields beneath the column rather than stopping at the top-level name.
Understanding the structure before opening the data preview makes the values easier to interpret.
4. Review file-wide information in column statistics
Column statistics displays statistics recorded for columns in the ORC file.
ORC can store statistics for the whole file and for individual stripes. These include value counts, the presence of nulls, and minimum or maximum values where applicable to the type.
ORC Viewer displays the recorded file-level column statistics. These are not aggregates calculated only from the few dozen rows currently visible on screen.
When present, the statistics help you check whether the ID range is expected, which columns contain nulls, or whether numeric columns include unexpectedly small or large values.
Available statistics depend on the column type and the information stored in the file. A missing statistic should not be interpreted as zero or as confirmation that everything is correct.
Statistics alone do not identify every individual record. Follow up on anything unusual by inspecting actual values in the data preview.
5. Inspect records in Table and Record views
Data preview lets you inspect records in Table or Record view.
Table is useful for comparing several rows side by side. Record helps you read one record at a time. Columns lets you choose which columns are visible.
For a wide dataset, you do not have to display every column immediately. Focus on the IDs, dates, amounts, or other fields relevant to the check.
Use cell details for nested values
A cell containing an array or several fields can be difficult to read inside the table.
Open Cell Inspector to inspect it in more detail. Compare the value with the structure you reviewed in Schema to understand array contents and relationships between nested fields.
Sorting applies only to the current page
This distinction matters: ORC Viewer sorts only the page currently displayed. It does not sort the entire file.
For example, suppose you display the first 100 rows of a 10,000-row file and sort them by amount in descending order.
The first result is the largest amount within those 100 rows. It is not necessarily the largest amount in all 10,000 rows.
Recorded file-level column statistics and current-page sorting therefore describe different scopes.
6. Save the page you need as CSV
Use Copy CSV or Save CSV when you want to inspect the displayed data elsewhere.
CSV output covers the current page only. This is not a whole-file ORC-to-CSV converter.
If you are viewing the first 100 rows, for example, you can save that page as a CSV for review.
This is useful for sharing a small data sample or comparing the currently displayed range outside the viewer.
Converting all records for migration or using SQL to select matching rows is outside this viewer's scope. Binary values also use an abbreviated display, so the CSV is not a complete backup of the source data.
What to check when an ORC file will not open
A file can have the .orc extension and still fail to load because of its internal structure or compression method.
The compression support documented by ORC Viewer is summarized below. In particular, ZSTD is not guaranteed to work in every browser, and LZO is outside the current supported set.
If loading fails, ask whether the system that created the file can report its compression method. Checking for an interrupted download or copy, or a size that differs substantially from the source, can also help narrow down the problem.
Do not immediately assume that the issue is garbled text or character encoding. Start with the file format and compression method.
| Compression | Support |
|---|---|
| NONE (uncompressed) | Supported |
| ZLIB / SNAPPY / LZ4 | Supported |
| ZSTD | When the browser provides a compatible decoder |
| LZO | Not supported |
Things to remember with large ORC files
ORC Viewer decodes the stripes needed for the current page. Avoiding an immediate expansion of the whole file is useful when you only need to inspect part of it.
However, displaying fewer rows does not always mean processing very little data.
ORC stores data in stripes. If the stripe containing the requested rows is large, displaying a small page can still require reading and decoding that larger group.
Do not assume that displaying 100 rows means the application uses only 100 rows' worth of memory.
For large files, inspect the overview and schema first, then focus on the pages you need. Checking a sample of rows does not establish that every record in the file is correct.
Files are processed in the browser
ORC Viewer reads selected ORC files, inspects their structure, displays records, and creates current-page CSV output in the browser.
The hosted version loads the application HTML initially, but it does not upload the selected ORC file to an external server for inspection. The saved standalone HTML can also be used offline in a supported browser.
When working with company or organizational data, follow your organization's rules even when processing remains on the device.
What ORC Viewer can and cannot do
ORC Viewer is a read-only tool for inspecting data you receive.
It is useful for checking row count and compression, reviewing schema and column statistics, inspecting selected records, and saving the current page as CSV.
It does not edit or regenerate ORC files, execute SQL, or convert the entire file to CSV.
Distinguishing data aggregation or transformation from simply understanding a file makes it easier to decide when to use this viewer.
Inspect an ORC file from the overview down to individual records
When you receive an unfamiliar ORC file, you do not need to read every row immediately.
Start with row count and compression, use the schema to understand the columns, and compare column statistics with actual records.
Above all, do not confuse file-wide information with operations that cover only the current page.
Use Browser Kitty ORC Viewer to understand the file as a whole and then move to the parts you need to inspect.
ORC inspection workflow at a glance
- Open ORC Viewer and choose or drag and drop a .orc file.
- Review row count, column count, compression, and stripe layout in File information.
- Inspect column names, types, and nesting with Schema Tree / Raw.
- Review recorded file-level column statistics for counts, nulls, and available minimum or maximum values.
- Use Table / Record and Cell Inspector to check values on the pages you need.
- Optionally copy or save the current page as CSV. Remember that this is not a full-file export.
ORC Viewer
Inspect Apache ORC schema, stripes, column statistics, metadata, compression, and data in the browser.
Tips and limitations
- Sorting the current page does not identify the minimum or maximum record in the entire file.
- Do not interpret an unavailable column statistic as zero or proof that the data is correct.
- CSV output is for reviewing the current page, not whole-file conversion or a complete backup including binary values.
Frequently asked questions
Do I need Python or another environment to open an ORC file?
Not when inspecting a supported file with ORC Viewer. Open the tool in the browser and choose a local .orc file.
Can I convert the whole ORC file to CSV?
CSV export covers only the current page. This viewer does not provide whole-file conversion or SQL-based extraction of all rows.
Does table sorting cover all records?
No. Only the current page is sorted. That scope differs from the file-level column statistics.
Can it open ZSTD- or LZO-compressed ORC files?
ZSTD works when the browser provides a compatible decoder. LZO is unsupported. NONE, ZLIB, SNAPPY, and LZ4 are supported.
Is the selected ORC file uploaded?
No. The hosted version initially loads the application HTML, but reading, inspection, display, and current-page CSV creation happen in the browser.
References
ORC structure and statistics are described in the Apache ORC documentation. Viewer operations and limits follow the ORC Viewer README and source. The viewer's supported features are not the same as every capability of the ORC format.
- Apache ORC ORC overview and types
- Apache ORC ORC v1 file format specification
- Apache ORC Indexes and column statistics
- ORC Viewer Usage, supported features, and limitations
- ORC Viewer Current-page sorting and CSV export implementation