İçeriğe atla
Şimdi yükleniyor
  • Anasayfa
  • Azure & Bulut
    • Microsoft Azure
    • Bulut Altyapı
    • Microsoft 365
  • Yazılım
    • DevOps
    • Geliştirici Araçları
    • Konteyner & K8s
  • AI & Veri
    • Yapay Zeka
    • Veri & Analitik
  • Güvenlik
    • Güvenlik & Kimlik
    • Kurumsal Teknoloji
  • Hakkımda
    • İletişim
×
  • Azure
  • Bulut Altyapı
  • DevOps
  • Geliştirici Araçları
  • Güvenlik & Kimlik
  • Konteyner & Kubernetes
  • Kurumsal Teknoloji
  • Microsoft 365
  • Microsoft Azure
  • Veri & Analitik
  • Yapay Zeka
  • Başlangıç
  • Veri & Analitik
  • Azure Cosmos DB’de Partition Key Değiştirmek: Artık Daha Az Acı Veriyor
Bulut Altyapı Geliştirici Araçları Veri & Analitik Azure Cosmos DB, hot partition, online copy, partition key, performans, RU tüketimi, veri modelleme A.KILIÇ 10/06/2026 4 Yorumlar

Azure Cosmos DB’de Partition Key Değiştirmek: Artık Daha Az Acı Veriyor

Azure Cosmos DB’de Partition Key Değiştirmek: Artık Daha Az Acı Veriyor
Ana Sayfa › Bulut Altyapı › Azure Cosmos DB’de Partition Key Değiştirmek: Artık Daha Az Acı Veriyor
⏱️ 8 dk okuma📅 10 Haziran 2026🔄 Güncelleme: 15 Temmuz 2026👁️ görüntülenme

Azure Cosmos DB ile çalışan ekiplerin canını en çok sıkan şeylerden biri, yanlış seçilmiş bir partition key yüzünden aylar sonra duvara toslamak oluyor. İlk günlerde her şey yolunda gidiyor; trafik düşük, veri küçük, sorgular da masum görünüyor. Sonra ürün büyüyor, erişim paterni değişiyor. Bir bakıyorsunuz hot partition yüzünden RU tüketimi zıplamış, bazı sorgular fan-out yapmaya başlamış, gecikme de sessizce yukarı tırmanıyor. İşin aslı şu: partition key seçimi sadece teknik bir detay değil, mimarinin omurgası.

