在使用 Elasticsearch(簡稱 ES)時(shí),我們經(jīng)常需要向其插入數(shù)據(jù)。ES 支持多種插入數(shù)據(jù)的方式,其中一種常用方法就是使用 JSON 格式插入數(shù)據(jù)。
下面是一個(gè)簡單的示例,插入一條 JSON 格式的數(shù)據(jù):
PUT /my_index/_doc/1 { "name": "小明", "age": 18, "gender": "男", "city": "北京" }
上述代碼將會(huì)向名為my_index
的索引中插入一條數(shù)據(jù),并為其指定一個(gè) ID 值為1
。其中 JSON 數(shù)據(jù)中的鍵值對代表了要插入數(shù)據(jù)的字段名及字段對應(yīng)的值。
除了單個(gè)插入,ES 還支持批量插入多條數(shù)據(jù)。下面是一個(gè)向 ES 中批量插入四條數(shù)據(jù)的示例:
POST /my_index/_bulk {"index": {"_id": "1"}} {"name": "小明", "age": 18, "gender": "男", "city": "北京"} {"index": {"_id": "2"}} {"name": "小紅", "age": 20, "gender": "女", "city": "上海"} {"index": {"_id": "3"}} {"name": "小剛", "age": 22, "gender": "男", "city": "廣州"} {"index": {"_id": "4"}} {"name": "小芳", "age": 19, "gender": "女", "city": "深圳"}
上述代碼使用了批量插入的 API 接口_bulk
,并使用了 JSON 數(shù)據(jù)格式,指定了每條數(shù)據(jù)對應(yīng)的 ID 值和要插入數(shù)據(jù)的字段名及字段對應(yīng)的值。