Rally does not support the update API out of the box. However, you can write a so-called custom runner and use the Python client's update() method.
However, that solves only part of the problem. You also need a way to specify the documents that you want to update. This is what so-called parameter sources are meant for. It depends a bit how you provide the documents to upsert.
The simplest case would be to use just a dict or to generate the documents on the fly. Then you can write a parameter source similar to the one in the documentation.
Alternatively you could also read them from a file. However, this is more complicated, especially if you want to use this with multiple clients. For bulk-indexing Rally provides a pretty generic solution that allows you to read portions a file with an arbitrary number of clients but it is by far the most complex parameter source. In your special case, however, you might get away with a less generic solution: You could create one file per client. If you want to go down that route I think our bulk parameter source could still serve as a starting point.
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.