📋 İçindekiler

  1. Küçük ekip mi, kurumsal yapı mı?

    Eh, Küçük ekipler için önerim basit: önce yeni partition key ile gerçekten hangi sorguların iyileştiğini ölçün, sonra taşıyın. Çünkü her migration emek ister ve bütçe küçükse gereksiz deneme lüksünüz olmayabilir.

    Bir şey dikkatimi çekti: Büyük kurumlarda işe iş biraz daha formal ilerlemeli. Test ortamında online copy sürecini birebir simüle etmek şart olurdu benim gözümde (özellikle regülasyonlu sektörlerde). Ayrıca uygulama katmanında connection string / container referansı değişimini nasıl yöneteceğinizi önceden netleştirin. Yoksa canlıya çıkınca herkes birbirine bakıyor.

    Sahada nasıl uygulanır?

    Ne yalan söyleyeyim, Geçen yıl İzmir’de bir lojistik firmasına danışmanlık verirken benzer bir geçiş planladık ama o zaman Change Partition Key GA değildi; mecburen paralel yapı kurduk. Oldukça uğraştırdı bizi. Şimdi aynı senaryoda portal üzerinden job başlatıp ilerlemeyi izlemek çok daha temiz olurdu diye düşünüyorum.

    Süreç kabaca üç parçaya ayrılıyor: job başlatma, ilerlemeyi izleme ve cutover yapma. Online modda kaynak container’daki yazmalar hedefe taşınmaya devam ediyor; sız de portal üzerinden doküman sayısını takip ediyorsunuz. Kopya neredeyse tamamlandığında yazmayı durdurup işlemi bitiriyorsunuz. Kulağa basit geliyor ama şey… canlı sistemde basit görünen işler bazen gece yarısı alarmına dönüşebiliyor.

    # Pratik kontrol listesi
    1) Mevcut access pattern'i çıkar
    2) Yeni partition key için query'leri test et
    3) Online copy job'u test ortamında dene
    4) Cutover zamanını düşük trafikte planla
    5) Uygulama tarafında bağlantı geçişini hazır tut
    6) Eski container'ı hemen silme; kısa süre doğrulama bırak
    
    

    Nerede hata yaptım?

    Bunu saklamayayım: İlk Cosmos DB göçlerinden birinde destination container’ı doğru hazırladığımız hâlde throughput tarafını hafif tutmuşuz ve kopyalama sırasında beklediğimizden fazla gecikme aldık. Hata mesajı çok dramatik değildi ama performans bize tokat gibi geldi diyebilirim. Çözümümüz basitti: geçici olarak kapasiteyi artırdık ve job’u tekrar koşturduk.

    Bu yüzden ben hep şunu söylerim: veri modeli kadar kapasite planlaması da önemli. Bilhassa TL bazında bakınca Azure maliyetleri bazı ekiplerde hassas konu oluyor — haklılar da — fakat yanlış planlanmış bir migration’ın operasyon maliyeti çoğu zaman birkaç günlük ekstra kapasiteden pahalıya geliyor.

    Maliyet ve risk açısından nasıl okumalı?

    Bütçe kısıtlıysa iki yolu karşılaştırırım ben genelde: ya mevcut sistemi olduğu gibi tutup kısa vadeli riskleri kabul edeceksiniz ya da kontrollü biçimde yeniden bölümlendirme yapacaksınız (kendi tecrübem). Birincisi ucuz görünür ama gizli maliyet taşır; ikincisi başlangıçta biraz masraf çıkarır ama uzun vadede nefes aldırır. Daha fazla bilgi için

    💡 Bilgi: Eğer bütçe dar işe önce sorgu deseninizi optimize edin; gereksiz cross-partition sorguları azaltmak bazen migration’dan daha hızlı kazanç sağlar.

    Bunu kendi projelerimde nasıl konumlandırıyorum?

    AZ-305 sınavına hazırlanırken bile şunu tekrar tekrar görmüştüm: doğru veri yerleşimi sadece teoride değil gerçek mimaride de oyunun kaderini değiştiriyor. Cosmos DB bunun en net örneklerinden biri. AZ-104 tarafında operasyonu öğreniyorsunuz, AZ-500’de güvenlik kısmını oturtuyorsunuz, ama data modeling kısmı ayrı bir kaş istiyor — önü geliştirmeden sağlıklı bulut mimarisi olmuyor.

    Logosoft’ta çalışırken bir telekom müşterisinde benzer şekilde event yoğunluğu yüksek bir yapı analiz etmiştik. Orada asıl problem “veri kötü” değildi; access pattern eski kalmıştı. Bu ayrımı yapmak önemli. Çünkü bazen çözüm servisi değiştirmek değil,anahtarı yeniden düşünmek oluyor — itiraf edeyim, beklentimin üstündeydi —. İşte bu özellik tam o noktada işe yarıyor.

    Tavsiyem ne?

    • Önce workload’unuzu okuyun: hangi kullanıcı hangi veriye dokunuyor? — ciddi fark yaratıyor
    • Kritik sorguları tek tek test edin; tahmin etmeyin.
    • Cutover öncesi geri dönüş planı hazırlayın.
    • Eğer üretimdeyseniz offline yerine online modu değerlendirin.
    • Eski container’ı hemen silmeyin; birkaç gün gözlem bırakın.

    Neyse uzatmayayım… Benim görüşüm şu: Microsoft burada gerçekten doğru yönde adım atmış. Ama hâlâ eksik olan şeylerin başında süreç rehberlerinin biraz daha gerçek dünya senaryolarıyla zenginleştirilmesi geliyor. Mesela çok kiracılı SaaS uygulamalarında tenant bazlı geçiş örnekleri ya da yüksek trafik altında throttle davranışı daha açık anlatılabilir.

    Sıkça Sorulan Sorular

    Azure Cosmos DB’de partition key sonradan değiştirilebilir mi?

    Evet, artık Change Partition Key özelliğiyle bu mümkün oluyor. Üstelik online copy desteği sayesinde kaynak container’daki yazmaları tamamen durdurmadan geçiş yapabiliyorsunuz — bence bu gerçekten büyük bir kolaylık.

    Online copy ile offline copy arasındaki fark nedir?

    Online copy’de kaynak container’a yazmalar devam ederken hedefe kopyalama sürüyor (buna dikkat edin). Offline copy’de işe genelde yazmaları durdurmanız gerekiyor; yanı geçiş penceresi daha belirgin oluyor ve planlama daha kritik hâle geliyor.

    Bu özellik her senaryoda risksiz mi?

    Kendi deneyimimden konuşuyorum, Hayır, açıkçası değil. Veri modeli uyumsuzsa ya da cutover iyi planlanmadıysa sorun yaşayabilirsiniz. Özellik işi kolaylaştırıyor, ama tasarım hatasını ortadan kaldırmıyor — bunu unutmamak lazım.

    Küçük ekipler için uygun mu?

    Evet, hatta bazı durumlarda özellikle uygun olabiliyor. Ama tecrübeme göre önce maliyet-fayda hesabını yapmak gerekiyor; çünkü her taşıma operasyonel efor istiyor.

    Kaynaklar ve İleri Okuma

    Orijinal Microsoft Azure Cosmos DB Blog Yazısı

    Azure Cosmos DB Partitioning Overview — Microsoft Learn

    Azure Cosmos DB’de GSI: Okuma Yükünü Hafifletmenin Pratik Yolu

    Azure Cosmos DB vNext Emülatör: Yerelde Gerçek Gibi Test Etmek

    Azure Cosmos DB’de Bölüm Bazlı Otomatik Failover: Sessiz Devrim

    Aşkın KILIÇ
    Aşkın KILIÇYazar

    20+ yıl deneyimli Azure Solutions Architect. Microsoft sertifikalı bulut mimari ve DevOps danışmanı. Azure, yapay zekâ ve bulut teknolojileri üzerine Türkçe teknik içerikler üretiyor.

    AZ-305AZ-104AZ-500AZ-400DP-203AI-102

    İlgili Yazılar

    Kubernetes v1.36 Pod-Level In-Place Resize: Beta'ya Yükseldi
    Kubernetes v1.36 Pod-Level In-Place Resize: Beta'ya Yükseldi7 May 2026
    GitHub Mobile'da Actions Hatalarını Copilot ile Tek
    GitHub Mobile'da Actions Hatalarını Copilot ile Tek25 Tem 2026
    Copilot Usage Metrics API ile Kullanıcı Bazlı AI Kredisi
    Copilot Usage Metrics API ile Kullanıcı Bazlı AI Kredisi19 Haz 2026
    MSVC 14.51 RC Çıktı: Derleyici Tarafında Neler Var?
    MSVC 14.51 RC Çıktı: Derleyici Tarafında Neler Var?19 Nis 2026

    Bu içerik işinize yaradı mı?

    Benzer içerikleri kaçırmamak için YouTube ve GitHub hesaplarımı takip edin.

    YouTube GitHub

    Haftalık Bülten

    Her pazar özenle seçilmiş teknoloji yazıları doğrudan e-postanıza gelsin.

