[services-lib] Add function to batch get items
Summary: This is very similiar to D8895 but for getting items. It performs the BatchGetItem operation.
Test Plan:
- Locally, created a single-column table and filled it with values from 1 to 1000. Then ran the function to get them all. Confirmed that all 1000 items were returned. Logs confirmed that it was divided in batch of 100 items.
- On staging, repeated the steps for a table with read capacity of 1. Confirmed that exponential backoff did the job and items were retrieved after a few retries. However, I needed to increase number of items to about 3k
In general, conclusions are similiar to D8895 test plan (this is expected, the code and working principle is analogous).
Reviewers: michal, varun, jon
Reviewed By: michal
Subscribers: ashoat, tomek, wyilio
Differential Revision: https://phab.comm.dev/D9348