orc

An ORC file format reader and writer for Go.

  • Owner: scritchley/orc
  • Platform:
  • License:: MIT License
  • Category::
  • Topic:
  • Like:
    0
      Compare:

Github stars Tracking Chart

orc

Build Status
code-coverage
go-doc

Project Status

This project is still a work in progress.

Current Support, Column Encoding, Read, Write, Go Type, ---------------------------, ------, -------, -------------------------------------, SmallInt, Int, BigInt, ✓, int64, Float, Double, ✓, float32, float64, String, Char, and VarChar, ✓, string, Boolean, ✓, bool, TinyInt, ✓, byte, Binary, ✓, []byte, Decimal, ✓, orc.Decimal, Date, ✓, orc.Date (time.Time), Timestamp, ✓, time.Time, Struct, ✓, orc.Struct (map[string]interface{}), List, ✓, []interface{}, Map, ✓, []orc.MapEntry, Union, ✓, interface{}, - The writer support is in its late stages, however, I do not recommend using it yet.

Example

r, err := Open("./examples/demo-12-zlib.orc")
if err != nil {
    log.Fatal(err)
}
defer r.Close()

// Create a new Cursor reading the provided columns.
c := r.Select("_col0", "_col1", "_col2")

// Iterate over each stripe in the file.
for c.Stripes() {
    
    // Iterate over each row in the stripe.
    for c.Next() {
          
        // Retrieve a slice of interface values for the current row.
        log.Println(c.Row())
        
    }
   
}

if err := c.Err(); err != nil {
    log.Fatal(err)
}

Main metrics

Overview
Name With Ownerscritchley/orc
Primary LanguageGo
Program languageGo (Language Count: 1)
Platform
License:MIT License
所有者活动
Created At2015-07-31 10:15:12
Pushed At2021-05-13 14:41:43
Last Commit At2021-05-13 22:41:43
Release Count0
用户参与
Stargazers Count131
Watchers Count10
Fork Count50
Commits Count67
Has Issues Enabled
Issues Count38
Issue Open Count14
Pull Requests Count30
Pull Requests Open Count1
Pull Requests Close Count4
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private