CERN-HSF projesi

Bu sayfa, Google Dokümanlar Sezonu için kabul edilen bir teknik yazı projesinin ayrıntılarını içerir.

Proje özeti

Açık kaynak kuruluşu:
CERN-HSF
Teknik yazar:
Aryadne
Projenin adı:
Rucio: Rucio belgelerini modernleştirin (yeniden yapılandırın ve yeniden yazın)
Proje süresi:
Standart uzunluk (3 ay)

Proje açıklaması

Özet: Rucio çerçevesi, heterojen veri merkezlerinde coğrafi olarak farklı konumlara dağılmış büyük hacimlerdeki bilimsel verileri yönetme ve organize etme amacıyla geliştirilmiştir. Dağıtılmış veri kurtarma ve uyarlanabilir çoğaltma gibi özellikler sunan çerçeve, yüksek düzeyde ölçeklenebilir, modüler ve genişletilebilir. Bu tür bir hizmetle ilgili belgelerin tüketicileri farklı geçmişlere sahip olabilir ve hizmete erişirken çeşitli gereksinimlere sahip olabilir. Bu nedenle bu tür bir hizmet için iyi belgeler, hizmetin son kullanıcılar tarafından benimsenmesini ve kullanılmasını basitleştirmenin yanı sıra, yaygın sorunlar ve sorun giderme adımları için de bir referans işlevi görmelidir.

Bu tür belgeler olmadığında verimli ve etkili kullanımla ilgili önemli engeller olacaktır. Bu durum, destek maliyetlerinin artmasına ve ürünün kurumsal kimliği için itibar riski oluşmasına yol açabilir. Belgeleme bir iletişim şeklidir. İletişimin yönetilebilir ve erişilebilir bir çerçeve içinde olması ve aynı zamanda uygun versiyonların oluşturulması ile bu iletişimin başarılı olması için iletişimi sürdürmemiz gerekir.

Bu metin hazırlanırken Rucio çerçevesi, LHC'deki ATLAS ve CMS denemelerinin yüksek enerji gereksinimlerini desteklemek için kullanılıyordu. Ayrıca, astrofizik gibi LHC dışındaki çeşitli bilimsel toplulukların ihtiyaçlarını desteklemek için de kullanılmaktadır. Böylece, belgelerin olabildiğince alakalı ve erişilebilir olması gereklidir. Bu projenin yardımıyla CERN, tüm ilgili belgelere erişmek için merkezi bir görünüm sunarak bu çerçeveden yararlanırken aynı zamanda Rucio’nun son kullanıcılarının sorunsuz bir deneyim yaşamasını istiyor.

Mevcut Durum: Bugün itibarıyla kullanıcı dokümanları; bilimsel makaleler, kaynak kodlu readthedocs.io, Google Drive, GitHub, DockerHub veya Wikis gibi birçok biçimdedir. Birden fazla kaynak, sürümlerin izlenmesinde ve belgelerin doğruluğunda sorunlara yol açar. Ayrıca, merkezi olmayan bir belgeleme modeli, belirli bir kullanım alanına yönelik alakalı bilgilerin sunulmasında ve gezinmede önemli engeller oluşturur. Özellikle Wiki'lerde, belirli bir deneme için sağlanan bilgiler, aynı/başka kaynaklarda bulunan diğer örnekler için de oldukça uygulanabilir. Ancak, konsolidasyon ve uygun bağlantılar bulunmaması nedeniyle, bu bilgiler etkin değildir ve büyük olasılıkla kullanılmamaktadır.

Teklif ettiğiniz kullanıcı dokümanları neden mevcut dokümana göre daha iyi? Bu çok yönlü sorun göz önüne alındığında, aşağıda önerilen model gezinme, sürüm oluşturma, izleme ve belgelerin ortaya çıkarılması ile ilgili zorlukları ortadan kaldırmaktadır. Söz konusu güçlükler aşağıda açıklanmıştır:

