es分页用from+size的方式超过1万条就查不出数据了。

查询大于1万的数据这里使用scroll和go-elasiticsearch简单写一个demo

package main  import ( 	"bytes" 	"fmt" 	"io" 	"log" 	"net/http" 	"os" 	"strconv" 	"strings" 	"sync" 	"time"  	"github.com/elastic/go-elasticsearch/v8" 	"github.com/tidwall/gjson" )  var c *elasticsearch.Client var once sync.Once  func main() { 	log.SetFlags(0) //这里设置的0即取消log格式化输出,输出的内容和使用fmt包下的println()格式一样  	var ( 		batchNum int 		scrollID string 	)  	es := setElastic([]string{"http://ip:9200"})  	// Index 100 documents into the "test-scroll" index 	//测试写入100个document 	log.Println("Indexing the documents...") 	for i := 1; i <= 100; i++ { 		res, err := es.Index( 			"test-scroll", 			strings.NewReader(`{"title" : "test"}`), 			es.Index.WithDocumentID(strconv.Itoa(i)), 		) 		if err != nil || re