Elasticsearch: Dizinleme ve Arama
Dağıtık bir arama ve analiz altyapısı olan Elasticsearch’ün temellerini öğrenin. Belgeleri nasıl dizinleyeceğinizi ve temel sorguları nasıl çalıştıracağınızı anlayın.
Elasticsearch: Dizinleme ve Arama, CoddyKit'te ücretsiz bir System Observability: Logging, Metrics & Tracing (ELK + OpenTelemetry) dersidir. Bu, 4 dersinin 1. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, System Observability: Logging, Metrics & Tracing (ELK + OpenTelemetry) öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. System Observability: Logging, Metrics & Tracing (ELK + OpenTelemetry) kursu toplamda 4 dersten oluşur.
Bu dersin bazı bölümleri henüz çevrilmemiş olup İngilizce olarak gösterilmektedir.
Welcome to Elasticsearch!
Welcome to the first lesson on the ELK Stack! We'll start with Elasticsearch, the 'E' in ELK.
Elasticsearch is a powerful, open-source distributed search and analytics engine. It's designed to store, search, and analyze large volumes of data quickly.
- Distributed: Runs across multiple servers.
- Real-time: Data is available for search almost instantly.
- Scalable: Easily handles growing data needs.
Data as JSON Documents
Elasticsearch stores data as JSON documents. Think of a document as a single record, like a row in a database, but more flexible.
Each document is a collection of fields (key-value pairs) and can contain various data types, including text, numbers, dates, and even other JSON objects.
Here's a simple example of a document:
{"user": "alice", "message": "Hello CoddyKit!"}Understanding Indices
In Elasticsearch, documents are organized into indices. An index is like a database in a relational database system, or a collection in a NoSQL database.
You can have multiple indices, and each index can store documents that are somewhat related. For example, you might have one index for 'logs' and another for 'products'.
- An index is a logical namespace.
- It groups similar documents.
- You search within specific indices.
Indexing Your First Document
Indexing is the process of adding or updating documents in an Elasticsearch index. When you index a document, Elasticsearch stores it and makes it searchable.
Each document needs a unique ID within its index. If you don't provide one, Elasticsearch will generate it for you.
We use HTTP API calls, typically with PUT or POST requests, to interact with Elasticsearch.
Indexing a Document Example
Let's index a simple log document into an index called my_logs. We'll specify an ID of 1.
Try running this command (assuming Elasticsearch is running on localhost:9200):
curl -X PUT "localhost:9200/my_logs/_doc/1?pretty" -H 'Content-Type: application/json' -d'
{
"timestamp": "2023-10-27T10:00:00Z",
"level": "info",
"message": "Application started successfully"
}'Retrieving Documents by ID
Once a document is indexed, you can retrieve it using its unique ID. This is useful when you know exactly which document you want.
To retrieve a document, you send an HTTP GET request to the specific index and document ID endpoint.
This operation is very fast as Elasticsearch can directly fetch the document.
Retrieving a Document Example
Let's retrieve the document we just indexed with ID 1 from the my_logs index.
Run this command to see the stored document:
curl -X GET "localhost:9200/my_logs/_doc/1?pretty"Introduction to Searching
The real power of Elasticsearch comes from its searching capabilities. Instead of knowing an ID, you often want to find documents based on their content.
You can search across all documents in an index (or multiple indices) using various query types. Elasticsearch uses a query language based on JSON.
- Find documents by keywords.
- Filter by date ranges or specific values.
- Combine multiple search criteria.
Basic Search: Match All
The simplest search query is the match_all query. It returns all documents in the specified index.
This is often used to verify that documents are indexed correctly or as a starting point for more complex queries.
You send an HTTP GET request to the _search endpoint of your index.
Match All Query Example
Let's search for all documents in our my_logs index. You'll see the document we indexed earlier.
Run this command:
curl -X GET "localhost:9200/my_logs/_search?pretty" -H 'Content-Type: application/json' -d'
{
"query": {
"match_all": {}
}
}'Quick Check on Indexing
You've learned about documents, indices, and how to index and retrieve data. Let's test your understanding of indexing.
Recap: Indexing and Basic Search
Great job! In this lesson, you've learned the fundamentals of Elasticsearch:
- Elasticsearch is a distributed search and analytics engine.
- Data is stored as JSON documents.
- Documents are organized into indices.
- Indexing adds or updates documents using
PUT/POSTrequests. - Documents can be retrieved by ID using
GETrequests. - Basic searching can be done with queries like
match_all.
Next, we'll dive deeper into Logstash, the 'L' in ELK, to ingest and process data!
Sıkça Sorulan Sorular
“Elasticsearch: Dizinleme ve Arama” dersi ücretsiz mi?
Evet — “Elasticsearch: Dizinleme ve Arama” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve System Observability: Logging, Metrics & Tracing (ELK + OpenTelemetry) kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. System Observability: Logging, Metrics & Tracing (ELK + OpenTelemetry) kursu toplamda 4 dersten oluşur.
“Elasticsearch: Dizinleme ve Arama” dersinde ne öğreneceğim?
Dağıtık bir arama ve analiz altyapısı olan Elasticsearch’ün temellerini öğrenin. Belgeleri nasıl dizinleyeceğinizi ve temel sorguları nasıl çalıştıracağınızı anlayın. System Observability: Logging, Metrics & Tracing (ELK + OpenTelemetry) ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
System Observability: Logging, Metrics & Tracing (ELK + OpenTelemetry) öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te System Observability: Logging, Metrics & Tracing (ELK + OpenTelemetry), başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 1. dersidir.
“Elasticsearch: Dizinleme ve Arama” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu System Observability: Logging, Metrics & Tracing (ELK + OpenTelemetry) dersinde kod yazıp çalıştırabilir miyim?
Evet. Her System Observability: Logging, Metrics & Tracing (ELK + OpenTelemetry) dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- Elasticsearch: Dizinleme ve Arama
- Logstash: Veri Alma ve İşleme
- Kibana: Görselleştirme ve Panolar
- Beats: Hafif Veri Aktarıcıları