Dokümanların yeniden yapılandırılması, son kullanıcının gezinmesine harcanan çabaları basitleştirmeyi amaçlar. Bilgi ararken tavşan deliklerinden aşağı gitmesine gerek yok, çünkü bu bilgiler basitlik açısından sınıflandırılmış/etiketlenmiş olacak. Yeniden yapılandırma, gereklilik temelinde kategorize etme özgürlüğü sağladığı için, yönetim açısından sürüm oluşturma ve takip daha kolay olacaktır. Yeniden yapılandırılmış belgelerin tümünün merkezileştirilmesi, birden fazla kaynağa referans vermek zorunda kalmadan tüm bilgilerin kullanıcı tarafından görülebilmesini sağlar.

Analiz: Koşulların özetini okuduktan ve mentorluk ekibiyle görüştükten sonra, Rucio belgelerinin mevcut durumundan çıkarımlarım aşağıdaki gibi oldu:

Altı temel doküman kaynağı vardır: - Google Drive Bağlantısı : https://drive.google.com/drive/folders/1EEN8l1dFjDSgavPrAMMooDjEodHP7aU7

  • Sphinx tarafından desteklenen, kodu kaynakla birlikte okuyun Kod bağlantısı: https://github.com/rucio/rucio ReadtheDocument bağlantısı: https://rucio.readthedocs.io/en/latest/

  • DockerHub Bağlantı: https://hub.docker.com/u/rucio

  • GitHub Bağlantı: https://github.com/rucio/rucio

  • Wikis Bağlantı: https://twiki.cern.ch/twiki/bin/view/AtlasComputing/AtlasDeploydComputing

  • Bilimsel Makaleler Bağlantısı: https://arxiv.org/abs/1902.09857

Bu kaynaklardaki belgeler farklı biçimlerde sunulur. Örneğin, Google Drive'da Slaytlar ve Dokümanlar biçiminde dokümanlar vardır, GitHub'da dosyalar temel olarak reStructuredText biçimlendirme dilindedir. Sürüm oluşturma ve izleme eksikliği nedeniyle, gereksiz bilgiler birden çok kaynakta yayınlanır. Bilgilerin etiketlenmesi/kategorizasyonunda tek tip bir yaklaşım yoktur. Bu nedenle, arama yaparken geçmiş deneyim ve uzmanlık sahibi olmak gerekir.

Çok sayıda biçim ve kaynak göz önünde bulundurulduğunda, beklentiler mkdocs kullanılarak bilgileri yeniden yapılandırmak ve merkezi hale getirmektir. Bu araçları daha iyi anlamak için araçların kullanımını araştırdım ve tecrübe ettim.

Sonuç: Mevcut belgeler yapılandırılmamış ve uygun bağlantılar olmadan dağılmış. Ayrıca, biçimlendirme açısından da merkezileşme ve tek tiplik söz konusu değildir. Bu da kullanıcıların aramalar için daha fazla çaba sarf etmesine neden olur. Bu tür boşluklar, yöneticiler/bakımcılar/potansiyel müşteriler üzerinde gereksiz bir baskı da doğurur. Bu nedenle bakım ve dokümanların güncellenmesi için topluluk odaklı bir yaklaşımın sürdürülmesi zorlaşır. Kullanıcı ve katkıda bulunan kullanıcı deneyimi önemli ölçüde kötüleşir ve sürekli olarak

Önerilen belgenin yapısı: Gerekliliklerin ayrıntılı bir analizinden sonra en önemli noktalara, yeniden yapılandırılmış bir belgeleme modeliyle değinmeye karar verdim.
Yeniden yapılandırılan model, aşağıdaki modelde gösterilmiştir ve tüm belgeleri aşağıdaki 7 kategoriye ayırır:

  • Hakkında
  • Başlayın
  • Kavramlar
  • Rucio Arayüzleri
  • Görevler
  • Eğiticiler
  • İleri düzey teknik bilgi

