All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.twitter.scalding.parquet.scrooge.ParquetScrooge.scala Maven / Gradle / Ivy

There is a newer version: 0.16.1-RC2
Show newest version
package com.twitter.scalding.parquet.scrooge

import cascading.scheme.Scheme
import com.twitter.scalding._
import com.twitter.scalding.parquet.thrift.ParquetThriftBase
import com.twitter.scalding.source.{ DailySuffixSource, HourlySuffixSource }
import com.twitter.scrooge.ThriftStruct

trait ParquetScrooge[T <: ThriftStruct] extends ParquetThriftBase[T] {

  override def hdfsScheme = {
    // See docs in Parquet346ScroogeScheme
    val scheme = new Parquet346ScroogeScheme[T](this.config)
    HadoopSchemeInstance(scheme.asInstanceOf[Scheme[_, _, _, _, _]])
  }

}

class DailySuffixParquetScrooge[T <: ThriftStruct](
  path: String,
  dateRange: DateRange)(implicit override val mf: Manifest[T])
  extends DailySuffixSource(path, dateRange) with ParquetScrooge[T]

class HourlySuffixParquetScrooge[T <: ThriftStruct](
  path: String,
  dateRange: DateRange)(implicit override val mf: Manifest[T])
  extends HourlySuffixSource(path, dateRange) with ParquetScrooge[T]

class FixedPathParquetScrooge[T <: ThriftStruct](paths: String*)(implicit override val mf: Manifest[T])
  extends FixedPathSource(paths: _*) with ParquetScrooge[T]




© 2015 - 2025 Weber Informatics LLC | Privacy Policy