Bir geliştirici, bir DBA bilgisinin hangi alanlarını araştırmalıdır? [kapalı]


11

Sorunun oldukça geniş olduğunu itiraf etmeliyim, bu yüzden biraz daraltmayı deneyeceğim. Şirketimizde 3-4 geliştiriciyiz ve müşterilerimizin sitelerinde (100GB'a kadar veritabanı boyutları, 100'e kadar eşzamanlı kullanıcı, intranet uygulamaları) çalışan bazı SQL Server tabanlı kurulumlara sahibiz. Hiç kimsenin veritabanlarını çalıştırma / sürdürme / yönetme konusunda gerçekten iyi deneyimi yoktur. Müşteriler o kadar da değil. Şimdiye kadar iyi çalışıyor, ancak bunun her şeyi doğru yaptığımızdan mı yoksa yetkin olmadığımız alanlara / durumlara çarpmadığımızdan emin olamıyorum.

Yani, bir DBA'nın bakış açısından bir veritabanı çalıştırırken bilmeniz gereken temel şeyleri arıyorum . Zor gerçekleri biliyorsunuz ve günlük iş için gününüzde en önemli şeyleri biliyorsunuz.

Hangi konularda daha derin bilgiler toplamalıyım, ne duymalıyım ve ilk kez karşılaşana kadar nelere dikkat etmem gerekir?

Yazılım Mühendisleri ve DBA'lar sorununun farkındayım , ama aradığım şey tam olarak bu değil. Etrafta çok sayıda kitap var, ama pratik tecrübesi olanlardan duymak istiyorum.


Yanıtlar:


5

@Catcall ile hemfikirim, veritabanı kurtarma listenin başında olmalı. Hem yedekleme hem de kurtarma seçeneklerinin sonuçları, genellikle bir DBA ekibi dışında en az anlaşılan ve felaketle sonuçlanma olasılığı en yüksek olanlardır.

  • Tüm veritabanları ve sistemler için (teknik ve teknik olmayan yönetim tarafından) RPO (Kurtarma Noktası Hedefi) ve RTO (Kurtarma Zamanı Hedefi) tanımladığınızdan ve kabul ettiğinizden emin olun .
  • Teknik olmayan personel tarafından izlenebilecekleri ölçüde yedekleme ve kurtarma prosedürlerini belgeleyin.
  • Tüm belgelerin basılı ve elektronik ortamda hem yerinde hem de dışarıda tutulmasını sağlayın. Binalar yanıyorsa, yerel ağda depolanan bir olağanüstü durum kurtarma çalışma kitabı fazla kullanılmayacaktır.
  • Kurtarma prosedürlerinin her yönünü sık sık test edin. Yedeklemeler önemsizdir, bu konuyu geri yükler.

Daha sonra, bir veritabanı agnostik perspektifinden, bir veritabanı sunucusunun ne yapmak için inşa edildiğinin anlaşılmasıdır; sağlamak Atomsallık, Tutarlılık, İzolasyon ve Dayanıklılık işlemleriniz ve verilere. Genellikle yanlış anlaşılır, sıklıkla performans sorunlarının nedeni ve birincil veri tutarsızlığı kaynağı.

Seçtiğiniz platform için, ACID uyumluluğunun nasıl uygulandığının içine girin. İşlem günlüğü ne yapar, önceden yazma günlüğü nedir, yalıtım düzeyleri ve depolama iç öğeleri gibi konuları arayın . Veritabanı iç bileşenlerinin önemli yönlerini anlamak, DBA'nın çalışma, performans ayarlama ve kaynak yönetiminin diğer yönlerini kavramasını çok daha kolay hale getirir.


5

Her gün uğraştığım iki şey.

  1. Olağanüstü durum kurtarma.

  2. Performans ayarı. (Hem tek tek sorgular için hem de dbms için.)

Olağanüstü durum kurtarma planınızın

  • yazılı,
  • test edildi ve
  • uygulanan.

Python'da yazılmış bir şeyi değil, bir aktörün izleyeceği bir şey anlamında senaryo kullanıyorum . Katılması gereken herkese tam olarak ne yapacağını söylemelidir. (Ve çoğu zaman tam olarak ne söylenir.)

Sorgular için performans ayarlama, anahtarları, dizinleri ve normalleştirmeyi anlama içerir. (Genellikle "ayarlama" problemleri aslında yapısal problemlerdir.)

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.