Documentation ¶
Overview ¶
Ensign maintains two separate storage locations on disk: the event store which is intended to be an append-only fast disk write for incoming events and a meta store which is used to persist operational metadata such as topic and placement information.
Index ¶
- func Open(conf config.StorageConfig) (data EventStore, meta MetaStore, err error)
- func OpenEvents(conf config.StorageConfig) (*events.Store, error)
- func OpenMeta(conf config.StorageConfig) (*meta.Store, error)
- type EventHashStore
- type EventStore
- type GroupStore
- type MetaStore
- type Store
- type TopicInfoStore
- type TopicNamesStore
- type TopicStore
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Open ¶
func Open(conf config.StorageConfig) (data EventStore, meta MetaStore, err error)
func OpenEvents ¶
func OpenEvents(conf config.StorageConfig) (*events.Store, error)
Types ¶
type EventHashStore ¶ added in v0.11.0
type EventHashStore interface { // Indash is a combination of "Index" and "Hash" Indash(topicID ulid.ULID, hash []byte, eventID rlid.RLID) error Unhash(topicID ulid.ULID, hash []byte) (*api.EventWrapper, error) LoadIndash(topicID ulid.ULID) iterator.IndashIterator ClearIndash(topicID ulid.ULID) error }
type EventStore ¶
type EventStore interface { Store EventHashStore Insert(*api.EventWrapper) error List(topicID ulid.ULID) iterator.EventIterator Retrieve(topicID ulid.ULID, eventID rlid.RLID) (*api.EventWrapper, error) Destroy(topicID ulid.ULID) error }
type GroupStore ¶ added in v0.5.1
type GroupStore interface { ListGroups(projectID ulid.ULID) iterator.GroupIterator GetOrCreateGroup(*api.ConsumerGroup) (bool, error) UpdateGroup(*api.ConsumerGroup) error DeleteGroup(*api.ConsumerGroup) error }
type MetaStore ¶
type MetaStore interface { Store TopicStore TopicNamesStore TopicInfoStore }
type TopicInfoStore ¶ added in v0.9.0
type TopicNamesStore ¶ added in v0.5.1
type TopicStore ¶
Click to show internal directories.
Click to hide internal directories.