ray/python
Yi Cheng 36ee3fd46b
[gcs] Remove rpush for storage in py (#20410)
## Why are these changes needed?
In python, redis rpush is used to broadcast and store the keys. In this PR, we use gcs kv to store the keys. pubsub is still using redis which need to be remove later.

The protocol before this PR:
- worker subscribe to redis key spaces
- worker write the key of function/actor to (export:sqn, key)
- so the other worker will be notified and start to load the data by checking export:sqn

This depends on redis for both kv and pubsub, and this PR fix the kv part.

After this PR:
- worker subscribe to redis key space
- For exporting:
  - worker will find the first key not being hold. This is guaranteed by internal kv which right now is a single thread, atomic db. The worker will just check until it find one key not existing and write it (this is single operation). One optimization right now is to use the import counter as the start offset since this counter means all keys before the counter has already been used.
  - worker will then write a dummy key to redis key space for broadcasting
- For importer
 - It's working as before, but instead of reading from redis, it will read from gcs kv.


This is part in redis removal project.

## Related issue number
https://github.com/ray-project/ray/issues/19443
2021-11-21 00:40:13 -08:00
..
ray [gcs] Remove rpush for storage in py (#20410) 2021-11-21 00:40:13 -08:00
requirements Add smart_open dependency to ray[default] (#20420) 2021-11-18 10:00:30 -06:00
asv.conf.json [docs] Move all /latest links to /master (#11897) 2020-11-10 10:53:28 -08:00
build-wheel-macos-arm64.sh [CI] [macOS] avoid installing latest setuptools (#20064) 2021-11-04 21:35:03 -07:00
build-wheel-macos.sh [CI] [macOS] avoid installing latest setuptools (#20064) 2021-11-04 21:35:03 -07:00
build-wheel-manylinux2014.sh [dashboard] Rename "new_dashboard" -> "dashboard" (#18214) 2021-09-15 11:17:15 -05:00
build-wheel-windows.sh [Dashboard] Include the dashboard in Windows wheels (#19575) 2021-10-22 17:57:36 -07:00
MANIFEST.in [Build] Another attempt at building Python 3.9 MacOS wheels (#16347) 2021-06-10 10:20:30 -07:00
README-building-wheels.md [build] Build wheels with manylinux2014 (#11621) 2020-11-03 19:36:32 -08:00
requirements.txt Add smart_open dependency to ray[default] (#20420) 2021-11-18 10:00:30 -06:00
requirements_linters.txt [Lint] Add flake8-bugbear (#19053) 2021-10-03 23:24:11 -07:00
requirements_ml_docker.txt [Deps] Bump tensorflow on Docker image and add Codeowners (#20041) 2021-11-05 00:58:34 -07:00
setup.py [Datasets] Bump NumPy version to >= 1.19.0 for Python 3.6. (#20542) 2021-11-18 17:33:06 -08:00