piker/piker/service
Tyler Goodlet 7ab97fb21d Add marketstore client as storage-backend module
To kick off our (tsdb) storage backends this adds our first implementing
a new `Storage(Protocol)` client interface. Going foward, the top level
`.storage` pkg-module will now expose backend agnostic APIs and helpers
whilst specific backend implementations will adhere to that middle-ware
layer.

Deats:
- add `.storage.marketstore.Storage` as the first client implementation,
  moving all needed (import) dependencies out from
  `.service.marketstore` as well as `.ohlc_key_map` and `get_client()`.
- move root `conf.toml` loading from `.data.history` into
  `.storage.__init__.open_storage_client()` which now takes in a `name:
  str` and does all the work of loading the correct backend module, its
  config, and determining if a service-instance can be contacted and
  a client loaded; in the case where this fails we raise a new
  `StorageConnectionError`.
- add a new `.storage.get_storagemod()` just like we have for brokers.
- make `open_storage_client()` also return the backend module such that
  the history-data layer can make backend specific calls as needed (eg.
  ohlc_key_map).
- fall back to a basic non-tsdb backfill when `open_storage_client()`
  raises the new connection error.
2023-06-27 13:41:47 -04:00
..
__init__.py Try having `brokerd` eps defined in `.brokers._daemon` 2023-05-09 14:49:26 -04:00
_actor_runtime.py Fix account config loading logic discovered in new test XD 2023-05-25 17:56:14 -04:00
_ahab.py _ahab: use `Services` api to spawn docker tasks 2023-05-23 14:16:02 -04:00
_daemon.py Try having `brokerd` eps defined in `.brokers._daemon` 2023-05-09 14:49:26 -04:00
_mngr.py _ahab: use `Services` api to spawn docker tasks 2023-05-23 14:16:02 -04:00
_registry.py Use a single log for entire `.service` subsys 2023-05-09 14:49:26 -04:00
_util.py Use a single log for entire `.service` subsys 2023-05-09 14:49:26 -04:00
elastic.py Reimplement marketstore and elasticsearch daemons 2023-05-23 14:16:02 -04:00
marketstore.py Add marketstore client as storage-backend module 2023-06-27 13:41:47 -04:00