Sha256: 2e32cd2044f7c424377a2dbbf2170fca2bd8f417da39d8e5be334403bb6f202d

Contents?: true

Size: 902 Bytes

Versions: 4

Compression:

Stored size: 902 Bytes

Contents

module ML
  module Data
    class Datasource
      attr_reader :root_dir, :polars_args

      def in_batches(of: 10_000)
        raise NotImplementedError, "Subclasses must implement #in_batches"
      end

      def files
        raise NotImplementedError, "Subclasses must implement #files"
      end

      def last_updated_at
        raise NotImplementedError, "Subclasses must implement #last_updated_at"
      end

      def refresh!
        raise NotImplementedError, "Subclasses must implement #refresh!"
      end

      def data
        raise NotImplementedError, "Subclasses must implement #data"
      end

      require_relative "datasource/s3_datasource"
      require_relative "datasource/file_datasource"
      require_relative "datasource/polars_datasource"
      require_relative "datasource/merged_datasource"
      require_relative "datasource/datasource_factory"
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
easy_ml-0.1.4 lib/easy_ml/data/datasource.rb
easy_ml-0.1.3 lib/easy_ml/data/datasource.rb
easy_ml-0.1.2 lib/easy_ml/data/datasource.rb
easy_ml-0.1.1 lib/easy_ml/data/datasource.rb