Versions in this module Expand all Collapse all v0 v0.2.0 Feb 14, 2023 Changes in this version + func GetAvroCodec(schema string) (*goavro.Codec, error) + func GetDatastoreShardId(key string, numShards int) uint64 + type AvroFileWriter struct + func NewAvroFileWriter(ctx context.Context, wg *sync.WaitGroup, cfg AvroFileWriterConfig) *AvroFileWriter + func (a *AvroFileWriter) Shutdown() + func (a *AvroFileWriter) Write(data interface{}) error + type AvroFileWriterConfig struct + AvroSchema string + Id int + OutputDir string + type AvroSerializer struct + func (a *AvroSerializer) Serialize(record map[string]interface{}) (interface{}, error) type Config + NumDatastoreShards int + PersistanceChanBuffSize int + PersistenceChan PersistenceChan + Persisters Persisters + RecordTimestampKey string + type Datastore struct + Data map[string]interface{} + Id uint64 + NumReads int64 + NumWrites int64 + func NewDatastore(id uint64) *Datastore + type Datastores map[uint64]*Datastore type InMemDataStore + func (ds *InMemDataStore) GetDatastores() Datastores + type NoopSerializer struct + func (n *NoopSerializer) Serialize(record map[string]interface{}) (interface{}, error) + type PersistenceChan chan map[string]interface + type Persister struct + func NewPersister(ctx context.Context, wg *sync.WaitGroup, cfg PersisterConfig) *Persister + func (p *Persister) Run() + type PersisterConfig struct + Id int + InputChan PersistenceChan + Serializer Serializer + Writer Writer + type Persisters map[int]*Persister type Serializer + func NewAvroSerializer(avroSchema string) Serializer + func NewNoopSerializer() Serializer + Serialize func(map[string]interface{}) (interface{}, error) + type Writer interface + Shutdown func() + Write func(interface{}) error v0.1.0 Mar 26, 2022 Changes in this version + const RecFieldCollectionTime + const RecFieldId + func Writ() + type Config struct + Cancel context.CancelFunc + Ctx context.Context + NumSerializers int + OutputDirPath string + Schema string + SerializationChanBufSize int + type InMemDataStore struct + func NewInMemDatastore(cfg Config) *InMemDataStore + func (q *InMemDataStore) Get(key string) (interface{}, bool) + func (q *InMemDataStore) GetAll() map[string]interface{} + func (q *InMemDataStore) Put(key string, val map[string]interface{}) error + func (q *InMemDataStore) Shutdown() + func (q *InMemDataStore) Start() + type SerializationChan chan map[string]interface + type Serializer struct + func NewSerializer(cfg SerializerConfig) *Serializer + func (s *Serializer) Run() + type SerializerConfig struct + type Serializers map[int]*Serializer