Elbette, bu programı tamamladıktan sonra üzerinde çalışmak istediğim bağlantıları eklemek gibi iyileştirmeler de mevcut. Rucio'da 1.000'den fazla etkin kullanıcının 500 petabayt veriye erişimi olduğu göz önünde bulundurulduğunda, dokümanların yeniden yapılandırılmasının kullanıcıların destek posta listesine başvurma ihtiyacını önemli ölçüde azaltabilmesi gerekir. Hedef, tıklama oranlarının sayısını azaltarak, kategorilendirme ve etiketleme yoluyla belgeleri kolayca ortaya çıkararak daha iyi bir kullanıcı deneyimi elde etmektir. Bir kullanıcı/operasyon/yönetici personeliyle ilgili bilinmesi gereken her şey, en fazla 3 tıklamayla ulaşılabilecek.

Örnek bağlantısı: https://drive.google.com/file/d/1vSYgOkB9s9eEr2soNs7ujMLHzDlKn_hr/view?usp=sharing)

Proje Hedefleri: - Çeşitli kaynaklardaki gereksiz bilgileri analiz edin ve ayıklayın. Yani, her bilgi parçasının tek bir doğruluk kaynağı olmalıdır. - Mevcut belgeleri etiketleyip kategorize ederek farklı parçalara ayırarak yeniden yapılandırın - Yeniden yapılandırılmış dokümanları mkdocs'a dayalı merkezi bir görünüme taşıyın - Dosya biçimi kısıtlamaları nedeniyle taşınamayan dokümanları yeniden biçimlendirin/içe aktarın - Bağlantılar, bilgi güncellemeleri veya hataların düzeltilmesi ile ilgili eksik boşlukların doldurulması için dokümanlarda topluluk odaklı değişiklikler yapın.

Bu sistemin temelleri zaten uygulanmaktadır. Ancak, modelim, katkı ve yönetimle ilgili uygun yönergeler ve uygun belgeler sunarak mevcut sistemi daha da geliştirecektir. Ayrıca projenin sorunlarını ve genel durumunu takip etmek için GitHub proje panolarını projeye dahil etmeyi düşünüyorum.

