Data Management Services
Transkript
Data Management Services
Grid Veri Yönetimi Özgür Erbaş [email protected] www.grid.org.tr Grid Veri Yönetimi Nedir? Kullanıcı ve uygulamaların ürettiği ya da ihtiyaç duyduğu verilerin Grid ortamında saklanması amaçlanır. Depolama kaynaklarında saklanan Grid dosyaları saltokunurdur: (read-only) Değiştirilemez. Silinip yerine yenisi konulabilir. Dosyalar heterojen yapıdadır. (ascii, binary...) Depolama Elemanları (Storage Element) Storage Element kullanıcı ya da uygulamanın gelecekte kullanmak üzere Grid’de veri depolamasını sağlayan Grid servisidir. Storage Element tarafından kullanılan protokoller: GSIFTP: RFIO Depolama Elemanları (Storage Element) Grid’de 4 farklı tip Storage Element mevcut: 1. 2. 3. 4. Classic SE (Şu an TR-Grid altyapısında kullanılan SE tipi. GSIFTP sunucusunu içerir.) CASTOR dCache LCG Disk Pool Manager gLite Ortakatmanında Dosya Adları Grid Unique IDentifier (GUID) : guid:38ed3f60-c402-11d7-a6b0-f53ee5a37e1d Logical File Name (LFN) : GUID’si belli olan bir dosyayı çağırmak için kullanılan, kullanıcının belirlediği alias lfn:/grid/<VO>/<MyDirs>/<MyFile> Storage URL (SURL) ya da Physical File Name (PFN) : Dosyanın Storage Element’teki gerçek yeri sfn://se.ulakbim.gov.tr/data/dteam/dosya1 gLite Ortakatmanında Dosya Kataloğu (LCG File Catalogue – LFC) Kullanıcılar dosyalarını Grid’de saklamaya ihtiyaç duyar. GUID, LFN ve SURL’ler arasında eşleştirme yapmayı sağlayan Grid servisidir. Kaydı yaptırılmış tüm dosyaların bilgisini tutar ve bilgi servisinde yayınlar. Grid dosyası: Hem fiziksel olarak Storage Element’te depolanan, hem de mantıksal olarak kaydı LFC’ye yapılmış olan dosya LFC Komutları Dosya kataloğunun kullanılabilmesi için, Geçerli bir proxy sertifikası oluşturmuş olmak gerekir. $LFC_CATALOG_TYPE, $LFC_HOST çevre değişkenlerinin tanımlanmış olması gerekmektedir: export LCG_CATALOG_TYPE=lfc export LFC_HOST=lfc.ulakbim.gov.tr lfc-* komutlarını kullanırken LFC üzerinde işlem yapabileceğimiz dizinin /grid/sanal_organizasyon_adi (Örn: /grid/sgdemo) olduğunu unutmamalıyız. Eğer böyle bir dizin yoksa LFC bu sanal organizasyonu desteklemiyor demektir. LFC Komutları lfc-chmod LFC dosya ya da dizininin erişim haklarını değiştirir lfc-chown LFC dosya ya da dizininin sahiplik bilgilerini değiştirir lfc-delcomment LFC dosya ya da dizininin eklenmiş yorum bilgisini siler lfc-getacl lfc-ln LFC dosya ya da dizininin erişim kontrol listesini alır LFC dosya ya da dizinine sembolik Link yaratır lfc-ls LFC’de dosya ve dizinleri listeler lfc-mkdir LFC dizin yaratır lfc-rename LFC dosya ya da dizininin dosya/dizin ismini değiştirir lfc-rm LFC dosya ya da dizinini siler lfc-setacl LFC dosya ya da dizininin erişim kontrol listesini tanımlar lfc-setcomment LFC dosya ya da dizininin üzerine yorum bilgisi ekler LFC Komutları - Örnekler lfc-ls : Verilen bir dizindeki LFN’leri listele. /grid/<VO_adı>/<kullanıcının oluşturduğu dizinler> LFC İsimlendirmesi Kullanıcı tarafından tanımlanır $ lfc-ls –l /grid/sgdemo/ ... -rw-rw-r--rw-rw-r--rw-rw-r--rw-rw-r--rw-rw-r--rw-rw-r-... 1 1 1 1 1 1 4401 4401 4401 4401 4401 4401 4400 4400 4400 4400 4400 4400 0 0 0 0 0 0 Jun Jun Jun Jun Jun Jun 21 21 21 21 21 21 09:39 09:40 09:36 09:36 09:38 09:38 tutor14 tutor16-mytxt uploadfile uploadfilelfn user.example user.example2 $ lfc-ls –l /grid/sgdemo/user.example -rw-rw-r-- 1 4401 4400 0 Jun 21 09:38 user.example $ export LFC_HOME=/grid/sgdemo/ $ lfc-ls –l user.example -rw-rw-r-- 1 4401 4400 0 Jun 21 09:38 user.example LFC Komutları - Örnekler lfc-ln –s dosya/dizin link_adı : Sembolik link yarat. $ lfc-ln -s /grid/sgdemo/user.example /grid/sgdemo/linkler/link_to_user.example Orijinal dosya lfc-mkdir : Dizin yarat. $ lfc-mkdir /grid/sgdemo/Examples Yarattığınız dizini görmek için: $ lfc-ls -l /grid/sgdemo Sembolik link LFC Komutları - Örnekler metaveri bilgisi ekleme/çıkartma lfc-setcomment path açıklama (LFC’deki bir dosya ya da dizine ilişkin açıklama ekler.) lfc-delcomment path (LFC’deki bir dosya ya da dizine ait açıklamayı siler.) $lfc-setcomment /grid/sgdemo/user.example “Merhaba” Eklediğimiz yorumu görmek için: $lfc-ls --comment /grid/sgdemo/user.example /grid/gilda/user.example Merhaba $lfc-delcomment /grid/sgdemo/user.example Sildiğiniz yorumu görmek için: $lfc-ls –l --comment /grid/sgdemo/user.example -rw-rw-r-- 1 4401 4400 0 Jun 21 09:38 /grid/sgdemo/user.example Dosya ve Replika Yönetimi lcg-* komutlarını çalıştırabilmek için geçerli bir proxy sertifikasına sahip olmak gerekir. lcg-* dosya ve replika komutlarının çalışması için $LCG_GFAL_INFOSYS çevre değişkeninin tanımlanmış olması gerekmektedir: $export LCG_GFAL_INFOSYS=bdii.ulakbim.gov.tr:2170 $LCG_GFAL_VO çevre değişkeni tanımlanırsa, komutlarda kullanıcının –vo opsiyonuyla dahil olduğu sanal organizasyonu belirtmesine gerek kalmaz. $export LCG_GFAL_VO=sgdemo $VO_<VO>_DEFAULT_SE çevre değişkeni tanımlanırsa, komutlarda kullanıcının Storage Element belirtmesine gerek kalmaz. $export VO_sgdemo_DEFAULT_SE=se.ulakbim.gov.tr Dosya ve Replika Yönetimi lcg-cp Bir grid dosyasını lokale kopyalar (download) lcg-cr Lokaldeki bir dosyayı SE’ye kopyalar ve LFC’ye kaydeder (upload) lcg-del SE’dek bir dosyayı siler (bir replika ya da tüm replikalar olabilir) lcg-rep Bir dosyayı bir SE’den başka bir SE’ye kopyalar ve LFC’ye kaydeder (replicate) lcg-aa Verilen bir GUID’ye LFC’de alias ekler lcg-ra Verilen bir GUID’nin LFC’deki alias’ını kaldırır lcg-rf SE’deki bir dosyayı LFC’ye kaydeder lcg-uf SE’deki bir dosyanın LFC’deki kaydını siler lcg-la Verilen bir LFN, GUID ya da SURL alias’ları listeler lcg-lg Verilen bir LFN ya da SURL’nin GUID’sini getirir lcg-lr Verilen bir LFN, GUID ya da SURL’nin replikalarını listeler Dosya ve Replika Yönetimi: lcg-cr $lcg-cr -v -d se.ulakbim.gov.tr -l lfn:/grid/sgdemo/test.out --vo sgdemo file:///home/egitim20/test.out => sgdemo VO’sunun kullanıcısına ait, kullanıcı arayüzündeki (lokaldeki) /home/egitim20/test.out dosyasını lfn:/grid/sgdemo/test.out LFC kaydı altında, se.ulakbim.gov.tr depolama elemanına kopyala. (-v verbose özelliğini kullanarak) Komutun çıktısı olarak bize se.ulakbim.gov.tr’ye kopyalanan test.out dosyası için oluşturulmuş GUID geri döner: guid:5dfb82d2-c26a-444a-8c83-9d2c35d84d05 gibi... Dosya ve Replika Yönetimi: lcg-rep $lcg-rep -v --vo sgdemo –d se02.grid.acad.bg guid:5dfb82d2-c26a-444a8c83-9d2c35d84d05 => sgdemo VO’sunun kullanıcısına ait, guid:5dfb82d2-c26a-444a-8c83-9d2c35d84d05 ile saklanan dosyanın se02.grid.acad.bg isimli Strorage Element’te replikasını oluştur. $lcg-rep -v --vo sgdemo –d se02.grid.acad.bg lfn:/grid/sgdemo/test.out => sgdemo VO’sunun kullanıcısına ait, lfn:/grid/sgdemo/test.out ile saklanan dosyanın se02.grid.acad.bg isimli Strorage Element’te replikasını oluştur. $lcg-rep -v --vo sgdemo –d se02.grid.acad.bg sfn://se.ulakbim.gov.tr/storage3/sgdemo/generated/2006-11-10/fileX => sgdemo VO’sunun kullanıcısına ait, sfn://se.ulakbim.gov.tr/storage3/sgdemo/generated/2006-11-10/fileX ile saklanan dosyanın se02.grid.acad.bg isimli Strorage Element’te replikasını oluştur. Akademik Bilişim 2007, Dumlupınar Üniversitesi 15/32 Dosya ve Replika Yönetimi: lcg-lr lcg-lr: $ lcg-lr --vo sgdemo lfn:/grid/sgdemo/test.out => sgdemo VO’sunun kullanıcısına ait, LFC’de lfn:/grid/sgdemo/test.out alias’ı ile saklanan tüm replikaları listele. Komutun çıktısı: sfn://se.ulakbim.gov.tr/storage3/sgdemo/generated/ 2006-11-10/fileX sfn:// se02.grid.acad.bg /storage/sgdemo/generated/2007-02-11/fileY Akademik Bilişim 2007, Dumlupınar Üniversitesi 16/32 Dosya ve Replika Yönetimi: lcg-lg lcg-lg: $ lcg-lg --vo sgdemo sfn://se.ulakbim.gov.tr/storage3/sgdemo/generated/200611-10/fileX => sgdemo VO’sunun kullanıcısına ait, SE’de sfn://se.ulakbim.gov.tr/storage3/sgdemo/generated/2006-11-10/fileX ile saklanan dosyanın GUID’sini getir YA DA $ lcg-lg --vo sgdemo lfn:/grid/sgdemo/test.out => sgdemo VO’sunun kullanıcısına ait, LFC’de lfn:/grid/sgdemo/test.out ile kayıtlı dosyanın GUID’sini getir Akademik Bilişim 2007, Dumlupınar Üniversitesi 17/32 Dosya ve Replika Yönetimi: lcg-cp $ lcg-cp --vo sgdemo -t 100 -v lfn:/grid/sgdemo/test.out file:///tmp/test.kopya => sgdemo VO’sunun kullanıcısına ait, LFC’de lfn:/grid/sgdemo/test.out ile kayıtlı dosyayı, timeout 100 saniye olacak şekilde, lokale (kullandığım kullanıcı arayüz makinasına) /tmp/ altına test.kopya olarak kopyala. (verbose ederek) Diğer komutlarda da olduğu gibi lfn yerine guid ya da sfn de kullanılabilir. Akademik Bilişim 2007, Dumlupınar Üniversitesi 18/32 Dosya ve Replika Yönetimi: lcg-del lcg-del: $ lcg-del --vo sgdemo -s se.ulakbim.gov.tr guid:91b89dfeff95-4614-bad2-c538bfa28fac => sgdemo VO’sunun kullanıcısına ait, 91b89dfe-ff95-4614-bad2c538bfa28fac GUID’li grid dosyasının se.ulakbim.gov.tr’deki replikasını sil. $ lcg-del --vo sgdemo –a guid:91b89dfe-ff95-4614-bad2c538bfa28fac => sgdemo VO’sunun kullanıcısına ait, 91b89dfe-ff95-4614-bad2c538bfa28fac GUID’li grid dosyasının tüm replikalarını sil. Akademik Bilişim 2007, Dumlupınar Üniversitesi 19/32 Dosya ve Replika Yönetimi: lcg-aa $ lcg-aa --vo sgdemo guid:91b89dfe-ff95-4614-bad2c538bfa28fac lfn:/grid/sgdemo/yeni_alias => sgdemo VO’sunun kullanıcısına ait, 91b89dfe-ff95-4614-bad2c538bfa28fac GUID’li grid dosyası için LFC’de lfn:/grid/sgdemo/yeni_alias isimli yeni bir alias tanımla. $lcg-la --vo sgdemo guid:91b89dfe-ff95-4614-bad2c538bfa28fac (Belirtilen GUID’ye ait bütün alias’ları listele.) Komutun çıktısı: lfn:/grid/sgdemo/test.out (eski alias) lfn:/grid/sgdemo/yeni_alias (eklenen yeni alias) Akademik Bilişim 2007, Dumlupınar Üniversitesi 20/32 Dosya ve Replika Yönetimi: lcg-ra lcg-ra: $ lcg-ra --vo sgdemo guid:91b89dfe-ff95-4614bad2-c538bfa28fac lfn:/grid/sgdemo/test.out => sgdemo VO’sunun kullanıcısına ait, 91b89dfe-ff95-4614-bad2c538bfa28fac GUID’li grid dosyası için LFC’deki lfn:/grid/sgdemo/test.out alias’ını sil. $lcg-la --vo sgdemo guid:91b89dfe-ff95-4614-bad2c538bfa28fac (Belirtilen GUID’ye ait bütün alias’ları listele.) Komutun çıktısı: lfn:/grid/sgdemo/yeni_alias (test.out alias’ı silindiği için artık listede görünmüyor.) Akademik Bilişim 2007, Dumlupınar Üniversitesi 21/32
Benzer belgeler
Hands-on: Using a certificate and simple job submission
Örnek: InputData = {“lfn:cmstestfile”,“guid:135b7b23-4a6a-11d7-87e79d101f8c8b70”}; )
DataAccessProtocol
• SE (Storage Element) ulaşmak için kullanılacak protokol ya da
protokoller
Örnek: DataAccess...