Etiket Azure Cosmos DB hot partition online copy partition key performans RU tüketimi veri modelleme
A.KILIÇ

Microsoft Azure Çözüm Uzmanı | Bulut Bilişim, Yapay Zekâ, DevOps ve Kurumsal Güvenlik alanlarında 15+ yıl deneyim. Azure, Kubernetes, AI/ML ve modern altyapı mimarileri üzerine yazılar yazıyorum.

view all posts
Önceki yazı

vcpkg Mayıs 2026 Güncellemesi: Sessiz Güç, Büyük Etki

Sonraki yazı

EWS Bildirimlerinden Microsoft Graph’a Geçiş: Sessiz Ama Büyük Değişim

İlginizi Çekebilir

TypeScript 7.0 Yayınlandı: Go ile 10 Kat Hız
A.KILIÇ 0

TypeScript 7.0 Yayınlandı: Go ile 10 Kat Hız

25/07/2026
GitHub Mobile'da Actions Hatalarını Copilot ile Tek
A.KILIÇ 0

GitHub Mobile’da Actions Hatalarını Copilot ile Tek

25/07/2026
Microsoft Agent Framework için Cosmos DB Tabanlı Bellek
A.KILIÇ 0

Microsoft Agent Framework için Cosmos DB Tabanlı Bellek

