EK
Kaynaklar & Referanslar
Resmi dokümantasyon, .NET paketleri, sürüm uyumluluğu ve migration notları için toplu başvuru sayfası.
Resmi Dokümantasyon
- Elasticsearch Reference (9.x)
- Elastic.Clients.Elasticsearch .NET
- ES|QL Reference
- Kibana Guide
- Logstash Reference
NuGet Packages
| Paket | Versiyon | Amaç |
|---|---|---|
| Elastic.Clients.Elasticsearch | 9.4.1 | Official .NET client |
| Elastic.Transport | 0.5+ | HTTP transport layer |
| Elastic.Ingest.Elasticsearch | 0.5+ | Data shipper |
Versiyon Uyumluluk
| ES Server | .NET Client | .NET Runtime |
|---|---|---|
| 9.x | 9.x (major sync) | .NET 8+, .NET Framework 4.6.2+ |
| 8.x | 8.x | .NET 6+, .NET Framework 4.6.1+ |
| 7.x (legacy) | NEST 7.x (deprecated) | .NET Core 2.1+, .NET Framework 4.6.1+ |
NEST → Elastic.Clients.Elasticsearch Migration: NEST (7.x) artık maintenance-only, yeni özellik almıyor. 8.x+ client tamamen yeniden yazıldı — namespace, fluent API, ve request/response tipleri farklı. Migration guide: elastic.co/guide/en/elasticsearch/client/net-api/current/migration-guide.html. Temel farklar: IElasticClient → ElasticsearchClient, ConnectionSettings → ElasticsearchClientSettings, lambda descriptor pattern korundu ama tip isimleri değişti.
ES 8.x → 9.x Breaking Changes
| Kategori | Değişiklik | Etki | Aksiyon |
|---|---|---|---|
| Frozen indices | Read/unfreeze endpoint kaldırıldı | Frozen index'lere erişim yok | Searchable snapshots'a migrate edin |
| Vector Search | Eski _knn_search tech preview API kaldırıldı |
kNN aramaları hata verir | _search + knn parametresini kullanın |
| Timeout response | Timeout'lar artık 429 döner (eskiden 5xx) | Client retry logic etkilenir | 429 handling ekleyin |
| TLS | TLSv1.1 varsayılandan kaldırıldı | Eski client'lar bağlanamaz | TLSv1.2+ zorunlu |
| Mapping | type, fields, copy_to, boost metadata field'dan kaldırıldı |
Eski mapping tanımları hata verir | Mapping'leri güncelleyin |
| Highlighting | force_source parametresi kaldırıldı |
Highlighting request hata verir | Parameteyi kaldırın |
| Bulk API | Daha strict parsing | Malformed bulk request'ler reddedilir | Bulk format'ı doğrulayın |
| Ingest | user_agent processor'dan ecs option kaldırıldı |
Pipeline hata verir | ecs option'ı kaldırın |
| Watcher | types field desteği kaldırıldı |
Watch tanımları hata verir | types field'ı kaldırın |
| Deprecation log | deprecation.elasticsearch → elasticsearch.deprecation |
Log parsing bozulur | Log parser config güncelleyin |
| V7 compat | REST API V7 compatibility mode kaldırıldı | V7 format request'ler reddedilir | V9 format'a geçin |
| Analysis | Snowball stemmers yükseltildi (dil bazlı değişiklikler) | Tokenization sonuçları farklı olabilir | Analyzer test'lerini yeniden çalıştırın |
| semantic_text | Normal text field gibi davranır (subfield'lar sorgulanabilir) | Eski semantic query pattern'leri bozulabilir | Sorguları güncelleyin |
| random_score | Varsayılan field _seq_no olarak değişti |
Score sonuçları farklılaşır | field parametresini explicit belirtin |
Upgrade path: 7.x → 9.x direkt upgrade desteklenmiyor. Önce 7.x → 8.latest upgrade yapın, tüm deprecation warning'ları temizleyin, sonra 8.x → 9.x geçin.
.NET Runtime Desteği (Mayıs 2026)
| Runtime | Tür | Durum | Bitiş Tarihi |
|---|---|---|---|
| .NET 10 | LTS | Active | Kasım 2028 |
| .NET 9 | STS | Maintenance | Kasım 2026 |
| .NET 8 | LTS | Maintenance | Kasım 2026 |
| .NET 7 | STS | EOL | Mayıs 2024 |
| .NET 6 | LTS | EOL | Kasım 2024 |
Öneri: Yeni projeler .NET 10 (LTS) ile başlasın. Mevcut .NET 8 projeleri .NET 10'a planlı migration yapmalı — .NET 8 support Kasım 2026'da bitiyor.
Kaynak: Elastic Docs · GitHub · Elasticsearch 9.4.2 · .NET 10 LTS / .NET 8 LTS