Использовать размер страницы или нет

У меня есть таблица в Кассандре с множеством строк. Не безопасно, что я получаю все строки сразу. Я использовал PageSize, но он также возвращает все строки. Верно ли это? Есть ли разница между использованием и неиспользованием? А как насчет PageState? Как это использовать?

это мой код:

rowValues := make(map[string]interface{})
var row NotFinishedTBLFields
var rows []NotFinishedTBLFields
iter := Instance().Query(fmt.Sprintf(`SELECT * FROM Mytable`,)).PageSize(10.Iter()

for iter.MapScan(rowValues) {

    row = NotFinishedTBLFields{
        Bulk_id:       rowValues["bulk_id"].(int64),
        Recipient:     rowValues["recipient"].(string),
        Operator:      rowValues["operator"].(string),
        Tracking_code: rowValues["tracking_code"].(string),
    }
    rows = append(rows, row)
    rowValues = make(map[string]interface{})
}
fmt.Println("rows : ",rows)
if err := iter.Close(); err != nil {
    log.Fatal(err)
}
return rows

1 ответ

PageSize не ограничивает количество строк, возвращаемых запросом, но строки будут выбираться на страницах заданного размера. После того, как итератор исчерпает текущую страницу, следующая страница выбирается автоматически.

Рассмотрите возможность использования CQL LIMIT оговорка

Другие вопросы по тегам