25/07/2026

4 comments

comments user
Burcu Ç. 10/06/2026 20:11

Biz de geçen yıl yanlış seçilen bir partition key yüzünden ciddi hot partition sorunları yaşadık, o süreçte veriyi yeniden migrate etmek gerçekten çok can sıkıcıydı. Bu özellik o dönemde olsaydı epey zaman kazanırdık. Bu arada şu yazınız da güzeldi: GitHub’ın Unuttuğu Depolar İçin Güvenlik Kontrolü: Bence Asıl Mesaj Bu — https://www.askinkilic.com.tr/githubin-unuttugu-depolar-icin-guvenlik-kontrolu-bence-asil/

Yanıtla
comments user
Burak S. 10/06/2026 21:38

Tam da geçen ay bu sorunu yaşadık, hot partition yüzünden RU maliyetlerimiz ikiye katlandı. Microsoft’un bu özelliği biraz geç getirdiği söylenebilir ama yine de “artık mümkün” demesi büyük rahatlama. Peki migration sırasında downtime kaçınılmaz mı oluyor, bununla ilgili bir deneyiminiz var mı?

Yanıtla
comments user
Merve Ş. 11/06/2026 09:36

Geçen ay tam bu sorunu yaşadık, hot partition olayı gerçekten can sıkıcı. Partition key seçimini baştan doğru yapmak ne kadar kritik, sonradan değiştirmeye çalışmak bile olsa ciddi bir iş. Bu özelliğin ne kadar downtime gerektirdiğine de değinilmiş mi yazıda?

Yanıtla
comments user
İrem B. 11/06/2026 11:57

Partition key seçimi konusunda başlangıçta “işe yarar bir şey seçeyim” deyip sonradan hot partition cehennemine düşmek gerçekten can sıkıcı oluyor. Bu özellik çok geç geldi ama iyi ki geldi, bütün container’ı yeniden oluşturmak zorunda kalmak tam bir kabustu. Bu arada şu yazınız da güzeldi: CodeQL 2.25.6 ile Sessiz Ama Güçlü Güvenlik Sıçraması — https://www.askinkilic.com.tr/codeql-2256-ile-sessiz-ama-guclu-guvenlik-sicramasi/

Yanıtla

Yorum gönder Yanıtı iptal et

Yazı Ara