Takvim: - 16 Ağustos'tan önce --> Dokümanların ve Rucio'nun güncel sürümleriyle tanışma --> Proje süresince faydalı olacak yeni teknikler ve teknik yazma becerileri edinme --> GitHub'da bildirilen doküman sorunlarına (varsa) katkıda bulunma

  • Topluluk bağları (17 Ağustos - 13 Eylül) --> Saat dilimlerindeki farkı hesaba katmak için bir iletişim kanalı ve zaman oluşturun (Pune'un 3 saat 30 dakika ileride olduğunu) --> Hedeflerin belirlenmesinde belirlenecek önemli sorunlu noktalar --> Sohbetlere katılarak topluluk, kuruluş ve sistem hakkında daha fazla bilgi edinin. --> Önerilen belge yapısının, uygulamanın uygulanabilirliği ve uygulanabilirliği açısından danışmanlar ve kurumun diğer önemli üyeleriyle birlikte değerlendirilmesi. --> Önerilen özelliklerin son haline getirilmesi ve mevcut dokümanlarda yapılması gerekebilecek diğer tüm değişiklikler.

  • Belgeleme Dönemi (14 Eylül - 30 Kasım) Burada formüle ettiğim önerilen formatı temel alarak, belgeleme sürecinde ulaşmayı planladığım önemli ara hedeflerin dökümünü sundum.

--> Ara Hedef 1: Kategorilendirme ve Etiketleme VD: 28 Eylül 2020 Mevcut belgelerin özümsemesi ve etiketlenmesi, yeniden yapılandırma ve budama sürecini büyük ölçüde kolaylaştıracaktır.

--> 2. Ara Hedef: Analiz, Budama ve Yeniden Yapılandırma ETC: 19 Ekim 2020 1. Ara hedefte sınıflandırılan dokümanlar, yinelemeler ve gereksiz bilgi kaynakları açısından analiz edilir. Proje bilgilerinde belirtildiği gibi, mevcut tüm bilgiler için tek ve doğru bir kaynağı hedefliyoruz.

--> Ara Hedef 3: Merkezileştirme ve Yeniden Biçimlendirme: ETC: 9 Kasım 2020 Dokümanlar uygun şekilde ayıklanıp yeniden yapılandırıldıktan sonra, öncelikle dokümanı yeniden biçimlendirmeyi amaçlıyorum. Kaynakların çeşitliliği nedeniyle, biçimler farklıdır ve öncelikle uygun bir biçime dönüştürülmesi gerekir. Bu yapıldıktan sonra merkezileştirme süreci daha kolay hale gelecektir.

--> 4. Ara Hedef: Yönetim/katkılarla ilgili izleme panoları ve belgeler oluşturma ETC: 23 Kasım 2020 Bu aşamada, proje tamamlandıktan sonra belgelerin güncel kalmaya devam etmesini sağlamak amaçlanmaktadır. Yönergelerin ve proje panolarının oluşturulması, yönetim üyelerinin topluluk katkıları talep etme ve bunları etkin bir şekilde izleme yükünü hafifletir.

--> Proje Değerlendirmesi (30 Kasım - 5 Aralık) Mentorlarımla ilgili proje raporu ve değerlendirmelerini gönder Dokümanlar Sezonu'nda katılımcı olarak yaşadıklarıma dair bir rapor yaz ve gönder.

Neden bu proje? Kodu iyi yazılmış ve sürümü tutulan belgelerle desteklemenin, daha fazla benimsenmesini ve daha iyi kullanılmasını sağlamanın tek yolu olduğuna inanıyorum. Kişisel olarak, CERN'in farklı fizik alanlarında, son teknoloji araştırmalara öncülük etmesi beni çok etkiledi. Bu tür denemeler sırasında işlenen, aktarılan ve oluşturulan bilgilerin ölçeği göz önünde bulundurulduğunda, verilerin kuruluş içinde referans ve gelecekte kullanılmak üzere nasıl yönetildiği ilgimi her zaman çekmişti. Bazı harika bilimsel araştırmaları ve keşifleri destekleyen bir çerçeve için dokümanların geliştirilmesine katkıda bulunmak benim için bir onur.

Neden bu proje için doğru kişiyim? Ön koşulları karşılamanın yanı sıra, bu proje için doğru kişi olacağımdan eminim çünkü:

Halihazırda Kubernetes ile ilgili mevcut belgeleri değiştirme üzerinde çalışıyorum. Bu katkılar sayesinde 1.19 Kubernetes Sürüm döngüsü için Sürüm Dokümanları Gölgesi olarak listeye alındım. Bu süreçte, sürümler sırasında eklenen yeni özelliklerle ilgili belgeleri etkili bir şekilde korumaya ve yükseltmeye katkıda bulunuyorum. İyi bir belgelemenin, iyi bir ürün/hizmet için bel kemiği olduğuna inanıyorum. İster prosedürel ister teknik olsun, iyi yazılmış, özlü ve kolayca erişilebilir bilgiler, benimsenmesinde ve daha iyi kullanıma yardımcı olması açısından itici güç olabilir. Kariyerim boyunca veriye dayalı dağıtılmış sistemlerle çalıştım. Bu tür sistemlerin belgeleriyle ilgili olarak, şartlarla ilgili incelikleri anlamak için yeterli pozisyona sahip olduğumu düşünüyorum. Kendim bir son kullanıcı olduğum için, kötü yazılmış/yanlış belgelemenin sakıncalarını biliyorum ve yeniden yapılandırma sırasında bunları dikkate almaya özen gösteririm.