Database
 sql >> база данни >  >> RDS >> Database

Как да изтриете данни от Elastisearch

Една от уникалните дизайнерски характеристики на Elasticsearch е, че за разлика от повечето традиционни системи или бази данни, всички задачи като свързване и манипулиране на Elasticsearch се изпълняват с помощта на REST API , което означава, че почти всяка заявка или команда, изпълнена на вашия Elasticsearch възел, е проста HTTP заявка към конкретен URL.

В зависимост от HTTP verb изпратено и URL адреса на този глагол, на който е изпратен, Elasticsearch може да извърши огромно разнообразие от действия върху възела или дори клъстера.

Структурата на URL адреса на Elasticsearch REST API

На най-основното ниво, за да изпълните команда в Elasticsearch, ще трябва да изпратите HTTP глагол до URL адреса на вашия Elasticsearch възел. За разработка обикновено това е localhost:9200 .

В повечето В случаите най-простият метод за изпращане на заявка към REST API на Elasticsearch е чрез полезния инструмент от командния ред, cURL , който е прост инструмент, използван за прехвърляне на почти всякакъв вид интернет данни.

Например, за да изброите всички indices , можете да изпълните следния curl команда от подканата на обвивката на вашия сървър за разработка (както е посочено в официалната документация:

$ curl 'localhost:9200/_cat/indices?v'
health index pri rep docs.count docs.deleted bookstore.size pri.bookstore.size

Тук имаме достъп до cat API (обозначено с водещия _ долно черта) и преглед на indices , което показва напречно сечение на всеки индекс в клъстера.

Индекси, типове, документи и свойства

С даден пример можем да изследваме по-подробно специфичната структура на Elasticsearch REST API, които най-често ще се състоят от три структурирани компонента, index , type и document :

localhost:9200/index/type/document

index е родителската структура и най-просто се смята за database който съдържа много types . И index може да представлява всяка концепция, но често представлява цяла система от компоненти като shop или bookstore .

Types се съдържат в index и са подобни на tables на базата данни , с всеки type представляваща колекция от подобни обекти (като shirt или book ).

И накрая, document е единичен екземпляр или представяне на обект от родителския type . По този начин книгата „Хобитът“ може да съществува като книга type в index имекнижарница .

Изтриване на данни от Elasticsearch

Като изключим основния синтаксис на REST API, можем да проучим как да извършваме конкретни действия като изтриване на данни.

Изтриване на единичен документ

Като вземем нашия основен синтаксис, както се вижда по-горе, трябва да използваме curl и изпратете DELETE HTTP глагол, използвайки -XDELETE опция:

$ curl -XDELETE 'localhost:9200/index/type/document'

Например, за да изтриете нашата по-горе спомената книга document , може да използваме следната команда:

$ curl -XDELETE 'localhost:9200/bookstore/book/1'

Това ще изтрие document с ID от 1 от book type който е в bookstore index .

Изтриване на тип

Както може би се досещате, с леко разширяване на синтаксиса, ние можем да премахнем цял type . Тук изтриваме book type :

$ curl -XDELETE 'localhost:9200/bookstore/book'

Изтриване на индекс

И накрая, ако искаме да изтрием цял index , това може да стане с помощта на същия синтаксис както преди:

$ curl -XDELETE 'localhost:9200/bookstore'

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как DevOps трябва да използват DBaaS (база данни като услуга), за да оптимизират разработката на своите приложения​

  2. Митове за производителността:Огромни колони с низове

  3. Статично и динамично маскиране на данни в FieldShield

  4. Основи на табличните изрази, част 3 – Производни таблици, съображения за оптимизация

  5. Разбиране на внедряването на Amazon Auroras Multi-AZ