Takip Edin

  • Takipçi
  • Takipçi
  • Takipçi
  • Abone
  • Takipçi
  • TypeScript 7.0 Yayınlandı: Go ile 10 Kat Hız
    25/07/2026 TypeScript 7.0 Yayınlandı: Go ile 10 Kat Hız
  • GitHub Mobile'da Actions Hatalarını Copilot ile Tek
    25/07/2026 GitHub Mobile’da Actions Hatalarını Copilot ile Tek
  • Microsoft Agent Framework için Cosmos DB Tabanlı Bellek
    25/07/2026 Microsoft Agent Framework için Cosmos DB Tabanlı Bellek
  • Microsoft Build of OpenJDK Temmuz 2026 Güncellemesi
    25/07/2026 Microsoft Build of OpenJDK Temmuz 2026 Güncellemesi
  • AT&T ve Microsoft Foundry ile Trilyon Token Ölçeğinde AI
    24/07/2026 AT&T ve Microsoft Foundry ile Trilyon Token Ölçeğinde AI
  • Veri Merkezi Güvenilirliği
    09/03/2026 Azure’da Kesintisiz Çalışma: Güvenilirlik ve Kurtarma
  • 2026-03-10_15-35-23
    10/03/2026 Microsoft 365 E7: Yapay Zeka ve Güvenlik Bir Arada
  • Kubernetes v1.36 Memory QoS: Katmanlı Bellek Koruması Geldi
    30/04/2026 Kubernetes v1.36 Memory QoS: Katmanlı Bellek Koruması Geldi
  • GitHub Copilot for Eclipse Açık Kaynağa Dönüyor: Neden Önemli?
    08/04/2026 GitHub Copilot for Eclipse Açık Kaynağa Dönüyor: Neden Önemli?
  • Copilot Cloud Agent Metriği: Kullanımı Ölçmek Kolaylaştı
    11/04/2026 Copilot Cloud Agent Metriği: Kullanımı Ölçmek Kolaylaştı
  • GitHub Copilot Pro Denemeleri Neden Durdu?
    11/04/2026 GitHub Copilot Pro Denemeleri Neden Durduruldu?
  • vcpkg'de Paralel Kurulum ve Güvenlik Yaması: Neler Değişti?
    06/04/2026 vcpkg’de Paralel Kurulum ve Güvenlik Yaması: Neler Değişti?
  • MCP Apps’i Kolaylaştıran Fluent API: Sahada Ne Değişiyor?
    08/04/2026 MCP Apps’i Kolaylaştıran Fluent API: Sahada Ne Değişiyor?
  • Yapay Zekâ Çağında Sanayi Politikası: Asıl Mesela Ne?
    06/04/2026 Yapay Zekâ Çağında Sanayi Politikası: Asıl Mesela Ne?
  • Microsoft Foundry Mart 2026: Sahadan İlk İzlenimler
    10/04/2026 Microsoft Foundry Mart 2026: Sahadan İlk İzlenimler

SİZİN İÇİN DERLEDİK

TypeScript 7.0 Yayınlandı: Go ile 10 Kat Hız
Bulut Altyapı Geliştirici Araçları

TypeScript 7.0 Yayınlandı: Go ile 10 Kat Hız

25/07/2026 A.KILIÇ
GitHub Mobile'da Actions Hatalarını Copilot ile Tek
Geliştirici Araçları Microsoft Azure Yapay Zeka

GitHub Mobile’da Actions Hatalarını Copilot ile Tek

25/07/2026 A.KILIÇ
Microsoft Agent Framework için Cosmos DB Tabanlı Bellek
Geliştirici Araçları Microsoft Azure Yapay Zeka

Microsoft Agent Framework için Cosmos DB Tabanlı Bellek

25/07/2026 A.KILIÇ
Microsoft Build of OpenJDK Temmuz 2026 Güncellemesi
Bulut Altyapı Güvenlik & Kimlik Microsoft Azure

Microsoft Build of OpenJDK Temmuz 2026 Güncellemesi

25/07/2026 A.KILIÇ
AT&T ve Microsoft Foundry ile Trilyon Token Ölçeğinde AI
Bulut Altyapı Geliştirici Araçları Yapay Zeka

AT&T ve Microsoft Foundry ile Trilyon Token Ölçeğinde AI

24/07/2026 A.KILIÇ
Claude Opus 5 GitHub Copilot'ta Kullanıma Sunuldu
Bulut Altyapı Geliştirici Araçları Yapay Zeka

Claude Opus 5 GitHub Copilot’ta Kullanıma Sunuldu

24/07/2026 A.KILIÇ
GitHub MCP Server Yeni MCP Spesifikasyonunu Destekliyor
Bulut Altyapı Geliştirici Araçları Yapay Zeka

GitHub MCP Server Yeni MCP Spesifikasyonunu Destekliyor

24/07/2026 A.KILIÇ
Announcing etcd 3.7.0-beta.0
Bulut Altyapı Geliştirici Araçları Konteyner & Kubernetes

Announcing etcd 3.7.0-beta.0

24/07/2026 A.KILIÇ
Declarative Workflows 1.0: Ajan Orkestrasyonu Artık YAML'da
DevOps Geliştirici Araçları Microsoft Azure Yapay Zeka

Declarative Workflows 1.0: Ajan Orkestrasyonu Artık YAML’da

24/07/2026 A.KILIÇ
Linear'da Copilot Cloud Agent Genel Kullanıma Açıldı
Bulut Altyapı Geliştirici Araçları Yapay Zeka

