LindormSearch menyediakan API RESTful yang kompatibel dengan Elasticsearch. Anda dapat menggunakan perintah curl untuk mengelola indeks pencarian dan dokumen di LindormSearch.
Prasyarat
LindormSearch harus diaktifkan untuk instance Lindorm Anda. Untuk informasi lebih lanjut, lihat Aktifkan LindormSearch.
Alamat IP klien Anda harus ditambahkan ke daftar putih instance Lindorm Anda. Untuk informasi lebih lanjut, lihat Konfigurasikan Daftar Putih.
Terhubung ke LindormSearch
Gunakan perintah berikut untuk terhubung ke LindormSearch dan melihat informasi tentang indeks dalam kluster.
curl -XGET "http://<url>/_cat/indices?v" -u <username>:<password> Parameter
Parameter | Deskripsi |
url | Titik akhir LindormSearch untuk Elasticsearch. Untuk informasi lebih lanjut tentang cara mendapatkan titik akhir, lihat Titik akhir LindormSearch untuk Elasticsearch. null
|
username | Nama pengguna dan kata sandi yang digunakan untuk mengakses LindormSearch. Anda dapat melakukan langkah-langkah berikut untuk mendapatkan nama pengguna dan kata sandi default: Di panel navigasi di sebelah kiri, klik Database Connections. Pada halaman yang muncul, klik tab Search Engine. Lalu, lihat nama pengguna dan kata sandi yang ditampilkan di tab ini. |
password |
Berikut adalah contoh cara terhubung ke LindormSearch:
curl -XGET "http://ld-t4n5668xk31ui****-proxy-search-public.lindorm.rds.aliyuncs.com:30070/_cat/indices?v" -u <username>:<password>Setelah berhasil terhubung ke LindormSearch, hasil berikut akan dikembalikan. Tidak ada informasi indeks yang termasuk karena belum ada indeks yang dibuat dalam kluster.
health status index uuid pri rep docs.count docs.deleted store.size pri.store.sizeLakukan operasi di LindormSearch
Contoh berikut menunjukkan cara menggunakan perintah curl umum untuk melakukan operasi di LindormSearch. Untuk informasi lebih lanjut tentang perintah lainnya, lihat Dokumentasi Elasticsearch.
Kelola indeks
Buat indeks.
Buat indeks bernama lindorm_search di LindormSearch.
curl -XPUT "http://ld-t4n5668xk31ui****-proxy-search-public.lindorm.rds.aliyuncs.com:30070/lindorm_search" -u <username>:<pasword> -H 'Content-Type: application/json' -d ' { "settings": { "number_of_shards": 4 // Tetapkan jumlah shard menjadi 4. } }'nullJumlah maksimum shard per node untuk LindormSearch adalah
1000. Untuk meningkatkan batas ini, hubungi dukungan teknis Lindorm (ID DingTalk: s0s3eg3).Setelah indeks dibuat, hasil berikut akan dikembalikan:
{"acknowledged":true,"shards_acknowledged":true,"index":"lindorm_search"}Konfigurasikan skema indeks.
Tetapkan skema lindorm_search ke
_mappingdari tipe_doc. Skema yang ditentukan mencakup bidangid,name, dandescribe.curl -XPUT "http://ld-t4n5668xk31ui****-proxy-search-public.lindorm.rds.aliyuncs.com:30070/lindorm_search/_doc/_mapping" -u <username>:<pasword> -H 'Content-Type: application/json' -d ' { "_doc":{ "properties": { "id": {"type": "long"}, "name":{"type":"keyword"}, "describe": {"type": "text"} } } }'Setelah skema dikonfigurasi, hasil berikut akan dikembalikan:
{"_index":"lindorm_search","_type":"_doc","_id":"_mapping","_version":1,"result":"created","_shards":{"total":1,"successful":1,"failed":0},"_seq_no":0,"_primary_term":1}Lihat indeks sebuah instance.
curl -XGET "http://ld-t4n5668xk31ui****-proxy-search-public.lindorm.rds.aliyuncs.com:30070/_cat/indices?v" -u <username>:<pasword>Hasil berikut akan dikembalikan:
health status index uuid pri rep docs.count docs.deleted store.size pri.store.size green open lindorm_search lindorm_search 1 0 0 0 208b 208bJika tidak ada indeks yang dibuat untuk instance saat ini, hasil yang dikembalikan tidak akan mencakup informasi indeks.
Hapus indeks.
curl -XDELETE "http://ld-t4n5668xk31ui****-proxy-search-public.lindorm.rds.aliyuncs.com:30070/lindorm_search" -u <username>:<password>Setelah indeks dihapus, hasil berikut akan dikembalikan:
{"acknowledged":true}
Kelola dokumen
Buat satu dokumen.
Buat dokumen dengan ID 1 di indeks lindorm_search.
curl -XPOST "http://ld-t4n5668xk31ui****-proxy-search-public.lindorm.rds.aliyuncs.com:30070/lindorm_search/_doc/1" -u <username>:<password> -H 'Content-Type: application/json' -d ' { "id":100, "name":"shenzhen", "describe":"just a test" }'Buat beberapa dokumen.
Buat dua dokumen dengan ID 1 dan 2 di indeks lindorm_search.
curl -XPOST "http://ld-t4n5668xk31ui****-proxy-search-public.lindorm.rds.aliyuncs.com:30070/_bulk" -u <username>:<password> -H 'Content-Type: application/json' -d' { "index" : { "_index": "lindorm_search", "_type" : "_doc", "_id" : "1" } } {"id":200,"name":"shanghai","describe":"just"} { "index" : { "_index": "lindorm_search", "_type" : "_doc", "_id" : "2" } } {"id":300,"name":"beijing","describe":"dood luck"} 'Kueri dokumen.
Kueri dokumen dengan ID 1.
curl -XGET "http://ld-t4n5668xk31ui****-proxy-search-public.lindorm.rds.aliyuncs.com:30070/lindorm_search/_doc/1?pretty" -u <username>:<password>Hasil berikut akan dikembalikan:
{ "_index" : "lindorm_search", "_id" : "1", "_version" : 1, "_seq_no" : 0, "_primary_term" : 1, "found" : true, "_source" : { "id" : 100, "name" : "shenzhen", "describe" : "just a test" } }