当总记录数较高(以百万计)时,将 iterator_1 设置为非常小的值,例如几千。但是当数据较少时,两者都具有相同的记录集。在 iterator_1 中仅获取值然后设置迭代器。在 iterator_2 中获取所有记录并设置迭代器。
理想情况下,两者都是一样的,对吧?但是得到不一致的输出。有人可以帮忙理解吗?
TableResult results = bigquery.query(queryConfig);
Iterator<FieldValueList> iterator_1 = results.getValues().iterator();
Iterator<FieldValueList> iterator_2 = results.iterateAll().iterator();