Linear’da Copilot Cloud Agent Genel Kullanıma Açıldı

23/07/2026 A.KILIÇ
Azure Dev/Test Avantajı: Visual Studio ile Bulutta Deneme
Bulut Altyapı DevOps Geliştirici Araçları

Azure Dev/Test Avantajı: Visual Studio ile Bulutta Deneme

23/07/2026 A.KILIÇ
AI Ajanları Cosmos DB vNext Emülatörüyle Buluşuyor
Bulut Altyapı Geliştirici Araçları Yapay Zeka

AI Ajanları Cosmos DB vNext Emülatörüyle Buluşuyor

23/07/2026 A.KILIÇ

Hakkımda

Aşkın KILIÇ

Microsoft Azure Çözüm Uzmanı. Bulut bilişim, yapay zekâ, DevOps ve kurumsal güvenlik üzerine yazılar yazıyorum.

Devamını Oku →

Kategoriler

  • Azure
  • Bulut Altyapı
  • DevOps
  • Geliştirici Araçları
  • Güvenlik & Kimlik
  • Konteyner & Kubernetes
  • Kurumsal Teknoloji
  • Microsoft 365
  • Microsoft Azure
  • Veri & Analitik
  • Yapay Zeka

Popüler Etiketler

AI ajanları Azure Azure Cosmos DB Azure Developer CLI Azure DevOps Azure Functions Azure OpenAI azure sdk Azure SQL açık kaynak bulut bilişim C++ CI/CD copilot Copilot CLI DevOps DevSecOps geliştirici verimliliği GitHub GitHub Actions GitHub Copilot güvenlik Kimlik Doğrulama Kubernetes Kurumsal geliştirme kurumsal güvenlik kurumsal yapay zeka maliyet optimizasyonu Microsoft Agent Framework Microsoft Azure Microsoft Foundry OpenAI otomasyon performans Pull Request Python RAG SEO uyumlu verimlilik veri yönetimi Visual Studio VS Code yapay zeka yapay zeka ajanları Yazılım geliştirme
  • Gizlilik Politikası
  • Çerez Politikası
  • Kullanım Koşulları
  • Hakkımda
  • İletişim

© 2026 Aşkın KILIÇ | Tüm hakları saklıdır. | Powered By SpiceThemes

Çerez tercihleri Zorunlu çerezler sitenin çalışması için kullanılır. Analitik çerezler yalnız açık izninizden sonra Google Analytics ve Microsoft Clarity için etkinleştirilir. KVKK ve Çerez Politikası
✉

Haftalık Bülten

Azure, DevOps ve Yapay Zeka dünyasındaki en güncel içerikleri her hafta doğrudan e-postanıza alın.

Spam yok. İstediğiniz zaman iptal edebilirsiniz.
📱
Uygulamayı Yükle Ana ekrana ekle, çevrimdışı oku
Ana Sayfa
Kategoriler
💻 Geliştirici Araçları 301 yazı 🏗️ Bulut Altyapı 256 yazı 🤖 Yapay Zeka 218 yazı 🔧 DevOps 175 yazı ☁️ Microsoft Azure 169 yazı 🔒 Güvenlik & Kimlik 154 yazı 🏢 Kurumsal Teknoloji 64 yazı 📊 Veri & Analitik 55 yazı 🐳 Konteyner & Kubernetes 44 yazı 📧 Microsoft 365 19 yazı 📁 Azure 1 yazı
Ara
Popüler
Yapay Zeka Azure Kubernetes DevOps Copilot Docker
Paylaş
WhatsApp
İçindekiler
    ← vcpkg Mayıs 2026 Güncellemesi:...
    EWS Bildirimlerinden Microsoft... →
    📩

    Gitmeden önce!

    Her pazar özenle seçilmiş teknoloji yazıları ve AI haberleri doğrudan e-postanıza gelsin. Ücretsiz, spam yok.

    🔒 Bilgileriniz güvende. İstediğiniz zaman ayrılabilirsiniz.

    📬 Haftalık bülten: Teknoloji + AI haberleri
    Beni Takip Et Yeni Azure / AI / DevOps yazılarını GitHub ve RSS üzerinden takip edin.
    GitHub RSS