Skip to main content

Çalışmak ile çalışmak datasets.xml Dosya

\[ Bu web sayfası sadece ilgilenecek ERDDAP™ yöneticiler. \]

Takip ettikten sonra ERDDAP™ yükleme talimatları , düzenlemelisin datasets.xml Dosya içinde dosya tomcat /content/erddap / veri kümelerinizi tarif etmek için ERDDAP™ Kurulum hizmet edecek.

Bir örnek görebilirsiniz datasets.xml GitHub .


Giriş Giriş

Bazı Meclis Gerekli

Bir veri kümesi kurmak ERDDAP™ Sadece veri setine veya URL'ye işaret etme meselesi değil. XML için bir chunk yazmak zorundasınız datasets.xml Hangi veri kümesini açıklar.

  • Kafeded datasets için, veri setini yapmak için ERDDAP “Geçmiş veriler için veri yapısı, aynı boyutları paylaşan veri setinin değişkenlerini tanımlamak zorundasınız. ( Neden? Nasıl? )
  • Veri kümesinin mevcut metadata otomatik olarak ithal edilir. Ancak bu metadata'yı değiştirmek veya başka metadata eklemek istiyorsanız, bunu belirtmelisiniz. datasets.xml . Ve ERDDAP™ Ayrıca diğer metadata'ya ihtiyaç vardır. Küresel özellikler (gibi infoUrl , kurum, sourceUrl Özet ve başlık) ve değişken özellikler (gibi long\_name ve birimler) . Şu anda veri setinde olan metadata olarak, veri kümesine tanımlayıcı bilgiler ekliyor, metadata talep edildi ERDDAP™ veri kümesine tanımlayıcı bilgiler ekliyor. Ek metadata, veri setinize iyi bir ek ve yardımcı oluyor ERDDAP™ Verilerinizi onunla aşina olmayan kullanıcılara sunmak için daha iyi bir iş yapın.
  • ERDDAP™ Özel şeyler yapman gerekiyor Uzunlık, enlem, yükseklik (veya derinlik) Ve zaman değişkenleri .

Bu fikirlere satın alırsanız ve XML oluşturmak için çabayı genişletin datasets.xml , tüm avantajları elde edersiniz ERDDAP™ Ayrıca:

  • Datasets için Full text arama
  • kategoriye göre arama
  • Data Access Forms ( * datasetID * .html) Böylece birçok farklı dosya formatlarında bir alt dizi veri isteyebilirsiniz
  • Grafikler ve haritalar talep etmek için formlar ( * datasetID * .graph)
  • Web Map Service ( WMS ) gridded datasets için
  • RESTful verilerinize erişim

Yapmak datasets.xml İlk birkaç veri kümesi için önemli bir çaba gerektirir, ancak Daha kolay hale gelir . İlk veri setinden sonra, çoğu zaman bir sonraki veri kümesi için işinizin çoğunu yeniden kullanabilirsiniz. Neyse ki, ERDDAP™ İki ile birlikte geliyor Araçlar XML'i her veri kümesi için oluşturmanıza yardımcı olmak için datasets.xml . Eğer sıkışıp kalırsanız, gözlerimizi görün Bölüm almak için ek destek .

Değişkenler içinde datasets.xml

Sanki ERDDAP™ version 2.29.0, datasets.xml Şu anda (Seçmeli olarak) Tarafından StringSubstitutor . Bu özel değerleri belirlemek dahil birçok kullanım vardır (Parola gibi) Çevre değişkenlerini kullanarak. Bu, kurulumun yanlışına izin vererek devre dışı kalabilir.xml.

Data Provider Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form Form

Bir veri sağlayıcısı size bazı verileri sizin için eklemeyi umduğunuz zaman ERDDAP Tüm metadata toplamak zor ve zaman olabilir (Dataset hakkında bilgi) Dataset eklemek için gerekli ERDDAP . Birçok veri kaynağı kaynağı (Örneğin, .csv dosyaları, Excel dosyaları, databases) İç metadata yok, bu yüzden ERDDAP™ Metadata'yı veri sağlayıcısından toplayan ve veri sağlayıcısına kapsamlı rehberlik dahil olmak üzere diğer bazı rehberlik verir. Data In Databases . Gönderilen bilgiler dönüştürülür datasets.xml format ve sonra e-posta ile e-posta ERDDAP™ yönetici yönetici yönetici (sen sen sen sensin sen) ve yazılı (Tamamlanan) toklanmak için Büyük Parent Yönetmeny /loglar /dataProviderForm.log . Böylece, form yarı otomatik olarak bir veri kümesi alma sürecini otomatikleştirir ERDDAP Ama ama ERDDAP™ yönetici hala tamamlamak zorundadır datasets.xml chunk ve veri dosyasını almakla uğraşmak (s) Sağlayıcıdan veya veritabanına bağlanır.

Dış kaynaklardan gerçek veri dosyalarının sunulması büyük bir güvenlik riskidir, bu yüzden ERDDAP™ bununla ilgilenmez. Sizin ve veri sağlayıcısı için çalışan bir çözüm bulmak zorundasınız, örneğin, e-posta (Küçük dosyalar için) Buluttan çıkar (Örneğin, DropBox veya Google Drive) , bir sftp sitesi (şifreler ile) Ya da gizlice Net Net Net Net (USB kamera veya dış sert sürücü) . Muhtemelen sadece bildiğiniz insanlardan dosyaları kabul etmelisiniz. Dosyaları virüsler için taramanız ve diğer güvenlik önlemleri almanız gerekir.

Bir bağlantı yok ERDDAP™ Data Provider Form (Örneğin, örneğin, ERDDAP™ Ev sayfası) . Bunun yerine, birisi size hizmet ettikleri verilerinize sahip olmak istediklerini söylediğinde ERDDAP Onlara böyle bir şey söyleyen bir e-posta gönderebilirsiniz: Evet, verilerinizi içine alabiliriz ERDDAP . Başlamak için, lütfen formu doldurunhttps://yourUrl/erddap/dataProviderForm.html (veya http:// if if if if if if if if if if https:// etkinleştirilmedi) . bitirdikten sonra, son ayrıntıları üzerinde çalışmak için sizinle iletişim kuracağım. Sadece formda bakmak istiyorsanız (doldurmadan) Ama formu görebilirsiniz ERD " ERDDAP : Giriş Giriş , Bölüm 1 , Bölüm 2 , Bölüm 3 Ve Bölüm 4 . Bu bağlantılar üzerinde ERD ERDDAP™ Bana bilgi gönderin, değil, bu yüzden aslında veri eklemek istemiyorsanız onlarla bilgi göndermeyin ERD ERDDAP .

Data Provider Formunu sizden kaldırmak istiyorsanız ERDDAP™ ,

<dataProviderFormActive>false</dataProviderFormActive>  

Kurulumunuzda.xml dosyasında.

Bunun için engel oldu NOAA 2014 Araştırma Sonuçlarına Kamu Erişimi (PARR) yönerge Bütün bunları gerektiren NOAA Vergi ödemesi yoluyla finanse edilen çevresel veriler bir veri servisi aracılığıyla kullanılabilir (Sadece dosyaları değil) 12 ay içinde Yaratılış. Bu yüzden kullanmak için artan ilgi var ERDDAP™ Bir servis ASAP aracılığıyla mevcut veri setleri yapmak. Çok sayıda veri sağlayıcısıyla uğraşmak için daha verimli bir yol gerekiyordu.

Geri bildirim/Suggestions? Bu form yeni, lütfen e-posta erd dot data at noaa dot gov Bunu geliştirmek için herhangi bir geri bildirim veya öneriniz varsa.

Araçlar

ERDDAP™ XML'i istediğiniz her veri kümesi için oluşturmanıza yardımcı olmak için araçlar olan iki komut satırı programı ile geliyor. ERDDAP™ Hizmet etmek için. Bir kez ayağa kalktın ERDDAP™ Ve onu çalıştırın (En azından bir kez) , bu programları bulunabilir ve kullanabilirsiniz tomcat /webapps/erddap /WEB-INF rehberi. Linux/Unix kabuk senaryoları var (uzatma ile) ve Windows senaryoları (uzatma ile) Her program için. \[ Linux'ta, bu araçları aynı kullanıcı olarak çalıştırın (tomcat?) Bu Tomcat'ı çalıştıracak. \] Her programı çalıştırdığınızda, size sorular soracaktır. Her soru için, bir cevap yazın, sonra basın girin. Ya da basın ^C herhangi bir zamanda bir program çıkmak.

Program koşmayacak mı?

  • Bilinmeyen bir program alırsanız (veya benzer veya) Hata mesajı, problem muhtemelen işletim sisteminin bulamayacağıdır Java . Nereden anlamaya ihtiyacınız var Java Bilgisayarınızda, sonra java referansını kullanmaya çalıştığınız .bat veya .sh dosyasında düzenler.
  • Bir jar dosyası bulamadıysanız veya sınıf bulunamadı hata mesajı, sonra Java Kullandığınız .bat veya .sh dosyasında listelenen sınıflardan birini bulamadınız. Çözüm, o .jar dosyasının nerede olduğunu anlamak ve java referansını .bat veya .sh dosyasında düzenlemektir.
  • Bir versiyonunu kullanıyorsanız Java Bu bir program için çok eski, program koşmayacak ve bir hata mesajı göreceksiniz thread "main" java.lang.UnsupportedClassVersionError: Bazı / Sınıf / Ad : Desteksiz büyük.minor versiyonu BazıNumber
    Çözüm, en son sürümüne güncellemek Java Ve program için .sh veya .bat dosyasının onu kullandığından emin olun.

Araçlar çeşitli tanılama mesajlarını yazdırır:

  • “ERROR” kelimesi, bir şeyin o kadar yanlış gittiğinde, prosedürün tamamlanmadığı anlamına gelir. Bir hata almak için can sıkıcı olsa da, problemle başa çıkmak için hata kuvvetleri.
  • Bir şey yanlış gittiğinde “WARNING” kelimesi kullanılır, ancak prosedür tamamlanabilirdi. Bunlar oldukça nadir.
  • Başka bir şey sadece bilgilendirici bir mesajdır. \-sözünü ekleyebilirsiniz GenrateDatasetsX ml veya DasDds Ek bilgilendirici mesajları elde etmek için komut satırı, hangi bazen sorunları çözmeye yardımcı olur.

İki araç büyük bir yardımtır, ancak bu sayfada tüm bu talimatları dikkatle okumanız ve kendinizi önemli kararlar almanız gerekir.

GenrateDatasetsX ml

  • GenrateDatasetsX ml Veri kümesi XML'in neredeyse herhangi bir veri kümesi için kaba bir taslak oluşturabilecek bir komut satırı programıdır.

GenrateDatasets'leri kullandığınızı STRONGLY RECOMMEND X ml yerine chunks oluşturmak yerine datasets.xml el hakkı için:

  • GenrateDatasets X ml saniyede çalışır. Bunu el ile yapmak en az bir saat çalışması, ne yaptığınızı bildiğinizde bile.
  • GenrateDatasets X ml daha iyi bir iş yapar. Bunu elle yapmak, nasıl geniş bir bilgi gerektirir ERDDAP™ çalışır. El tarafından daha iyi bir iş yapmanız olası değildir. (Bob Simons her zaman GenrateDatasets kullanır X ml ilk taslak için ve yazdı ERDDAP .)
  • GenrateDatasets X ml her zaman geçerli bir chunk üretir datasets.xml . Herhangi bir chunk of datasets.xml Muhtemelen yazmanızı engelleyen birkaç hataya sahip olacaksınız ERDDAP™ Dataset yüklemeden. Genellikle bu sorunları teşhis etmek için insanları saatler alır. Zamanınızı boşamayın. Genrate Let Datasets X ml zor işi yapar. Sonra .xml'i istediğinize göre düzeltebilirsiniz.

GenrateDatasets kullandığınızda X ml programı:

  • Windows'da, GenerateDatasetsX ml çalıştırdığınız ilk kez, GenrateDatasetsX ml.bat dosyasını java'a giden yolu değiştirmek için bir metin editörüyle değiştirmeniz gerekir. exe file böylece Windows bulabilir Java .
  • GenrateDatasets X ml önce EDDType'ı belirtmenizi ister (Erd Dap Dataset Tipi Tipi Tipi Tipi) Veri setinin. Bakın, Dataset Tip Listesi (Bu belgede) Hangi veri kümesi için uygun olduğunu anlamak için üzerinde çalışıyorsunuz. Normal EDDTypes'a ek olarak, birkaç tane de var Special/Pseudo Dataset Type (e.g., bir THREDDS katalogunu tarayan biri bir chunk oluşturmak için datasets.xml Her bir veri setleri katalogda) .
  • GenrateDatasets X ml sonra size bu EDDType'a özel bir dizi soru sorar. Sorular, gerekli bilgileri toplamak için gereken bilgileri toplar ERDDAP™ Veri kümesinin kaynağına erişmek için. Neyi anlamak için ERDDAP™ sormak, EDDType için belgeyi görmek, aynı veri kümesi türüne tıklayarak belirttiğiniz EDDType için Dataset Tip Listesi .

Özel karakterlerle bir dize girmeniz gerekiyorsa (e.g., başlangıçta veya sonunda beyaz uzay karakterleri, non-ASCII karakterleri) , gir JSON-style string (Özel karakterler 4.99 karakterleri ile kaçtı) . Örneğin, sadece bir sekme karakterine girebilmek için, "Lot" girin ( çevreleyen çift alıntılarla birlikte, hangi söyleyin ERDDAP™ Bu JSON tarzı bir dizedir.

  • Çoğu zaman, cevaplarınızdan biri GenrateDatasetsX ml'in ihtiyaç duyduğu şey olmayacaktır. Daha sonra tekrar deneyebilirsin, sorulara revize edilmiş cevaplarla, GenerateDatasets'e kadar X ml kaynak verilerini başarıyla bulabilir ve anlayabilir.
  • Soruları doğru bir şekilde cevap verirseniz (veya yeterince doğru) GenerateDatasets X ml, veri kümesinin kaynağına bağlanır ve temel bilgileri toplar (Örneğin, değişken isimler ve metadata) . Yerel olmayan veri setleri için NetCDF .nc Ve ilgili dosyalar, GenrateDatasets X ml genellikle dosyayı okuduktan sonra dosyanın ncdump benzeri yapısını yazdıracaktır. Bu, GenerateDatasetsXml aracılığıyla sonraki bir döngüde daha iyi soruları cevaplamak için size bilgi verebilir.
  • GenrateDatasets X ml daha sonra bu veri kümesi için veri kümesi XML'nin kaba bir taslağı oluşturacaktır.
  • Bilgi ve veri kümesi XML'in kaba taslağı yazılacak Büyük Parent Yönetmeny /loglar/GenerateDatasetsXml.log .
  • Dataset XML'in kaba taslağı yazılacak Büyük Parent Yönetmeny /loglar/GenerateDatasetsXml.out .

"0 dosyaları" Hata Mesaj

GenrateDatasets çalıştırsanız X ml veya DasDds , ya da bir yüklemeye çalışırsanız EDDGrid From...Files or EDDTable From... Files dataset in in inIn ERDDAP™ Ve bunu gösteren bir "0 dosya" hatası mesajı alırsınız ERDDAP™ dizide 0 eşleştirme dosyaları bulundu (Bu dizide eşleşen dosyalar olduğunu düşündüğünüzde) :

  • Serinin tam adını belirttiğinizi kontrol edin. Ve örnek dosya adı belirtseniz, dosyanın tam dizi adı da dahil olmak üzere tam ismi belirtdiğinizden emin olun.

  • dosyaların gerçekten bu dizide olduğunu kontrol edin.

  • Kılavuz isminin yazımını kontrol edin.

  • DosyaNameRegex'i kontrol edin. Aslında, regexes ile hataları yapmak gerçekten kolaydır. Test amacıyla, regex .\*'yi deneyin ve tüm dosya isimleriyle eşleşmesi gerekir. (Buna bakın Regex Belgeleri ve regex öğretici .)

  • Programı çalıştıran kullanıcının programı kontrol edin (e.g., user=tomcat (??) Tomcat / ERDDAP ) Bu dosyalar için 'oku' izni var.

  • Bazı işletim sistemlerinde (Örneğin, SELinux) Sistem ayarlarına bağlı olarak, programı kullanan kullanıcı, dosyaları olan diziye giden tüm yönetmenlerin zinciri için ‘okunmalıdır.

  • Çözemeyeceğiniz sorunlar varsa, İstek desteği Mümkün olduğunca fazla bilgi ile. Benzer şekilde, belirli bir veri kümesi için uygun EDDType gibi görünüyorsa, bu veri kümesiyle çalışmaz veya uygun bir EDDType yoksa, lütfen bir dosya açın GitHub ayrıntılarla (ve ilgili bir dosya) .  

Çıktıyı GenerateDatasets'ten düzenlemeniz gerekiyor X ml bunu daha iyi hale getirmek için.

 

  • DISCLAIMER: O'nun hakkı için datasets.xml MADE BE GenerateDatasets X ml ISN'T PERFECT. GENÇ VE EDIT THE XML BEFORE USING IT IN A YAYIN ERDDAP . GenrateDatasets X ml RELIES ON A LOT OF RULES-OF-THUMB WHICH AREN'T ALWAYS KORRECT. SİZİN BÜYÜ İÇİN YARATININ SİZİN BÜYÜ SİZİN BÜYÜ BÜYÜ BÜYÜ BÜTÜNÜ BÜTÜNÜ BÜTÜNÜ BÜTÜNÜ BÜTÜNÜ BÜTÜNÜ BÜTÜNÜ BÜTÜNÜ BÜTÜNÜ BÜTÜNÜ BÜTÜNÜ BÜTÜNÜ ERDDAP "S" datasets.xml Sayfalar.

    (Fun Fact: Ben bağırmadım. Tarihsel yasal nedenlerle, feragat edenler tüm kapaklarda yazılmalıdır.)

GenerateDatasetsXml'in çıkışı kaba bir taslaktır. Neredeyse her zaman onu düzenlemeniz gerekecek. Ürettik ve mümkün olduğunca hazır-to-go yapmak için büyük bir çaba yapmaya devam ettik, ancak sınırlar var. Genellikle, gerekli bilgiler sadece kaynak metadata'dan mevcut değildir.

Temel bir problem, bir bilgisayar programı sormaktır (GenrateDatasetsX ml) 100 kişiye aynı görevi verdiyseniz, 100 farklı sonuç elde edersiniz. Tek bir "sağ" cevabı yoktur. Açıkçası, program Bob'un zihnini okumak için en yakın geliyor (Senin değil) Ama bu yüzden bile, AI programına dair her türlü bir şey değil, sadece bir sürü heuristics birlikte bir AI benzeri görevi yapmak için bir araya geldi. (Bu gün, AI programına devam edebilir, ancak henüz olmadı. Eğer / ne zaman yaparsak, biz insanlar daha büyük sorunlar olabilir. Ne istediğini dikkatli olun.)

  • Bilgi amaçlı olarak, çıkış küresel kaynağıAttributes ve değişken kaynağıAttributes'i yorumlar olarak gösteriyor. ERDDAP™ KaynakAttributes ve addAttributes (Öncekilik) Bir araya getirmek için Kullanıcıya gösterilen intributes. (Ve diğer özellikler otomatik olarak uzunluğa, aşağılık, derinlike ve zaman değişkenlerine eklenir. ERDDAP™ Aslında veri kümesi yapar) .  

  • Bir kaynakAttribute'yi sevmiyorsanız, onu aynı isimle bir addAttribute ekleyerek yazmak ama farklı bir değer (Ya da değeri yok, onu kaldırmak istiyorsanız) .  

  • Bütün bunlar addAttributes Bilgisayar kaynaklı önerilerdir. Onları yargılayın! If you don't like an addAttribute, change it.  

  • Başka eklemek istiyorsanız addAttributes Onları ekleyin.  

  • Bir değişiklik yapmak istiyorsanız destinationName , değiştirin. Ama değişme sourceName s.  

  • Siparişi değiştirebilirsiniz dataVariable s veya bunlardan herhangi birini çıkarın.

    • Daha sonra kullanabilirsiniz DasDds (Aşağıdaki aşağıda bakınız) Bu veri kümesi için defalarca XML test etmek için, elde edilen veri setinin bunu istediğiniz gibi görünür. ERDDAP .
    • Küçük değişiklikler yapmak için özgür hissetmek datasets.xml Örneğin üretilen chunk, daha iyi tedarik infoUrl Özet veya başlık.

EkleStandartNames

Eğer \-doNotAddStNames'ı çalıştırdığınızda bir komut satırı parametresi olarak eklemezseniz Datasets X ml, üretir Datasets X ml eklemeyecek standard\_name Ve addAttributes Letitude, uzunlık, yükseklik, derinlik veya zaman adı verilen değişkenler dışında herhangi bir değişken için (Hangisi açık standard\_name s) . Bu, üretildikten sonra faydalı olabilir Datasets X ml doğrudan içeride ERDDAP™ Çıktıyı düzenlemeden, çünkü üretir Datasets X ml sık sık tahmin eder standard\_name Yanlış bir şekilde. (Bunu kullanmadan önce çıktıyı her zaman düzenlemenizi tavsiye ediyoruz ERDDAP .) Bu parametreyi kullanmak diğer küçük ilgili etkilere sahip olacaktır çünkü tahmin edilen tahmin standard\_name Genellikle diğer amaçlar için kullanılır, e.g., yeni bir yaratmak için long\_name Ve renkBar ayarlarını oluşturmak için.

Senaryo

klavyede interaktif olarak soruları cevaplamak ve ek veri setlerini oluşturmak için döngülemek için bir alternatif olarak, bir veri kümesi oluşturmak için tüm soruları cevaplamak için komut satır argümanları sağlayabilirsiniz. GenrateDatasets X ml bu parametreleri işlemeye, çıktıyı çıktı dosyasına yazacak ve programı terk edecek.

Bunu kurmak için, öncelikle programı etkileşimli modda kullanın ve cevaplarınızı yazın. İşte kısmi bir örnek: Diyelim ki senaryoyu çalıştırıyorsunuz: ./GenerateDatasetsXml.sh Sonra girin: EDDTable FromAsciiFiles Sonra girin: /u00/data/ Sonra girin: .\* Sand.asc Sonra girin: /u00/data/sampleFile.asc Sonra girin: ISO-8859-1

Bunu non-interaktif bir şekilde çalıştırmak için, bu komut satırı kullanın: ./GenerateDatasetsX ml.sh EDDTable FromAsciiFiles /u00/data/u00/data/sampleFile.asc ISO-8859-1 Yani temelde, sadece komut satırındaki tüm cevapları listelersiniz. Bu, sık sık sık çalışan GenerateDatasets'leri yeniden çalıştırdığı bir şekilde değiştirmek için faydalı olmalıdır. X ml (Özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle EDDGrid FromThreddsCatalog) .

Detaylar:

  • Bir parametre bir alan veya bazı özel karakter içeriyorsa, parametreyi bir alan olarak kodlayın JSON-style string , e.g., " uzaylarla parametrem ve iki \n hatları.”
  • Bir parametre olarak boş bir dize belirtmek istiyorsanız, kullanın: hiçbir şey
  • Bir parametrenin varsayılan değerini belirtmek istiyorsanız, kullanın: varsayılan  
  • GenrateDatasets X ml bir destekler -i datasets X mlName # # # # tagName Çıktıyı belirlenen komut satırı parametresi datasets.xml Dosya dosyası (varsayılan varsayılandır tomcat /content/erddap / datasets.xml ) . GenrateDatasets X ml, veri setlerinde iki satır arar X mlName:
        <!-- Begin GenerateDatasetsXml #*tagName someDatetime* -->  

ve

        <!-- End GenerateDatasetsXml #*tagName someDatetime* -->  

Ve yeni içerikle bu hatlar arasında her şeyi değiştirir ve bazıDatetime'yu değiştirir.

  • -i geçiş sadece işlenmiş (ve değişiklikler datasets.xml Sadece yapılır) GenrateDatasets çalıştırsanız X ml, programın bir döngüsü için tüm soruları belirten komut satır argümanları ile. (Yukarıdaki ‘Senaryo’yu görün.) (Düşünme: Bu parametre senaryolarla kullanım içindir. Programı interaktif modda kullanıyorsanız (klavye hakkında bilgi yazmak) Ama istediğiniz kişiyi üretmeden önce biraz yanlış bir XML oluşturmak olasıdır.)
  • Baş ve Bitiş hatları bulunamadıysa, o zaman bu çizgiler ve yeni içerik daha önce hemen ekleniyor.</erddapDatasets>.
  • Ayrıca var -I (başkent i) Aynı şekilde çalışan test amaçları için geçiş yapın -i, ancak adı verilen bir dosya oluşturur datasets.xml DateTime Ve değişiklikler yapmaz datasets.xml .
  • GenrateDatasets çalıştırmayın X ml ile - bir seferde iki süreçte. Sadece bir dizi değişiklik tutulacaktır. Ciddi bir sorun olabilir (Örneğin, bozulmuş dosyalar) .

"GenerateDatasetsX ml -söz" kullanıyorsanız, normalden daha fazla teşhis mesajı yazdıracaktır.

Special/Pseudo Dataset Type

Genel olarak, GenrateDatasets'teki EDDType seçenekleri X ml bu belgede açıklanan EDD türlerinin maçı (Görmeyi gör Dataset Tip Listesi ) Ve bir tane üretir ve üretir datasets.xml Belirli bir veri kaynağından bir veri kümesi oluşturmak için chunk. Birkaç istisna ve özel vaka var:

EDDGrid FromErddap

Bu EDDType her şeyi üretir datasets.xml chunks yapmak için gerekiyordu EDDGrid FromErddap Tüm veri kümeleri EDDGrid Bir uzaktan veri kümeleri ERDDAP . Orijinali tutma seçeneğine sahip olacaksınız datasetID s (Bu bir kısmını tekrar edebilir datasetID Zaten senin içinde ERDDAP ) Ya da eşsiz olacak yeni isimler üretmek ya da (Ancak genellikle insan hazırlayıcı olarak değil) .  

EDDTable FromErddap

Bu EDDType her şeyi üretir datasets.xml chunks yapmak için gerekiyordu EDDTable FromErddap EDTable veri setlerinin tümünden uzak bir uzaktan veri setleri ERDDAP . Orijinali tutma seçeneğine sahip olacaksınız datasetID s (Bu bir kısmını tekrar edebilir datasetID Zaten senin içinde ERDDAP ) Ya da eşsiz olacak yeni isimler üretmek ya da (Ancak genellikle insan hazırlayıcı olarak değil) .  

EDDGrid FromThreddsCatalog

Bu EDDType her şeyi üretir datasets.xml Tüm için chunks gerekiyordu EDDGrid FromDap Bir THREDDS aracılığıyla yeniden satın alabileceğiniz veri setleri (alt alt alt alt alt alt alt alt alt) katalog. Birçok THREDDS katalog URL'leri vardır. Bu seçenek bir THREDDS .xml URL ile /catalog / örneğin, örneğin, https://oceanwatch.pfeg.noaa.gov/thredds/catalog/catalog.xmlveya https://oceanwatch.pfeg.noaa.gov/thredds/catalog/Satellite/aggregsatMH/chla/catalog.xml
(a related .html katalog is at at at https://oceanwatch.pfeg.noaa.gov/thredds/Satellite/aggregsatMH/chla/catalog.htmlAma bu kabul edilemez EDDGrid ThreddsKatalog'dan. Sorunlarınız varsa EDDGrid Bundan sonra Kataloğu:

  • Kullandığınız URL'nin geçerli olduğundan emin olun, /catalog/ ve /catalog ile biter.xml .
  • Mümkünse, bir kamu IP adresi kullanın (Örneğin,https://oceanwatch.pfeg.noaa.gov) URL'de, yerel bir sayısal IP adresi değil (Örneğin,https://12.34.56.78) . Eğer THREDDS sadece yerel sayısal IP adresi aracılığıyla erişilebilirse, kullanabilirsiniz [<TurnToPublic SourceUrl>) (#converttopublicsourceurl) Bu yüzden ERDDAP™ Kullanıcılar halkın adresini görürler, ancak ERDDAP™ Yerel sayısal adresten veri alır.
  • Çözemeyeceğiniz sorunlar varsa, Sorunları kontrol edin .
  • Bunun için düşük seviye kodu şimdi kullanır Unidata netcdf-java katalog tarama kodu (thredds. katalog sınıfları) Bu yüzden tüm THREDDS katalogları idare edebilir (Hangi şaşırtıcı derecede karmaşık olabilir) Teşekkürler teşekkürler Unidata Bu kod için.  
EDDGrid LonPM180 FromErddapCatalog

Bu EDDType, üretir datasets.xml yapmak için EDDGrid LonPM180 Tüm veri kümeleri EDDGrid Bir veri kümesi ERDDAP Bu 180'den daha uzun bir değere sahiptir.

  • Mümkünse, bir kamu IP adresi kullanın (Örneğin,https://oceanwatch.pfeg.noaa.gov) URL'de, yerel bir sayısal IP adresi değil (Örneğin,https://12.34.56.78) . Eğer ERDDAP™ Sadece yerel sayısal IP adresi aracılığıyla erişilebilir, [kullanabilirsiniz]<TurnToPublic SourceUrl>) (#converttopublicsourceurl) Bu yüzden ERDDAP™ Kullanıcılar halkın adresini görürler, ancak ERDDAP™ Yerel sayısal adresten veri alır.  
EDDGrid Lon0360 FromErddapCatalog

Bu EDDType, üretir datasets.xml yapmak için EDDGrid Lon0360 Tüm veri kümeleri EDDGrid Bir veri kümesi ERDDAP Bu 0'dan daha az uzun bir değere sahiptir.

  • Mümkünse, bir kamu IP adresi kullanın (Örneğin,https://oceanwatch.pfeg.noaa.gov) URL'de, yerel bir sayısal IP adresi değil (Örneğin,https://12.34.56.78) . Eğer ERDDAP™ Sadece yerel sayısal IP adresi aracılığıyla erişilebilir, [kullanabilirsiniz]<TurnToPublic SourceUrl>) (#converttopublicsourceurl) Bu yüzden ERDDAP™ Kullanıcılar halkın adresini görürler, ancak ERDDAP™ Yerel sayısal adresten veri alır.  
EDDs FromFiles

Bir başlangıç rehberi göz önüne alındığında, bu dizi ve tüm alt yönlendirmeler ve bulduğu her veri dosyaları için bir veri kümesi oluşturmaya çalışır.

  • Bu, bir veri kümesinin bulunduğu zaman, veri kümesi tüm alt yönlendirmeleri içerir.
  • Bir veri kümesi bulunursa, benzer kardeş yönetmenler ayrı veri setleri olarak tedavi edilecektir. (Örneğin, 1990'lar için yönetmenler, 2000'ler, 2010lar, ayrı veri setleri üretecektir.) . El tarafından bir araya gelmek kolay olmalı - sadece ilk veri setinin değiştirir<DosyaDir> ebeveyn rehberine gidin ve sonraki sibling veri setlerini silin.
  • Bu sadece bir chunk oluşturmaya çalışacak datasets.xml En yaygın dosya uzatma türü için bir dizi (.md5 saymayın, bu görmezden gelin) . Bu yüzden, 10 ile bir dizin verdi .nc dosyaları ve 5 .txt dosyaları, bir veri kümesi için oluşturulacaktır .nc Sadece dosyaları.
  • Bu, aynı uzatma ile bir dizideki tüm dosyaların aynı veri kümesine ait olduğunu varsayıyor. Bir rehberin bir kısmı varsa .nc SST verileri ve bazı dosyaları .nc klorofilik verilerle dosyaları, sadece bir örnek .nc Dosya okunacak (SST? klorphyll?) Ve sadece bir veri kümesi bu tür dosya için oluşturulacaktır. Bu veri kümesi muhtemelen iki tür dosyayı aynı veri kümesine taşımaya çalışan komplikasyonlar nedeniyle yüklenemez.
  • Bir dizide en yaygın uzantılı 4 dosyadan daha az varsa, bu, veri dosyaları olmadığını ve sadece diziyi atladığını varsayıyor.
  • Bir dizide 4 veya daha fazla dosya varsa, ancak bu başarıyla bir chunk üretebilir datasets.xml dosyaları için (Örneğin, desteklenmeyen bir dosya türü) Ama bu bir yaratacaktır EDDTable FromFileNames dosyalar için veri kümesi.
  • Bunun log dosyasına yazdığı tanıların sonunda, sadece daha önce datasets.xml chunks, bu, tüm alt danışmanları tarafından toplanan bir bilgi özeti ile bir tablo yazdıracaktır. Masa her alt yönlendirmeyi listeleyecek ve en yaygın dosya uzatmasını gösterecektir, toplam sayıda dosya ve bu tür veri kümesi bu dosyalar için yaratıldı. (Eğer herhangi bir) . Karmaşık, derinden ihmal edilmiş bir dosya yapısıyla karşı karşıyaysanız, GenerateDatasets'leri çalıştırmayı düşünün. EDDType=EDDs FromFiles sadece bu bilgiyi üretmek için,
  • Bu seçenek, belirli bir veri dosyaları için en iyi EDDType tahmin etmek için harika bir iş yapamaz, ancak hızlı, kolay ve denemeye değer. Kaynak dosyaları uygunsa, iyi çalışır ve iyi bir ilk adımdır datasets.xml Bir dosya sistemi için birçok alt yönlendirme ile, her biri farklı veri kümelerinden veri dosyaları ile.  
EDDTable FromEML ve EDDTable FromEMLBatch

Bu özel EDDType, üretir datasets.xml Bir yapmak için EDDTable FromAsciiFiles Her masadan gelen veriler, tarif edilen masalardan Ekolojik Metadata Dili XML dosyası. "Batch" varyant, yerel veya uzaktan bir dizi EML dosyalarının hepsi üzerinde çalışır. Lütfen ayrı görmek EDDTable FromEML .  

EDDTable FromInPort

Bu özel EDDType, üretir datasets.xml Bir yapmak için EDDTable FromAsciiFiles Bilgiden bir veri kümesi Inport-xml Dosya. Kaynak veri dosyasına erişim sağlayabilirseniz (Inport-xml dosyası, onu nerede bulacağınız için ipuçlarına sahip olmalıdır) , bir çalışma veri kümesi yapabilirsiniz ERDDAP .

Aşağıdaki adımlar GenrateDatasets'leri nasıl kullanacağınızı özetliyor X ml bir inport-xml dosyası ile çalışma veri kümesi almak için ERDDAP .

  1. Inport-xml dosyasına eriştiğinde (Ya bir URL veya yerel bir dosya olarak) : run GenerateDatasets X ml, EDDType=EDDTable FromInPort'tan alıntı,port-xml URL'yi veya tam dosya adı belirt, hangi çocuk=0'ı belirtir ve diğer istenen bilgileri belirtir. (Eğer bilseniz) . (Bu noktada, kaynak veri dosyasına sahip olmanız veya adını belirtmeniz gerekmez.) Hangi çocuk=0 ayar GenrateDatasets anlatıyor X ml bilgiyi yazmak için Bütün hepsi Bunun üzerine<varlık-attribute-bilgi><varlık>Inport-xml dosyasında (Eğer herhangi bir şey varsa) . Ayrıca, tüm indir-url'nin inport-xml dosyasında listelendiği bir arka plan bilgi özetini de yazdırır.
  2. Tüm bu bilgilere bakın (GenerateDatasets'in arka plan bilgileri de dahil X ml baskıları) ve indir-url ziyaret edin (s) Kaynak veri dosyasını bulmaya çalışmak için (s) . Eğer bunu bulabilirseniz (Onlara) indir (Onlara) Bir diziye göre, erişilebilir olan ERDDAP . (Herhangi bir kaynak veri dosyaları bulamazsanız, devam eden bir nokta yoktur.)
  3. Run Generate Datasets X ml yine. Kaynak verileri dosyası, inport-xml dosyasının birine karşılık gelirse<varlık-attribute-bilgi><varlık>'s, hangi çocuğun = ThatEntity'sNumber (E.g., 1, 2, 3, ...) . ERDDAP™ Kaynak veri dosyasındaki sütun adlarını varlık bilgilerindeki isimlere eşleştirmeye çalışacak ve herhangi bir ayrımı kabul etmeye veya eklemeye çalışacak. Ya da, inport-xml dosyasının sahip olmadığı<varlık-attribute-bilgi><varlık>'s, hangi çocuğun=0.
  4. In the chunk of the datasets.xml Bu, GenerateDatasets tarafından yapıldı X ml, [küreselleşme]< addAttributes >) (#global-attributes) Gerekli/desired olarak.
  5. In the chunk of the datasets.xml Bu, GenerateDatasetsXml tarafından yapıldı, [[değiştir | kaynağı değiştir]< dataVariable >) (#datavariable) Değişkenlerin her birini tanımlamak için gerekli/desired olarak bilgi. Her değişkenin doğru bir şekilde tanımladığınızdan emin olun [< sourceName >) (#sourcenamename) (Kaynakta göründüğü gibi) , [< destinationName >) (#destinationname) (Hangi karaktere izin verilen karakterlerden daha fazla sınırlama var sourceName ) , [<Bölümler (#units) (Özellikle eğer buysa Zaman veya Zamanlar Birimlerin formatını belirtmeleri gereken yer) Ve [< missing\_value >) (#missing_value) ,
  6. bitirmeye yakın olduğunuzda, defalarca kullanın DasDds Dataset açıklamasının geçerli olup olmadığını hızlıca görmek için araç ve eğer veri setinde görünecektir ERDDAP™ Bunu istediğiniz gibi.  

Gruplar veri setlerini belgelemek içinPort'de kullanıyorsanız da harika olurdu. ERDDAP™ Mevcut gerçek verileri yapmak için:

  • ERDDAP™ Şu anda kullanılabilir bir çözüm, böylece yerine kazanabilirsiniz NOAA " Araştırma Sonuçlarına Kamu Erişimi (PARR) gereksinimlerini gerektirir Şu anda, gelecekte bazı belirsiz zamanlarda değil.
  • ERDDAP™ Kullanıcılara mevcut gerçek verileri yapar, sadece metadata değil. (Veriler olmadan metadata nedir?)
  • ERDDAP™ Metadata (Özellikle, değişkenlerin birimleri) Diğer bazı veri sunucusu yazılımının aksine. (Metadata olmadan iyi olan nedir?) Metadata'yı desteklemeyen yazılım kullanmak, verileri yanlış ve kötüye kullanmayı davet etmektir.
  • ERDDAP™ Diğer bazı yazılımların aksine ücretsiz ve açık kaynak yazılımıdır. Devam eden gelişimi ERDDAP™ zaten ödeniyor. Destek için Destek ERDDAP™ Kullanıcılar ücretsizdir.
  • ERDDAP ‘ Görünüş, grubunuzu yansıtmak ve vurgulamak için kolayca özelleştirilmiş olabilir (Değil değil ERD veya ERDDAP ) .
  • ERDDAP™ Tüm veri kümelerine erişmek için tutarlı bir yol sunar.
  • ERDDAP™ Birçok veri dosyasından ve ilişkisel veritabanından verileri okuyabilirsiniz.
  • ERDDAP™ Kaynak verilerinin birçok veri dosyasında olduğu veri setleri de dahil olmak üzere büyük veri setleriyle başa çıkabilir.
  • ERDDAP™ Verilerin birçok veri dosyasına, kullanıcı isteğinde, netCDF, ESRI .csv ve ve ESRI .csv gibi bilimsel veri dosya türleri de yazabilirsiniz. ODV .txt .
  • ERDDAP™ Kullanıcının özelliklerine dayanan verilerin özel grafikler ve haritaları yapabilir.
  • ERDDAP™ Görüntü, video veya ses dosyaları koleksiyonları gibi olmayan veri setleriyle başa çıkabilir.
  • ERDDAP™ kuruldu ve kullanıldı Dünya çapında 60'dan fazla kurum .
  • ERDDAP™ içinde kullanım için önerilen veri sunucularından biri olarak listelenmiştir. NOAA İçinde NOAA Data Access Procedural Yönerge Diğer bazı yazılımların aksine.
  • ERDDAP™ Bir ürün NMFS / NOAA Bu yüzden onu içeride kullanın NMFS ve NOAA Bir gurur noktası olmalıdır çünkü NMFS ve NOAA .

Lütfen verin lütfen ERDDAP™ Bir deneme. Yardıma ihtiyacınız varsa, lütfen bir mesaj gönder ERDDAP™ Google grubu.  

AddFillValueAttributes

Bu özel EDDType seçeneği bir veri kümesi tipi değildir. Bazı veri setlerinde bazı değişkenlere \_FillValue özelliklerini ekleyebilir bir araçtır. See See See See AddFillValueAttributes .  

FindDuplicate Zaman Zamanı

Bu özel EDDType seçeneği bir veri kümesi tipi değildir. Bunun yerine, GenerateDatasets'e söyler X ml bir ızgara koleksiyonu aracılığıyla arama .nc (ve ilgili) Tekrarlanan zaman değerleri olan dosyaların listesini bulmak ve yazdırmak için dosyalar. Zaman değerlerine baktığında, onları orijinal birimlerden döndürür "seconds since 1970-01-01" Durumda farklı dosyalar farklı birimler dizeleri kullanır. Başlangıç rehberi sağlamak zorundasınız (Ya da iz olmadan) Dosya adı düzenli ifade (E.g., .nc ) Ve dosyaların zaman değişkeninin adı.  

ncdump

Bu özel EDDType seçeneği bir veri kümesi tipi değildir. Bunun yerine, GenerateDatasets'e söyler X ml bir baskı yapmak için ncdump \-like printout of an .nc , .nc ml veya .hdf Dosya. Aslında netcdf-java'nın kullanır NCdump C NCdump versiyonundan daha sınırlı bir araçtır. Bu seçeneği kullanırsanız, GenerateDatasetsX ml size seçeneklerden birini kullanmanızı isteyecektir: "-h" (Başlık) "-c" (koordinat var) "-vall" (varsayılan varsayılan varsayılan varsayılan varsayılan varsayılan) "-v var1;var2", "-v var1 (0.0:10,0:20) ". Bu yararlıdır çünkü ncdump olmadan, ne olduğunu bilmek zor .nc , .nc ml veya .hdf Dosya ve böylece EDDType'ın GenrateDatasets için belirtilmesi gerekir X ml. For an için .nc ml dosyası, bu ncdump çıktısını sonuna kadar yazdıracak .nc Altta yatan dosya değişiklikleri uygulanır .nc veya .hdf Dosya.  

DasDds

  • DasDds XML'de yeni bir veri kümesi için ilk bir girişim oluşturduktan sonra kullanabileceğiniz bir komut satırı programıdır. datasets.xml . DasDds ile, defalarca XML test edebilir ve geliştirebilirsiniz. DasDds programını kullandığınızda:
  1. Windows'da, DasDds çalıştırdığınızda, DasDds'i düzenlemeniz gerekir. Bir metin editörü ile yaralanan dosyayı java'a değiştirmek için. exe file böylece Windows bulabilir Java .
  2. DasDds size soruyor datasetID Üzerinde çalıştığınız veri kümesi için.
  3. DasDds, veri kümesini bununla yaratmaya çalışır datasetID .
    • DasDds her zaman birçok teşhis mesajı yazdırır. "DasDds -söz" kullanıyorsanız, DasDds normalden daha fazla tanı mesaj yazdıracaktır.
    • Güvenlik için, DasDds her zaman önbellekli veri kümesi bilgilerini silir. (dosyaları dosyaları dosyaları dosyaları) Dataset için veri kümesi oluşturmaya çalışmadan önce. Bu, bir ayarlamanın eşdeğeridir sert bayrak Bu yüzden agred veri setleri için, dosyaNameRegex'i geçici olarak veri yapılabilen dosyaların sayısını sınırlamak isteyebilirsiniz.
    • Eğer veri kümesi yüklenemezse (Her ne sebeple olursa olsun) DasDds sizi bulduğu ilk hata için hata mesajı gösterecektir. Problemin ne olabileceğini tahmin etmeye çalışmayın. ERROR mesajını dikkatle okuyun.
      Gerekirse, daha fazla ipucu ve bilgi bulmak için önceki tanı mesajları okuyun.
    • Bu sorunu çözmeye çalışmak için veri kümesinin XML'ine bir değişiklik yapın
      Ve DasDds tekrar veri setini oluşturmaya çalışalım.
    • Her sorunu defalarca çözerseniz, sonunda tüm sorunları çözeceksiniz
      Ve dataset yüklenecek.
  4. Tüm DasDds çıktı (Tanıklar ve sonuçlar) Ekrana yazılır ve için Büyük Parent Yönetmeny /loglar/DasDds.log .
  5. Eğer DasDds veri kümesi oluşturabilirse, DasDds size gösterir .das (Dataset Attribute Structure) , .dd (Dataset Descriptor Yapı Yapısı) Ve .timeGaps (Zaman boşlukları) Ekranınızda veri kümesi için bilgi ve onları yazmak için Büyük Parent Yönetmeny /loglar/DasDds.out .
  6. Çoğu zaman, veri kümesinin metadatasını temizlemek ve DasDds'i yeniden kurmak için bazı küçük değişiklikler yapmak isteyeceksiniz.

Bonus Bonus Bonus Bonus Third-Party Tool: ERDDAP -lint

ERDDAP -lint, Rob Fuller ve Adam Leadbetter'den bir programdır ve İrlanda Deniz Enstitüsü'nden metadata'yı geliştirmek için kullanabileceğiniz bir programdır. ERDDAP™ datasets. ERDDAP -lint "bazı kurallar ve basit bir statik web uygulaması, bazı doğrulama testlerinize karşı çalışan için ERDDAP™ sunucu. Tüm testler web tarayıcısında çalıştırılıyor.” Tıpkı gibi Unix/Linux lint aracı Mevcut kuralları düzenleyebilir veya yeni kurallar ekleyebilirsiniz. See See See See ERDDAP -lint Daha fazla bilgi için.

Bu araç, bazı zaman önce yarattığınız veri setleri için özellikle yararlıdır ve şimdi mevcut metadata tercihleriniz ile güncel olmak istiyor. Örneğin, GenerateDatasets'in erken versiyonları X ml küresel yaratmak için herhangi bir çaba göstermedi creator\_name , creator\_email , yaratıcısın creator\_url metadata. Kullanabilirsiniz ERDDAP - bu metadata özellikleri eksik olan veri kümelerini tanımlamak için.

Rob ve Adam bu aracı oluşturmak ve bunu yapmak için teşekkürler ERDDAP™ topluluk.  

Temel Yapının datasets.xml Dosya

Gerekli ve isteğe bağlı etiketlere izin verdi datasets.xml Dosya dosyası (Ve görünüşlerin sayısı görünebilir) Aşağıda gösterilmiştir. Uygulamada, uygulamanızda, datasets.xml Çok fazla olacak<Dataset>'ın etiketleri ve sadece diğer etiketleri içeride kullanın<HeddapDatasets> gerekli olduğu gibi.

 <?xml version="1.0" encoding="ISO-8859-1" ?>
 <erddapDatasets>
   <angularDegreeUnits>...</angularDegreeUnits> <!-- 0 or 1 -->
   <angularDegreeTrueUnits>...</angularDegreeTrueUnits> <!-- 0 or 1 -->
   <cacheMinutes>...</cacheMinutes> <!-- 0 or 1 -->
   <commonStandardNames>...</commonStandardNames> <!-- 0 or 1 -->
   <convertInterpolateRequestCSVExample /> <!-- 0 or more -->
   <convertInterpolateDatasetIDVariableList /> <!-- 0 or more -->
   <convertToPublicSourceUrl /> <!-- 0 or more -->
   <decompressedCacheMaxGB>...</decompressedCacheMaxGB> <!-- 0 or 1 -->
   <decompressedCacheMaxMinutesOld>...</decompressedCacheMaxMinutesOld> <!-- 0 or 1 -->
   <drawLandMask>...</drawLandMask> <!-- 0 or 1 -->
   <emailDiagnosticsToErdData>...</emailDiagnosticsToErdData> <!-- 0 or 1 -->
   <graphBackgroundColor>...</graphBackgroundColor> <!-- 0 or 1 -->
   <ipAddressMaxRequests>...</ipAddressMaxRequests> <!-- 0 or 1 -->
   <ipAddressMaxRequestsActive>...<ipAddressMaxRequestsActive> <!-- 0 or 1 -->
   <ipAddressUnlimited>...<ipAddressUnlimited> <!-- 0 or 1 -->
   <loadDatasetsMinMinutes>...</loadDatasetsMinMinutes> <!-- 0 or 1 -->
   <loadDatasetsMaxMinutes>...</loadDatasetsMaxMinutes> <!-- 0 or 1 -->
   <logLevel>...</logLevel> <!-- 0 or 1 -->
   <nGridThreads>...</nGridThreads> <!-- 0 or 1 -->
   <nTableThreads>...</nTableThreads> <!-- 0 or 1 -->
   <palettes>...</palettes> <!-- 0 or 1 -->
   <partialRequestMaxBytes>...</partialRequestMaxBytes> <!-- 0 or 1 -->
   <partialRequestMaxCells>...</partialRequestMaxCells> <!-- 0 or 1 -->
   <requestBlacklist>...</requestBlacklist> <!-- 0 or 1 -->
   <slowDownTroubleMillis>...</slowDownTroubleMillis> <!-- 0 or 1 -->
   <subscriptionEmailBlacklist>...</subscriptionEmailBlacklist> <!-- 0 or 1 -->
   <unusualActivity>...</unusualActivity> <!-- 0 or 1 -->
   <updateMaxEvents>...</updateMaxEvents> <!-- 0 or 1 -->

   <standardLicense>...</standardLicense> <!-- 0 or 1 -->
   <standardContact>...</standardContact> <!-- 0 or 1 -->
   <standardDataLicenses>...</standardDataLicenses> <!-- 0 or 1 -->
   <standardDisclaimerOfEndorsement>...</standardDisclaimerOfEndorsement> <!-- 0 or 1 -->
   <standardDisclaimerOfExternalLinks>...</standardDisclaimerOfExternalLinks> <!-- 0 or 1 -->
   <standardGeneralDisclaimer>...</standardGeneralDisclaimer> <!-- 0 or 1 -->
   <standardPrivacyPolicy>...</standardPrivacyPolicy> <!-- 0 or 1 -->
   <startHeadHtml5>...</startHeadHtml5> <!-- 0 or 1 -->
   <startBodyHtml5>...</startBodyHtml5> <!-- 0 or 1 -->
   <theShortDescriptionHtml>...</theShortDescriptionHtml> <!-- 0 or 1 -->
   <endBodyHtml5>...</endBodyHtml5> <!-- 0 or 1 -->

   <user username="..." password="..." roles="..." /> <!-- 0 or more -->

   <dataset>...</dataset> <!-- 1 or more -->
 </erddapDatasets>

Diğer kodlamaların gelecekte izin alınması mümkündür, ancak şimdilik sadece ISO-8859-1 önerilir.  

XInclude

Yeni sürüm 2.25 XInclude için destek. Bu, SAX the kullanarak olmanızı gerektirir<useSaxParser>Real</useSaxParser> Kurulumunuzda.xml. Bu, her veri kümesini kendi dosyasında yazmanıza izin verebilir, sonra hepsini ana akımda ekleyin. datasets.xml , dataset tanımlarının yeniden parçaları veya her ikisi. Bir örnek görmek istiyorsanız, EDDTestDataset.javava XInclude'yi değişken tanımları yeniden kullanmak için ayarlar.  


Notlar Notlar Notlar Notlar Notlar Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Notlar

Çalışmak ile çalışmak datasets.xml Dosya non-trivial bir projedir. Lütfen tüm bu notları dikkatle okuyun. Sonra bir tane seçin dataset type Lütfen ayrıntılı açıklamayı dikkatle okuyun.  

Dataset Type seçmek

Çoğu durumda, sadece bir tane var ERDDAP™ Belirli bir veri kaynağı için uygun olan veri set türü. Birkaç durumda (E.g., .nc dosyaları dosyaları dosyaları dosyaları) Ama genellikle bunlardan biri kesinlikle en iyisidir. Yapmanız gereken ilk ve en büyük karar: veri setlerini çok boyutlu diziler grubu olarak tedavi etmek uygun (Eğer öyleyse bakın EDDGrid Dataset türleri ) veya bir veritabanı benzeri veri tablosu olarak (Eğer öyleyse bakın EDDTable dataset türleri ) .  

Data As Is Is Is Is

Genellikle, veri kaynağının değiştirilmesi gerekmez (e.g., dosyaları başka bir dosya türüne dönüştürür) Bu yüzden ERDDAP™ Ona hizmet edebilir. Birinin varsayımlarından biri ERDDAP™ Veri kaynağının olduğu gibi kullanılacak olmasıdır. Genellikle bu iyi çalışır. Bazı istisnalar şunlardır:

  • Relational Databases and Cassandra – ERDDAP™ Veriler doğrudan ilişkisel veritabanı ve Cassandra'dan hizmet edebilir. Ancak güvenlik için, dengeleme ve performans sorunları için, aynı verilerle başka bir veritabanı kurmak veya verileri kaydetmek için seçebilirsiniz. NetCDF v3 .nc dosyaları ve dosyaları var ERDDAP™ Yeni veri kaynağından verilere hizmet edin. See See See See EDDTable FromDatabase ve EDDTable FromCassandra .
  • Desteklenen Data Sources – ERDDAP™ Çok sayıda veri kaynağını destekleyebilir, ancak dünya 1000'inlerle dolu (Milyonlarca?) Farklı veri kaynakları (Özellikle, veri dosya yapıları) . If if if if if if if if if if if if if if if if if if if if if if if if if if if if if ERDDAP™ Veri kaynağınızı desteklemiyor:
    • Eğer veri kaynağı veri kaynağı ise NetCDF .nc dosyaları, kullanabilirsiniz NcML Veri dosyalarını uçmak veya kullanmak NCO Veri dosyalarını kalıcı olarak değiştirmek.
    • Verileri bir veri kaynağı türüne yazabilirsiniz, böylece ERDDAP™ destekler. NetCDF -3 .nc dosyalar iyi, genel bir tavsiyedir çünkü ikili dosyalardır ERDDAP™ Çok çabuk okuyabilirsiniz. Tellar verileri için, verileri bir koleksiyonda depolamayı düşünün .nc Kullanan dosyaları CF Discrete Sampling Geometries (DSG) Tartışma veri yapıları ve bu nedenle ele alınabilir ERDDAP " EDDTable FromNcCFFiles ). Eğer mantıksal olarak organize edilirlerse (Her biri bir uzay ve zaman için bir chunk için verilerle) , ERDDAP™ Onlardan verileri çok hızlı bir şekilde çıkarabilir.
    • Bu veri kaynağı için bu desteğin eklenmesini talep edebilirsiniz ERDDAP™ Chris'e e-posta ile. John at noaa.gov.
    • Bu veri kaynağı için kodu kendiniz işlemek için destek ekleyebilirsiniz. See See See See The the the the ERDDAP™ Programr's Guide
  • Hız – ERDDAP™ Bazı veri kaynaklarından verileri diğerlerinden çok daha hızlı okuyabilirsiniz. Örneğin, okumak NetCDF v3 .nc dosyalar hızlı ve ASCII dosyalarını okumak yavaştır. Ve eğer büyük bir büyük varsa (>1000) veya büyük veya büyük (>10.000) Kaynak veri dosyalarının sayısı, ERDDAP™ Bazı veri isteklerine yavaş cevap verecektir. Genellikle, fark insanlara fark edilmez. Ancak, düşünürseniz ERDDAP™ Verilen bir veri kümesi için yavaş, verileri daha verimli bir kuruluma yazarak sorunu çözmeyi seçebilirsiniz. (Genellikle: birkaç, iyi yapılandırılmış, NetCDF v3 .nc dosyaları dosyaları dosyaları dosyaları) . Prolar verileri için, bakınız Bu tavsiye .  

Hint Hint

XML'i veri kümesindeki bir çalışma veri kümesi açıklamasının bir kopyasını yaparak oluşturmak genellikle daha kolaydır.xml ve sonra onu değiştirmek.

Encoding Special Characters

O zamandan beri datasets.xml Bir XML dosyası, sen MUST &-encode "&", "<" ve ">" herhangi bir içerikte "&", "<" ve ">". Yanlış:<Başlık> Zaman & Tides</title> Doğru:<Başlık> Zaman & Tides</title>  

XML, sözel hataları tolere etmiyor

Dataset.xml dosyasını düzenlemeden sonra, sonucun doğrulanması iyi bir fikirdir iyi bilgilendirilmiş XML XML metnini bir XML checker'e geçmiş olarak xmlvalidation .  

Problem Çözme İpuçları

  • Datasets ile Diagnose Problemleri Diğer Yolları
    Buna ek olarak iki ana Araçlar ,
  • Giriş.txt Her biriyle bir günlük dosya ERDDAP ‘Sörnek mesajları.
  • The The The The The The The The Günlük Rapor Yükleme ve istisnalar hariç bir veri setleri listesi dahil olmak üzere durum sayfasından daha fazla bilgiye sahiptir. (Hata hataları hataları hataları hataları hataları hataları) Onlar ürettiler.
  • The The The The The The The The Durum Sayfa Kontrol etmek için hızlı bir yoldur ERDDAP “Herhangi bir web tarayıcısından statüsü. It contains a list of datasets that didn'tload (İlgili istisnalar olmasa da) Ve görevThread istatistikler (Gösteren ilerlemeyi gösterir EDDGrid Kopya kopya ve EDDTableCopy datasets and any datasets EDDGrid FromFiles veya EDDTable FromFiles Kullandığı datasets that use Önbellek FromUrl (Ama önbellek değil Boyut) ) .
  • Eğer sıkışıp kalırsanız, gözlerimizi görün Bölüm almak için ek destek .  

Özel değişkenler

Neden sadece iki temel veri yapısı?

  • İnsan müşterileri ve bilgisayar müşterileri için mümkün veri kümeleri ile uğraşmak zor olduğundan, ERDDAP™ Sadece iki temel veri yapısı kullanır:
  • Elbette, tüm veriler bu yapılarda ifade edilemez, ancak çoğu olabilir. Masalar, özellikle çok esnek veri yapıları (İlişkisel veritabanı programlarının başarısına bakın) .
  • Bu, veri sorgularını inşa etmek için daha kolay hale getirir.
  • Bu, veri yanıtlarının basit bir yapıya sahip olmasını sağlar, bu da verileri daha geniş bir standart dosya türünde hizmet etmeyi kolaylaştırır. (Hangi sıklıkla basit veri yapıları destekler) . Bu, ayarladığımız ana nedenidir ERDDAP™ Bu şekilde.
  • Bu, sırayla, bizim için çok kolay hale getiriyor (Ya da herkes) Tüm bunlarla çalışan müşteri yazılımı yazmak için ERDDAP™ datasets.
  • Bu, verileri farklı kaynaklardan karşılaştırmayı kolaylaştırır.
  • Başlangıçta bu yaklaşımın basit veya yetersiz olduğunu düşündüğünüz diğer veri yapıları ile çalışmak için kullanılıyorsanız çok farkındayız. Ancak tüm veri yapıları ticarete sahiptir. Hiçbir şey mükemmel değildir. Do-it-tüm yapıların bile onların alt yönleri vardır: onlarla çalışmak karmaşıktır ve dosyalar sadece özel yazılım kütüphaneleri ile yazılabilir veya okunabilir. Kabul ederseniz ERDDAP Onunla çalışmayı denemek için yeterince yaklaşım, avantajlarının sahip olduğunu bulabilirsiniz (Özellikle veri yanıtlarını tutabilen birden çok dosya türü için destek) . The The The The The The The The ERDDAP™ slide show (Özellikle özellikle de Veri yapıları kaydırın ) Bu konular hakkında çok şey konuşuyor.
  • Ve bu yaklaşım size garip geliyorsa bile, çoğu ERDDAP™ Müşteriler asla fark etmeyecektir - tüm veri setlerinin güzel basit bir yapıya sahip olduğunu görecekler ve verileri çeşitli dosya formatlarında geri alabilecekleri için minnettar olacaklar.  

Ölçüler

  • Kaynak veri kümesi DON'T'nin ağ değişkenleri aynı eksen değişkenlerini paylaşıyorsa ne olur?
    In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In EDDGrid veri setleri, tüm veri değişkenleri MUST kullanımı (Paylaş Paylaş Paylaş) Tüm eksen değişkenleri. Yani bir kaynak veri kümesinin bir dizi boyutu ve farklı boyutlardaki diğer değişkenleri varsa, iki veri kümesi yapmak zorundasınız. ERDDAP . Örneğin, bir tane yapabilirsiniz ERDDAP™ dataset hak "Some Title (Yüzeyde) “Sadece kullandığı değişkenler tutmak için \[ Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman \] \[ Entitude \] \[ Uzunlık \] Boyutlar ve başka bir şey yapın ERDDAP™ dataset hak "Some Title (derinliklerde) "Kullanılan değişkenleri tutmak \[ Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman \] \[ Yüksek irtifa \] \[ Entitude \] \[ Uzunlık \] . Ya da belki tek bir değerle bir boyut eklemek için veri kaynağını değiştirebilirsiniz (Örneğin, yükseklik =0) Değişkenleri tutarlı hale getirmek.

    ERDDAP™ Daha karmaşık veri kümeleri işlemez (Örneğin, üçgenlerin bir ağını kullanan modeller) İyi. Bu veri kümelerine hizmet edebilirsiniz ERDDAP™ İki veya daha fazla veri kümesi yaratarak ERDDAP™ (Böylece her yeni veri kümesindeki tüm veri değişkenleri aynı eksen değişkenlerini paylaşıyor) Ancak bu, kullanıcıların istediği şey değil. Bazı veri setleri için, veri kümesinin düzenli bir ızgara versiyonu yapmayı ve bunu orijinal verilere ek olarak sunabilirsiniz. Bazı müşteri yazılımı sadece düzenli bir ağla başa çıkabilir, bu yüzden bunu yaparak ek müşterilere ulaşırsınız.  

Projected Gridded Data

Bazı grid verileri karmaşık bir yapıya sahiptir. Örneğin, uydu seviyesi 2 ("along track") Veriler basit bir projeksiyon kullanmıyor. Modelers (Ve diğerleri) Sık sık çeşitli non-cylindrical projeksiyonlar üzerinde şebekeli verilerle çalışır (Örneğin, konic, kutup stereografik, Tripolar) veya yapılandırılmamış ızgaralarda (Daha karmaşık bir veri yapısı) . Bazı son kullanıcılar bu verileri olduğu gibi istiyor, bu yüzden bilgi kaybı yok. Bu müşteriler için, ERDDAP™ Verilere hizmet edebilir, çünkü sadece eğer ERDDAP™ Yönetici orijinal veri kümesini birkaç veri kümesine kırıyor, aynı eksen değişkenlerini paylaşan değişkenler de dahil. Evet, bu insanlar için garip görünüyor ve çoğundan farklıdır OPeNDAP sunucular. Ama ERDDAP™ Birçok formatta mevcut verileri vurgular. Bu mümkün çünkü ERDDAP™ Daha üniformalı bir veri yapısı kullanır/requires a more uniform data structure. Küçük bir garip olmasına rağmen (i.e., beklenenden farklı) , ERDDAP™ Projelenmiş verileri dağıtabilir.

\[ Evet, ERDDAP™ Veri yapısı için gevşek gereksinimleri olabilir, ancak çıkış formatları için gereklilikleri tutabilir. Ancak bu, birçok kullanıcı arasında karışıklıka yol açacaktır, özellikle de yenibies, farklı yapılardaki veriler için birçok görünüşte geçerli talep geçersiz olacaktır çünkü veriler dosya türüne uygun olmaz. Mevcut sistemin tasarımına geri dönüyoruz. \]

Bazı son kullanıcılar Equirectangular / plaka arabarée veya Mercator gibi bir lat lon silindirik projeksiyonda verileri farklı durumlarda kolay kullanım için isterler. Bu durumlar için, teşvik ediyoruz ERDDAP™ Yönetici başka bir yazılım kullanmak için ( NCO ?? Matlab ?? R? IDV? ...?) Verileri coğrafi olarak yeniden üretebilmek için (Equirectangular projeksiyon / plaka arabarée) veya diğer silindirik projeksiyon ve bu tür verilere hizmet eder ERDDAP™ Farklı bir veri kümesi olarak. Bu, uydu seviyesini 2 verileri seviye 3 verilere dönüştürdüğünde insanların yaptıklarına benzer. Bu tür bir araçtır NCO Bu, verileri regridding için uzatma seçenekleri sunar.

GIS ve Reprojeing Data

GIS dünyası genellikle harita odaklı olduğundan, GIS programları genellikle verileri yeniden üretmek için destek sunar, i.e., verileri farklı bir projeksiyonla haritada arsa.

Şu anda, ERDDAP™ Verileri yeniden oluşturmak için araçlara sahip değildir. Bunun yerine, veri kümesinin bir değişkenini yapmak için dış bir araç kullanmanızı tavsiye ederiz, verilerin orijinal formunun orijinal biçiminden yeniden üretildiği yer (Enfeksiyon uzun) için uygun dizi ERDDAP .

Bizim düşüncemizde, CF / DAP Dünya GIS dünyasından biraz farklıdır ve biraz daha düşük bir seviyede çalışır. ERDDAP™ Bunu yansıtıyor. Genel olarak, ERDDAP™ öncelikle verilerle çalışmak için tasarlanmıştır (haritalar değil haritalar) ve değiştirmek istemiyor (e.g., reproje) Bu veriler. For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For ERDDAP™ Ancak, grid verileri genellikle / genellikle / tercihen lat lon değerleri ve bir silindirik projeksiyon ile ilişkilendirilir ve bazı projeksiyonların x,y değerleri değildir. Her durumda, ERDDAP™ Verinin projeksiyonu ile hiçbir şey yapmaz; sadece verileri geçer, çünkü şu anki projeksiyonu ile, teoride bir reprojeksiyon veri ve veri için önemli bir değişikliktir. ERDDAP™ Önemli değişikliklerle uğraşmak istemiyor. Ayrıca, daha sonraki kullanıcılar verileri tekrar yeniden üretebilir, bu sadece bir reprojeksiyon yaparken iyi olmaz. (Öyleyse, eğer ERDDAP™ yönetici verileri farklı bir projeksiyonda sunmak istiyor, iyi; sadece verileri çevrimdışı olarak yeniden üretin ve bunu farklı bir veri kümesi olarak sunuyor. ERDDAP . Birçok uydu tabanlı veri setleri NASA'nın Seviye 2 dediği gibi sunulmaktadır. (1.) Ve Seviye 3 (Equirectangular projeksiyon) versiyonları.) When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When ERDDAP™ haritalar yapar (Doğrudan veya aracılığıyla WMS veya KML) , ERDDAP™ Şu anda sadece Equirectangular / plaka arabarée projeksiyonu ile haritalar yapmak, neyse ki, çoğu haritalama programı tarafından kabul edilir.

teşvik ediyoruz ERDDAP™ Bazı diğer yazılım yöneticileri kullanmak için ( NCO ?? Matlab ?? R? IDV? ...?) Verileri coğrafi olarak yeniden üretebilmek için (Equirectangular projeksiyon / plaka arabarée) veya diğer silindirik projeksiyon ve bu tür verilere hizmet eder ERDDAP™ Farklı bir veri kümesi olarak. Bu, uydu seviyesini 2 verileri seviye 3 verilere dönüştürdüğünde insanların yaptıklarına benzer. Bu tür bir araçtır NCO Bu, verileri regridding için uzatma seçenekleri sunar.

Umarım bunu umuyoruz ERDDAP™ Gelecekteki diğer projeksiyonlarla haritalar sunmak için inşa edilmiş araçlar olacaktır. Ayrıca gelecekte GIS dünyasına daha iyi bağlantıları olmasını umuyoruz. (Diğeri ise mevcut WMS servis hizmeti hizmeti hizmeti hizmeti hizmeti) . Bu "modern" dünyada, CF / arasındaki bağlantılar DAP Dünya ve GIS dünyası hala çok zayıf. Bu şeylerin her ikisi de To Do listesinde. (Yardım etmek istiyorsanız, özellikle bağlantı ile ERDDAP™ MapServer, lütfen e-posta Chris. John at noaa.gov.)

Veri türleri

ERDDAP™ Aşağıdaki veri türlerini destekler (İsimler hassas durumda; 'u' Prefix "unsigned" için duruyor; diğer sistemlerdeki isimlerin çoğu biraz sayı.) :

Yemin ederim

  • Yemin ederim Bir dizi ile tamsayı değerleri imzaladı -128 to 127. Diğer sistemlerde, bu bazen int8 olarak adlandırılır. Bu, SQL ve Cassandra tarafından "tinyint" olarak adlandırılır. ERDDAP™ Dönüşümler boole Bazı kaynaklardan (e.g., SQL ve Cassandra) Astes in ERDDAP™ 0=false, 1 = gerçek ve 127= missing\_value .

ubay

  • ubay 0 ila 255 arasında tamsayı olmayan değerler var. Diğer sistemlerde, bu bazen uint8 olarak adlandırılır.

Kısa kısa kısa kısa

  • Kısa kısa kısa kısa Bir dizi ile tamsayısal değerleri imzaladı -32768 ile 32767. Diğer sistemlerde, bu bazen int16 olarak adlandırılır. Bu, SQL ve Cassandra tarafından "küçük" olarak adlandırılır.

Burn

  • Burn Bir dizi 0 ila 65535 ile tamsayı olmayan değerleri var. Diğer sistemlerde, bu bazen uint16 olarak adlandırılır.

int

  • int Bir dizi ile tamsayı değerleri imzaladı -2147483648 2147483647. Diğer sistemlerde, bu bazen int32 olarak adlandırılır. Bu "integer" olarak adlandırılır. | numeric (??) "If SQL and "int" by Cassandra.

Uint

  • Uint Bir dizi 0 ile 4294967295 arasında tamsayı olmayan değerlere sahiptir. Diğer sistemlerde, bu bazen uint32 olarak adlandırılır.

Uzun uzun uzun uzun uzun uzun

  • Uzun uzun uzun uzun uzun uzun Bir dizi ile tamsayı imzaladı -9223372036854775808 9223372036854775807. Diğer sistemlerde, bu bazen int64 olarak adlandırılır. Bu "büyükint" olarak adlandırılır. | numeric (??) " SQL and "bigint" by Cassandra. Çünkü birçok dosya türü uzun verileri desteklemiyor, kullanımı cesaret verici. Mümkün olduğunda, yerine çift kullanın (Aşağıdaki aşağıda bakınız) .

Ulong

  • Ulong Bir dizi 0 ile 18446744073709551615 Diğer sistemlerde, bu bazen uint64 olarak adlandırılır. Çünkü birçok dosya türü ulong verilerini desteklemiyor, kullanımı cesaret verici. Mümkün olduğunda, yerine çift kullanın (Aşağıdaki aşağıda bakınız) .

yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz

  • yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz Bir IEEE 754, yaklaşık + / 3402823466e+38 ile yüz yüze. Diğer sistemlerde, bu bazen yüz32 olarak adlandırılır. Bu "gerçek" olarak adlandırılır. | yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz (??) | decimal (??) | numeric (??) " SQL ve "float" Cassandra tarafından. NaN özel değeri Not-a-Number anlamına gelir. ERDDAP™ NaN'ye pozitif ve negatif eşitsizlik değerleri dönüştürür.

çift çift çift çift çift çift çift çift

  • çift çift çift çift çift çift çift çift Yaklaşık bir dizi ile bir IEEE 754 çift +/- 1.7976931348623157E+308. Diğer sistemlerde, bu bazen yüz64 olarak adlandırılır. Bu "iki hassas hassas hassaslık" olarak adlandırılır. | yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz (??) | decimal (??) | numeric (??) “ SQL ve "çift" Cassandra tarafından. NaN özel değeri Not-a-Number anlamına gelir. ERDDAP™ NaN'ye pozitif ve negatif eşitsizlik değerleri dönüştürür.

hayır

  • hayır Tek, 2bay (16-bit) Unicode UCS-2 karakteri Bu aradan itibaren \u0000 (#0) aracılığıyla \uffff (#65535) . \uffff “Süre, NaN'nin çifte değerine benzemektedir. Karın kullanımı cesaret vericidir, çünkü birçok dosya türü ya karları desteklemez ya da sadece 1-bayt karları desteklemez. (Aşağıdaki aşağıda bakınız) . Bunun yerine String'i kullanmayı düşünün. Kullanıcılar, grafikler yapmak için kar değişkenlerini kullanabilir. ERDDAP™ Karakterleri Unicode kod noktası numarasına dönüştürecektir, bu da sayısal veriler olarak kullanılabilir.

String

  • String 0 veya daha fazla bir dizi, 2bay (16-bit) Unicode UCS-2 karakterleri . ERDDAP™ Eksik bir değer olarak 0 uzunlukta bir dize kullanır /interprets a 0-long string as a missing value. ERDDAP™ Gerçek bir null dizesini desteklemez. Teorik maksimum dize uzunluğu 2147483647 karakterdir, ancak birkaç yerde daha kısa Strings ile bile çeşitli sorunlar vardır. Use Use Use Use Use ERDDAP 's String for SQL'in karakteri, varchar, karakter farklı, ikili, varbinary, aralık, dizi, multiset, xml, and any other database data type that doesn't closely with any other other other other database data type that doesn't fit ERDDAP™ veri türü. Use Use Use Use Use ERDDAP Cassandra'nın "text" ve diğer Cassandra veri türü için String, diğer herhangi bir şekilde temizle sığmıyor. ERDDAP™ veri türü.  

Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce ERDDAP™ v2.10, ERDDAP™ Kayıtsız tam olmayan tipleri içsel olarak desteklemedi ve veri okuyucuları ve yazarlarında sınırlı destek vermedi.

Data Type Limitations

Tahmin edebilirsiniz ERDDAP™ Sanal veri kümeleri olan bir sistem olarak ve verileri bir veri kümesinin kaynağından içsel bir veri modeline okuyarak ve çeşitli hizmetlere (örneğin, çeşitli hizmetlere) yazarak çalışır.(OPeN)DAP, WMS ) ve dosya türleri kullanıcı isteklerine yanıt verir.

  • Her giriş okuyucu, veri türlerinin bir alt kümesini destekler ERDDAP™ destekler. Bu yüzden verileri okumak veriye ERDDAP “İç veri yapıları bir problem değil.
  • Her çıktı yazarı aynı zamanda bir alt dizi veri türü destekler. Bu bir problem çünkü çünkü ERDDAP Örneğin, uzun verileri uzun verileri desteklemeyen dosya türlerine baskı yapmak zorunda.  

Aşağıda sınırlamaların açıklaması (Ya da hiçbiri) Çeşitli çıktı yazarları ve nasıl ERDDAP™ Sorunlarla ilgilenir. Bu tür komplikasyonlar doğal bir parçasıdır ERDDAP “Parate sistemleri geçici hale getirme hedefi.

ASCII

  • ASCII (.csv, .tsv vs.) metin dosyaları -
    • Tüm sayısal veriler String gösterimi ile yazılır (Eksik veri değerleri 0 uzunlukta dizeler olarak ortaya çıkıyor) .
    • Her ne kadar olsa da olsa da olsa da olsa da rağmen ERDDAP™ ASCII metin dosyalarına doğru uzun ve uzun değerler yazıyor, birçok okuyucu (e.g., spreadsheet programları) Uzun ve ulong değerleri ile doğru bir şekilde başa çıkamaz ve bunun yerine onları çifte değerlere dönüştürür. (Bazı durumlarda hassaslık kaybı) .
    • Char ve String verileri JSON Strings ile yazılır, bu da tüm Unicode karakterleri ele alır (Özellikle, ASCII #127'nin ötesinde "kutsal" karakterler, e.g., Euro karakteri "Gu20ac" olarak görünür.) .

JSON

  • JSON ( .json , .jsonlCSV vs.) metin dosyaları -
    • Tüm sayısal veriler, String gösterimi aracılığıyla yazılır.
    • Char ve String verileri JSON Strings olarak yazılır, tüm Unicode karakterlerini ele alır (Özellikle, ASCII #127'nin ötesinde "kutsal" karakterler, e.g., Euro karakteri "Gu20ac" olarak görünür.) .
    • Tüm sayısal veri türleri için eksik değerler null olarak görünür.  

.nc 3 dosyalar

  • .nc 3 dosyalar herhangi bir imzalanmamış tamsayı veri türlerini yerel olarak desteklemez. CF v1.9'dan önce, CF henüz tamamlanmamış tam sayılarını desteklemedi. bununla uğraşmak için, ERDDAP™ 2.10+ NUG standardını takip eder ve her zaman "gerçek" veya "false" değeri ile bir değişken imzalanmamış veya imzalanmış bir değişkenden işaret eder. Tüm tam tamsayı özellikleri imzalanmış özellikler olarak yazılır (E.g., bytete) İmzalanan değerler ile (örneğin, bir ubay actual\_range Değerlerle 0 ila 255, değerlerle dolu bir özellik olarak görünüyor 0 to -1 (ikinin dışsal değerin tamamlayıcı değeri hariç). Hangileri bilmek kolay bir yol yoktur (signed) tamsadışı özellikler olarak okunmalıdır. ERDDAP™ Okuduğunuz zaman “geçmiş” özelliklerini destekler. .nc 3 dosya.
  • .nc 3 dosyaları uzun veya ulong veri türlerini desteklemiyor. ERDDAP™ Bunu geçici olarak iki değişken haline getirmekle ilgilenir. Çiftler tam olarak tüm değerleri + / 9,007,199,254,740,992 ile temsil edebilir 2^53. Bu mükemmel bir çözüm. Unidata Küçük bir yükseltme yapmayı reddediyor .nc 3 Bu ve ilgili sorunlarla başa çıkmak, .nc 4 4 4 (Büyük bir değişiklik) Çözüm olarak.
  • CF spesifikasyonu (Daha önce v1.9) Bir kar veri tipini desteklediğini söyledi, ancak kar sadece dizi chars bina blokları olarak tasarlanırsa, bu etkili Strings. Posta listesine sorular sadece kafa karıştırıcı cevaplar verdi. Bu komplikasyonlar nedeniyle, kar değişkenlerinden kaçınmak en iyisidir ERDDAP™ Ve mümkün olduğunda String değişkenlerini kullanın.
  • Geleneksel olarak, .nc 3 dosyaları sadece ASCII-encoded ile desteklenen dizeleri destekledi (7bit, #0 - #127) karakterler. NUG (ve ERDDAP ) uzatın (Başlangıç ~2017) "\_Encoding" özelliği de dahil olmak üzere "ISO-8859-1" değeri ile (Her 8-bit karakterin tüm 256 değerlerini tanımlayan ASCII'nin uzantısı) veya "UTF-8", String verilerin nasıl kodlandığını göstermek için. Diğer kodlamalar yasal olabilir ancak cesaret edilir.  

.nc 4 dosya

  • .nc 4 dosya tüm destek ERDDAP “Veri türleri.

NCCSV dosyaları

NCCSV 1.0 dosyaları herhangi bir imzalanmamış tamsayı veri türlerini desteklemez. NCCSV 1.1+ dosyaları Tüm imzalanmamış tam sayı türlerini destekler.  

DAP

  • (OPeN)DAP (.das, .dds, .asc ASCII dosyaları ve .dods ikili dosyaları) -
    • (OPeN)DAPKısa, en kısa, int, uint, yüz ve çift değerleri doğru şekilde idare eder.
    • (OPeN)DAPBir "bayt" veri türü, imzasız olarak tanımladığı, tarihsel olarak, THREDDS ve ERDDAP™ “bayt”ı kendi içinde imzalanmış olarak tedavi etti(OPeN)DAPhizmetler. Bunu daha iyi ele almak için, ERDDAP™ 2.10+ NUG standardını takip eder ve her zaman bir "gerçek" veya "false" değeri ile bir "gerçek" veya "false" özelliği ekler. ERDDAP™ Çağrılar veya ubay. All byte and ubay attributes are written values (e.g., a ubay actual\_range Değerlerle 0 ila 255, değerlerle dolu bir özellik olarak görünüyor 0 to -1 (ikinin dışsal değerin tamamlayıcı değeri hariç). Hangi "bayt" özelliklerin ubayt özellikleri olarak okunacağını bilmek kolay bir yol yoktur.
    • (OPeN)DAPİmzalanmış veya imzalanmamış uzunları desteklemez. ERDDAP™ Bunu geçici olarak onları çift değişken ve niteliklere dönüştürmekle ilgilenir. Çiftler tam olarak 9,007,199,254,740,992 kadar tüm değerleri temsil edebilir. 2^53. Bu mükemmel bir çözüm. OPeNDAP (Organizasyon) Küçük bir yükseltme yapmayı reddediyor DAP 2.0 Bu ve ilgili sorunlarla başa çıkmak için, DAP 4 4 4 (Büyük bir değişiklik) Çözüm olarak.
    • Çünkü(OPeN)DAPFarklı kar veri türü yoktur ve teknik olarak sadece 1-bay ASCII karakterleri destekler (#0 - #127) Strings'te, kar veri değişkenleri 1-character-long Strings olarak görünecektir(OPeN)DAP.das, .dds ve .dods yanıtları.
    • Teknik olarak,(OPeN)DAPSadece ASCII-encoded karakterleri ile dizeleri destekler (#0 - #127) . NUG (ve ERDDAP ) uzatın (Başlangıç ~2017) "\_Encoding" özelliği de dahil olmak üzere "ISO-8859-1" değeri ile (Her 8-bit karakterin tüm 256 değerlerini tanımlayan ASCII'nin uzantısı) veya "UTF-8", String verilerin nasıl kodlandığını göstermek için. Diğer kodlamalar yasal olabilir ancak cesaret edilir.  

Data Type Yorumlar

  • Uzun, ulong ve birçok dosya türündeki fakir destek nedeniyle, bu veri türlerinin kullanımını cesaret ediyoruz. ERDDAP . Mümkün olduğunda, uzun ve ulong yerine çift kullanın ve String'i kömür yerine kullanın.  
  • Metadata - Çünkü(OPeN)DAP‘s .das ve .dds cevapları uzun veya ulong özelliklerini veya veri türlerini desteklemez (Ve bunun yerine onları çift olarak gösterir) Bunun yerine kullanmak isteyebilirsiniz ERDDAP “ metadata'nın tabular gösterimi, görüldüğü gibi http ... /erddap / Bilgi bilgi / * datasetID * .html web sayfası (Örneğin, https://coastwatch.pfeg.noaa.gov/erddap/info/cwwcNDBCMet/index.html ) (Ayrıca diğer dosya türlerinde de alabilirsiniz, e.g., .csv, .htmlTable , .itx , .json , .jsonlCSV1 , .jsonlCSV , .jsonlKVP , .mat , .nc , .nccsv , .tsv , .xhtml ) Ya da .nccsv Metadata yanıt (Örneğin, https://coastwatch.pfeg.noaa.gov/erddap/tabledap/cwwcNDBCMet.nccsvMetadata Bununla birlikte, rağmen rağmen rağmen rağmen rağmen rağmen rağmen rağmen .nccsv Metadata sadece tabular veri setleri için mevcuttur) Her ikisi de tüm veri türlerini destekler (Özellikle, uzun, ulong ve kömür) .  

Media Files

Tüm veriler sayılar veya metin dizileri değildir. Bazı datasets, görüntü, ses ve video dosyaları gibi medya dosyalarını içerir veya içerir. ERDDAP™ Kullanıcıların medya dosyalarına erişmek için daha kolay hale getirmek için bazı özel özellikler vardır. Bu iki adım süreci:  

  1. Her dosyayı kendi URL'si aracılığıyla erişilebilir hale getirin, seri talepleri destekleyen bir sistem aracılığıyla. Bunu yapmanın en kolay yolu, dosyaları bir dizide koymaktır ERDDAP™ erişime sahiptir. (Eğer onlar bir konteyner gibi bir konteynerdeyse .zip Dosya, onları kabul etmeyin, ancak teklif etmek isteyebilirsiniz .zip Kullanıcılara da dosya.) Sonra, bir şey yapın EDDTable FromFileNames Bu dosyaları erişilebilir hale getirmek için veri kümesi ERDDAP™ Özellikle de, ERDDAP " "files" Sistem sistemi sistemi sistemi sistemi sistemi sistemi sistemi sistemi sistemi .

Tüm dosyalar EDDTable FromFileNames ve ERDDAP " "files" Sistem desteği byte range requests . Normalde, bir müşteri olduğunda (e.g., bir tarayıcı) URL'ye bir istek yapar, yanıt olarak tüm dosyayı alır. Ancak, bir online istekle, istek dosyadan gelen bir dizi astes belirtir ve sunucu sadece bunları döndürür. Bu burada alakalı, çünkü tarayıcılardaki ses ve video oyuncuları yalnızca dosyanın online istekler yoluyla erişilebilir olup olmadığını çalışırlar.

Seçmeli: Eğer ilişkili medya dosyaları ile birden fazla veri kümesiniz varsa, her dosya grubu için alt kater olan bir EDDTableFromFileNames yapabilirsiniz. Avantaj, yeni bir veri kümesi için yeni medya dosyalarını eklemek istediğinizde, yapmanız gereken her şey yeni bir klasör yaratır ve dosyaları bu klasörde koymaktır. Dosya ve dosyalar EDTable FromFileNames dataset'e otomatik olarak eklenecektir.

  1. Seçmeli: Medya dosyalarına referansları içeren bir veri kümesiniz varsa, onu medya dosyalarına ekleyin. ERDDAP . Örneğin, her seferinde bir balina ve görüntü dosyasını bu görüşle ilgili bir görüntü dosyası adını içeren bir sütun görebilirsiniz. Resim dosyasının adı sadece dosya adı, e.g., Img20141024T192403Z, tam bir URL değil, o zaman tam URL eklemek gerekir Dosya Url ve / veya dosya AccessSuffix Bunun için metadata'ya özellikler dataVariable Bu dosya isimleri için tabanURL ve eki belirtir. EDDTable FromFileNames aracılığıyla erişilebilir dosyaları yaparsanız, URL formda olacaktır. BaseUrl /erddap/files / * datasetID * / Örneğin,
        <att name="fileAccessBaseUrl">*someBaseURL*</a>  
<att name="fileAccessSuffix">.png</a>

Eğer bir şey varsa .zip Bir veri değişkeniyle ilgili tüm medya dosyaları ile veya diğer konteyner dosyası, bu dosyayı kullanıcılarına erişilebilir hale getirmenizi tavsiye ederiz. (1. adım yukarıda 1.) Ve sonra onu birbiriyle özdeşleştirin Dosya Url Özellikler.

\[ Başlangıç ERDDAP™ v1.82 \] Yukarıdaki ilk adımı yaparsanız (Ya da her iki adım da) Daha sonra bir kullanıcı görüşlerini gördüğünde ERDDAP™ "files" Bu veri kümesi için sistem (veya veri kümesinin bir alt kümesini bir alt kümesi aracılığıyla görmek ister .htmlTable İstek, ikinci adım attıysanız) , ERDDAP™ Dosya adının soluna bir ‘?’ ikonu gösterecektir. Kullanıcı bu ikonun üzerinde ilerlerse, görüntüyü veya ses oyuncuyu veya video oynatıcıyı gösteren bir popup görecekler. Tarayıcılar sadece sınırlı sayıda türü destekler

  • Görüntü görüntüsü (Genellikle .gif, .jpg ve .JP) ,
  • Ses sesi (Genellikle .mp3, .ogg ve .wav) Ve
  • Video dosyaları (Genellikle .mp4, .ogv ve . webm) .

Destek, farklı işletim sistemlerinde farklı tarayıcıların farklı versiyonlarına göre değişir. Bu nedenle, hangi dosya tipinin sunacağı bir seçeneğiniz varsa, bu türleri sunmak mantıklıdır.

Ya da, dosya adı üzerinde gösterilen bir kullanıcı tıklaması ERDDAP™ Web sayfası, tarayıcıları görüntü, ses veya video dosyasını ayrı bir web sayfası olarak gösterecektir. Bu, popup yerine tam ekran için çok büyük bir görüntü veya video ölçeği görmek çoğunlukla yararlıdır.

AWS S3 Files ile çalışmak

Amazon Web Servisi (AWS) Bir satıcıdır bulut bilişim hizmetler. S3 AWS tarafından sunulan bir nesne depolama sistemidir. Yönetmenlerin hiyerarşik sistemi ve geleneksel bir dosya sisteminin dosyaları yerine (PC'nizde zor bir sürücü gibi) S3, "objects" tutan sadece "buckets" sunuyor. (Onları çağıracağız "files" ) .

ASCII dosyaları için (E.g., .csv) , ERDDAP™ Kovalardaki dosyalarla doğrudan çalışabilir. Yapmanız gereken tek şey, belirtmektir<DosyaDir> veri kümesi için AWS kova, e.g için belirli bir format kullanıyor.https://bucketName.s3.aws-region.amazonaws.com/subdirectory/. Kullanmamalısınız<Önbellek FromUrl> Ayrıntılar için aşağıda görün.

Ancak ikili dosyalar için (E.g., .nc .grib, .bufr ve .hdf dosyaları dosyaları dosyaları dosyaları) , kullanmanız gerekir<Önbellek aşağıda açıklanan Url> sistem. ERDDAP , netcdf-javava (hangisi hangisi hangisi hangisi hangisi hangisi hangisi hangisidir? ERDDAP™ Bu dosyaların verilerini okumak için kullanılır) , ve diğer bilimsel veri yazılımı, sunulan geleneksel bir dosya sisteminde dosyaları ile çalışmak için tasarlanmıştır. Blok seviyesi dosyalara erişim (Hangi bir dosyanın chunks okumasına izin verir) Ama S3 sadece teklifler dosya seviyesi (nesne nesne nesne nesne) dosyalara erişim (Hangi sadece tüm dosyayı okumaya izin verir) . AWS S3'e alternatif sunuyor, Elastic Block Store (EBS) ), blok seviyesi dosyalarına erişimi destekleyen ama S3'ten daha pahalı, bu yüzden büyük miktarda veri dosyaları depolamak için nadiren kullanılır. (Böylece insanlar bulutta verileri depolamayı söylediğinde (S3) Ucuzdur, genellikle portakal karşılaştırması için bir elmadır.)

S3 Kovas

Bir Kovanın İçerikleri. Anahtarlar. Objects. Delimiters.
Teknik olarak, S3 kovalar bir bilgisayardaki bir dosya sistemi gibi hiyerarşik bir dosya yapısında organize edilmemiştir. Bunun yerine, kovalar sadece "objects" içerir. (dosyaları dosyaları dosyaları dosyaları) Her biri bir "key" vardır. (Bir isim) . Noaa-goes17 kovasındaki bir anahtar örneği

ABI-L1b-RadC/2019/235/22/OR\\_ABI-L1b-RadC-M6C01\\_G17\\_s20192352201196\\_e20192352203569\\_c20192352204013.nc

Bu nesne için karşılık gelen URl,

https://noaa-goes17.s3.us-east-1.amazonaws.com/ABI-L1b-RadC/2019/235/22/OR\_ABI-L1b-RadC-M6C01\_G17\_s20192352201196\_e20192352203569\_c20192352204013.nc

AWS, URL'nin nasıl inşa edildiğine dair küçük bir varyasyonu destekliyor, ancak ERDDAP™ Bu belirli bir format gerektirir:   https://bucketName.s3.region.amazonaws.com/key

Sanki ERDDAP v2.29, şimdi kullanabilirsiniz s3 Kova URL yerine URI formatı. Bu, kullanılan formattır AWS s3 cli . s3 KovaName / anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtar anahtarı

The The The The The The The The Bölge bölgesi S3 URI için üç şekilde belirtilebilir:

  • The The The The The The The The Bölge bölgesi Tomcat kullanıcısının ~ /.aws / yapılandırılmış Profil profili
  • The The The The The The The The AWS_DEFAULT_REGION Çevre değişkeni
  • The The The The The The The The Aws.region JVM değişken değişken değişken (Tomcat için setenv.sh)

Bu örnekle birlikte, anahtar isimlerin bir hiyerarşik yol artı bir dosya adı gibi görünmesini sağlamak için yaygın bir uygulamadır, ancak teknik olarak değiller. Ortak ve kullanışlı olduğundan, ERDDAP™ Anahtarlara bir hierarşik yol artı dosya adı olduğu gibi davranır ve bu belge onlara böyle atıfta bulunacaktır. Bir kovanın anahtarları kullanmazsa /'s (e.g., gibi bir anahtar ABI-Lib.2018.052.22.OR\_ABI-L1b-RadM2-M3C10\_G16\_s20180534975 ERDDAP™ Sadece uzun bir dosya adı olarak tüm anahtarı tedavi edecek.

Private vs Publichoppers – S3 kova için yönetici, kova ve içeriklerini kamu veya özel yapabilir. Eğer halk, kovadaki herhangi bir dosya, dosya için URL kullanan herkes tarafından indirilebilir. Amazon'un bir sahibi var Açık Veri Kamu veri kümelerine ev sahipliği yapan program (Veriler de dahil olmak üzere veriler de NOAA NASA ve USGS) Ücretsiz ve bu kovalardan dosyaları indirmek için herkesten sorumlu değildir. Bir kova özel ise, kovadaki dosyalar yalnızca yetkili kullanıcılar ve AWS'nin bir ücret ödemek için erişilebilir (Genellikle kovanın sahibi tarafından ödenir) dosyaları AWS S3 olmayan bir bilgisayara indirmek için. ERDDAP™ Kamu ve özel kovalarda verilerle çalışabilir.

AWS Credentials

Bunu yapmak için, ERDDAP™ Özel kovaların içeriğini okuyabilirsiniz, AWS kimliklerine ihtiyacınız var ve standart yerde bir kimlik dosyası saklamanız gerekir, böylece ERDDAP™ Bilgileri bulabilir. AWS SDK'sını görmek için Java 2.x Belgeleri: Varsayılan kimlik bilgilerini ayarlayın . (Değerleri saklama seçeneği Java komut satırı parametrelerinde \[ tomcat \] /bin/setenv.sh iyi bir seçenek olabilir.)

AWS /files /

  • / dosyalar / sistem - The The The The The The The The ERDDAP™ /files / sistem Kullanıcıların kaynak dosyalarını bir veri kümesi için indirmelerini sağlar. Bunu tüm veri kümeleri için kaynak dosyaları ile dönüştürmenizi tavsiye ederiz çünkü birçok kullanıcı orijinal kaynak dosyalarını indirmek istiyor.
    • Eğer dosyalar özel bir S3 kovandaysa, kullanıcının bir dosyayı indirme isteği, bir dosya tarafından ele alınacaktır ERDDAP™ Dosyadan verileri okuyacak ve sonra bunu kullanıcıya iletecektir, böylece yükünüzü üzerinize yükseltecektir. ERDDAP™ Gelen ve giden bant genişliğini kullanarak ve sizi yapın (The the the the ERDDAP™ yönetici yönetici yönetici) Veriler AWS'ye giriş ücreti öder.
    • Dosyalar halka açık bir S3 kovadaysa, kullanıcının bir dosyayı indirme isteği bu dosya için AWS S3 URL'ye yönlendirilecektir, bu nedenle veriler akışlamayacaktır. ERDDAP™ Böylece yükü azaltın ERDDAP . Ve eğer dosyalar Amazon Open Data'daysa (ücretsiz ücretsiz ücretsiz ücretsiz) Halk kova, sonra sen (The the the the ERDDAP™ yönetici yönetici yönetici) AWS'ye herhangi bir veri egre ücreti ödemek zorunda kalmayacak. Böylece, halktan veri servis eden büyük bir avantaj var (Özel değil) S3 kovas ve Amazon Open Data'dan veri servis etmek için büyük bir avantaj (ücretsiz ücretsiz ücretsiz ücretsiz) Kovalar.

ERDDAP Ayrıca kamu kovaları için anonim kimlikleri destekler. Anonim kimlik kullanmak için, ekleyin <useAwsAnonymous> Gerçek gerçek gerçek gerçek gerçek gerçek gerçek gerçek </useAwsAnonymous> Kurulumunuz için.xml.

Özel S3 Endpoints

S3 uyumlu nesne depolama Amazon tarafından barındırılmamış, yapılandırmanız gerekir endpoint_url Kova/key'inizi kullanarak, s3 URI.

The The The The The The The The endpoint_url Üç yoldan birinde belirtilebilir:

  • The The The The The The The The endpoint_url Tomcat kullanıcısının ~ /.aws / yapılandırılmış Profil profili
  • The The The The The The The The AWS_ENDPOINT_URL Çevre değişkeni
  • The The The The The The The The Aws.endpoint Url JVM değişken değişken değişken (Tomcat için setenv.sh)

S3 yapılandırma değişkenlerinin tam bir listesi için, Amazon belgelerini görün .

Self-signed Sertifikaları Kendi kendine ev sahipliği yapan S3 kovalar için, genellikle kendi kendine imzalanmış SSL sertifikalarına sahip olacaksınız. For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For ERDDAP Bu kovalardan okumak için, sertifika zincirinizi JVM güven cihazına eklemeniz gerekir $JAVA_HOME/jre/lib/security/calves . Ek olarak, ERDDAP Kullanımı kullanır AWS Common Runtime Kova asynchronously'ye erişmek için. Bu performansı artırır, ancak aynı zamanda kendi imzalanmış sertifikalarınızın OS özel güven mağazanıza eklendiğini gerektirir. Bunu yapmaktan kaçınmak istiyorsanız, AWS CRT'yi bununla devre dışı bırakabilirsiniz <useAwsCrt> Sahte sahte yanlış </useAwsCrt> Kurulumunuzda.xml.

ERDDAP™ ve AWS S3 Kovas

** ERDDAP™ ve AWS S3 Kovas**
Neyse ki, çok çabadan sonra, ERDDAP™ S3'ün blok seviyesindeki dosyalara olası olarak verimli bir şekilde erişmenin doğal sorunlarıyla başa çıkmalarına izin veren birçok özellik vardır:

  • \[ Feragatname: AWS S3 kova ile çalışmak birçok ekstra çalışmadır. AWS, hizmetlerin ve özelliklerin büyük bir ekosistemidir. Öğrenmek için çok şey var. Zaman ve çaba gerektirir, ancak uygulanabilir. Sabırlı olun ve çalışan şeyler alacaksınız. Yardım için Bak /ask ( AWS belgeleri , web siteleri gibi Stack Overflow Ve normal ERDDAP™ destek seçenekleri ) Eğer / ne zaman sıkışıp kalırsanız. \]
     
  • Bir S3 kovasındaki dosyaların dizi ve dosya isimlerini bile bulmak zor olabilir. ERDDAP™ Bu problem için bir çözüm var: EDDTable FromFileNames özel bir özelliğe sahiptir \\\* FromOnTheFly Kullanıcıların bir S3 kovalama içeriğine göz atmalarına izin veren bir EDDTable FromFileNames dataset which allows users to browse the content of an S3 kovalamalarına izin verir (dosyaları indirmek ve indirmek) Dataset's aracılığıyla "files" seçenek. Orada bir var Aşağıdaki örnek .  
  • ERDDAP™ Verilerden okuyabilirsiniz Dış olarak sıkıştırılmış veri dosyaları Bu yüzden S3'teki dosyalar depolanırsa iyi .gz , .gzip , .bz2 , .Z, ya da dışlanmış veri dosyalarının diğer türleri, bu da dramatik olarak sıkıştırılabilir. (2 - 20X) Dosya depolama maliyetleri üzerine kesti. Dış sıkıştırılmış dosyaları kullanmak için sık sık zaman cezası yoktur, çünkü S3'ten daha küçük bir dosyayı S3'ten transfer ederek kaydedilen süre S3'ten daha küçük bir dosyayı S3'ten göndermek için ERDDAP kabaca ekstra zaman için gerekli olan dengeleri dengelemek ERDDAP™ Dosyayı bastırmak için. Bu özelliği kullanmak için, sadece dataset'in ayarlanmasının emin olmak zorundasınız<fileNameRegex> sıkıştırılmış dosya türü için izin (e.g., ekleyerek ( | .gz ) Regex sonunda) .  
  • En yaygın durumda, nerede biriniz var ERDDAP™ PC'nize test / geliştirme için kuruldu ve veri setinin bir S3 kovadaki nesneler olarak depolandığı ikili veri dosyaları vardır, bir veri kümesine veri kümesi alma yaklaşımı. ERDDAP™ :
    1. Birkaç test veri dosyaları tutmak için PC'nizde bir dizi ayar oluşturun.

    2. Sadece yarattığınız diziye kaynaktan iki veri dosyası indirin.

    3. Use Use Use Use Use GenrateDatasetsX ml chunk oluşturmak için datasets.xml İki yerel veri dosyasına dayanan veri kümesi için.

    4. Bu veri kümesinin istenen şekilde çalıştığını kontrol edin DasDds ve / veya yerel ERDDAP .

      Aşağıdaki adımlar bu veri kümesinin bir kopyasını yapar (Hangi S3 kovandan veri alacak) Bir halk üzerinde ERDDAP .

    5. chunk'ı kopyalayın datasets.xml Veri kümesi için datasets.xml Halk için ERDDAP™ Bu verilere hizmet edecek.

    6. Halk üzerinde bir rehber oluşturun ERDDAP ‘Yerel zor sürücü geçici dosyaların önbelleği tutmak için. Kılavuz çok fazla disk alanı kullanmayacak (Aşağıdaki önbelliSize) .

    7. Veri kümesinin değerini değiştirmek<DosyaDir> etiketi bu yüzden sadece yarattığınız diziye işaret ediyor (Kılavuz boş olsa bile boş) .

    8. Add a Add a Add a Add a Add a Add a Add Önbellek FromUrl Dataset'in kova adını ve opsiyonel ön ekini gösteren etiket (i.e., directory) Özel olarak Aws S3 URL Format that ERDDAP™ Gereklilik gerektirir .

    9. Add a<Önbellek: (#cache Fromurl) Dataset'in xml'ine etiket (e.g., 10 çoğu veri setleri için iyi bir değer) Söylemek için ERDDAP™ Yerel önbellek boyutunu sınırlamak için (i.e., tüm uzak dosyaları önbellekmeye çalışmayın) .

    10. Eğer bu halk içinde çalışırsa görün ERDDAP . İlk defa unutmayın ERDDAP™ Veri kümesini yükler, yüklemek için uzun bir zaman alır, çünkü ERDDAP™ Tüm veri dosyalarını indirmek ve okumak gerekir.

Veri kümesi büyük bir ızgara veri dosyaları koleksiyonuysa, bu çok uzun bir süre alacak ve pratik olmayacaktır. Bazı durumlarda, ızgara veri dosyaları için, ERDDAP™ Gerekli bilgileri alabilir (e.g., bir ızgara veri dosyasındaki veriler için zaman noktası) Dosya adından ve bu problemden kaçın. See See See See Aggregation via File Names .

  1. Seçmeli olarak (Ancak özellikle EDDTable'den itibaren datasets) , anlayabilirsiniz nThreads Dataset'e şarkı söylemek için etiket ERDDAP Bir kullanıcının veri talebini yanıt verirken 1'den fazla ip kullanmak. Bu, meydana gelen gecikmenin etkilerini en aza indirir ERDDAP™ veri dosyaları veri dosyaları okuyun (Uzak Uzak Uzak Uzak Uzak) AWS S3 kovalar yerel önbellek ve (Belki belki belki de belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki) Onları bastırmak.

AWS S3 Açık Veri

Bir parçası olarak NOAA " Büyük Veri Programı , NOAA AWS de dahil olmak üzere beş kuruluşla ortaklıklar var, “ Buluttaki önemli gözlemlerin ve model çıktılarının kopyalarını doğrudan daha fazla dağıtım gerektiren verilere izin vermek için Bulut'taki potansiyel avantajları keşfedin.” AWS, elde ettiği veri setlerini içerir NOAA Programının bir parçası olarak kamu erişimi büyük bir koleksiyona sunmak için AWS S3 hakkında açık veriler Herhangi bir bilgisayardan, bir Amazon hesaplama örneği olsun (Kiralık bir bilgisayar) AWS ağı veya kendi PC'niz herhangi bir ağ üzerinde. Aşağıdaki örnek, halka açık erişilebilir bir veri kümesi ile çalıştığınızı varsayıyor.

Bir AWS S3hopper'da Dosyalar Erişim

Özel bir S3 veri kovası için, kovanın sahibi size kovaya erişmenizi sağlamalıdır. (AWS belgelerini görün.)

Her durumda, bir AWS hesabına ihtiyacınız olacak çünkü AWS SDK for the Java (hangisi hangisi hangisi hangisi hangisi hangisi hangisi hangisidir? ERDDAP™ Bir kovan içeriği hakkında bilgi almak için kullanılır) AWS hesabı bilgilerini gerektirir. (Bu aşağıda daha fazlası)

ERDDAP™ Sadece AWS S3 kovalarına erişebilirseniz [<Önbelleği Url> (#cache Fromurl) (veya<DosyaDir>) belirli bir formatta: https://bucketName.s3.aws-region.amazonaws.com/prefix/
nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede?

  • KovaName, kova adının kısa formudur, e.g. noaa-goes17 .
  • Aws-region, e.g., us-east-1, masalardan birinde "Region" sütunundan biridir. AWS Service Endpoints Kova aslında nerede bulunur.
  • Ön ek isteğe bağlı. Eğer mevcutsa, bitmelidir '/' .

Örneğin,https://noaa-goes17.s3.us-east-1.amazonaws.com/ABI-L1b-RadC/
Bu URL formatı, AWS S3 önerilerinden biridir: bakınız Bir Kovaya Erişim ve Bu açıklama eklerin . ERDDAP™ Kova URL'yi ve opsiyonel ön eki bir URL'yi imzalamanız için bir URL'ye birleştirmeniz gerekir<Önbellek FromUrl> (veya<DosyaDir>) dosyaların bulunduğu yer.

Test Public AWS S3hoppers

Kamu kovaları için, tarayıcınızda AWS S3 rehberinin kova URL'sini test edebilirsiniz, e.g., https://noaa-goes17.s3.us-east-1.amazonaws.com Eğer kova URL doğru ve uygunsa ERDDAP , sahip olduğu bir XML belgesi geri dönecek (kısmi kısmi kısmi kısmi kısmi kısmi) Bu kovanın içeriğinin listesi. Ne yazık ki, tam URL (i.e., kova URL artı ek) İşte bu ERDDAP™ Verilen bir veri kümesi için bir tarayıcıda çalışmaz. AWS, tarayıcınızda kolayca bir kova hiyerarşisini taramak için bir sistem sunmuyor. (Eğer bu yanlışsa, lütfen e-posta Chris. John at noaa.gov. Aksi takdirde, Amazon, lütfen bunun için destek ekleyin!)

Bir Kovan İçeriklerini Görmek

S3 kovalar genellikle birkaç dosya kategorisini içerir, birkaç sahte subdirectories, ki bu birkaç tane olabilir ERDDAP™ datasets. Bunu yapmak için ERDDAP™ datasets, başlangıç dizisini bilmeniz gerekir<Önbellek FromUrl> (veya<DosyaDir>) ve dosyaların alt kümesini tanımlayan dosya isimlerinin formatı. Bir tarayıcıdaki bir kovanın tüm içeriğini görmeye çalışırsanız, S3 size ilk 1000 dosyayı gösterecektir, bu yetersizdir. Şu anda, bir kovanın tüm içeriğini görüntülemek için en iyi yol bir kova yapmak içindir. EDDTable FromFileNames Dataset (PC'nizin ERDDAP™ Ve / veya kamuoyunda ERDDAP ) Ayrıca size dizi yapısını göz önünde bulundurmak ve dosyaları indirmek için kolay bir yol sunar. The The The The The The The The<DosyaDir> bunun için yukarıdaki URL olacak, e.g.,https://noaa-goes17.s3.us-east-1.amazonaws.com. \[ Neden AWS S3 bir AWS hesabı olmadan bunu yapmak için hızlı ve kolay bir yol sunuyor? \] Bunu PC'mde olmayan bir Amazon ağı üzerinde yaptığım zaman, Amazon'un bir hileye yanıtı yavaşlattığı görülüyor. (Yaklaşık 100 (??) chunk için dosyaları) İlk birkaç chunks sonra (chunk başına 1000 dosya) indirilir. Kovaların büyük sayıda dosyaya sahip olabileceğinden beri (Noaa-goes17 26 milyon) Bir kovanın tüm içeriklerini alın EDDTable FromFileNames birkaç saat (E.g., 12!) bitirmek için. \[ Amazon, bu doğru mu?! \]

Bir EDDTable FromFileNames Dataset with an AWS S3hopper

Eğer bir kova adınız varsa, ancak S3 kovasındaki dosyaların bir listesini veya kovadaki ilgili dosyaların yerini tanımlayan eki varsa, EDDTableFileNames dataset yapmak için aşağıdaki talimatları kullanın, böylece S3 kovanın hiyerarşisini kullanarak S3 kovanın hiyerarşisini arayabilirsiniz. ERDDAP " "files" Sistem.

  1. Bir AWS Hesabı açın ERDDAP™ Kullanımı kullanır AWS SDK için Java AWS'den kova bilgi almak için, bu yüzden yapmanız gerekir Bir AWS hesabı oluşturmak ve etkinleştirin . Bu oldukça büyük bir iş, öğrenmek için birçok şey ile.  
  2. AWS Credentials'inizi nereye koyun ERDDAP™ Onları bulabilir. Talimatları takip et AWS Credentials ve Kalkınma Bölgesi'ni kurdu Bu yüzden ERDDAP™ (Özellikle, AWS SDK için Java ) AWS kimliklerinizi bulabilir ve kullanabilirsiniz. If if if if if if if if if if if if if if if if if if if if if if if if if if if if if ERDDAP™ Güvenilirliği bulamazsın, bir göreceksiniz java.lang. YasadışıArgumentException: Profil dosyası çıplak hata olamaz ERDDAP 's log.txt file.

Linux ve Mac OS için Hint: Bilgi dosyası, Tomcat'ı çalışan kullanıcının ev dizininde olmalıdır (ve ERDDAP ) (Bu paragraf için, kullanıcı=tomcat) Bir dosyada ~ /.aws/credentials . Bunu varsaymayın - aslında cd'yi kullanın - işletim sisteminin kullanıcı=tomcat için düşündüğü yerde bulmak için. Eğer mevcut değilse rehberi oluşturun. Ayrıca, kimlik dosyasını yerinde koyduktan sonra, dosya için kullanıcı ve grubun tomcat olduğundan emin olun ve sonra dosyanın sadece kullanıcı için okuma olduğundan emin olmak için chmod 400 kimlik kullanın.

  1. Kova URL'yi kovalayın formatı bu format ERDDAP™ Gereklilik gerektirir E.g., https://noaa-goes17.s3.us-east-1.amazonaws.com Ve (Halk kovaları için) Bunu bir tarayıcıda test edin, bu kovanın içeriğine kısmi bir liste sahip bir XML belgesi döndürür.  
  2. Use Use Use Use Use GenrateDatasetsX ml Bir yaratmak için EDDTable FromFileNames dataset:
    • Starting directory için, bu sözlüğü kullanın: \\\ On TheFly, BucketUrl * Örneğin, \\\* FromOnTheFly,https://noaa-goes17.s3.us-east-1.amazonaws.com/
    • Dosya adı regex? .\*
    • Emekli mi? Gerçek gerçek gerçek gerçek gerçek gerçek gerçek gerçek
    • reload HerNMinutes? 10080
    • infoUrl ??https://registry.opendata.aws/noaa-goes/
    • kurum? NOAA
    • Özet? Hiçbir şey hiçbir şey hiçbir şey yok hiçbir şey yok hiçbir şey yok ( ERDDAP™ İyi bir özet otomatik olarak yaratacaktır.)
    • Başlık? Hiçbir şey hiçbir şey hiçbir şey yok hiçbir şey yok hiçbir şey yok ( ERDDAP™ İyi bir başlık otomatik olarak yaratacaktır.) Her zamanki gibi, doğrulığı doğrulamak ve verileri kullanarak geliştirmeleri için ortaya çıkan XML'i düzenlemeniz gerekir. datasets.xml .
  3. Yukarıdaki talimatları takip ederseniz ve veri kümesini yüklerseniz ERDDAP EDTable FromFiles veri setini yarattınız. Örnek olarak, herkes için AWS Open Data kovalarından dosyaları taramak ve indirmek için daha kolay hale getirmek için, EDDTableFromFileNames datasets (List at the list at the list at the list at the list at the list at the list at the list at the list at the list at the AWS Open Data chases, we have created EDDTableFromFileNames datasets (see the list at the list at the list at the list at the list at the list at the list at the list at the list at the list at the list at the list at the list at the list at the list at the list at the list at the list at the list at the list at the list at the list at the list at the list at the list at the list at the list at the list at the list at the list at the list at the list at the list at the list at the list at the list at the list at the AWS Open datasets datasets. https://upwell.pfeg.noaa.gov/erddap/search/index.html?searchFor=awsS3Files\_ ) Neredeyse tüm bunlar için AWS S3 Açık Veri Kovaları . \[ Dahil etmediğimiz birkaç kova, kök dizindeki çok sayıda dosyayı içeriyor. (Daha fazlası makul miktarda zaman içinde indirilebilir) , veya halkın erişimine izin vermeyin (Hepsi halk olmak zorunda değil mi?) Ya da İstekli Pays Kovaları (E.g., Sentinel) . \]
    Eğer tıkırsanız "files" Bu veri kümelerinden biri için bağlantı, bu S3 kovasındaki dizi ağacı ve dosyaları gözleyebilirsiniz. Çünkü yol\\\*OnTheFly EDDTable FromFiles çalışır, bu dizi listeleri her zaman mükemmel bir şekilde günceldir çünkü ERDDAP™ Onları at-the-fly. Seri ağacı gerçek bir dosya adına tıkla ve dosya adına tıklayınsanız, ERDDAP™ Talebinizi AWS S3'e yönlendirecektir, böylece dosyayı doğrudan AWS'den indirebilirsiniz. Daha sonra bu dosyayı inceleyebilirsiniz.

Sorun? Eğer EDDTable FromFiles yük yapmazsa ERDDAP™ (DasDds) Bir hata mesajı için log.txt dosyasına bakın. Eğer görürseniz java.lang. YasadışıArgumentException: Profil dosyası null hatası olamaz, sorun AWS SDK'nın AWS SDK'sı olduğudır. Java (tarafından kullanılan ERDDAP ) Bilgi dosyasını bulamaz. Yukarıdaki kimlik talimatları görün.  

AWS'nin sadece insanların halka açık bir kovanın içeriğini görüntülemek için bir tarayıcı kullanmasına izin vermediği talihsizdir.

Sonra yapabilirsiniz ERDDAP™ Kullanıcılara dosyalarıdaki verilere erişim sağlayan veri setleri.
Talimatlara bakın ERDDAP™ S3 Kovas (Yukarıda yukarıda yukarıda yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda Yukarıda) . Örnek EDDTable Yukarıda yaptığınız veri kümesi için, dizideki dizi ve dosya isimleri ile ilgili biraz fikre sahipseniz, üst düzey dizin isimlerinin üst düzey dizi isimlerinin üst düzey dizi isimlerin isimlerinin açık hale gelir. (e.g., ABI-L1b-RadC) Ne olursa olsun ERDDAP™ Ayrı veri setleri arayacaktır. Birlikte çalıştığınız kova benzer olabilir. Daha sonra ayrı veri kümeleri oluşturmaya devam edebilirsiniz ERDDAP™ Bu veri kümelerinin her biri için, kullanarak, e.g., https://noaa-goes17.s3.us-east-1.amazonaws.com/ABI-L1b-RadC/
Sanki<Önbellek FromUrl>. Ne yazık ki, bu özel örnek için, tüm kovadaki veri kümeleri seviye 1 veya seviye 2 veri setleri gibi görünüyor. ERDDAP™ Özellikle iyi değil Çünkü veri kümesi farklı boyutlarda kullanan daha karmaşık bir değişken koleksiyonudur.  

NcML dosyaları

NcML dosyaları, bir veya daha orijinal kaynağa değişiklikler belirtmenize izin verir NetCDF (v3 veya v4) .nc .grib, .bufr, veya .hdf (v4 veya v5) dosyaları ve sonra dosyaları var ERDDAP™ tedavi etmek .nc Kaynak dosyaları olarak ml dosyaları. ERDDAP™ Datasets kabul edecek .nc ml dosyaları ne zaman her zaman .nc dosyalar bekleniyor. NcML dosyaları MUST'un uzatması var .nc ml. Görün bakalım, Unidata NcML belgeleri . NcML yararlıdır çünkü onunla bazı şeyler yapabilirsiniz (Örneğin, bir koleksiyondaki farklı dosyalara farklı değişiklikler yapmak, belirli bir değerle bir dosyayı bir dosyaya eklemek dahil olmak üzere) Ama bunu yapamazsın ERDDAP " datasets.xml .

  • Bir şeye değişim .nc ml dosyasının sonModified zamanı, veri setinin yeniden yüklendiği zaman dosyanın yeniden yüklenmesine neden olacaktır, ancak altta değişiklikler. .nc Veri dosyaları doğrudan fark edilmeyecek.
  • Hint: NcML is\*çok çok çok çok çok çok çok çok çok\*NcML dosyasında bazı eşyaların siparişine hassas. NcML'yi belirtilen sırayla bir dizi talimatları belirtildiği gibi, kaynak dosyalarını değiştirme niyetiyle (NcML dosyasının başlangıç / üstünde) Hedef dosyalarına girin (Devlet NcML dosyasının sonunda / alt kısmında) .

NcML için bir alternatif, NetCDF Operatörler ( NCO ) . Büyük fark NcML'nin, uçuşta değişiklikler yapmak için bir sistem olmasıdır. (Bu nedenle kaynak dosyaları değiştirilemez) Ancak, NCO Değişiklikler yapmak için kullanılabilir (veya yeni versiyonları) dosyalar. Her ikisi de NCO Ve NcML çok esnektir ve dosyaları düşünebileceğiniz hemen hemen herhangi bir değişiklik yapmanıza izin verir. Her ikisi için, tam olarak ne yapmak istediğinizi anlamaya zor olabilir - benzer örnekler için web kontrol edin. Her ikisi de netCDF hazırlamak için kullanışlı araçlardır ve HDF Kullanım için dosyaları ERDDAP Özellikle, neyin ötesinde değişiklikler yapmak için ERDDAP ‘S manipülasyon sistemi yapabilir.

Örnek #1: Single Value ile Zaman Boyut Ekle İşte bir an .nc Yeni bir dış boyut oluşturan ml dosyası (Zaman, 1 değerle: 1041379200) Ve A2003001.L3m\_DAY\_PIC\_pic\_4km .nc :

    <netcdf xmlns='https://www.unidata.ucar.edu/namespaces/netcdf/ncml-2.2'>
<variable name='time' type='int' shape='time' />
<aggregation dimName='time' type='joinNew'>
<variableAgg name='pic'/>
<netcdf location='A2003001.L3m\\_DAY\\_PIC\\_pic\\_4km.nc' coordValue='1041379200'/>
</aggregation>
</netcdf>

Örnek #2: Mevcut Zaman Değerini Değiştirin Bazen kaynak .nc Dosya zaten zaman boyutu ve zaman değeri var, ancak değer yanlış (Sizin amaçlarınız için) . Bu Bu Bu Bu .nc ml dosyası şöyle diyor: ""19810825230030-NCEI" adlı veri dosyası için. "time" Ancak, 1970'ten bu yana “saniyeler” olmak ve 367588800 olmak için zaman değerini belirlemek.

    <netcdf xmlns='https://www.unidata.ucar.edu/namespaces/netcdf/ncml-2.2'
location="19810825230030-NCEI-L3C\\_GHRSST-SSTskin-AVHRR\\_Pathfinder-PFV5.3\\_NOAA07\\_G\\_1981237\\_day-v02.0-fv01.0.nc">
<variable name="time">
<attribute name='units' value='seconds since 1970-01-01T00:00:00Z' />
<values>367588800</values>
</variable>
</netcdf>

NetCDF Operatörler ( NCO )

"The netCDF Operators ( NCO ) netCDF kullanan bir düzine standalone, komut satırı programı oluşturur \[ v3 veya v4 \] , HDF \[ v4 veya v5 \] , \[ .grib, .bufr, \] ve/veya DAP Giriş olarak dosyalar, sonra çalışır (e.g., yeni veriler, hesaplama istatistikleri, baskı, hiperslab, manipül metadatata) Ve sonuçları metin, ikili veya netCDF formatlarında ekran veya dosyalara yazdırın. NCO Kafeded bilimsel verilerin analizi. Kabuk-command tarzı NCO Kullanıcıların dosyaları interaktif olarak manipüle etmelerine ve analiz etmelerine izin verir veya daha yüksek seviyeli programlama ortamlarından bazı üst düzeylerden kaçınan ifade senaryoları ile.” (Bundan sonra NCO ana ana ana ana ana ana ana ana ana ana ana ana ana ana sayfa) .

Bir alternatif için NCO Is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is NcML . Büyük fark NcML'nin, uçuşta değişiklikler yapmak için bir sistem olmasıdır. (Bu nedenle kaynak dosyaları değiştirilemez) Ancak, NCO Değişiklikler yapmak için kullanılabilir (veya yeni versiyonları) dosyalar. Her ikisi de NCO Ve NcML çok esnektir ve dosyaları düşünebileceğiniz hemen hemen herhangi bir değişiklik yapmanıza izin verir. Her ikisi için, tam olarak ne yapmak istediğinizi anlamaya zor olabilir - benzer örnekler için web kontrol edin. Her ikisi de netCDF hazırlamak için kullanışlı araçlardır ve HDF Kullanım için dosyaları ERDDAP Özellikle, neyin ötesinde değişiklikler yapmak için ERDDAP ‘S manipülasyon sistemi yapabilir.

Örneğin, kullanabilirsiniz NCO Başlangıçta tutarlı olmayan bir grup dosyalarda zaman değişkeninin birimleri yapmak. Ya da kullanabilirsiniz NCO Uygulamaya başvurmak için scale\_factor ve add\_offset Bir grup dosyada nerede scale\_factor ve add\_offset Farklı kaynak dosyalarında farklı değerlere sahiptir. (Ya da şimdi bu sorunlarla başa çıkabilirsiniz ERDDAP™ via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via EDDGrid FromNcFilesUnpacked Ama bu bir değişkendir EDDGrid NcFiles hangi paketler paketlenmiş verileri ve düşük düzeyde zaman değerlerini standartlaştırmak için farklı bir koleksiyon dosyaları ile uğraşmak için standartlaştırır scale\_factor s ve add\_offset , veya farklı zaman birimleri.)

NCO Free ve Open Source Software hangi kullanır GPL 3.0 Lisans.

Örnek #1: Birimler Konistent EDDGrid FromFiles and EDDTable Dosyalar, belirli bir değişken için birimlerin tüm dosyalarda aynı olduğu konusunda ısrar ediyor. Bazı dosyalar önemsizse (Fonksiyonel olarak işlevsel olarak değil) Diğerlerinden farklı (örneğin, zaman birimleri). 1970-01-01 00:00:00 UTC'den bu yana "saniyeler" karşı "seconds since 1970-01-01T00:00:00Z" , kullanabilirsin NCO " ncatted Tüm dosyalardaki birimleri değiştirmek için aynı olmak için nco/ncatted -a birimleri,time,o,c, 1970-01-01T00:00Z' \* .nc
\[ EDTable'te böyle birçok sorun için... Files datasets, artık kullanabilirsiniz standardize standardize What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What Söylemek için ERDDAP Kaynak dosyalarını, okudukları gibi standartlaştırmak için ERDDAP . \]

Bir Dataset boyutuna sınırları

Aşağıda "2 milyar" için birçok referans göreceksiniz. Daha doğru, bu 2,147,483,647 için bir referanstır. (2^31-1) 32-bit'in imzaladığı en yüksek değeri budur. Bazı bilgisayar dillerinde, örneğin Java (hangisi hangisi hangisi hangisi hangisi hangisi hangisi hangisidir? ERDDAP™ yazılıdır.) Bu, birçok veri yapısı için kullanılabilir en büyük veri türüdür (Örneğin, bir dizinin büyüklüğü) .

String değerleri için (Örneğin, değişken isimler, özellikler isimleri, String özellikleri değerleri ve String veri değerleri için) , String başına en fazla sayıda karakter ERDDAP™ ~2 milyar. Ancak neredeyse tüm durumlarda, bir String makul büyüklükte bir büyüklükteki küçük veya büyük sorunlar olacaktır. (e.g., değişken isimler ve özellikler isimleri için 80 karakter ve çoğu String özellikleri değerleri ve veri değerleri için 255 karakter) . Örneğin, uzun değişken isimleri gösteren web sayfaları garip bir şekilde geniş ve uzun değişken isimler yanıt dosyasının limitini aşacaklarsa kopyalanacaktır.

Hubded datasets için:

  • En yüksek sayı axisVariable s -2 milyar. En yüksek sayı dataVariable s -2 milyar. Ancak bir veri kümesinin >100 değişkeni varsa, kullanıcıların kullanması için cumbersome olacaktır. Ve bir veri kümesinin >1 milyon değişkeni varsa, sunucunuz çok fazla fiziksel hafızaya ihtiyaç duyacaktır ve başka sorunlar olacaktır.
  • Her boyutta maksimum boyut ( axisVariable ) ~2 milyar değer.
  • Sanırım en fazla hücre sayısı (Tüm boyut boyutlarının ürünü) Sınırsızdır, ancak ~9e18 olabilir.

Tellar veri setleri için:

  • En yüksek sayı dataVariable s -2 milyar. Ancak bir veri kümesinin >100 değişkeni varsa, kullanıcıların kullanması için cumbersome olacaktır. Ve bir veri kümesinin >1 milyon değişkeni varsa, sunucunuz çok fazla fiziksel hafızaya ihtiyaç duyacaktır ve başka sorunlar olacaktır.
  • Maksimum kaynak sayısı (Örneğin, dosyalar) Bu agred edilebilir ~2 milyardır.
  • Bazı durumlarda, bireysel bir kaynaktan en fazla sayıda satır (Örneğin, bir dosya, ama bir veritabanı değil) ~2 milyar satır.
  • Başka sınırları olduğunu düşünmüyorum.

Hem ızgara hem de tabular veri setleri için, tek bir istekte bir kullanıcı tarafından talep edilebilecek alt setin büyüklüğü üzerinde bazı iç sınırlar vardır. (Sık sık bir şeyin >2 milyarı veya ~9e18 ile ilgili bir şey) Ancak, bir kullanıcının dosyayı özgü sınırları vurması çok daha olasıdır.

  • NetCDF Versiyon 3 .nc dosyalar 2GB'ye kadar sınırlıdır. (Eğer bu gerçekten biri için bir sorunsa, bilmeme izin verin: Destek ekleyebilirim çünkü NetCDF Versiyon 3 .nc 64-bit uzatma veya NetCDF 4. Versiyonu önemli ölçüde artıracak, ancak sonsuz değil.)
  • Tarayıcılar sadece ~500 MB veriden sonra kaza yapar, bu yüzden ERDDAP™ Yanıtı sınırlar .htmlTable ~400MB'ye veri talep eder.
  • Birçok veri analizi programı benzer sınırları vardır (Örneğin, bir boyutunun maksimum büyüklüğü genellikle -2 milyar değer) Ancak, dosya tipine özgü sınırların etrafında almak için sıkı çalışmanın bir nedeni yoktur.
  • Dosyaya özgü sınırlar gerçekten büyük miktarda veri için naif talepleri önlemek için yararlıdır (Örneğin, "tüm bu veri kümesi" veri setinin 20TB veri kümesine sahip olduğunda.) Bu, indirmek için hafta veya aylar alır. Daha uzun indirme, daha büyük olasılıkla çeşitli nedenlerle başarısız olacaktır.
  • Dosyaya özgü sınırları, kullanıcının makul büyüklükteki alt kümelerle uğraşmak için zorladığı için yararlıdır. (Örneğin, bir zaman noktasından gelen verilerle büyük bir ızgara veri kümesi ile ilgili her bir zaman noktasından gelen dosyalarla ilgili olarak) .  

ACD-1.3

Biz Biz Biz (Özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle GenrateDatasetsX ml ) Şu anda şu anda tavsiyede bulunun ACD version 1.3 2015 yılının başlarında onaylanan ve küresel Sözleşmelerdeki "ACD-1.3" olarak anılıyor. Önce önce ERDDAP™ 1.62 (Haziran 2015'te serbest bırakıldı.) , ERDDAP™ Orijinal, sürüm 1.0'ı kullandı, NetCDF Dataset Discovery için Katkı Bu, " Unidata Dataset Discovery v1.0" Küresel Sözleşmelerde ve Metadata\_Conventions özellikler.

Veri setleriniz ACDD'nin önceki sürümlerini kullanıyorsa, ACD-1.3'e geçiş yaptığınızda RECOMMEND'yi kullanıyoruz. Zor değil. ACD-1.3 sürüm 1.0 ile oldukça geri uyumludur. Değiştirin, tüm veri kümeleri için (hariç hariç hariç hariç hariç hariç EDDGrid Erddap ve EDDTableErddap veri kümelerinden) :

  1. Yeni deprecated globali Kaldırın Metadata\_Conventions Ekleyerek (Ya da mevcut olanı değiştirerek Metadata\_Conventions Özellikler)
        <att name="Metadata\\_Conventions">null</att>  

Dataset'in global< addAttributes >.   2. Eğer veri kümesinin küresel çapta bir Sözleşme özelliği varsa< addAttributes >, tüm " Unidata Dataset Discovery v1.0" "ACD-1.3" referansları. Eğer veri kümesinin küresel küresel olarak bir Sözleşmeye sahip olmaması durumunda< addAttributes > Sonra ACD-1.3'e atıfta bulunan birini ekleyin. Örneğin,

        <att name="Conventions">COARDS, CF-1.6, ACDD-1.3</att>  

  3. Veri kümesinin küresel bir globale sahip olması durumunda standard\_name\_vocabulary Özellikler, lütfen değer biçimini örneğin değiştirmek,

        <att name="standard\\_name\\_vocabulary">CF Standard Name Table v65</att>  

Referans eski bir versiyona ise CF standart isim masası . Muhtemelen mevcut sürüme geçmek için iyi bir fikirdir (65, bunu yazarken) Ancak yeni standart isimler bu masaya daha sonraki versiyonlarla eklenir, ancak eski standart isimler nadiren ayırt edilir ve asla kaldırılamaz.   4. ACD-1.0, küresel nitelikler dahil olmasına rağmen creator\_name , creator\_email , creator\_url , GenrateDatasetsX ml Onları bir zamana kadar otomatik olarak eklemedi ERDDAP™ v1.50. Bu önemli bilgidir:

  • creator\_name Kullanıcıların veri kümesinin yaratıcısını bilmelerini sağlar.
  • creator\_email Kullanıcıların veri kümesinin yaratıcısıyla temas için tercih edilen e-posta adresini söyler, örneğin veri kümesi hakkında sorular varsa.
  • creator\_url Kullanıcılara yaratıcı hakkında daha fazla bilgi edinmek için bir yol verir.
  • ERDDAP™ FGDC ve ISO 19115-2/19139 her veri kümesi için tüm bu bilgileri kullanır. Bu belgeler genellikle dış arama hizmetleri tarafından kullanılır.

Lütfen bu özellikleri veri kümesinin globaline ekleyin< addAttributes >.

        <att name="creator\\_name">NOAA NMFS SWFSC ERD</att>  
<att name="creator\\_email">erd.data@noaa.gov</att>
<att name="creator\\_url">https://www.pfeg.noaa.gov</att>

İşte bu. Umarım bu çok zor değildi.  

Zarr

2.25 ERDDAP™ Yerel olarak okuyabilirsiniz Zarr dosyaları kullanarak EDDTable FromNcFiles ve EDDGrid FromNcFiles .

(Ağustos 2019 itibariyle) Kolayca yanlış olabiliriz ama henüz ikna değiliz Zarr Daha küçük chunkslara veri dosyalarını kıran veya benzer sistemler, sorununa büyük çözümlerdir. ERDDAP™ Amazon AWS S3 gibi bulut hizmetlerinde depolanan verileri okuyun. Zarr, çeşitli durumlarda faydalılığını gösteren harika bir teknolojidir, sadece emin değiliz ERDDAP +S3 bu durumlardan biri olacaktır. Çoğu zaman şunu söylüyoruz: Zarr'daki tüm verileri depolamak için çaba harcamadan önce, aslında daha iyi bir çözüm olup olmadığını görmek için bazı testler yapalım.

Buluttaki verilere erişen sorunlar geçncy (İlk önce veri almak için gecikme) ve dosya düzeyinde erişim (Blok düzeyinde erişim yerine) . Zarr dosya düzeyinde erişim problemini çözer, ancak geç kalmışlık hakkında hiçbir şey yapmaz. Sadece dosyayı indirmek için karşılaştırıldığında (Bu nedenle blok seviyesinde erişimli erişimli bir dosya olarak okunabilir) Zarr, geçncy problemini bile abartabilir, çünkü Zarr ile bir dosya okumak şimdi dosyanın farklı kısımlarını okumak için birkaç çağrı içerir. (Her biri kendi lag ile) . latency problemi talepleri paralelleştirerek çözülebilir, ancak bu daha yüksek seviyeli bir çözüm, Zarr'a bağımlı değildir.

Ve Zarr ile (İlişkili veritabanı ile) Bir veri dosyasına sahip olmanın rahatlığını kolayca doğrulayabileceğiniz basit, tek bir dosya olarak kaybederiz veya bir kopyasını indirin.

ERDDAP™ (v2 olarak) Bir URL kaynağından yerel bir önbellek korumak için bir sistem var (E.g., S3) (bkz.<Önbellek FromUrl> ve<ÖnbellGB> (#cache Fromurl) ). Ve yeni<nThreads> (#nthreads) Sonlu problemi yüksek düzeyde veri retrieval'ı paralelleştirerek en aza indirmeli.<Önbellek FromUrl> birçok senaryo için çok iyi çalışıyor gibi görünüyor. (Ne kadar faydalı olduğundan emin değiliz<nThreads> daha fazla test olmadandır.) İyi bir ağ bağlantısı olan bir AWS örneğinde zamanlama testleri yapmadığımızı kabul ediyoruz, ancak çeşitli uzak URL dosyalarıyla başarıyla test ettik. Ve ERDDAP "<önbellek> herhangi bir veri dosyası ile çalışır (E.g., .nc , .hdf .csv, .jsonlCSV ) Ama dışsal olarak sıkıştırılırsa bile, (E.g., .gz ) dosyaların herhangi bir değişikliği olmadan (e.g., onları Zarr koleksiyonları olarak yeniden yaz) .

Muhtemelen farklı senaryoların farklı çözümleri tercih etmesi muhtemeldir, e.g., sadece bir dosyanın bir kısmını bir kez okumak gerekir (Zarr kazanacak) Ancak, vs. bir kez bir dosyanın tamamını okumanız gerekir, vs. bir dosyanın bir kısmını veya tamamını defalarca okumak gerekir (<Önbellek FromUrl> kazanacak.

Çoğu zaman şunu söylüyoruz: Zarr'daki tüm verileri depolamak için çaba harcamadan önce, aslında daha iyi bir çözüm olup olmadığını görmek için bazı testler yapalım.


Tür Listesi Datasets

Doğru veri kümesini seçmenize yardımcı olmanız gerekiyorsa, bakınız Dataset Type seçmek .

Veri setleri türleri iki kategoriye girer. ( Neden? )

EDDGrid

  • ** EDDGrid ** Veri setleri şebekelenmiş verileri idare eder.
  • In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In EDDGrid Veri setleri, veri değişkenleri çok boyutlu veriler dizisidir.
  • Her boyut için bir eksen değişkeni var. Axis değişkenleri MUST, veri değişkenlerinin onları kullandığı sırada belirtilmiştir.
  • In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In EDDGrid veri setleri, tüm veri değişkenleri MUST kullanımı (Paylaş Paylaş Paylaş) Tüm eksen değişkenleri. ( Neden? Ne yapmazlarsa? ) New in New in New in New ERDDAP™ version 2.29.0 with EDDGrid NcFiles, tüm eksen değişkenlerini desteklemeyen veri değişkenleri için deneysel destektir. (Ya da bazıları aynı veri kümesindeki 1D ve 2D verileri olarak adlandırdı.) .
  • Sorted Dimension Values - Her şeyde EDDGrid Veri kümesleri, her boyut MUST sıralanmış bir sırayla olabilir (Yükselmek veya inmek) . Her biri düzensiz bir şekilde uzayılabilir. Bir bağ yoktur. Bu, bir zorunluluktur CF metadata standart . Herhangi bir boyut değerleri sıralanmış bir şekilde değilse, veri kümesi yüklenemez ve yüklenemez. ERDDAP™ Giriş dosyasında ilk değersiz değeri tanımlayacak, Büyük Parent Yönetmeny /loglar /log.txt .

Birkaç alt sınıf ek kısıtlamalara sahiptir (muhtemelen, EDDGrid AggregateExistingDimension, dışsal (çoğul, ilk) boyutunun yükselmesini gerektirir.

Unsorted boyut değerleri neredeyse her zaman kaynak veri kümesi ile bir problem göstermektedir. Bu en yaygın olarak yanlış bir isim veya uygunsuz bir dosya aggregasyona dahil edildiğinde meydana gelir, bu da değersiz bir zaman boyutuna yol açar. Bu sorunu çözmek için, hata mesajını bu konuda görmek ERDDAP™ Giriş.txt dosyası, zaman değerini bulmak için. Ardından, ilgili dosyayı bulmak için kaynak dosyalarına bakın (veya bir tane daha sonra veya bir tane) Bu, aggregasyona ait değildir.

  • Daha tam açıklamayı gör EDDGrid veri modeli .
  • The The The The The The The The EDDGrid Dataset türleri şunlardır:
  • Bütün Hepsi EDDGrid Veri setleri bir nThreads ayarını destekler, bu da söyler ERDDAP™ Bir isteke cevap verirken kaç tane ip kullanmak. Bakın, nThreads Detaylar için belgeler.  

EDDTable

  • EDDTable Datasets tabular verilerini ele alır.
  • Tabular verileri satırlar ve sütunlar ile veritabanı benzeri bir tablo olarak temsil edilebilir. Her sütun (Bir veri değişkeni) Bir isim, bir dizi özellik var ve sadece bir tür veri depolar. Her satırın bir gözlemi vardır (veya ilgili değerlerin grubu) . Veri kaynağı farklı bir veri yapısı, daha karmaşık bir veri yapısı ve / veya birden fazla veri dosyasına sahip olabilir, ancak ERDDAP™ Kaynak verilerini bir veritabanı benzeri masaya oturtabilmek için verileri bir tabular veri kümesi olarak kullanıcılara bir tabular veri kümesi olarak sunmak gerekir. ERDDAP .
  • Daha tam açıklamayı gör EDDTable veri modeli .
  • EDDTable veri kümesi türleri şunlardır:
    • EDDTable FromAllDatasets Tüm diğer veri kümeleri hakkında bilgi sahibi olan daha yüksek seviyeli bir veri kümesidir. ERDDAP .
    • EDDTable FromAsciiFiles Koma-, sekme-, yarıkol- veya uzay destekli tabular ASCII veri dosyalarından toplam veriler.
    • EDDTable FromAsciiService EDTable FromAsciiService'in tüm süper sınıfı ... sınıflar.
    • EDDTable FromAsciiServiceNOS Bazılarından veri işlemek NOAA NOS web hizmetleri.
    • EDDTable From ISSoFiles Bir grup yerel ses dosyalarından veri toplar.
    • EDDTable From From AwsX mlFiles Otomatik Hava İstasyonu'nun bir setinden elde edilen veriler (AWS) XML dosyaları.
    • EDDTable FromCassandra Bir Cassandra masasından tabular verileri ele alalım.
    • EDDTable FromColumnarAsciiFiles Telelar ASCII veri dosyalarından sabit geniş veri sütunları ile toplam veriler.
    • EDDTable FromDapSequence Komplike verileri işliyor DAP dizi sunucuları.
    • EDDTable FromDatabase Bir veritabanı masasından tabular verileri idare eder.
    • EDDTable From From EDDGrid Bir EDDTable veri kümesi oluşturmanıza izin verin EDDGrid dataset.
    • EDDTable FromErddap Uzaktan gelen bir uzaktan kumandan verileri işliyor ERDDAP .
    • EDDTable FromFileNames Sunucunun dosya sisteminde bir dosya grubu hakkında bilgiden bir veri kümesi oluşturur, ancak dosyaların içinde verilere hizmet etmez.
    • EDDTable FromFiles Tüm EDDTable'ün süper sınıfı...Files sınıfları.
    • EDDTable FromHttpGet Is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is ERDDAP “Veri ithalatı için tek sistem de veri ihracat.
    • EDDTable From From Hyrax Dosyalar (DEPRECATED) Paylaşılan boyutlarda sunulan birkaç değişkenle dosyaların toplam verileri Hyrax OPeNDAP server sunucusu .
    • EDDTable FromInvalidCRAFiles Kombinasyon verileri NetCDF (v3 veya v4) .nc Belirli, geçersiz, CF DSG Contiguous Ragged Dizileri (CRA) dosyaları. Her ne kadar olsa da olsa da olsa da olsa da rağmen ERDDAP™ Bu dosya türünü destekler, kimsenin kullanmaya başlamaması gereken geçersiz bir dosya türüdür. Şu anda bu dosyayı kullanan gruplar, kullanmak için şiddetle teşvik edilir ERDDAP™ Geçerli CF DSG CRA dosyaları oluşturmak ve bu dosyaları kullanmayı bırakın.
    • EDDTable FromJsonlCSVFiles Kombinasyon verileri JSON Lines CSV dosyaları .
    • EDDTable FromMultidimNcFiles Kombinasyon verileri NetCDF (v3 veya v4) .nc Paylaşılan boyutlarla birkaç değişken ile dosyaları.
    • EDDTable FromMqtttt MQTT mesajlarına dayanan bir veri kümesi inşa eder. Belgelerin özel bir sayfada olduğunu unutmayın. Not that there are a lot of benzerlikler to EDDTable FromHttpGet .
    • EDDTable FromNcFiles Kombinasyon verileri NetCDF (v3 veya v4) .nc Paylaşılan boyutlarda birkaç değişken ile dosyaları. Bu veri kümesini mevcut veri setleri için kullanmaya devam etmek iyidir, ancak EDDTableFromMultidimNcFiles'i kullanmayı tavsiye ettiğimiz yeni veri setleri için.
    • EDDTable FromNcCFFiles Kombinasyon verileri NetCDF (v3 veya v4) .nc Dosya formatlarından birini kullanan dosyalar CF Discrete Sampling Geometries (DSG) Kongreler. Ancak çok boyutlu CF DSG varyantlarından birini kullanan dosyalar için, kullanın EDDTable FromMultidimNcFiles Bunun yerine.
    • EDDTable FromNccsvFiles Kombinasyon verileri NCCSV ASCII .csv dosyaları.
    • EDDTable FromNOS (DEPRECATED) NOS XML sunucularından tabular verileri ele alalım.
    • EDDTable FromOBIS OBIS sunucularından tabular verileri ele alalım.
    • EDDTable FromParquetFiles Veriler verileri işliyor Parke Park .
    • EDDTable From From SOS Komplike verileri işliyor SOS sunucular.
    • EDDTable FromThreddsFiles (DEPRECATED) Paylaşılan boyutlarda sunulan birkaç değişkenle dosyaların toplam verileri THREDDS OPeNDAP server sunucusu .
    • EDDTable From From WFS Dosyalar (DEPRECATED) Tüm verilerin yerel bir kopyasını bir andan yapar ArcGIS MapServer WFS Sunucu böylece veriler daha sonra hızlı bir şekilde yeniden korunmuş olabilir ERDDAP™ Kullanıcılar.
    • EDDTableAggregateRows EDDTable veri setini bir EDDTable veri setlerinden yapabilir.
    • EDDTableCopy Birçok EDDTable veri setlerinin yerel bir kopyasını yapabilir ve sonra verileri yerel kopyadan hızlıca kurtarabilirsiniz.

Dataset Tiplerinin Detaylı Açıklamaları

EDDGrid FromDap

** EDDGrid FromDap** şebeke değişkenlerini işten çıkarın DAP sunucular.

  • Güçlü bir şekilde kullanmayı öneriyoruz GenrateDatasets X ml programı Kaba bir taslak yapmak için datasets.xml Bu veri kümesi için chunk. Bunu düzeltmeniz veya kendi XMLinizi kendi bir XML oluşturmak için ihtiyacınız olan bilgileri toplayabilirsiniz EDDGrid Kaynak veri kümesine bakarak DDS ve DAS dosyaları tarayıcınızda (.das ve .dds ekleyerek sourceUrl Örneğin, https://thredds1.pfeg.noaa.gov/thredds/dodsC/satellite/BA/ssta/5day.dds ) .  
  • EDDGrid FromDap, herhangi bir çok boyutlu değişkenden veri alabilir DAP veri sunucusu. (Daha önce, EDDGrid Dap, "grid" olarak belirlenen değişkenlerle sınırlıydı, ancak bu artık bir zorunluluk değil.)
     
  • Sorted Dimension Values - Her boyut için değerler MUST sıralanmış sırayla (Yükselmek veya inmek) . Değerler düzensiz bir şekilde uzayılabilir. Bir bağ yoktur. Bu, bir zorunluluktur CF metadata standart . Herhangi bir boyut değerleri sıralanmış bir şekilde değilse, veri kümesi yüklenemez ve yüklenemez. ERDDAP™ Giriş dosyasında ilk değersiz değeri tanımlayacak, Büyük Parent Yönetmeny /loglar /log.txt .

Unsorted boyut değerleri neredeyse her zaman kaynak veri kümesi ile bir problem göstermektedir. Bu en yaygın olarak yanlış bir isim veya uygunsuz bir dosya aggregasyona dahil edildiğinde meydana gelir, bu da değersiz bir zaman boyutuna yol açar. Bu sorunu çözmek için, hata mesajını bu konuda görmek ERDDAP™ Giriş.txt dosyası, zaman değerini bulmak için. Ardından, ilgili dosyayı bulmak için kaynak dosyalarına bakın (veya bir tane daha sonra veya bir tane) Bu, aggregasyona ait değildir.

EDDGrid FromDap iskelet XML

    <dataset type="EDDGridFromDap" datasetID\="..." active\="..." >
      <sourceUrl>...</sourceUrl>
      <accessibleTo>...</accessibleTo> <!-- 0 or 1 -->
      <graphsAccessibleTo>auto|public</graphsAccessibleTo> <!-- 0 or 1 -->
      <accessibleViaWMS>...</accessibleViaWMS> <!-- 0 or 1 -->
      <reloadEveryNMinutes>...</reloadEveryNMinutes> <!-- 0 or 1 -->
      <updateEveryNMillis>...</updateEveryNMillis> <!-- 0 or 1.
        For EDDGridFromDap, this gets the remote .dds and then gets the new
        leftmost (first) dimension values. -->
      <defaultDataQuery>...</defaultDataQuery> <!-- 0 or 1 -->
      <defaultGraphQuery>...</defaultGraphQuery> <!-- 0 or 1 -->
      <nThreads>...</nThreads> <!-- 0 or 1 -->
      <dimensionValuesInMemory>...</dimensionValuesInMemory> <!-- 0 or 1 -->
      <fgdcFile>...</fgdcFile> <!-- 0 or 1 -->
      <iso19115File>...</iso19115File> <!-- 0 or 1 -->
      <onChange>...</onChange> <!-- 0 or more -->
      <addAttributes>...</addAttributes> <!-- 0 or 1 -->
      <axisVariable>...</axisVariable> <!-- 1 or more -->
      <dataVariable>...</dataVariable> <!-- 1 or more -->
    </dataset>

 

EDDGrid FromEDDTable

** EDDGrid FromEDDTable** Bir EDDTable tabular veri kümesini bir aya dönüştürmenize izin verin EDDGrid gridded dataset. Unutmayın ki bunu unutmayın ERDDAP™ Datasets'e ya da gridded datasets (Alt sınıfları EDDGrid ) veya tabular datasets (EDDTable) .

  • Normal olarak, eğer ızgara verilere sahipseniz, sadece bir dizi kurdunuz EDDGrid Dataset doğrudan. Bazen bu mümkün değil, örneğin, bir ilişkisel veritabanında depolanan verilere sahip olduğunuzda, ERDDAP™ Sadece EDDTable FromDatabase aracılığıyla erişebilir. EDDGrid FromEDDTable sınıfı bu durumu tedavi etmenizi sağlar.  
  • Açıkçası, alttaki EDDTable veri kümesindeki veriler olmalıdır (Temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel temelde temel) Ağlanmış veriler, ancak bir tabu formunda. Örneğin, EDDTable veri kümesi CTD verilere sahip olabilir: Doğu ve kuzeye doğru ölçümler, birkaç kez. derinlikler her zaman aynı olduğundan, EDDGrid InEDDTable bir zaman ve temel EDDTable veri kümesi aracılığıyla verileri erişen bir derinlik boyutu oluşturabilir.  
  • GenrateDatasets X ml - Güçlü bir şekilde kullanmayı öneriyoruz GenrateDatasets X ml programı Kaba bir taslak yapmak için datasets.xml Bu veri kümesi için chunk. Kaba taslağı geliştirmek için ihtiyacınız olan bilgileri toplayabilirsiniz.  
  • Kaynak Attributes – Diğer tüm veri kümeleriyle olduğu gibi, EDDGrid Table'den itibaren küresel kaynakAttributes ve küresel küresel küresel küresel küresel küresel küresel addAttributes (belirtilmiş durumda belirtilen datasets.xml ) Ancak bu, küresel birleşik hale getirmek için birleştirilmiştir. Attributes, hangi kullanıcıların gördüğü. Küresel kaynakAttributes için, EDDGrid FromEDDTable, küresel birleştirilmiş kullanır Altta yatan EDDTable veri kümesine katkıda bulunur. (Bir dakikalığına bunu düşünüyorsanız, mantıklıdır.)

Benzer şekilde, her biri için axisVariable 'lar ve dataVariable " addAttributes , EDDGrid FromEDDTable değişkenin birleştirilmesini kullanır Attributes from the underent EDDTable dataset as the EDDGrid FromEDDTable değişkenin kaynağıAttributes. (Bir dakikalığına bunu düşünüyorsanız, mantıklıdır.)

Sonuç olarak, EDDTable iyi metadata varsa, the EDDGrid FromEDDTable genellikle çok az ihtiyaç duyuyor addAttributes metadata - sadece birkaç tane burada ve orada.

  • dataVariable s. axisVariable s - Alttaki EDDTable sadece sadece dataVariable s. An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An An EDDGrid FromEDDTable dataset'ten bazıları olacak axisVariable s (EDTable'ün bazılarından yaratıldı dataVariable s) ve bazıları dataVariable s (Kalan EDDTable'den yaratıldı dataVariable s) . GenrateDatasetsX ml EDTable'in hangi olduğu hakkında bir tahmin yapacak dataVariable s olmalı EDDGrid FromEDDTable axisVariable s, ama sadece bir tahmin. GenrateDatasetsXml'in çıktısını belirtmeniz gerekir dataVariable s olacak axisVariable s, ve hangi sırayla.  

  • eksenler Altta yatan EDDTable hakkında söyleyecek bir şey yok EDDGrid FromEDDTable, mümkün değerlerin axisVariable Veri kümesinin ızgara versiyonunda, bu yüzden her biri için bu bilgiyi sağlıyorsunuz. axisVariable Bu özelliklerden biri aracılığıyla:

    • ekseniValues - bir değer listesini belirtmenize izin verir. Örneğin, <Adı="axisValues" type=" doubleList" \>2, 2.5, 3, 3.5, 4</t> Not the use of a veri türü artı kelime Listesi. Ayrıca, liste türü (Örneğin, çifte) , MUST verileri eşleştirir EDTable'deki değişkenin türü ve EDDGrid FromEDDTable datasets.
    • ekseniValuesStartStride Stop - başlangıç, stride ve değerleri belirterek düzenli olarak uzaylanmış değerlerin bir sırasını belirtmenizi sağlar. İşte yukarıdaki eksenValues örneği ile eşdeğer olan bir örnek: <Adı="axisValuesStartStride Stop" type=" doubleList" \>2, 0,5, 4</t> Yine, bir liste veri türü kullanımını unutmayın. Ayrıca, liste türü (Örneğin, çifte) , MUST verileri eşleştirir EDTable'deki değişkenin türü ve EDDGrid FromEDDTable datasets.  

Güncellemeler - Tıpkı bir yol olduğu gibi EDDGrid Başlangıçta EDDTable'den eksenleri belirlemek için, aynı zamanda güvenilir bir yol yoktur. EDDGrid EDTable'ten, eksenleri değiştiği zaman EDTable'den emin olmak için (Özellikle, zaman değişkeni için yeni değerler olduğunda) . Şu anda, tek çözüm, eksenel özellikleri değiştirir datasets.xml Ve veri kümesini yeniden yükleyin. Örneğin, bir senaryo yazabilirsiniz

  1. Arama Arama datasets.xml Çünkü datasetID =" DatasetID " " "" Bu yüzden doğru veri kümesi ile çalışıyorsunuz.
  2. Arama Arama datasets.xml Bir sonraki olay için Değişkenler KaynakName
    Bu yüzden doğru değişken ile çalışıyorsunuz.
  3. Arama Arama datasets.xml Bir sonraki olay için
        <att name="axisValuesStartStrideStop" type="doubleList">  

Bu yüzden etiketin başlangıç pozisyonunu biliyorsunuz. 4. Arama Arama datasets.xml Bir sonraki olay için

        </att>  

Bu yüzden eksen değerlerinin son konumunu biliyorsunuz. 5. Eski başlangıcı değiştirin, stride, yeni değerler ile değerleri durdurun. 6. İletişime geçin Bayrak URL Dataset'in anlatmak için ERDDAP™ Veri kümesini yeniden yüklemek.

Bu ideal değil, ama işe yarıyor.  

  • Hassasiyet - When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When EDDGrid FromEDDTable, bir kullanıcının veri isteğine yanıt verir, EDDTable yanıt masasından EDDTable yanıt masasına bir dizi veri hareket eder EDDGrid yanıt ızgara. Bunu yapmak için, masadaki belirli bir sıradaki “kahka” değerlerinin ızgaradaki bazı eksen değerlerin bir kombinasyonunu ele alması gerekir. Sayısal veri türleri için, iki değer eşit olup olmadığını belirlemek kolaydır. Ama yüzler ve çiftler için, bu, yüz sayılarının korkunç problemini getiriyor tam olarak eşleşen değil . (Örneğin, 0.199999996 karşı 0.2) . To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To To (Deneyin) bununla başa çıkmak, EDDGrid FromTable, herhangi biri için hassas bir özellik belirtmenizi sağlar axisVariable s, aynı olması gereken toplam dekimal sayılarını belirtir.
    • Örneğin,<Adı="precision" type="int">5</t>
    • Farklı veri değişkenleri türleri için, farklı varsayılan hassasiyet değerleri vardır. Varsayılanler genellikle uygun. Değillerse, farklı değerleri belirtmek zorundasınız.
    • For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For axisVariable İşte bu Zaman veya zaman Stamp değişkenleri Ancak varsayılan tam hassastır (kesin bir maç) .
    • For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For axisVariable Yüzler, varsayılan hassasiyet 5.
    • For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For axisVariable Çiftleri olan varsayılan hassasiyet 9.
    • For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For axisVariable tam anlamıyla veri türleri olan s, EDDGrid FromEDDTable hassas özelliği görmezden gelir ve her zaman tam hassas kullanır (kesin bir maç) .  
    • WARNING! Bir tabut verisinin bir ızgara verilere dönüştürülmesi ne zaman yapılırsa, eğer EDDGrid FromEDDTable, beklenenden birine bir EDDTable "kahkadar" değeri eşleştiremez. EDDGrid FromEDDTable eksen değerleri, EDDGrid FromEDDTable sessizce (Hiçbir hata yok) Masanın bu sıralarından gelen verileri atlar. Örneğin, başka veriler olabilir (Ağda değil) EDTable veri setinde. (Ve eğer stride > 1, açık değil EDDGrid Table'ten hangi eksen değerleri istenen değerlerdir ve bu kişiler strid nedeniyle atılacaklardır.) Yani, hassas değerler çok yüksekse, kullanıcı geçerli veri değerleri aslında var olduğunda veri yanıtında eksik değerleri görecek.

Tersine, eğer hassas değerler çok düşük ayarlarsa, EDDTable "kahkadar" değerleri eşleşmemelidir EDDGrid FromEDDTable eksen değerleri, (Ergun) Maç.

Bu potansiyel sorunlar korkunç, çünkü kullanıcı yanlış verileri alır (veya eksik değerler) Doğru verileri elde ettikleri zaman (veya en azından bir hata mesajı) . Bu bir kusur değildir EDDGrid Table'den. EDDGrid Table bu sorunu çözemez. Sorun, tabuların verilerinin ızgara verilere dönüştürülmesinde doğaldır (Diğer varsayımlar yapılmadığı sürece, burada yapılamazlar) . Size kalmış, ERDDAP™ yönetici, yönetici, test your test your test your test test your test your test test your test test your test your test your test EDDGrid FromEDDTable iyice Bu potansiyel problemlerden kaçınmak için hassas değerlerin ayarlandığını sağlamak.

boşlukThreshold

  • boşlukThreshold – Bu çok sıradışı bir veri kümesidir. Yapılabilecek sorgu türleri, (Tarafından) Birbiri EDDGrid Dataset (Çeşitlilik ve strides ile ilgili axisVariable s) Yapılabilecek sorgu türlerinden çok farklıdır. (Tarafından) Bir EDDTable veri kümesi (Sadece bazı değişkenlerin aralıkları ile ilgili) , performansı EDDGrid InEDDTable veri setleri, yapılan tam isteke ve alt EDDTable veri kümesinin hızına bağlı olarak büyük ölçüde değişecektir. Bir stride değeri olan talepler için > 1, EDDGrid FromEDDTable, nispeten büyük bir veri için alt yatan EDDTable'e sorabilir (strid=1) Ve sonra sonuçları aracılığıyla takip edin, verileri bazı satırlardan tut ve diğerlerinden gelen verileri atlayın. İhtiyaç duyduğu verileri elde etmek için çok fazla veri üzerinden sift almak zorundaysa, istek daha uzun süre dolduracaktır.

If if if if if if if if if if if if if if if if if if if if if if if if if if if if if EDDGrid FromEDDTable, büyük boşluklar olacağını söyleyebilir (istenmeyen verilerin satırları ile) İstenen verilerle satırlar arasında, EDDGrid FromEDDTable, büyük bir talep yerine alt alttaki EDDTable'e kadar birkaç alt soru yapmayı seçebilir, böylece büyük boşluklarda istenmeyen verilerin sıralarını atlayabilir. Bu karar için hassasiyet, boşlukThreshold değeri tarafından belirlenen şekilde kontrol edilir.<boşlukThreshold> etiketi (varsayılan=1000 kaynak verileri) . Set boşlukThreshold to a small number will lead to the dataset making (Genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genellikle genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel) Daha subrequests. Set boşlukThreshold to a larger number will lead to the dataset making (Genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genellikle genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel olarak genel) Daha az subrequests.

Eğer boşlukThreshold çok küçükse, EDDGrid InEDDTable daha yavaş çalışacak çünkü birden fazla talebin yükü biraz fazla veri elde ederek kurtarılan zamandan daha büyük olacaktır. Eğer boşlukThreshold çok büyük ayarlarsa, EDDGrid InEDDTable daha yavaş çalışacak, çünkü çok fazla veri EDDTable'den alınır, sadece discarded olacaktır. (Goldilocks’un keşfettiği gibi, orta "sadece doğru".) EDDTable veri setlerinin farklı türleri için ek büyük ölçüde değişir, bu yüzden veri setiniz için gerçek en iyi ayarın deney yoluyla olduğunu bilmek için tek yol. Ama varsayılanya çok fazla yanlış yapışmazsınız.

Basit bir örnek: Bir düşünün EDDGrid FromTable with just one axisVariable (Zaman, 100.000 büyüklüğünde) Bir tane dataVariable (Sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık ısı sıcaklık ısı sıcaklık ısı sıcaklık ısı sıcaklık ısı sıcaklık ısı sıcaklık sıcaklık ısı sıcaklık sıcaklık ısı sıcaklık sıcaklık ısı sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık ısı sıcaklık sıcaklık ısı sıcaklık ısı sıcaklık ısı sıcaklık sıcaklık sıcaklık sıcaklık ısı sıcaklık ısı sıcaklık ısı sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık sıcaklık ısı) Ve 1000'in varsayılan boşlukThreshold of 1000.

  • Bir kullanıcı sıcaklık talep ederse \[ 0💯5000 \] Ancak stride 100, bu yüzden boşluk büyüklüğü 99, bu boşlukThreshold'den daha az. Bu yüzden EDDGrid Table'den itibaren talep için gerekli olan tüm veriler için EDDTable'e sadece bir istek sağlayacaktır. (Sıcaklık eşdeğer \[ 0:5000 \] ) Ve ihtiyaç duymadığı tüm veri sıralarını atlayın.
  • Bir kullanıcı sıcaklık talep ederse \[ 0:2500:5000 \] Bu stride 2500, bu yüzden boşluk büyüklüğü 2499'dur, ki bu boşluktan daha büyüktür. Bu yüzden EDDGrid Table'den EDDTable'e ayrı istekler yapacaktır ki bu da sıcaklıkla eşdeğerdir. \[ 0 0 0 0 \] , sıcaklık \[ 2500 \] , sıcaklık \[ 5000 5000 5000 \] .

Boşluk boyutunun hesaplanması, birden fazla eksen olduğunda daha karmaşıktır.

Her kullanıcı isteği için, EDDGrid FromEDDTable, bununla ilgili teşhis mesajları bu konuda Giriş.txt Dosya.

  • Eğer<logLevel> (#log seviyesi) in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in datasets.xml Bilgi için ayarlanır, bu gibi bir mesaj \* nOuterAxes=1 of 4 nOuterRequests=22 nOuterAxes=0, boşlukThreshold aşılmıyor ve sadece bir istek EDDTable'e yapılacaktır. Eğer nOuterAxes>0, boşlukThreshold aşıldı ve nOuterRequests, solun en çok nOuterAxes'in her birine karşılık gelen EDTable'e yapılacaktır. Örneğin, veri kümesi 4'e sahipse axisVariable s ve dataVariable Doğuward gibi \[ Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman \] \[ Entitude \] \[ Uzunlık \] \[ derinlik derinliği \] Sol en sol (İlk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce) eksen değişkeni zamandır.
  • If if if if if if if if if if if if if if if if if if if if if if if if if if if if if<logLevel> in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in datasets.xml Her şeye ayarlanır, ek bilgiler log.txt dosyasına yazılır.  

EDDGrid FromEDDTable iskelet XML

 <dataset type="EDDGridFromEDDTable" datasetID\="..." active\="..." >
    <accessibleTo>...</accessibleTo> <!-- 0 or 1 -->
    <graphsAccessibleTo>auto|public</graphsAccessibleTo> <!-- 0 or 1 -->
    <accessibleViaWMS>...</accessibleViaWMS> <!-- 0 or 1 -->
    <reloadEveryNMinutes>...</reloadEveryNMinutes> <!-- 0 or 1 -->
    <updateEveryNMillis>...</updateEveryNMillis> <!-- 0 or 1.
     For EDDGridFromEDDTable, this only works if the underlying EDDTable
     supports updateEveryNMillis. -->
    <gapThreshold>...</gapThreshold> <!-- 0 or 1. The default is 1000. >
    <defaultDataQuery>...</defaultDataQuery> <!-- 0 or 1 -->
    <defaultGraphQuery>...</defaultGraphQuery> <!-- 0 or 1 -->
    <fgdcFile>...</fgdcFile> <!-- 0 or 1 -->
    <iso19115File>...</iso19115File> <!-- 0 or 1 -->
    <onChange>...</onChange> <!-- 0 or more -->
    <addAttributes>...</addAttributes> <!-- 0 or 1 -->
    <axisVariable>...</axisVariable> <!-- 1 or more -->
    <dataVariable>...</dataVariable> <!-- 1 or more -->
    <dataset>...</dataset> <!-- The underlying source EDDTable dataset. -->
 </dataset>

EDD* ERDDAP

** EDDGrid FromErddap** Uzak bir veri uzaktan kumandan ERDDAP™ sunucu. EDDTable FromErddap Uzaktan gelen bir uzaktan kumandan verileri işliyor ERDDAP™ sunucu.

  • EDDGrid Erddap ve EDDTableErddap, diğer tüm veri kümelerinden farklı davranır ERDDAP .
  • Diğer veri kümeleri gibi, bu veriler kaynaktan veri setleri hakkında bilgi alır ve hafızada tutar.
  • Diğer veri kümeleri gibi, ne zaman ERDDAP™ Datasets için aramalar, Data Access Formunu Gösteriyor ( * datasetID * .html) , veya Make A Graph formunu gösterir ( * datasetID * .graph) , ERDDAP™ bellekte olan veri kümesi hakkında bilgi kullanır.
  • EDDGrid Erddap ve EDDTableErddap'tan itibaren temeldir Ağlar/kırıcılar / Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of Of ERDDAP CPU kullanımını verimli bir şekilde dağıtan s, (Çoğunlukla harita yapmak için) , hafıza kullanımı, veri kümesi depolama ve büyük bir veri merkezinin bant genişliği kullanımı.

Redirect

  • Diğer veri kümelerinin aksine, ne zaman ERDDAP™ Bu veri kümelerinden veri veya görüntüler için bir istek alın, ERDDAP yönlendirmeler Uzaktaki istek ERDDAP™ sunucu. Sonuç:
    • Bu çok verimli (CPU, hafıza ve bant) Çünkü aksi takdirde
      1. Kompozit ERDDAP™ İsteki diğerine göndermesi gerekir ERDDAP™ (Hangi zaman alır) .
      2. Diğeri ERDDAP™ Veriler elde etmek, reform yapmak ve verileri kompozitiğe iletmek zorundadır. ERDDAP .
      3. Kompozit ERDDAP™ Verileri almak zorunda (Gürültü kullanarak) Ama reform onu (CPU ve hafıza) , ve verileri kullanıcıya iletir (Gürültü kullanarak) . İstekyi yönlendirerek ve diğerine izin vererek ERDDAP™ Yanıtı doğrudan kullanıcıya göndermek için, kompozit ERDDAP™ Aslında talep üzerine CPU zamanı, bellek veya bant genişliği yok.
    • Yönlendirme, istemci yazılımlarından bağımsız olarak kullanıcıya şeffafdır. (Bir tarayıcı veya başka herhangi bir yazılım veya komut satırı aracı) .
  • Size söyleyebilirsin ERDDAP™ Herhangi bir kullanıcı isteklerini ayarlayarak yönlendirmek<> yönlendirme</redirect>, ama bu çoğu ...Erddap veri set türü tipinden (Özellikle, ön uçta yüklemeyi azaltın ERDDAP™ Uzak / geri dönüş ERDDAP ) .    

Abonelik Aboneliği

Normalde, bir zaman EDDGrid Erddap ve EDDTableErddap'tan itibaren (yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden) yüklediğinize bağlı olarak ERDDAP Uzak veri kümesine uzaktan bir abonelik eklemeye çalışıyorlar ERDDAP 's email/URL abonelik sistemi. Bu şekilde, uzaktan veri kümesi ne zaman değişir, uzaktan ERDDAP™ Bağlantılar setDataset Bayrak URL Sizin üzerinizde ERDDAP™ Bu yüzden yerel veri kümesi ASAP'ı yeniden yükleniyor ve böylece yerel veri kümesi her zaman uzaktan veri kümesini mükemmel bir şekilde güncelliyor ve mimiksliyor. Yani, bu ilk kez, abonelik onayladığınız bir e-posta isteği elde etmelisiniz. Ancak, eğer yerel ERDDAP™ Bir e-posta gönderemez veya eğer uzaktan ERDDAP 's email/URL abonelik sistemi aktif değil, uzaktan e-postalmalısın ERDDAP™ yönetici ve bu s/he manuel olarak eklemek istiyor [<Değişim> (#onchange) ...</onChange> Tüm veri kümelerinizi aramanız için ilgili veri kümelerinin hepsine etiketler setDataset Bayrak URLs . Görmenize bakın ERDDAP™ SetDataset listesi için günlük rapor Bayrak URLs, ancak sadece olanları gönderin EDDGrid Erddap ve EDDTableErddap veri kümelerinden uzaklara ERDDAP™ yönetici.

Bu çalışmıyor mu? Yerel veri setleriniz uzaktan veri setleriyle senkronizede kalmıyor mu? Birkaç şey bu sistem için doğru bir şekilde çalışmalıdır, böylece veri setlerinizin güncel kalması gerekir. Bu şeylerin her birini sırayla kontrol edin:

  1. Senin Senin Senin ERDDAP™ E-postaları gönderebilmeli. Kurulumnızda e-posta ayarlarını görün.xml.
  2. Genel olarak (Ama her zaman değil) , senin ERDDAP "<BaseUrl> ve<BaseHtttpsUrl> bir port numarasına sahip değil (E.g., :8080, :8443) . Eğer yaparlarsa, bir tane kullanın passpasspasspasspass limanı Url'dan kaldırmak için.
  3. Kurulumunuzda.xml,<AboneToRemoteErddapDataset> doğru ayarlanmış olmalıdır.
  4. Yerel EDD’niz olduğunda...Erddap veri setinden yeniden yükleniyor, uzaklara bir istek göndermelidir. ERDDAP™ Uzak veri kümesine abone olmak. Bu olup olmadığını görmek için log.txt'e bakın.
  5. Abonelik talebini doğrulamanızı istediğiniz bir e-posta almalısınız.
  6. Abonelik talebini doğrulamak için bu e-postadaki bağlantıya tıklamanız gerekir.
  7. Uzak ERDDAP™ Geçerliliğin başarılı olduğunu söylemeli. Herhangi bir zamanda uzaktan bir e-posta talep edebilirsiniz ERDDAP™ Beklemek ve geçerli aboneliklerinizin bir listesi ile. Forma bakın uzaktanErddapBase Url /erddap/.s/list.html .
  8. Uzak veri seti değiştiği zaman değişir (e.g., ek veriler alın) Uzak ERDDAP™ BayrakURL ile senin üzerinde iletişim kurmaya çalışmalı ERDDAP . Bunu kontrol edemezsiniz, ancak uzaktan kumandanı isteyebilirsiniz ERDDAP™ Bunu kontrol etmek için.
  9. Senin Senin Senin ERDDAP™ Bu bayrakURL'yi kurmak için bir istek almalı. Girişinize bakın.txt for "setDatasetFlag.txt?" request (s) Ve taleplerle ilişkili bir hata mesajı olup olmadığını görün.
  10. Senin Senin Senin ERDDAP™ Daha sonra bu veri kümesini yeniden yüklemeye çalışmalıdır (Belki hemen değil, ama ASAP) .  

Up-to-date max (Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman) ??

EDDGrid /Table FromErddap datasets, kaynak veri setinin kaynak veri setinin bulunduğu her kaynak veri kümesi hakkında depolanan bilgilerini yalnızca değiştirir. "reload"ed Ve bazı metadata değişiklikleri (e.g., zaman değişkeni actual\_range ) Böylece bir abonelik bildirimini oluşturun. Kaynak veri kümesi, değişiklikleri sık sık etkileyen veriler varsa (Örneğin, her saniye yeni veriler) ve kullanır "update" Orta verilere sık sık değişiklikleri fark etmek için sistem, temel verilere, EDDGrid /Table FromErddap, bir sonraki veri setine "reload" olana kadar bu sık değişiklikler hakkında bilgilendirilmeyecek, bu yüzden EDDGrid /Table FromErddap mükemmel bir şekilde güncel olmayacak. Bu sorunu kaynak veri kümesinin değiştirerek en aza edebilirsiniz<Reload EveryNMinutes> daha küçük bir değere (60? 15?) Bu yüzden anlatmak için daha fazla abonelik bildirimleri var EDDGrid /Table FromErddap to update its information about the source dataset.

Ya da, veri yönetimi sisteminiz kaynak veri kümesinin yeni veri kümesinin ne zaman olduğunu biliyorsa (e.g., bir veri dosyasını yere kopyalayan bir senaryo aracılığıyla) Ve eğer bu süper sıkılmıyorsa (e.g., her 5 dakika veya daha az sık) Daha iyi bir çözüm var:

  1. Don't use<HerNMillis> kaynak veri kümesini güncel tutmak için güncellemek.
  2. Kaynağı dataset'in setlerini ayarlayın<Reload EveryNMinutes> daha büyük bir sayı için (1440?) .
  3. Senaryo kaynağı veri kümesinin temasına geçti Bayrak URL Hemen sonra yeni bir veri dosyasını yere kopyalar.  

Bu, kaynak veri kümesine mükemmel bir şekilde devam edecek ve bir abonelik bildirim üretmesine neden olacaktır, bu da gönderilecek. EDDGrid /Table FromErddap dataset. Bu, liderlik edecek EDDGrid /Table FromErddap dataset to be perfect up-to-date (İyi, yeni verilerin 5 saniye içinde ekleniyor) . Ve tüm bunlar verimli bir şekilde yapılır (gereksiz veri kümesi reloads olmadan) .  

Hayır hayır hayır addAttributes , axisVariable Ya da dataVariable

Diğer veri kümelerinin aksine, EDDTable FromErddap and EDDGrid Erddap veri setlerinden itibaren globale izin vermiyor<addAttributes>,< axisVariable Vegt; veya< dataVariable Vegt; bölümler içinde datasets.xml Bu veri kümesi için. Sorun şu ki, bu tutarsızlıklara yol açacaktır:

  1. Diyelim ki izin verildi ve yeni bir küresel özellik eklediniz.
  2. Bir kullanıcı size sorduğunda ERDDAP™ Küresel özellikler için, yeni özellikler görünecektir.
  3. Ama bir kullanıcı size sorduğunda ERDDAP™ Bir veri dosyası için, your ERDDAP™ İsteki kaynağa yönlendirmek ERDDAP . İşte bu ERDDAP™ Yeni özellikten habersizdir. Yani metadata ile bir veri dosyası yaratırsa, e.g., a .nc Dosya, metadata yeni niteliklere sahip olmayacak.

İki iş var:

  1. Convince the admin of the source ERDDAP™ Metadata'ya istediğiniz değişiklikleri yapmak.
  2. EDTable FromErddap yerine, kullanın EDDTable FromDapSequence . Ya da yerine EDDGrid Erddap'tan, kullanımı EDDGrid FromDap . Bu EDD türleri, uzaktan uzaktan bir veri kümesine uzaktan bağlantı kurmanıza izin verir ERDDAP™ (Ancak veri talepleri yönlendirme olmadan) Ve küresel olarak dahil olmanızı sağlarlar<addAttributes>,< axisVariable Vegt; veya< dataVariable Vegt; bölümler içinde datasets.xml . Başka bir fark: uzaktan veri setine manuel olarak abone olmanız gerekir, bu yüzden veri setinizde ERDDAP™ bilgilendirilecektir. (aracılığıyla Bayrak URL ) Uzak veri kümesine değişiklikler olduğunda. Böylece, uzaktan bir veri kümesine bağlanmak yerine yeni bir veri kümesi yaratıyorsunuz.  

Diğer notlar

  • Güvenlik nedenleri için, EDDGrid Erddap ve EDDTableErddap'tan itibaren hiçbir şey desteklemiyor<erişilebilirTo> (#accessibleto) etiket ve giriş gerektiren uzaktan veri setleriyle kullanılamaz (çünkü kullanırlar).<erişilebilirTo> (#accessibleto) ). See See See See ERDDAP " güvenlik sistemi Bazı kullanıcılara erişim kısıtlamak için.  
  • Starting with with ERDDAP™ v2.10, EDDGrid Erddap ve EDDTable FromErddap support the [[değiştir | kaynağı değiştir]<erişilebilirViaFiles> (#accessibleviafiles) etiket. Diğer veri kümelerinden farklı olarak, varsayılan doğrudur, ancak veri setinin dosyaları yalnızca kaynak veri kümesinin aynı zamanda kaynak veri kümesinin de olması durumunda erişilebilirViaFiles olacaktır.<erişilebilirViaFiles> gerçekliğe ayarlanmıştır.  
  • Kullanabilirsiniz GenrateDatasets X ml programı Bunu yapmak için datasets.xml Bu tür veri kümesi için chunk. Ancak bu tür veri kümelerini kolayca el ile yapabilirsiniz.  

EDDGrid Erddap iskeletinden XML

  • EDDGrid Erddap iskeletinden XML veri kümesi çok basittir, çünkü niyet sadece zaten kullanıma uygun olan uzaktan veri setini taklit etmektir. ERDDAP :

  <dataset type="EDDGridFromErddap" datasetID\="..." active\="..." >
      <sourceUrl>...</sourceUrl>
      <accessibleTo>...</accessibleTo> <!-- 0 or 1 -->
      <accessibleViaFiles>...</accessibleViaFiles> <!-- 0 or 1, default=true. -->
      <graphsAccessibleTo>auto|public</graphsAccessibleTo> <!-- 0 or 1 -->
      <reloadEveryNMinutes>...</reloadEveryNMinutes> <!-- 0 or 1 -->
      <updateEveryNMillis>...</updateEveryNMillis> <!-- 0 or 1
        For EDDGridFromErddap, this gets the remote .dds and then gets
        the new leftmost (first) dimension values. -->
      <defaultDataQuery>...</defaultDataQuery> <!-- 0 or 1 -->
      <defaultGraphQuery>...</defaultGraphQuery> <!-- 0 or 1 -->
      <nThreads>...</nThreads> <!-- 0 or 1 -->
      <dimensionValuesInMemory>...</dimensionValuesInMemory> <!-- 0 or 1 -->
      <fgdcFile>...</fgdcFile> <!-- 0 or 1 -->
      <iso19115File>...</iso19115File> <!-- 0 or 1 -->
      <onChange>...</onChange> <!-- 0 or more -->
      <redirect>true(default)|false</redirect> <!-- 0 or 1; -->
  </dataset>

EDDTable FromErddap iskelet XML

  • EDTable FromErddap veri seti için iskelet XML çok basit, çünkü niyet sadece uzaktan veri setini taklit etmek, bu zaten kullanıma uygun olan uzaktan veri setini taklit etmek. ERDDAP :

  <dataset type="EDDTableFromErddap" datasetID\="..." active\="..." >
      <sourceUrl>...</sourceUrl>
      <accessibleTo>...</accessibleTo> <!-- 0 or 1 -->
      <graphsAccessibleTo>auto|public</graphsAccessibleTo> <!-- 0 or 1 -->
      <reloadEveryNMinutes>...</reloadEveryNMinutes> <!-- 0 or 1 -->
      <defaultDataQuery>...</defaultDataQuery> <!-- 0 or 1 -->
      <defaultGraphQuery>...</defaultGraphQuery> <!-- 0 or 1 -->
      <addVariablesWhere>...</addVariablesWhere> <!-- 0 or 1 -->
      <fgdcFile>...</fgdcFile> <!-- 0 or 1 -->
      <iso19115File>...</iso19115File> <!-- 0 or 1 -->
      <onChange>...</onChange> <!-- 0 or more -->
      <redirect>true(default)|false</redirect> <!-- 0 or 1; -->
  </dataset>

EDDGrid FromEtopo

** EDDGrid FromEtopo** Sadece hizmet eder ETOPO1 Global 1-Minute Gridded Elevation Data Set (Buz Yüzeyi, ağ kayıtlı, ikili, 2byte int: etopo1\_ice\_g\_i2 .zip ) hangisi ile dağıtılır ERDDAP .

  • Sadece iki datasetID s are supported for EDDGrid Etopo'dan, bu yüzden verileri uzun süreli değerlere erişebileceğiniz -180 ila 180 veya uzun değer 0 ila 360.
  • Hiçbir alt etiket yoktur, çünkü veriler zaten içeride tarif edilir ERDDAP .
  • Yani iki seçenek için EDDGrid FromEtopo datasets are are (kelimenin tam anlamıyla tam anlamıyla tam anlamıyla kelimenin tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla kelimenin tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla kelimenin tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla tam anlamıyla doğru) :
      <!-- etopo180 serves the data from longitude -180 to 180 -->
<dataset type="EDDGridFromEtopo" datasetID="etopo180" />
<!-- etopo360 serves the data from longitude 0 to 360 -->
<dataset type="EDDGridFromEtopo" datasetID="etopo360" />

EDDGrid FromFiles

** EDDGrid FromFiles** Her şeyin süper sınıfıdır EDDGrid From...Files classes. Kullanamazsınız EDDGrid Files doğrudan. Bunun yerine, bir alt sınıf kullanın EDDGrid Belirli dosya türünü işlemek içinFiles'ten:

Şu anda başka bir dosya türü desteklenmez. Ancak genellikle diğer dosya türleri için destek eklemek oldukça kolaydır. Bize bir istek varsa ulaşın. Ya da, verileriniz eski bir dosya formatındaysa, dosyaların değiştirilmesini tavsiye ederiz. NetCDF v3 .nc dosyaları. NetCDF Yaygın olarak desteklenen, ikili bir format, verilere hızlı rastgele erişim sağlar ve zaten desteklenmiştir. ERDDAP .

Files Details

Aşağıdaki bilgiler tüm alt sınıflara uygulanır EDDGrid FromFiles.

Mevcut bir Boyut

Tüm varyasyonları EDDGrid Files yerel dosyalardan veri toplayabilir, her dosyanın 1'i olduğu yerde (veya daha fazla) Sol en sol için farklı değerler (İlk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce) Boyut, genellikle \[ Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman \] Ama bu da bir araya gelecektir. Örneğin, boyutlar olabilir \[ Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman \] \[ Yüksek irtifa \] \[ Entitude \] \[ Uzunlık \] Ve dosyalar bir tane için verilere sahip olabilir (veya birkaç) Zaman değeri (s) dosya başına. Elde edilen veri kümesi, dosyanın tüm verileri birleştirildiği gibi görünür. Aggregasyonun büyük avantajları şunlardır:

  • Kombine edilen verilerin büyüklüğü tek bir dosyadan çok daha büyük olabilir (~2GB) .
  • Yakın zamanlı veriler için, en son verilerle yeni bir dosya eklemek kolaydır. Tüm veri kümesini yeniden yazmak zorunda değilsiniz.

Aggregasyon için şartlar şunlardır:

  • Yerel dosyalar aynı şeye sahip değil dataVariable s (Dataset'in tanımladığı gibi datasets.xml ) . Veri kümesinin sahip olacak dataVariable Tanımlananlar datasets.xml . Verilen bir dosyanın verildiği takdirde dataVariable , ERDDAP™ Gerekli olduğu gibi eksik değerleri ekleyecek.
  • Bütün bunlar dataVariable s MUST aynı şeyi kullanır axisVariable s/dimensions (Dataset'in tanımladığı gibi datasets.xml ) . Dosyalar ilk başta toplanacaktır. (sola soluna) Boyut, yükselme emrinde sıralanmıştır.
  • Her dosya ilk boyutta bir veya daha fazla değer için veriye sahip olabilir, ancak dosyalar arasında çakışmaz. Bir dosya ilk boyut için birden fazla değere sahipse, MUST yükselme emrinde sıralanır, bağları olmayan.
  • Tüm dosyalar MUST, diğer tüm boyutlarda aynı değerlere sahiptir. Testin hassaslığı, test tarafından belirlenir MaçAxisNDigits .
  • Tüm dosyalar MUST tam olarak aynı zamanda Birim birimleri metadata için axisVariable s ve dataVariable s. Eğer bu bir problemse, kullanabilirsiniz NcML veya NCO Problemi düzeltmek için.  
File Names veya Global Metadata

Tüm varyasyonları EDDGrid Files, yeni bir sol en çok kalan bir dosyayı da ekleyerek bir araya getirebilir. (İlk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce) Boyut, genellikle zaman, her dosya adı veya her dosyada bulunan global bir özelliklerin değerine dayanarak. Örneğin, dosya adı, dosyadaki veriler için zaman değerini içerebilir. ERDDAP™ Daha sonra yeni bir zaman boyutu yaratırdı.

THREDDS'deki benzer özelliğin aksine, ERDDAP™ Her zaman bir şeyler yaratır axisVariable sayısal değerler ile (CF tarafından) , asla String değerleri (Bu, CF tarafından izin verilmez) . Ayrıca, ERDDAP™ numericiğe dayanan aggregasyondaki dosyaları sıralayacaktır. axisVariable Her dosyaya atanan değer, bu yüzden eksen değişkeni her zaman CF tarafından gerekli olan değerlere sahip olacaktır. Dosya isimlerine dayanan bir lexicografik bir tür yapmanın THREDDS yaklaşımı, eksen değerlerinin sıralanmamış olduğu aggregasyonlara yol açıyor. (Bu, CF tarafından izin verilmez) Dosya isimleri, elde edilen türlerden farklı olduğunda axisVariable değerler.

Bu aggregasyonlardan birini kurmak ERDDAP™ Yeni bir sola tanımlayacaksın (İlk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce) axisVariable Özel, yalancı< sourceName > ERDDAP™ Nerede ve her dosyadan yeni boyut için değerini nasıl bulabilirim.

  • Sahte için format sourceName Hangi değeri bir dosya adı ile alır (Sadece dosya adı.ext) Is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is \\\ dosyaName, Data data data data data data Tipi Tipi Tipi Tipi , EkstraRegex , catchGroupNumber*
  • Sahte için format sourceName Bu, bir dosyanın mutlak yolu isminin değerini alır \\\ YolName, Data data data data data data Tipi Tipi Tipi Tipi , EkstraRegex , catchGroupNumber* \[ Bunun için, yol adı her zaman kullanır '/' Rehber ayırıcı karakteri olarak, asla 'biz' değil. \]
  • Sahte için format sourceName Bu, küresel bir özellikten değer alır. \\\ Global: Özellikler Name Name Name Name Name Name Name Name Name Name Name , Data data data data data data Tipi Tipi Tipi Tipi , EkstraRegex , catchGroupNumber*
  • Bu yalancı sourceName seçenek diğerlerinden farklı çalışır: Yeni bir sol yaratmak yerine (İlk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce) axisVariable Ancak bu, mevcut durumun değerini değiştirir. axisVariable Dosyadan çıkarılan bir değerle (Sadece dosya adı.ext) . formattır \\\ yerini değiştirmek FromFileName, Data data data data data data Tipi Tipi Tipi Tipi , EkstraRegex , catchGroupNumber*  

Sunmanız gereken parçaların açıklaması:

  • Özellikler Name Name Name Name Name Name Name Name Name Name Name - Her dosyada olan ve boyut değerini içeren küresel özelliklerin adı.
  • Data data data data data data Tipi Tipi Tipi Tipi – Bu, değerleri saklamak için kullanılacak olan veri türünü belirtir. Standart listesini görün Data data data data data data Tür türleri İşte bu ERDDAP™ Destek, bu String'in burada, eksen değişkenlerinden dolayı izin verilmediği hariç ERDDAP™ String değişkenleri olamaz.

Ek bir sahte veri Türü var, zamanFormat= dize ZamanFormat Ve hangi diyor ki ERDDAP™ Değer bir String zamanıStamp dize süreleri için uygun birimler . Çoğu durumda, ihtiyacınız olan dizeTimeFormat bu formatlardan birinin bir varyasyonu olacaktır:

  • yyyy-MM-dd 'T'HH:mm:s.SSSZ - ISO 8601:2004 (E) Tarih zamanı formatı. Bunun kısaltılmış bir versiyonuna ihtiyacınız olabilir, e.g., yyyy-MM-dd 'T'HH:mm: yyyy-MM-dd .
  • yyyyMMddHHmms.SSS - ISO 8601 tarihi zaman formatının kompakt versiyonu. Bunun kısaltılmış bir versiyonuna ihtiyacınız olabilir, e.g., yyyyMMddHHmms veya yyMMdd.
  • M/d/yyyyyy H:mm:s.SSS - bu U.S. slash tarihi formatı. Bunun kısaltılmış bir versiyonuna ihtiyacınız olabilir, e.g., M/d/yy.
  • yyDDDHHmmsSSS - yıl artı yılın sıfır-padded günü (E.g, 001 = 1 Ocak 365 = 31 Aralık, alkolsüz bir yıl içinde; Bu bazen Julian date olarak adlandırılır.) . Bunun kısaltılmış bir versiyonuna ihtiyacınız olabilir, e.g., yyyyDDD.

Bu sahte dataType kullanıyorsanız, bunu yeni değişkenin içine ekleyin< addAttributes >:

        <att name="units">seconds since 1970-01-01T00:00:00Z</att>  

Tüm zaman değerlerini değiştirmek istiyorsanız, birimlerdeki zaman değerini değiştirmek, e.g., 1970-01-01T12:00Z.

  • EkstraRegex – Bu, Düzenli ifade ( Ders öğreticisi ) Hangi bir yakalama grubu içeriyor (Ebeveynlerde) Bu, dosya adı veya global özellik değerinden nasıl faydalanacağını açıklar. Örneğin, S19980011998031.L3b\_MO\_CHL3b gibi bir dosya adı verildi .nc Grup # 1, "\ \dDers öğreticisi ", normal ifadede S (\ \dDers öğreticisi ) \ \dDers öğreticisi 4.99.L3b.\* 'S': 1998001'den sonra ilk 7 basamakları yakalayacak.
  • yakalama GrupNumber – Bu, yakalama grubunun sayısıdır (Bir çift ebeveyn içinde) İlgi bilgileri içeren düzenli ifadede. Genellikle 1, ilk yakalama grubudur. Bazen regex'teki diğer amaçlar için yakalama grupları kullanmanız gerekir, bu yüzden önemli yakalama grubu sayısı 2 olacaktır. (İkinci yakalama grubu) veya 3 (Üçüncü) vs.

Tam bir örnek axisVariable Bu, her dosyanın dosya adından zaman değerlerini alan yeni bir zaman ekseni ile bir araya getiren bir veri kümesidir.

      <axisVariable>
<sourceName>\\*\\*\\*fileName,timeFormat=yyyyDDD,S(\\d{7})\\.L3m.\\*,1</sourceName>
<destinationName>time</destinationName>
</axisVariable>

"timeFormat=" piç verileri kullanırken Tipi, ERDDAP™ 2 özelliği ekleyecek axisVariable Böylece kaynaktan geliyor gibi görünüyorlar:

    <att name="standard\\_name">time</att>  
<att name="units">seconds since 1970-01-01T00:00:00Z</att>

Bu durumda, ERDDAP™ Yeni bir eksen yaratacak "time" Double values ile (1970-01-01T00:00Z) "S" ve ".L3m" dosya adı altında 7 basamak çıkarmak ve bunları yyDDDDD olarak biçimlendirmek.

Varsayılan taban süresini genişletebilirsiniz (1970-01-01T00:00Z) Yemin ederim, AddAttribute Farklı bir birim farklı bir temel zaman ile karakterize eder. Ortak bir durum şu: veri dosyalarının grupları var, her biri bir uydu veri kümesinin 1 gün kompoziti ile, dosya adı altında belirtilen günün zaman değerini istediğiniz yerde (Her gün merkezi zaman) Ve değişkenin olmasını istiyorum long\_name "Yerli Zaman" olmak. Bunu yapan bir örnek:

      <axisVariable>
<sourceName>\\*\\*\\*fileName,timeFormat=yyyyDDD,S(\\d{7})\\.L3m.\\*,1</sourceName>
<destinationName>time</destinationName>
<addAttributes>
<att name="long\\_name">Centered Time</att>
<att name="units">seconds since 1970-01-01T12:00:00Z</att>
</addAttributes>
</axisVariable>

Not hours=12 in the base time, which add 12 hours relative to the original base time of 1970-01-01T00:00Z.

Tam bir örnek axisVariable Bu, yeni bir "run" eksenli bir veri kümesi ile bir araya getiriyor (Int values ile) Bu, her dosyadaki "runID" küresel özellikten koşu değerlerini alır. ("r17\_global" gibi değerlerle, 17 kişi çalıştırılan sayıdır) Is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is

      <axisVariable> 
<sourceName>\\*\\*\\*global:runID,int,(r|s)(\\d+)\\_global,2</sourceName>
<destinationName>run</destinationName>
<addAttributes>
<att name="ioos\\_category">Other</att>
<att name="units">count</att>
</addAttributes>
</axisVariable>

"r" veya 's" sonra meydana gelen basamakları yakalamak için yakalama grubunun 2 numaralı kullanımını unutmayın ve "\_global". Bu örnek aynı zamanda ek özellikleri nasıl ekleyeceğinizi gösteriyor (E.g., ioos\_category ve birimler) eksen değişkenine.  

Dış olarak Comed Files

  • Datasets that are subsets of of EDDGrid FromFiles and EDDTable FromFiles doğrudan dış sıkıştırılmış veri dosyalarından hizmet edebilir, dahil olmak üzere .tgz , .tar .gz , .tar .gzip , .gz , .gzip , .zip , .bz2 Ve .Z dosyaları.  

  • Bu şaşırtıcı derecede iyi çalışır!
    Çoğu durumda, küçük ve orta ölçekli veri dosyalarının bastırılması ile ilgili yavaşlama küçük. Disk alanı korumanız gerekiyorsa, bu özelliği kullanarak güçlü bir şekilde teşvik ederiz, özellikle nadiren erişilebilir olan eski dosyalar için.  

  • Para tasarrufu!
    Bu, birkaç özellikten biridir. ERDDAP™ Bu size birçok para kazanmak için bir şans sunuyor (Biraz düşük performans maliyetine rağmen,) . kompresyon oranı e.g., 6:1 (Bazen çok daha yüksek olacak) Ardından veri kümesinin veri dosyaları sadece 1/6 disk alanına ihtiyaç duyacaktır. O zaman belki 1 RAID ile alabilirsiniz (Belirli bir büyüklükte) Bunun yerine 6 RAIDS (Aynı büyüklükte) . Bu büyük bir maliyet tasarrufudur. Umarım, bir koleksiyonda bazı dosyaları sıkıştırma yeteneği (Yaşlılar mı?) Ve başkalarını baskılamayın (Yeniler mi?) Ve bunu herhangi bir zamanda değiştirmek için, dosyaların bazılarını sıkıştırmak için aşağıyı en aza indirelim (Daha yavaş erişim) . Ve seçim kaset üzerinde dosyaları depolamak arasındaysa (Ve sadece talep üzerine erişilebilir, bir gecikmeden sonra) Onları depolamak bir RAID üzerinde sıkıştırdı (ve erişilebilir ERDDAP ) Daha sonra, kullanıcıların interaktif hale gelmesi ve böylece sıkıştırma kullanmak için büyük bir avantaj var. (nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten) Verilere hızlı erişim. Ve eğer bu sizi ek bir RAID satın almaktan kurtarabiliyorsa, bu özellik sizi yaklaşık $ 30,000 tasarruf edebilir.  

  • Her şey için EDDGrid Files subclasses'ten, veri dosyalarının dış sıkıştırılmış dosyaların dış sıkıştırıldığını gösteren bir uzantı varsa (Şu anda: .tgz , .tar .gz , .tar .gzip , .gz , .gzip , .zip , .bz2 Ya da) , ERDDAP™ dosyaları veri kümesinin önbellek dizinine sıkıştıracak, onları okuduğunda (Zaten önbellekte değilseler) . Aynısı ikili dosya için de geçerlidir (E.g., .nc ) EDDTable FromFiles'in alt sınıfları.  

  • EDDTable, non-binary dosyaları için alt sınıflardan (E.g., .csv) Bununla birlikte, dışsal olarak sıkıştırılmış dosyaların okunduğunu gösteren bir uzantılı veri dosyaları, dosyanın okunduğu gibi kopyalanacaktır.  

  • REQUIREMENT: Dış sıkıştırılmış dosya türü kullanılmışsa (E.g., .tgz veya .zip ) sıkıştırılmış dosya içinde 1 dosyadan daha fazla destek, sıkıştırılmış dosya sadece 1 dosya içermelidir.  

  • REQUIREMENT: Bu özellik, dışlanmış dosyaların içeriklerinin değişmediğini varsayıyor, böylece önbellekli bir dekompresyon dosyası yeniden kullanılabilir. Bazı veya tüm bir veri kümesinin veri dosyaları bazen değiştirilirse, bu dosyaları sıkıştırmayın. Bu, ortak kullanımla tutarlıdır, çünkü insanlar bazen değişmesi gereken dosyaları normalde sıkıştırmazlar.  

  • <fileNameRegex> Bu çalışmayı yapmak için, veri setinin<fileNameRegex> sıkıştırılmış dosyaların isimlerini eşleştirmeli. Açıkçası, regexes gibi.\Tüm dosya isimlerini eşleştirmek. Belirli bir dosya türü belirtirseniz, e.g., .\. .nc O zaman regex'i sıkıştırma uzatmayı da değiştirmeniz gerekir, e.g., .\ . .nc . .gz (Eğer tüm dosyalar olacaksa Bir şey * .nc .gz dosyalar)  

  • Veri setiniz sıkıştırılmış ve sıkıştırılmamış dosyaların bir karışımını içeriyorsa iyi olur. Bu bazı dosyaların bazı dosyaların olduğuna inanıyorsanız faydalı olabilir (e.g., eski dosyalar) Daha az sıklıkta kullanılacaktır ve bu nedenle onları sıkıştırarak disk alanı kurtarmak faydalı olacaktır. Bu işi yapmak için,<fileNameRegex> sıkıştırılmış ve sıkıştırılmamış dosyaların isimlerini, e.g., .\veya\. .nc ( | . .gz ) (Bu sondaki yakalama grubu nerede, onu belirtir .gz Seçmelidir.  

  • Koleksiyonda koleksiyonda herhangi bir zamanda baskı veya baskı özel dosyaları bastırırsanız iyidir. Veri seti kullanmazsa [<HerNMillis> (#update allnmillis) , dataset'in setini ayarlayın Bayrak bayrağı Söylemek için ERDDAP™ Veri kümesini yeniden yüklemek ve böylece değişiklikleri fark etmek. İlginç bir şekilde, aynı veri kümesindeki farklı dosyalar için farklı sıkıştırma algoritmaları ve ayarları kullanabilirsiniz. (E.g., .bz2 Nadiren kullanılmış dosyalar için, .gz Sık sık kullanılan dosyaları kullanmamak ve sık sık sık kullanılan dosyalar için bir sıkıştırma) Ancak, regex'in kullanımda olan tüm dosya uzantılarını desteklediğinden emin olun, e.g., .\* Oak .nc ( | . .gz | . .bz2 ) .  

  • Elbette, farklı sıkıştırma algoritmaları için sıkıştırma oranları ve hızlar kaynak dosyası ve ayarları ile değişir. (e.g., sıkıştırma seviyesi) . Bu sistemi dosyalarınız için optimize etmek istiyorsanız, dosyalarınızla ve bir dizi sıkıştırma ayarları ile farklı sıkıştırma yöntemleri test edin. Güvenilir olarak iyi bir iyilik istiyorsanız (Mutlaka en iyisi değil) Kurulum, biraz tavsiye edeceğiz gzip ( .gz ) . gzip En küçük sıkıştırılmış dosyayı yapmaz (Bu oldukça yakın) Ancak dosyayı çok hızlı ve sıkıştırıyor (Daha önemlisi için daha önemli ERDDAP™ Kullanıcılar) Dosyayı çok çabuk bastırın. Artı, gzip Yazılım her Linux ve Mac OS kurulumu ile standart gelir ve 7Zip ve Linux gibi ücretsiz araçlar için kullanılabilir. Örneğin, bir kaynak dosyasını bir kaynağa sıkıştırmak .gz Dosyanın versiyonu (Aynı dosya adı, ama .gz Tamamlanan) , kullanımı (Linux, Mac OS ve Git Bash)
    gzip * sourceName *
    To decompress a .gz Dosya orijinale geri döndü, kullanın tabanca * sourceName .gz *
    Her kaynak dosyalarını dizin ve alt yönlendirmeleri, recursally, use gzip -r YönetmenNameName
    Her birine baskı yapmak için .gz Rehberdeki dosyalar ve alt danışmanları, recursally, use gunzip -r YönetmenNameName
     

  • WARNING: Dış olarak sıkıştırmayın ( gzip ) Zaten içsel olarak sıkıştırılan dosyalar! Birçok dosya zaten verileri içsel olarak sıkıştırdı. Eğersen gzip Bu dosyalar, ortaya çıkan dosyalar çok daha küçük olmayacak (<% 5) ve ERDDAP™ Onları okumak zorunda olduğunda zaman harcayacaktır. Örneğin:

    • veri dosyaları: e.g., .nc 4, ve .hdf 5 dosyalar: Bazı dosyalar iç sıkıştırma kullanır; bazıları değil. Nasıl anlatılır: sıkıştırılmış değişkenlerin "\_ChunkSize" özellikleri vardır. Ayrıca, bir grup ızgara .nc veya .hdf dosyaların hepsi farklı boyutlarda, muhtemelen içsel olarak sıkıştırılıyor. Eğer hepsi aynı boyuttaysa, içsel olarak sıkıştırmıyorlar.
    • Görüntü dosyaları: e.g., .gif, .jpg ve .txt
    • Ses dosyaları: e.g., .mp3 ve .ogg.
    • Video dosyaları: e.g., .mp4, .ogv ve .webm.

Bir talihsiz garip durum: .wav ses dosyaları büyük ve içsel olarak sıkıştırılmamıştır. Hazırlanmak güzel olurdu ( gzip ) Onlar, ancak genellikle yapmazsınız çünkü eğer yaparsanız, kullanıcılar tarayıcılarında sıkıştırılmış dosyaları oynatamaz.  

  • Test Vakası: sıkıştırmak (ile birlikte gzip ) 1523 ile bir veri kümesi .nc dosyaları.

    • Kaynak dosyalarındaki veriler sparse (Çok sayıda eksik değer) .
    • Toplam disk alanı, kompresyondan 7 GB'ye kadar 57 GB'den ayrıldı.
    • 1 zaman noktadan birçok veri için bir istek,<1 s daha önce ve sıkıştırmadan sonra.
    • 365 zaman puan için 1 veri noktası için bir istek (En kötü durum durumu) 4 s'ten 71'e gitti.  

Bana bu, herhangi bir veri kümesi için makul bir ticarettir ve kesinlikle kullanılan veri setleri için.  

  • Dış sıkıştırmaya karşı iç - tarafından sunulan dahili dosya sıkıştırmasına kıyasla .nc 4 ve 4 .hdf 5 dosyaları, ERDDAP Dış sıkıştırılmış ikili dosyaların yaklaşımı avantajları ve dezavantajları vardır. dezavantajlılık: küçük bir dosyanın küçük bir bölümünü okumak için, iç sıkıştırma daha iyidir çünkü EDDGrid Files'ten sadece birkaç chunkpress'ı korkutmak gerekir (s) Dosyanın tamamı değil. Ama ERDDAP ‘s yaklaşımın bazı avantajları vardır:

    • ERDDAP™ Tüm veri dosyalarının sıkıştırmasını destekler (İkili ve non-binary, e.g., .nc 3 ve .csv) Sadece sadece değil .nc 4 ve 4 .hdf 4.
    • Bir dosyanın dökmesi kısa bir süre içinde birden fazla okumak gerekirse, o zaman dosyayı bir kez bastırmak ve birçok kez okumak için zaman tasarrufu sağlar. Bu meydana gelir ERDDAP™ Bir kullanıcı veri kümesi için Make-A-Graph kullandığında ve grafike küçük değişiklikler bir dizi yapar.
    • Basınçlı dosyalara sahip olma ve aynı koleksiyonda sıkıştırılma yeteneği, hangi dosyaların sıkıştırıldığı ve hangi olmadığını daha fazla kontrol etmenizi sağlar. Ve bu ek kontrol gerçekten kaynak dosyasını değiştirmeden gelir (E.g ile bir dosyayı sıkıştırabilirsiniz., .gz Ve sonra orijinal dosyayı almak için baskılayın) .
    • Belirli bir dosyanın sıkıştırılıp nasıl sıkıştırıldığı herhangi bir zamanda değişme yeteneği. (Farklı algoritmaları ve ayarları) Size sistemin performansı üzerinde daha fazla kontrol verir. Ve herhangi bir zamanda orijinal sıkıştırılmamış dosyayı kolayca kurtarabilirsiniz.

Ne yaklaşım tüm durumlarda kazanan olsa da, açık ki ERDDAP ‘ Dış sıkıştırılmış dosyalardan veriye hizmet etme yeteneği, dış sıkıştırmaya uygun bir alternatif sağlar .nc 4 ve 4 .hdf 5. Bu, içsel sıkıştırmanın, insanların kullanmayı seçtikleri başlıca nedenlerden biridir. .nc 4 ve 4 .hdf 5.  

Dekompres

ERDDAP™ Herhangi bir sıkıştırılmış ikilinin demlenmiş bir versiyonunu yapar (E.g., .nc ) Dosyayı okumak gerektiğinde veri dosyası. Etkilenen dosyalar veri kümesinin dizinin içinde tutulur Büyük Parent Yönetmeny /decomed / . Son zamanlarda kullanılmamış olan tartışmalı dosyalar, kümülatif dosya büyüklüğü >10GB olduğunda uzayı serbest bırakmak için silinecektir. Bunu ayarlayarak değiştirebilirsiniz<DekompreMaxGB> (varsayılan=10) Datasets X ml.xml, e.g.,

        <decompressedCacheMaxGB>40</decompressedCacheMaxGB>  

Ayrıca, son 15 dakikada kullanılmadığı tartışmalı dosyalar her büyük veri setinin yeniden yük başlangıcında silinecektir. Bunu ayarlayarak değiştirebilirsiniz<DecomedCacheMaxMinutesOld> (varsayılan=15) Datasets X ml.xml, e.g.,

        <decompressedCacheMaxMinutesOld>60</decompressedCacheMaxMinutesOld>  

Büyük sayılar güzel, ancak depresif dosyaların genel büyüklüğü neden olabilir Büyük Parent Yönetmeny Disk uzayından çıkmak için, bu ciddi sorunlara neden olur.  

  • Çünkü bir dosyayı bastırmak önemli miktarda zaman alabilir (0.1 ila 10 saniye) , sıkıştırılmış dosyalar ile veri setleri, veri kümesinin [kullanıcı dosyaları ile veri setleri] ayarından yararlanabilir.<nThreads> (#nthreads) Daha yüksek bir sayıya ayarlayın (2? 3? 4?) . The downsides to even higher numbers (E.g., 5? 6? 7?) Geri dönüşleri azaltır ve bir kullanıcının isteği daha sonra sistemin kaynaklarının yüksek bir yüzdesi kullanabilir, böylece diğer kullanıcının taleplerinin işlenmesini önemli ölçüde yavaşlatır. Böylece, ideal nThreads ayarı yoktur, farklı ayarlarla farklı durumlarda farklı sonuçlar vardır.  

Sorted Dimension Values

Her boyut için değerler MUST sıralanmış sırayla (Yükselmek veya inmek, ilk önce hariç (sola soluna) Hangi boyut yükselmelidir) . Değerler düzensiz bir şekilde uzayılabilir. Herhangi bir bağ olamaz. Bu, bir zorunluluktur CF metadata standart . Herhangi bir boyut değerleri sıralanmış bir şekilde değilse, veri kümesi yüklenemez ve yüklenemez. ERDDAP™ Giriş dosyasında ilk değersiz değeri tanımlayacak, Büyük Parent Yönetmeny /loglar /log.txt .

Unsorted boyut değerleri neredeyse her zaman kaynak veri kümesi ile bir problem göstermektedir. Bu en yaygın olarak yanlış bir isim veya uygunsuz bir dosya aggregasyona dahil edildiğinde meydana gelir, bu da değersiz bir zaman boyutuna yol açar. Bu sorunu çözmek için, hata mesajını bu konuda görmek ERDDAP™ Giriş.txt dosyası, zaman değerini bulmak için. Ardından, ilgili dosyayı bulmak için kaynak dosyalarına bakın (veya bir tane daha sonra veya bir tane) Bu, aggregasyona ait değildir.

Yönetmenler

dosyalar bir dizide veya bir dizide ve alt danışmanlarında olabilir (Recursally) . Eğer çok sayıda dosya varsa (Örneğin, >1,000) , işletim sistemi (Ve böylece EDDGrid FromFiles) dosyaları bir dizi subdirectories'de saklarsanız çok daha verimli çalışacaktır. (Yılda bir ya da veri setleri için ayda bir, çok sık dosyalar) Ancak, verilen bir dizi veritabanında asla çok sayıda dosya yoktur.  

<Önbellek FromUrl>

Bütün Hepsi EDDGrid FromFiles and all EDDTable FromFiles datasets support a set of tags which tell tell tell ERDDAP™ Uzak bir veri kümesinin tüm dosyalarının bir kopyasını veya birkaç dosyayı indirmek veya korumak için (İhtiyacınız olduğu gibi indirildi) . Bu inanılmaz derecede yararlı olabilir. Bakın, Önbelli önbelli önbelli önbelli önbelli önbelli önbelli önbelli önbelli önbelli önbelli FromUrl belgeleri .

Uzaktan Müdürler ve HTTP Range Requests

(AKA Byte Service, Byte Range Requests, Kabul-Ranges http Başlık)
EDDGrid NcFiles, EDDTable FromMultidimNcFiles, EDDTable FromNcFiles, ve EDDTable FromNcCFFiles, can can Bazen bazen bazen bazen bazen bazen bazen bazen bazen Verilere hizmet etmekten veri .nc Uzak sunuculardaki dosyalar ve sunucu destekleniyorsa HTTP ile erişim Byte Service HTTP range istekleri aracılığıyla (HTTP mekanizması hizmet etmek için) . Bu mümkündür çünkü netcdf-java (hangisi hangisi hangisi hangisi hangisi hangisi hangisi hangisidir? ERDDAP™ okumak için kullanmak .nc dosyaları dosyaları dosyaları dosyaları) Uzaktan okuma verilerini uzaktan destek .nc HTTP range istekleri ile dosyaları.

Bunu yapmayın! Korkunç ve yavaştır. Bunun yerine, kullanın<Url> sistemden önbellek (#cache Fromurl) .

Erişim ERDDAP™ datasets as files via byte range requests – Bunu etrafta doyabilirsiniz, böylece yapabilirsiniz (Teorik) Bir veri kümesini düşünün ERDDAP™ Bir dev olarak .nc Dosyayı kabul ederek " .nc "OPen DAP Belirli bir veri kümesi için URL (E.g.,https://myserver.org/erddap/griddap/datasetID.ncAyrıca, bir alt kümesi belirtmeden sonra bir ?query ekleyerek) Ancak netcdf-java'yı kullanabileceğinizi sormak belki makul, Ferret Ya da başka bazıları NetCDF Müşteri yazılımı verileri kullanarak okumak için HTTP Range Requests from From ERDDAP . Cevap hayır, çünkü gerçekten çok büyük bir " .nc " dosyası. Bunu yapmak istiyorsanız, bunun yerine bu seçeneklerden birini yapın:

  • Use Use Use Use Use(OPeN)DAPMüşteri yazılımları tarafından sunulan ağ hizmetlerine bağlanmak için ERDDAP . İşte bu nedir DAP (Ve böylece ERDDAP ) için tasarlandı. Çok verimli.
  • Ya da kaynak dosyasını indirin (s) Bundan sonra "files" Sistem sistemi sistemi sistemi sistemi sistemi sistemi sistemi sistemi sistemi (veya alt bir dosya aracılığıyla .nc ?? Soru Soru) Bilgisayarınıza ve netcdf-java'yı kullanın, Ferret Ya da başka bazıları NetCDF Müşteri yazılımlarını okumak için (Şimdi şimdi şimdi şimdi) yerel dosya (s) .  

Cached File Information

Ne zaman bir an EDDGrid Files dataset ilk yükleniyor, EDDGrid Files tüm ilgili dosyalardan bilgi okur ve tablolar yaratır (Her dosya için bir satır) Her geçerli dosya ve her "kötü" hakkında bilgi ile (Farklı veya geçersiz) Dosya.

  • Masalar diskte de depolanır, çünkü NetCDF v3 .nc dosyaları içinde dosyalar Büyük Parent Yönetmeny /dataset / Son2CharsOfDatasetID / * datasetID * / İsimli dosyalarda: dirTable .nc (Hangi benzersiz dizi isimleri tutar) , Dosya dosyası Masa .nc (Hangi masayı her geçerli dosyanın bilgileri ile tutar) , badFiles .nc (Masayı her kötü dosyanın bilgisi ile tutar) .
  • Bir şeye erişmek için EDDGrid FromFiles dataset (Ancak daha fazla hafıza kullanma pahasına) , kullanabilirsin [<fileTableInMemory> Gerçek</fileTableInMemory>] (#filinmemory) Söylemek için ERDDAP™ Dosya bilgi masalarının bir kopyasını hafızada tutmak.
  • Disk üzerindeki dosya bilgi masalarının kopyası da kullanışlıdır ERDDAP™ Kapatılır ve yeniden başlatılır: tasarruf eder EDDGrid Files'ten tüm veri dosyalarını yeniden hazırlamak zorunda.
  • Bir veri kümesi yeniden yüklendiği zaman, ERDDAP™ Sadece verileri yeni dosyalar ve dosyalarda okumak gerekir.
  • Bir dosyanın diğer dosyaların farklı bir yapısı varsa (Örneğin, değişkenlerden biri için farklı bir veri türü veya “farklı değer” için farklı bir değer. Birim birimleri “İsviçre) , ERDDAP Dosyayı "kötü" dosyaları listesine ekleyin. Dosya ile ilgili sorun hakkında bilgi yazılacak Büyük Parent Yönetmeny /loglar /log.txt dosyası.
  • Bu dosyalarla silmek veya çalışmak zorunda değilsiniz. Bir istisna: Hala bir veri kümesinin değişiklikleri yapıyorsanız datasets.xml Kurulum, bu dosyaları zorlamak için silmek isteyebilirsiniz ERDDAP™ Tüm dosyaları yeniden okumak için, çünkü dosyalar farklı okunacaktır. Bu dosyaları silmeniz gerekiyorsa, bunu ne zaman yapabilirsin ERDDAP™ Koşuyor. (Sonra bir set a Bayrak bayrağı Dataset ASAP'ı yeniden yüklemek için.) Ancak, ERDDAP™ Genellikle fark eder ki, datasets.xml Bilgi dosyayla eşleşmez Tablo bilgileri ve dosya tablo tablolarını otomatik olarak sil.
  • teşvik etmek istiyorsanız ERDDAP™ Depolama veri kümesi bilgilerini güncellemek için (Örneğin, sadece eklediyseniz veya dataset'in veri setine bazı dosyaları değiştirdiniz) , kullanın the use the Bayrak sistemi zorlamak için zorlamak ERDDAP™ Önbellekli dosya bilgilerini güncellemek için.  

Talepler

Bir müşterinin veri talebi işlandığında, EDDGrid Files masaya, hangi dosyaların talep edilen verilere sahip olduğunu görmek için geçerli dosya bilgileri ile hızlıca bakabilir.  

Önbellek Dosya Bilgileri

Ne zaman veri kümesi yeniden yüklenirse, önbellekli dosya bilgileri güncellenir.

  • Dataset periyodik olarak yeniden yükleniyor<HerNMinutes> veri setinin bilgilerinde datasets.xml .
  • Dataset en kısa sürede yeniden yükleniyor ERDDAP™ eklediğinizi tespit edin, kaldırıldı, touch'd (Dosyanın sonlarını değiştirmek için Değiştirilmiş zaman) , veya bir datafile değiştirdi.
  • Veri seti, kullanımınız mümkün olduğunca kısa sürede yeniden yükleniyor Bayrak sistemi .

Dataset yeniden yüklendiği zaman, ERDDAP™ Mevcut dosyaları önbellek dosya bilgileri masalarına kıyasla karşılaştırır. Yeni dosyalar geçerli dosyaları masaya okunur ve eklenir. Artık mevcut olmayan dosyalar geçerli dosyalar masasından çıkarılır. Dosya zamanlayıcısının değiştiği dosyalar okunur ve bilgileri güncellenir. Yeni masalar hafızadaki ve diskteki eski masaları değiştirir.  

Kötü dosyalar

Kötü dosyaların masası ve dosyalar kötü ilan edildi (yozlaşmış dosya, eksik değişkenler, vs.) E-posta ile e-posta Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey e-posta adresi (Muhtemelen muhtemelen siz) Her zaman veri kümesi yeniden yükleniyor. Bu dosyaları mümkün olduğunca kısa sürede değiştirmelisiniz veya onarmalısınız.  

Eksik Değişkenler

Bazı dosyaların bazılarına sahip değilse dataVariable Dataset'in tanımladığı s datasets.xml chunk, bu iyi. When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When EDDGrid Files bu dosyaların birini okur, dosyanın değişkeni olduğu gibi hareket edecek, ancak tüm eksik değerler ile.  

FTP Sorun/Advice

FTP yeni veri dosyalarına yeni veri dosyalarına sahipseniz ERDDAP™ sunucu iken sunucu ERDDAP™ Koşuyor, olma şansı var ERDDAP™ FTP sürecinde veri kümesini yeniden yükleyecek. Düşündüğünüzden daha sık olur! Eğer gerçekleşirse, dosya geçerli görünüyor (Geçerli bir adı vardır) Ancak dosya henüz geçerli değil. If if if if if if if if if if if if if if if if if if if if if if if if if if if if if ERDDAP™ Bu geçersiz dosyadan verileri okumaya çalışır, sonuçlanan hata dosyanın geçersiz dosyaların masasına eklenmesine neden olacaktır. Bu iyi değil. Bu problemden kaçınmak için, FTP'nin dosyayı yaparken geçici bir dosya adı kullanın, örneğin ABC2005 .nc \_TEMP . Sonra, dosyaNameRegex testi (Aşağıdaki aşağıda bakınız) Bunun ilgili bir dosya olmadığını gösterecektir. FTP süreci tamamlandıktan sonra, dosyayı doğru adı yeniden isimlendir. Renaming süreci, dosyanın bir anda ilgili olmasına neden olacaktır.  

"0 dosyaları" Hata Mesaj

Eğer koşuyorsan GenrateDatasetsX ml veya DasDds , ya da bir yüklemeye çalışırsanız EDDGrid From...Files dataset in ERDDAP™ Ve bunu gösteren bir "0 dosya" hatası mesajı alırsınız ERDDAP™ dizide 0 eşleştirme dosyaları bulundu (Bu dizide eşleşen dosyalar olduğunu düşündüğünüzde) :

  • dosyaların gerçekten bu dizide olduğunu kontrol edin.
  • Kılavuz isminin yazımını kontrol edin.
  • DosyaNameRegex'i kontrol edin. Aslında, regexes ile hataları yapmak gerçekten kolaydır. Test amacıyla, regex .\*'yi deneyin ve tüm dosya isimleriyle eşleşmesi gerekir. (Buna bakın Regex Belgeleri ve regex öğretici .)
  • Programı çalıştıran kullanıcının programı kontrol edin (e.g., user=tomcat (??) Tomcat / ERDDAP ) Bu dosyalar için 'oku' izni var.
  • Bazı işletim sistemlerinde (Örneğin, SELinux) Sistem ayarlarına bağlı olarak, programı kullanan kullanıcı, dosyaları olan diziye giden tüm yönetmenlerin zinciri için ‘okunmalıdır.  

EDDGrid FromFiles iskelet XML

  • iskelet XML Herkes için EDDGrid FromFiles subclasses is:

  <dataset type="EDDGridFrom...Files" datasetID\="..." active\="..." >
      <accessibleTo>...</accessibleTo> <!-- 0 or 1 -->
      <graphsAccessibleTo>auto|public</graphsAccessibleTo> <!-- 0 or 1 -->
      <accessibleViaWMS>...</accessibleViaWMS> <!-- 0 or 1 -->
      <reloadEveryNMinutes>...</reloadEveryNMinutes> <!-- 0 or 1 -->
      <updateEveryNMillis>...</updateEveryNMillis> <!-- 0 or 1. For
        EDDGridFromFiles subclasses, this uses Java's WatchDirectory system
        to notice new/deleted/changed files quickly and efficiently. -->
      <defaultDataQuery>...</defaultDataQuery> <!-- 0 or 1 -->
      <defaultGraphQuery>...</defaultGraphQuery> <!-- 0 or 1 -->
      <matchAxisNDigits>...</matchAxisNDigits> <!-- 0 or 1 -->
      <nThreads>...</nThreads> <!-- 0 or 1 -->
      <dimensionValuesInMemory>...</dimensionValuesInMemory> <!-- 0 or 1 -->
      <fgdcFile>...</fgdcFile> <!-- 0 or 1 -->
      <iso19115File>...</iso19115File> <!-- 0 or 1 -->
      <onChange>...</onChange> <!-- 0 or more -->
      <fileDir>...</fileDir> <-- The directory (absolute) with the
        data files. -->
      <recursive>true|false</recursive> <!-- 0 or 1. Indicates if
        subdirectories of fileDir have data files, too. -->
      <pathRegex>...</pathRegex> <!-- 0 or 1. Only directory names which
        match the pathRegex (default=".\") will be accepted. -->
      <fileNameRegex>...</fileNameRegex> <-- 0 or 1. A
        regular expression (tutorial) describing valid data
        file names, for example, ".\
\.nc" for all .nc files. -->
      <accessibleViaFiles>true|false(default)</accessibleViaFiles>
        <!-- 0 or 1 -->
      <metadataFrom>...</metadataFrom> <-- The file to get
        metadata from ("first" or "last" (the default) based on file's
        lastModifiedTime). -->
      <fileTableInMemory>...</fileTableInMemory> <!-- 0 or 1 (true or
        false (the default)) -->
      <cacheFromUrl>...</cacheFromUrl> <!-- 0 or 1 -->
      <cacheSizeGB>...</cacheSizeGB> <!-- 0 or 1 -->
      <addAttributes>...</addAttributes> <!-- 0 or 1 -->
      <axisVariable>...</axisVariable> <!-- 1 or more -->
      <dataVariable>...</dataVariable> <!-- 1 or more -->
  </dataset>

EDD*From ISSoFiles

** EDDGrid RoloFiles** ve EDDTable From ISSoFiles Yerel ses dosyalarının koleksiyonundan toplam veriler. (Bu ilk önce ortaya çıktı ERDDAP™ v1.82.) Fark şu ki, fark budur EDDGrid ISSoFiles, verileri çok boyutlu bir veri kümesi olarak tedavi eder (Genellikle 2 boyutta: \[ Dosya başlangıç başlar Zaman Zamanı \] ve \[ Elapd Bir dosya içinde zaman \] ) Bununla birlikte, EDDTableFrom ISSoFiles verileri tabular veri olarak ele alıyor (Genellikle dosya başlangıç süresi için sütunlar ile, dosya ile elapdTime ve ses kanallarından gelen veriler) . EDDGrid ISSoFiles'ten tüm dosyaların aynı sayıda örneği olması gerekir, bu yüzden doğru değilse, EDDTable'ü RoloFiles'ten kullanmalısınız. Aksi takdirde, hangi EDD tipinin kullanılmasının seçimi tamamen seçiminizdir. EDDTable'den RoloFiles'ten bir avantaj: diğer bilgilerle başka değişkenleri ekleyebilirsiniz, e.g. stationID İstasyonType. Her iki durumda da, birleşik bir zaman değişkeninin eksikliği, bu EDD türlerinden gelen verilerle çalışmak daha zorlaşır, ancak birleşik bir zaman değişkeni kurmak için iyi bir yol yoktu.

Bu sınıfın süper sınıflarına bakın, EDDGrid FromFiles ve EDDTable FromFiles Bu sınıfın nasıl çalıştığı ve nasıl kullanılacağını genel bilgi için.

Güçlü bir şekilde kullanmayı öneriyoruz GenrateDatasets X ml programı Kaba bir taslak yapmak için datasets.xml Bu veri kümesi için chunk. Ses dosyalarının ses verilerinin kodlamasıyla ilgili başka bir metadata olmadığı için, GenerateDatasets'ten çıktıyı düzenlemek zorundasınız. X ml temel bilgi sağlamak için (E.g., unvanı, Özet, creator\_name , kurum, tarih) .

Detaylar:

  • Çok sayıda ses dosyası formatı var. Şu anda, ERDDAP™ Çoğu .wav ve .au dosyalarından verileri okuyabilirsiniz. Şu anda diğer ses dosyaları, e.g., .aiff veya .mp3 türlerini okuyabilirsiniz. Diğer ses dosya formatları veya diğer varyantlar için desteğe ihtiyacınız varsa, lütfen Chris'e e-posta gönderin. John at noaa.gov. Ya da, şu anda kullanabileceğiniz bir iş olarak, ses dosyalarını PCM\\'ye dönüştürebilirsiniz. SED (Full data için) veya PCM\_FLOAT (için yüzen nokta verileri) .wav dosyaları bu yüzden ERDDAP™ onlarla çalışabilir.
  • Şu anda, ERDDAP™ Ses dosyalarını ne ile okuyabilebilir Java 's AudioFormat sınıfı PCM\_FLOAT, PCM\_SIGNED, PCM\_UNSIGNED, ALAW ve ULAW encodings. ERDDAP™ PCM\_UNSIGNED değerlerini döndürür (e.g., 0 to 255) İmzalanan değerler (e.g., -128 to 128) Veri değerlerinde biraz yeniden ayarlayarak. ERDDAP™ ALAW ve ULAW, kendi ana kodlarından kısa bir süre içinde kısa sürede kodlandı (Int16) değerler. O zamandan beri Java BüyükEndian = gerçek veriler istiyor, ERDDAP™ BüyükEndian=false ile saklanan verilerin astları yeniden düzenlenmiştir (Küçük komedyen) Değerleri doğru bir şekilde okumak için. Diğer tüm kodlamalar için (PCM) , ERDDAP™ Veriler olduğu gibi okur.
  • When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When ERDDAP™ Ses dosyalarından veri okur, dosyanın mevcut ses metadatasını küresel niteliklere dönüştürür. Bu her zaman içerecektir (Gösterilen örnek değerler ile)

String audioBigEndian "false"; // Gerçek veya yanlış Int audio Kanallar 1; String audioEncoding "PCM\_SIGNED"; yüz sesFrameRate 96000.0; //per ikinci Int audioFrameSize 2; //# of data bytes per framework yüz sesSampleRate 96000.0; //per ikinci SoundSampleSizeInBits 16; //#s per Channel per example

For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For ERDDAP “Amaçlar, bir çerçeve bir örnekle eş anlamlıdır, bu zaman içinde bir nokta için verilerdir. Karakterlerin özellikleri ERDDAP™ Verileri kaynak dosyalarında olduğu gibi tanımlayan bilgilere sahip olacaktır. ERDDAP™ Sık sık bunu verileri okurken, e.g., PCM\_UNSIGNED, ALAW ve ULAW kodlanmış veriler PCM\_SIGNED'ye dönüştürülür ve büyükEndian=false verilere dönüştürülür = gerçek verilere dönüştürülür (hangisidir? Java okumak istiyor) . Sonunda, veri değerleri ERDDAP™ Her zaman olacak PCM-encoded Veri değerleri (I.e., ses dalgasının basit sayısal örnekleri) .

  • When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When ERDDAP™ Ses dosyalarından veri okur, tüm dosyayı okur. ERDDAP™ Kanal başına yaklaşık 2 milyar örnek olarak okuyabilirsiniz. Örneğin, örnek oranı ikinci başına 44,100 örnek ise, 2 milyar örnek dosya başına yaklaşık 756 dakika ses verilere tercüme eder. Bu veri miktarından daha fazla ses dosyalarınız varsa, dosyaları daha küçük chunkslara kırmanız gerekir, böylece dosyaları daha küçük chunkslere kırmanız gerekir. ERDDAP™ Onları okuyabilirsiniz.
  • Çünkü ERDDAP™ Tüm ses dosyaları okur, ERDDAP™ Büyük ses dosyaları ile çalışmak için büyük miktarda hafızaya erişmek gerekir. See See See See ERDDAP 's memory settings . Yine, eğer bu bir problemse, şu anda kullanabileceğiniz bir iş, dosyaları daha küçük chunkslere parçalamaktır, böylece bu yüzden bu bir problemdir. ERDDAP™ Onları daha az hafıza ile okuyabilirsiniz.
  • Bazı ses dosyaları yanlış yazılmıştı. ERDDAP™ Böyle vakalarla uğraşmak için küçük bir çaba yapar. Ama genel olarak, bir hata olduğunda, ERDDAP™ Bir İstiklal atacak (Ve bu dosyayı reddetme) veya (Hata tespit edilemezse) Verileri oku (Ancak veriler yanlış olacaktır) .
  • ERDDAP™ Sesin hacmini kontrol etmez veya değiştirmez. İdeal olarak, tam anlamıyla sesli veriler veri türünin tüm yelpazesini kullanmak için ölçeklenir.
  • Ses dosyaları ve ses oyuncuları eksik değerler için bir sistem yok (E.g., -999 veya Float.NaN) . Bu yüzden ses verileri eksik değerlere sahip olmamalıdır. Eksik değerler varsa (e.g., bir ses dosyası uzatmanız gerekiyorsa) , mükemmel bir sessizlik olarak yorumlanacak olan bir dizi 0'ı kullanın.
  • When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When ERDDAP™ Ses dosyalarından veri okur, her zaman elapd denilen bir sütun yaratır Her örnek için zaman, saniyede (Çift olarak depolanır) , ilk numuneye göre (Hangi tayin edilir Time=0.0 ss) . With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With EDDGrid ISSoFiles'ten bu, elapdTime eksen değişkeni haline gelir.
  • EDDGrid ISSoFiles'ten tüm dosyaların aynı sayıda örneği olması gerekir. Yani eğer bu doğru değilse, EDDTable'ü RoloFiles'ten kullanmalısınız.
  • For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For EDDGrid ISSoFiles'ten, ayarladığınızı tavsiye ederiz [<boyutValuesInMemory>] (#dimensionvaluesinmemory) Sahte (GenerateDatasets tarafından tavsiye edildiği gibi X ml) Çünkü zaman boyutu genellikle çok sayıda değere sahiptir.
  • For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For EDDGrid ISSoFiles'ten, neredeyse her zaman kullanman gerekir EDDGrid Files sistemi için Aggregation via File Names Ama neredeyse her zaman kayıtların başlangıç tarihini çıkararak Dosya isimlerinden zaman. Örneğin,
    <sourceName>\\*\\*\\*fileName,"timeFormat=yyyyMMdd'\\_'HHmmss",aco\\_acoustic\\.(\\[0-9\\]{8}\\_\\[0-9\\]{6})\\.wav,1</sourceName>

GenrateDatasets X ml bunu teşvik edecek ve bununla size yardımcı olacaktır.

  • EDDTableFrom ISSoFiles için, neredeyse her zaman EDDTableFromFiles sistemi kullanmanız gerekir \\\*fileName YOU sourceName s Dosyanın adından bilgi almak (Neredeyse her zaman başlangıç tarihi Kayıt için Zaman) Ve bunun bir veri sütunu olmasını teşvik edin. Örneğin,
    <sourceName>\\*\\*\\*fileName,aco\\_acoustic\\.(\\[0-9\\]{8}\\_\\[0-9\\]{6})\\.wav,1</sourceName>

Zaman formatı daha sonra birimlerin özellikleri olarak belirtilmelidir:<Adı="units">yyyMMdd'\_'HHmms</t>  

EDDGrid MergeIRFiles

** EDDGrid MergeIRFiles** Yerelden gelen agresyon verileri, MergeIR dosyaları, hangilerden Tropikal Rainfall Ölçüm Misyonu (TRMM) NASA ve Japonya Havacılık Ajansı arasında ortak bir görev hangisidir (JAXA) . Merge IR dosyaları indirilebilir NASA .

EDDGrid MergeIRFiles.java yazılmıştır ve katkıda bulundu ERDDAP™ Proje Jonathan Lafite ve Philippe Makowski of R.Tech Engineering (Lisans: telif hakkı açık kaynak) .

EDDGrid MergeIRFiles'ten biraz sıradışı:

  • EDDGrid MergeIRFiles sıkıştırılmış veya etkilenmemiş kaynak veri dosyalarını, herhangi bir kombinasyonda, aynı veri kümesinde destekler. Bu, örneğin, nadiren erişilebilir olan eski dosyaları bastırmanıza izin verir, ancak sık sık erişilen yeni dosyalar. Ya da orijinalden gelen sıkıştırma türünü değiştirebilirsiniz. Z Örneğin, .gz .
  • Aynı dizideki aynı veri dosyalarının sıkıştırılmış ve etkilenmemiş versiyonları varsa lütfen emin olun.<fileNameRegex> veri setiniz için, eşleştirmek istediğiniz dosya isimleriyle eşleştirin ve eşleştirmek istemediğiniz dosya isimleriyle eşleşmeyin.
  • Etkilenmemiş kaynak veri dosyalarının hiçbir dosya uzatma olmaması gerekir (Ben.e., dosya adı altında ".") .
  • Sınırlı kaynak veri dosyalarının bir dosya uzatması olması gerekir, ancak ERDDAP™ Dosyanın içeriğini inceleyerek sıkıştırma türünü belirler, dosyanın dosyasının uzantısına bakarak (Örneğin, ".Z") . Desteklenen sıkıştırma türleri "gz", "bzip2", "xz", "lzma", "snappy-raw", "sappny-d", "pack200" ve "z" içerir. When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When ERDDAP™ sıkıştırılmış dosyalar, geçici bir dosyaya yazılmadan, sıkıştırılır dosyaları.
  • Tüm kaynak veri dosyaları orijinal dosya adı sistemini kullanmalıdır: i.e., merg\_ YYYYMDHHHH \_4km-crypt (nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede? YYYYMDHHHH Dosyadaki verilerle ilişkili zamanı gösterir) artı dosya sıkıştırılırsa bir dosya uzatması.

Bu sınıfın süper sınıfını gör EDDGrid FromFiles Bu sınıfın nasıl çalıştığı ve nasıl kullanılacağını genel bilgi için.

Güçlü bir şekilde kullanmayı öneriyoruz GenrateDatasets X ml programı Kaba bir taslak yapmak için datasets.xml Bu veri kümesi için chunk. Daha sonra bunu iyi bir şekilde ayarlamayı düzenleyebilirsiniz.  

EDDGrid FromNcFiles

** EDDGrid FromNcFiles** Yerel, gridded'den gelen veriler, GRIB .grb ve .grb2 dosyaları, dosyaları, HDF (v4 veya v5) .hdf dosyaları, dosyaları, .nc ml ml ml dosyaları, dosyaları, NetCDF (v3 veya v4) .nc dosyaları ve dosyaları Zarr dosyaları dosyaları dosyaları dosyaları (2.25) . Zarr dosyaları biraz farklı davranışlara sahiptir ve dosyaNameRegex veya "zarr" dahil etmek için yolu gerektirir.

New in New in New in New ERDDAP™ 2.29.0, tüm eksen değişkenlerini desteklemeyen veri değişkenleri için deneysel destek (Ya da bazıları aynı veri kümesindeki 1D ve 2D verileri olarak adlandırdı.) . Lütfen GitHub'a geçin (Tartışmalar veya sorunlar) Geri bildirim ve böceklerle.

Bu diğer dosya türleri ile çalışabilir (Örneğin, BUFR) Biz sadece test etmedik - lütfen bize bazı örnek dosyaları gönderin.

  • GRIB dosyaları için, ERDDAP™ Bir .gbx indeks dosyası ilk kez her GRIB dosyasını okur. Bu yüzden GRIB dosyaları, Tomcat'ın yazdığı "kullanıcı" bir dizide olmalıdır.
  • Bu sınıfın süper sınıfını gör EDDGrid FromFiles Bu sınıfın nasıl çalıştığı ve nasıl kullanılacağı hakkında bilgi için.
  • Starting with with ERDDAP™ v2.12, EDDGrid FromNcFiles and EDDGrid FromNcFiles Unpacked, veriyi "yapılardan" okuyabiliyor .nc 4 ve 4 .hdf 4 dosya. Bir yapıdan gelen bir değişkeni tanımlamak için,< sourceName > > > > Formatı kullanmalıdır: fullStructureName | ÜyeName Örneğin grup1/myStruct | Member .
  • Güçlü bir şekilde kullanmayı öneriyoruz GenrateDatasets X ml programı Kaba bir taslak yapmak için datasets.xml Bu veri kümesi için chunk. Daha sonra bunu iyi bir şekilde ayarlamayı düzenleyebilirsiniz.

Gridded Nc Files

Netcdf4 dosyaları gruplar içerebilir. ERDDAP™ Sadece bir gruptaki değişkenlerden ve tüm ebeveyn gruplarından bir veri kümesi yapar. GenrateDatasets'te belirli bir grup adı belirtebilirsiniz X ml (Omit the traceing slash) , veya "" GenrateDatasets sahip olmak için X ml, en boyutları kullanan değişkenler için tüm grupları arayın veya " \[ kök kök kök kök \] GenerateDatasets sadece kök grubundaki değişkenlere bakmak.

GenerateDatasetsX ml, bu tür veri setine cevap vermeden önce sorular örnek dosyasının ncdump benzeri yapısını yazdırır. Yani ilk döngü için Genrates aracılığıyla birkaç goofy cevabı girerseniz X ml, en azından görmek mümkün olacak ERDDAP™ Dosyayı okuyabilirsiniz ve hangi boyutlarda ve değişkenlerin dosyada olduğunu görebilir. Ardından GenrateDatasetsX ml aracılığıyla ikinci döngü için daha iyi cevaplar verebilirsiniz.

EDDGrid FromNcFilesUnpacked

** EDDGrid FromNcFilesUnpacked** Bir değişkendir EDDGrid FromNcFiles Hangi yerelden veri toplar, ızgara NetCDF (v3 veya v4) .nc ve ilgili dosyalar. Fark, bu sınıfın her veri dosyasını daha önce paketsiz olmasıdır EDDGrid Files dosyalarına bakar:

  • Birlikte paketlenmiş olan paketler değişkenleri scale\_factor ve/veya add\_offset .
  • \_FillValue ve missing\_value NaN'in değerleri (veya MAX\_VALUE tam veri türleri için) .
  • Zaman ve zaman notamp değerlerini değiştirir "seconds since 1970-01-01T00:00:00Z" .

Bu sınıfın büyük avantajı, farklı değerlerle uğraşmak için bir yol sağladığıdır scale\_factor , add\_offset \_FillValue, missing\_value Bir koleksiyonda farklı kaynak dosyalarında veya zaman birimleri. Aksi takdirde, bir araç kullanmak zorunda kalacaksınız NcML veya NCO Her dosyayı farklılıkları kaldırmak için değiştirmek için, böylece dosyalar tarafından ele alınabilir EDDGrid FromNcFiles. Bu sınıf düzgün çalışmak için, dosyalar ilgili özellikler için CF standartlarını takip etmelidir.

  • Eğer bir şey yapmaya çalışırsa EDDGrid FromNcFiles Daha önce denediniz ve kullanmayan bir grup dosyayı paketledi EDDGrid FromNcFiles, cd to Büyük Parent Yönetmeny /dataset / Son2Haters / * datasetID * / nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede? Son2Haters En son 2 mektup datasetID , Ve bu dizideki tüm dosyaları sil.
  • Starting with with ERDDAP™ v2.12, EDDGrid FromNcFiles and EDDGrid FromNcFiles Unpacked, veriyi "yapılardan" okuyabiliyor .nc 4 ve 4 .hdf 4 dosya. Bir yapıdan gelen bir değişkeni tanımlamak için,< sourceName > > > > Formatı kullanmalıdır: fullStructureName | ÜyeName Örneğin grup1/myStruct | Member .
  • Güçlü bir şekilde kullanmayı öneriyoruz GenrateDatasets X ml programı Kaba bir taslak yapmak için datasets.xml Bu veri kümesi için chunk. Daha sonra bunu iyi bir şekilde ayarlamayı düzenleyebilirsiniz.

Netcdf4 dosyaları gruplar içerebilir. See See See See Bu belge .

GenerateDatasetsXml, bu tür veri setine cevap vermeden önce, soruların ncdump benzeri yapısını yazdırdıktan sonra yapar. Daha önce daha önce Bu paketlenmez. Yani ilk döngü için Genrates aracılığıyla birkaç goofy cevabı girerseniz X ml, en azından görmek mümkün olacak ERDDAP™ Dosyayı okuyabilirsiniz ve hangi boyutlarda ve değişkenlerin dosyada olduğunu görebilir. Ardından GenrateDatasetsX ml aracılığıyla ikinci döngü için daha iyi cevaplar verebilirsiniz.

EDDGrid LonPM180

** EDDGrid LonPM180** Bir çocuğun uzun değerlerini değiştirir (Kapalı kapalı kapalı kapalı) EDDGrid 180'den daha uzun değere sahip olan veri kümesi 180'den fazla (Örneğin, 0 to 360) Bu yüzden aralıkta olduklarını -180 ila 180 (Longitude Plus veya Minus 180, bu nedenle adı) .

  • Bu, veri kümeleri yapmak için bir yol sağlar, uzun süreli değerleri 180'den daha uyumlu hale getirir / ile OGC Hizmetler hizmetleri hizmetleri hizmetleri hizmetleri hizmetleri (Örneğin, WMS server in server in server in server in server in server in server ERDDAP ) Her şeyden beri OGC hizmetler içinde uzunlık değerleri gerektirir -180 ila 180.
  • Sonsuzluk yakınında çalışmak sorunlara neden olur, ne olursa olsun, sonsuzluk 0 veya uzun bir 180 yaşındadır. Bu veri set türü, aynı veri kümesinin iki versiyonunu sunarak bu problemlerden kaçınmanızı sağlar: aralığı 0 ile 360 arası değerlerden biri ("Pacifisan"?) , aralığında uzunlık değerlere sahip biri -180 ila 180 ("Atlantisan"?) .
  • Çocuk veri setleri için 180'den daha uzun değerlerle, yeni uzunlık değerlerin hepsi basitçe 360 derece daha düşük. Örneğin, 180 ila 240 arasındaki uzunlık değerleri olan bir veri kümesi, -180'in -120'ye kadar bir veri kümesi haline gelecektir.
  • Tüm dünya için uzun bir değere sahip olan çocuk veri setleri için (kabaca 0 to 360) Ancak yeni uzunlık değeri yeniden düzenlenmiştir. (kabaca kabaca kabaca) -180 to 180: Orijinal 0 ile neredeyse 180 değer değişmemektedir. Orijinal 180 ila 360 değere dönüştürülür -180'e 0 ve uzun serinin başlangıcına dönüşür.
  • 180 yaşına giren çocuk veri setleri için ama dünyayı kapsamaz, ERDDAP™ Dünyayı kapsayan bir veri kümesi yapmak için gerekli olan eksik değerleri ekleyin. Örneğin, 140 ila 200 arasındaki uzunlık değerleri olan bir çocuk veri kümesi, -180'in 180'e kadar uzun bir veri kümesi haline gelecektir. 180 ila 200 çocuk değerleri -180-160 olacaktır. Yeni uzunlık değerleri -160'dan 140'a eklenecektir. İlgili veri değerleri \_FillValues olacaktır. 140 ila neredeyse 180 çocuk değerleri değişmeyecekti. Kayıp değerlerin eklenmesi garip görünebilir, ancak aniden atlayan uzunlık değerlere sahip birkaç sorundan kaçınır. (e.g, from -160 to 140) .
  • In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In GenrateDatasetsX ml , özel bir "dataset tipi" var, EDDGrid LonPM180ErddapCatalog'tan, bu da sizin üretmenize izin verir datasets.xml Çünkü EDDGrid LonPM180 veri setleri her birinden EDDGrid Bir veri kümesi ERDDAP Bu 180'den daha uzun bir değere sahiptir. Bu, bu veri kümelerinin iki versiyonunu sunar: Orijinal, aralığı 0 ile 360, Ve yeni veri kümesi, aralıktaki uzun değerlerle -180 ila 180.

Çocuk veri kümesi her biri içinde EDDGrid LonPM180 veri kümesi bir an olacak EDDGrid Eski veri kümesine işaret edenErddap veri setinden. Yeni veri kümesinin datasetID Orijinal veri kümesi artı "\_LonPM180" adı olacaktır. Örneğin,

    <dataset type="EDDGridLonPM180" datasetID="erdMBsstdmday\\_LonPM180" active="true">
<dataset type="EDDGridFromErddap" datasetID="erdMBsstdmday\\_LonPM180Child">
<!-- SST, Aqua MODIS, NPP, 0.025 degrees, Pacific Ocean, Daytime
(Monthly Composite) minLon=120.0 maxLon=320.0 -->
<sourceUrl>https://coastwatch.pfeg.noaa.gov/erddap/griddap/erdMBsstdmday
</sourceUrl>
</dataset>
</dataset>

Put the Put the EDDGrid LonPM180 dataset Aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda Orijinal veri kümesi içinde datasets.xml . Bu bazı olası sorunlardan kaçınır.

Alternatif olarak, değiştirebilirsiniz EDDGrid Erddap çocuk veri setinden orijinal dataset's datasets.xml . Sonra, veri kümesinin sadece bir versiyonu olacak: içinde uzun süreli değerler olan -180 ila 180. Bunu cesaret ediyoruz çünkü veri setinin her versiyonu daha uygun olduğunda zaman var.

  • Bir veri kümesinin iki versiyonunu sunarsanız, örneğin, en uzun olan 0 ila 360 ve bir tane uzunlu -180 ile 180:

    • Seçmeliyi kullanabilirsiniz [<erişilebilir erişilebilir erişilebilir erişilebilir Via Via WMS >false</ erişilemez / Via Via WMS >) (#accessibleviawms) 0-360 veri kümesi ile forcibly devre dışı bıraktı WMS Bu veri kümesi için hizmet. O zaman, veri kümesinin sadece LonPM180 versiyonu erişilebilir olacak WMS .
    • LonPM180 dataset up-to-date'i alt veri kümesine değişikliklerle tutmak için birkaç yol var:
      • Eğer çocuk veri kümesi bir şeydir EDDGrid Erddap veri kümesinden, aynı zamanda bir veri kümesini referanslar ERDDAP™ Ama LonPM180 veri seti doğrudan alt veri kümesine abone olmaya çalışacak, böylece her zaman güncel. Doğrudan abonelikler abonelikleri doğrulamanızı istediğiniz e-postaları oluşturmaz - doğrulama otomatik olarak yapılmalıdır.
      • Eğer çocuk veri kümesi bir an değil EDDGrid Erddap veri setinden bu aynı zamanda ERDDAP™ LonPM180 veri kümesi, alt veri kümesine abone olmak için düzenli abonelik sistemini kullanmaya çalışacak. Abonelik sisteminiz varsa ERDDAP™ Buna karşılık, abonelikleri doğrulamanızı rica etmeniz gerekir. Lütfen bunu yapın.
      • Abonelik sisteminiz varsa ERDDAP™ Dışarı çıktı, LonPM180 veri seti bazen LonPM180 veri setine kadar eski metadata olabilir. Bu nedenle abonelik sistemi kapatılırsa, [seçmiş sistemi kapatmalısınız]<reload HerNMinutes> (#reload allnminutes) LonPM180 veri kümesinin daha küçük bir sayıya ayarlanması, bu yüzden çocuk veri kümesine değişiklikleri yakalamak daha olasıdır.
  • Maksimum uzunluk > 360 ile veri setleri için, aşağıdaki opsiyonel yapılandırmayı maksimum değeri belirlemek için kullanın ve veri setleri -180'e 180'e kadar düzeltilecektir.

    <maxSourceLon>540</maxSourceLon>

EDDGrid LonPM180 iskelet XML

  <dataset type="EDDGridLonPM180" datasetID\="..." active\="..." >
      <reloadEveryNMinutes>...</reloadEveryNMinutes> <!-- 0 or 1 -->
      <updateEveryNMillis>...</updateEveryNMillis> <!-- 0 or 1. For
        EDDGridFromDap, this gets the remote .dds and then gets the new
        leftmost (first) dimension values. -->
      <accessibleTo>...</accessibleTo> <!-- 0 or 1 -->
      <graphsAccessibleTo>auto|public</graphsAccessibleTo> <!-- 0 or 1 -->
      <accessibleViaWMS>...</accessibleViaWMS> <!-- 0 or 1 -->
      <defaultDataQuery>...</defaultDataQuery> <!-- 0 or 1 -->
      <defaultGraphQuery>...</defaultGraphQuery> <!-- 0 or 1 -->
      <nThreads>...</nThreads> <!-- 0 or 1 -->
      <dimensionValuesInMemory>...</dimensionValuesInMemory> <!-- 0 or 1 -->
      <fgdcFile>...</fgdcFile> <!-- 0 or 1 -->
      <iso19115File>...</iso19115File> <!-- 0 or 1 -->
      <onChange>...</onChange> <!-- 0 or more -->
      <dataset>...</dataset> <!-- The child EDDGrid dataset. -->
  </dataset>

EDDGrid Lon0360

** EDDGrid Lon0360** Bir çocuğun uzun değerlerini değiştirir (Kapalı kapalı kapalı kapalı) EDDGrid Bazı uzunlık değerleri 0'dan daha az olan veri seti (Örneğin, -180 ila 180) Bu yüzden 0 ila 360 arasındalar (Bu nedenle isim) .

  • Sonsuzluk yakınında çalışmak sorunlara neden olur, ne olursa olsun, sonsuzluk 0 veya uzun bir 180 yaşındadır. Bu veri set türü, aynı veri kümesinin iki versiyonunu sunarak bu problemlerden kaçınmanızı sağlar: aralığında uzunlık değerlere sahip biri -180 ila 180 ("Atlantisan"?) . aralığı 0 ile 360 arası değerlerden biri ("Pacifisan"?) ,
  • Çocuk veri setleri için 0'dan daha az olan tüm uzun değerlerle, yeni uzunlık değerlerin tümü sadece 360 derece daha yüksektir. Örneğin, uzun süreli değerlerle bir veri kümesi -180 ila -120 180 ila 240 arasında uzun bir veri kümesi haline gelecektir.
  • Tüm dünya için uzun bir değere sahip olan çocuk veri setleri için (kabaca -180 ila 180) Ancak yeni uzunlık değeri yeniden düzenlenmiştir. (kabaca kabaca kabaca) 0 to 360: Orijinal -180 to 0 değer 180 ila 360'a dönüştürülür ve uzun aralığın sonuna kadar değişir. Orijinal 0 ile neredeyse 180 değer değişmemektedir.
  • Çocuk veri setleri için lon=0 ama dünyayı kapsamaz, ERDDAP™ Dünyayı kapsayan bir veri kümesi yapmak için gerekli olan eksik değerleri ekleyin. Örneğin, 40 ila 20 yaşlarındaki bir çocuk veri kümesi 0 ila 360 arasında uzun bir veri kümesi haline gelecektir. 0 ila 20 çocuk değerleri değişmemiş olacaktır. Yeni uzunlık değerleri 20 ila 320 arasında eklenecektir. İlgili veri değerleri \_FillValues olacaktır. -40 ila 0 çocuk değerleri 320 ila 360 olacaktır. Kayıp değerlerin eklenmesi garip görünebilir, ancak aniden atlayan uzunlık değerlere sahip birkaç sorundan kaçınır. (E.g, 20 ila 320) .
  • In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In GenrateDatasetsX ml , özel bir "dataset tipi" var, EDDGrid Lon0360 From ErddapCatalog, bu size yaratmanızı sağlar datasets.xml Çünkü EDDGrid Lon0360 datasets from each of the EDDGrid Bir veri kümesi ERDDAP Bu 180'den daha uzun bir değere sahiptir. Bu, bu veri kümelerinin iki versiyonunu sunar: Orijinal, aralığı 0 ile 360, Ve yeni veri kümesi, aralıktaki uzun değerlerle -180 ila 180.

Çocuk veri kümesi her biri içinde EDDGrid Lon0360 veri kümesi bir an olacak EDDGrid Eski veri kümesine işaret edenErddap veri setinden. Yeni veri kümesinin datasetID Orijinal veri kümesi artı "\_Lon0360" adı olacaktır. Örneğin,

    <dataset type="EDDGridLon0360" datasetID="erdMBsstdmday\\_Lon0360" active="true">
<dataset type="EDDGridFromErddap" datasetID="erdMBsstdmday\\_Lon0360Child">
<!-- SST, Aqua MODIS, NPP, 0.025 degrees, Pacific Ocean, Daytime
(Monthly Composite) minLon=-40.0 maxLon=20.0 -->
<sourceUrl>https://coastwatch.pfeg.noaa.gov/erddap/griddap/erdMBsstdmday
</sourceUrl>
</dataset>
</dataset>

Put the Put the EDDGrid Lon0360 dataset Aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda aşağıda Orijinal veri kümesi içinde datasets.xml . Bu bazı olası sorunlardan kaçınır.

Alternatif olarak, değiştirebilirsiniz EDDGrid Erddap çocuk veri setinden orijinal dataset's datasets.xml . Ardından, veri kümesinin sadece bir versiyonu olacak: 0 ila 360 arasında uzun süreli değerler. Bunu cesaret ediyoruz çünkü veri setinin her versiyonu daha uygun olduğunda zaman var.

  • Bir veri kümesinin iki versiyonunu sunarsanız, örneğin, en uzun olan 0 ila 360 ve bir tane uzunlu -180 ile 180:
    • Seçmeliyi kullanabilirsiniz [<erişilebilir erişilebilir erişilebilir erişilebilir Via Via WMS >false</ erişilemez / Via Via WMS >) (#accessibleviawms) 0 ile 360 dataset to forcibly devre dışı bıraktı WMS Bu veri kümesi için hizmet. O zaman, sadece -180'in 180 versiyonu veri setinin üzerinden erişilebilir olacak WMS .
    • Lon0360 dataset up-to-date'i alt veri kümesine değişikliklerle korumak için birkaç yol var:
      • Eğer çocuk veri kümesi bir şeydir EDDGrid Erddap veri kümesinden, aynı zamanda bir veri kümesini referanslar ERDDAP™ Ancak Lon0360 veri seti doğrudan alt veri kümesine abone olmaya çalışacak, böylece her zaman güncel. Doğrudan abonelikler abonelikleri doğrulamanızı istediğiniz e-postaları oluşturmaz - doğrulama otomatik olarak yapılmalıdır.
      • Eğer çocuk veri kümesi bir an değil EDDGrid Erddap veri setinden bu aynı zamanda ERDDAP™ Lon0360 veri kümesi, alt veri kümesine abone olmak için düzenli abonelik sistemini kullanmaya çalışacak. Abonelik sisteminiz varsa ERDDAP™ Buna karşılık, abonelikleri doğrulamanızı rica etmeniz gerekir. Lütfen bunu yapın.
      • Abonelik sisteminiz varsa ERDDAP™ Döndü, Lon0360 veri kümesi bazen Lon0360 veri kümesi yeniden yüklenmiş olana kadar eski metadata olabilir. Bu nedenle abonelik sistemi kapatılırsa, [seçmiş sistemi kapatmalısınız]<reload HerNMinutes> (#reload allnminutes) Lon0360 veri kümesinin daha küçük bir sayıya ayarlanması, bu yüzden çocuk veri kümesine değişiklikleri yakalamak daha olasıdır.

EDDGrid Lon0360 iskelet XML

  <dataset type="EDDGridLon0360" datasetID\="..." active\="..." >
      <reloadEveryNMinutes>...</reloadEveryNMinutes> <!-- 0 or 1 -->
      <updateEveryNMillis>...</updateEveryNMillis> <!-- 0 or 1. For
        EDDGridFromDap, this gets the remote .dds and then gets the new
        leftmost (first) dimension values. -->
      <accessibleTo>...</accessibleTo> <!-- 0 or 1 -->
      <graphsAccessibleTo>auto|public</graphsAccessibleTo> <!-- 0 or 1 -->
      <accessibleViaWMS>...</accessibleViaWMS> <!-- 0 or 1 -->
      <defaultDataQuery>...</defaultDataQuery> <!-- 0 or 1 -->
      <defaultGraphQuery>...</defaultGraphQuery> <!-- 0 or 1 -->
      <nThreads>...</nThreads> <!-- 0 or 1 -->
      <dimensionValuesInMemory>...</dimensionValuesInMemory> <!-- 0 or 1 -->
      <fgdcFile>...</fgdcFile> <!-- 0 or 1 -->
      <iso19115File>...</iso19115File> <!-- 0 or 1 -->
      <onChange>...</onChange> <!-- 0 or more -->
      <dataset>...</dataset> <!-- The child EDDGrid dataset. -->
  </dataset>

EDDGrid Side TarafındanSide

** EDDGrid Side TarafındanSide** İki veya daha fazlası EDDGrid datasets (Çocuklar) yan yana.

  • Elde edilen veri kümesi, tüm çocuk veri kümelerinden gelen değişkenlere sahiptir.
  • Ebeveynler veri kümesi ve tüm çocuk veri setleri MUST farklı datasetID s. Bir ailedeki herhangi bir isim tam olarak aynıysa, veri kümesi yüklenemez (Kombine edilen eksenlerin değerlerinin sıralanmış bir düzen olmadığı hata mesajı ile) .
  • Tüm çocuklar MUST aynı kaynak değerlerine sahip axisVariable s \[ 1+ \] (Örneğin, latitude, uzunlık) . Testin hassaslığı, test tarafından belirlenir MaçAxisNDigits .
  • Çocuklar için farklı kaynak değerleri olabilir axisVariable s \[ 0 0 0 0 \] (Örneğin, zaman) Ama genellikle aynı.
  • Ebeveynler veri kümesi tüm sahip gibi görünecek axisVariable s \[ 0 0 0 0 \] Tüm çocuklardan kaynak değerleri.
  • Örneğin, bu, bir vektörün u-komponent ile bir kaynak veri kümesini bir vektörün v-komponent ile bir araya getirmenize izin verir, böylece kombine veriler servis edilebilir.
  • Bu yöntem tarafından yaratılan çocuklar özel olarak yapılır. Onlar ayrı erişilebilir veri setleri değiller (Örneğin, müşteri veri talepleri veya Bayrak dosyaları ) .
  • Ebeveynler için küresel metadata ve ayarlar ilk çocuk için küresel metadata ve ayarlardan geliyor.
  • İlk çocuğu oluştururken bir istisna varsa, ebeveyn yaratılmayacaktır.
  • Diğer çocukları oluştururken bir istisna varsa, bu herToTo e-posta göndermek için bir e-posta gönderir. (belirtildiği gibi, Kurulum.xml ) Ve diğer çocuklarla devam eder.

EDDGrid Side TarafındanSide iskelet XML

  <dataset type="EDDGridSideBySide" datasetID\="..." active\="..." >
      <accessibleTo>...</accessibleTo> <!-- 0 or 1 -->
      <graphsAccessibleTo>auto|public</graphsAccessibleTo> <!-- 0 or 1 -->
      <accessibleViaWMS>...</accessibleViaWMS> <!-- 0 or 1 -->
      <defaultDataQuery>...</defaultDataQuery> <!-- 0 or 1 -->
      <defaultGraphQuery>...</defaultGraphQuery> <!-- 0 or 1 -->
      <matchAxisNDigits>...</matchAxisNDigits> <!-- 0 or 1 -->
      <nThreads>...</nThreads> <!-- 0 or 1 -->
      <dimensionValuesInMemory>...</dimensionValuesInMemory> <!-- 0 or 1 -->
      <fgdcFile>...</fgdcFile> <!-- 0 or 1 -->
      <iso19115File>...</iso19115File> <!-- 0 or 1 -->
      <onChange>...</onChange> <!-- 0 or more -->
      <dataset>...</dataset> <!-- 2 or more -->
  </dataset>

EDDGrid AggregateExistingDimension

** EDDGrid AggregateExistingDimension** İki veya daha fazlası EDDGrid Her birinin ilk boyut için farklı bir değer yelpazesi vardır, ancak diğer boyutlar için aynı değerler.

  • Örneğin, bir çocuk veri kümesi 366 değere sahip olabilir (2004 için) Zaman boyutu ve başka bir çocuğun 365 değeri olabilir (2005) Zaman boyutu için.
  • Tüm diğer boyutlardaki tüm değerler (Örneğin, latitude, uzunlık) MUST tüm çocuklar için aynıdır. Testin hassaslığı, test tarafından belirlenir MaçAxisNDigits .
  • Sorted Dimension Values - Her boyut için değerler MUST sıralanmış sırayla (Yükselmek veya inmek) . Değerler düzensiz bir şekilde uzayılabilir. Bir bağ yoktur. Bu, bir zorunluluktur CF metadata standart . Herhangi bir boyut değerleri sıralanmış bir şekilde değilse, veri kümesi yüklenemez ve yüklenemez. ERDDAP™ Giriş dosyasında ilk değersiz değeri tanımlayacak, Büyük Parent Yönetmeny /loglar /log.txt .

Unsorted boyut değerleri neredeyse her zaman kaynak veri kümesi ile bir problem göstermektedir. Bu en yaygın olarak yanlış bir isim veya uygunsuz bir dosya aggregasyona dahil edildiğinde meydana gelir, bu da değersiz bir zaman boyutuna yol açar. Bu sorunu çözmek için, hata mesajını bu konuda görmek ERDDAP™ Giriş.txt dosyası, zaman değerini bulmak için. Ardından, ilgili dosyayı bulmak için kaynak dosyalarına bakın (veya bir tane daha sonra veya bir tane) Bu, aggregasyona ait değildir.

  • Ebeveynler veri kümesi ve çocuk veri seti MUST farklı datasetID s. Bir ailedeki herhangi bir isim tam olarak aynıysa, veri kümesi yüklenemez (Kombine edilen eksenlerin değerlerinin sıralanmış bir düzen olmadığı hata mesajı ile) .
  • Şu anda, çocuk veri seti MUST bir an EDDGrid FromDap dataset ve MUST, agred boyutunun en düşük değerlerine sahiptir. (Genellikle en eski zaman değerleri) . Diğer tüm çocuklar MUST neredeyse aynı veri setleri (Sadece ilk boyut için değerlerde farklılaşma) Ve sadece onların sourceUrl .
  • Toplam veri kümesi ilk çocuktan metadata alır.
  • The The The The The The The The GenrateDatasets X ml programı Kaba bir taslak yapabilir datasets.xml için EDDGrid AggregateExistingDimension, servis edilen bir dizi dosyaya dayanarak Hyrax veya THREDDS sunucusu. Örneğin, bu girişi program için kullanın (URL'deki "/1988" örneği daha hızlı çalıştırıyor) :
      EDDType? EDDGridAggregateExistingDimension  
      Server type (hyrax, thredds, or dodsindex)? hyrax
      Parent URL (for example, for hyrax, ending in "contents.html";
        for thredds, ending in "catalog.xml")
      ? https://opendap.jpl.nasa.gov/opendap/ocean\\_wind/ccmp/L3.5a/data/
        flk/1988/contents.html
      File name regex (for example, ".\\*\\.nc")? month.\\*flk\\.nc\\.gz
      ReloadEveryNMinutes (for example, 10080)? 10080

Elde edilen sonucu kullanabilirsiniz< sourceUrl > Etiketler ya da onları silip yok et< sourceUrl > tag (bu yeni dosyalar her seferinde veri setinin yeniden yüklendiği fark edilir.

EDDGrid AggregateExistingDimension iskelet XML

  <dataset type="EDDGridAggregateExistingDimension" datasetID\="..."
        active\="..." >
      <dataset>...</dataset> <!-- This is a regular EDDGridFromDap dataset
        description child with the lowest values for the aggregated
        dimensions. -->
      <sourceUrl>...</sourceUrl> <!-- 0 or many; the sourceUrls for
        other children. These children must be listed in order of
        ascending values for the aggregated dimension. -->
      <sourceUrls serverType="..." regex="..." recursive="true"
        pathRegex\=".\"
        >https://someServer/someDirectory/someSubdirectory/catalog.xml</sourceUrls>
        <!-- 0 or 1. This specifies how to find the other children,
        instead of using separate sourceUrl tags for each child. The
        advantage of this is: new children will be detected each time
        the dataset is reloaded. The serverType must be "thredds",
        "hyrax", or "dodsindex".         An example of a regular expression (regex) (tutorial) is .\
\.nc
        recursive can be "true" or "false".
        Only directory names which match the
        <pathRegex>
        (default=".\*") will be accepted.
        A thredds catalogUrl MUST include "/thredds/catalog/".
        An example of a thredds catalogUrl is
        https://thredds1.pfeg.noaa.gov/thredds/catalog/Satellite/aggregsatMH/
          chla/catalog.xml

        An example of a hyrax catalogUrl is
        https://opendap.jpl.nasa.gov/opendap/allData/ccmp/L3.5a/monthly/
        flk/1988/contents.html

        An example of a dodsindex URL is
        https://opendap.jpl.nasa.gov/opendap/GeodeticsGravity/tellus/L3/mascon/RL06/JPL/v02/CRI/netcdf/contents.html
        (Note the "OPeNDAP logo at the top of the page.)
        When these children are sorted by filename, they must be in
        order of ascending values for the aggregated dimension. -->
      <accessibleTo>...</accessibleTo> <!-- 0 or 1 -->
      <graphsAccessibleTo>auto|public</graphsAccessibleTo> <!-- 0 or 1 -->
      <accessibleViaWMS>...</accessibleViaWMS> <!-- 0 or 1 -->
      <defaultDataQuery>...</defaultDataQuery> <!-- 0 or 1 -->
      <defaultGraphQuery>...</defaultGraphQuery> <!-- 0 or 1 -->
      <matchAxisNDigits>...</matchAxisNDigits> <!-- 0 or 1 -->
      <nThreads>...</nThreads> <!-- 0 or 1 -->
      <dimensionValuesInMemory>...</dimensionValuesInMemory> <!-- 0 or 1 -->
      <fgdcFile>...</fgdcFile> <!-- 0 or 1 -->
      <iso19115File>...</iso19115File> <!-- 0 or 1 -->
      <onChange>...</onChange> <!-- 0 or more -->
  </dataset>

EDDGrid Kopya kopya

** EDDGrid Kopya kopya** Bir başkanın yerel kopyasını yapar ve korur EDDGrid ‘Veriler ve yerel kopyadan veri servis eder.

  • EDDGrid Kopya kopya (Ve tabular verileri için, EDDTableCopy ) Kullanımı çok kolaydır ve çok etkili Uzak bir veri kaynağından veri servis eden en büyük problemlerden bazılarına çözüm:
  • Uzak bir veri kaynağından gelen verilere erişim yavaş olabilir.
    • Yavaş olabilir çünkü doğal olarak yavaş (Örneğin, verimli bir sunucu türü) ,
    • Çünkü çok fazla talep tarafından boğuluyor,
    • Ya da sunucunuz veya uzaktan sunucunuz bant genişliği sınırlıdır.
  • Uzak veri kümesi bazen kullanılamaz (Tekrar, çeşitli nedenlerle) .
  • Veriler için bir kaynağa dayanarak iyi ölçeklendirmez (Örneğin, birçok kullanıcı ve birçok kişi ERDDAP s onu kullanır) .  
  • Nasıl çalışır - EDDGrid Bu sorunları otomatik olarak verilerin yerel bir kopyasını yaparak ve yerel kopyadan servis ederek çözer. ERDDAP™ Yerel kopyadan çok, çok hızlı bir şekilde verilere hizmet edebilir. Ve yerel bir kopya yapmak uzaktan sunucudaki yükü rahatlatır. Ve yerel kopya orijinalin bir yedekidir, bu da bir şey orijinalin başına gelir.

Bir veri kümesinin yerel bir kopyasını yapmak için yeni bir şey yoktur. Burada yeni olan şey bu sınıfın bunu yaptığıdır\*kolay kolay kolay kolay kolay\*Yaratmak ve yaratmak\*maintain maintain maintain maintain\*Verilerin yerel bir kopyası bir veriden\*Çeşitli çeşitlilik çeşitliliği çeşitlilik çeşitliliği çeşitlilik çeşitliliği çeşitliliği çeşitliliği çeşitlilik çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitlilik çeşitliliği çeşitliliği çeşitliliği çeşitlilik çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitlilik çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitlilik çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitlilik çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitlilik çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitlilik çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitlilik çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitlilik çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitlilik çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitlilik çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitlilik çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitlilik çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitlilik çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitlilik çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği\*Uzak veri kaynakları ve türleri\*Ekle metadata\*Verileri kopyalarken.

  • Chunks of Data – EDDGrid Kopya, verilerin yerel kopyasını uzaktan kumandanlarını talep ederek yapar.<dataset> Solun her değeri için bir chunk olacak (İlk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce) eksen değişkeni. EDDGrid Kopya, eksen için uzaktan veri kümesinin indeks sayılarına güvenmiyor - bunlar değişebilir.

WARNING: Bir verilerin büyüklüğü çok büyük ise (> > > > 2GB) Bu sorunlara neden olur, EDDGrid Kopya kullanılabilir. (Üzgünüm, gelecekte bu problem için bir çözüm olmasını umuyoruz.)

  • \[ Bir alternatif için EDDGrid Kopyalama - Uzak veriler indirme edilebilir dosyalar aracılığıyla kullanılabilirse, bir web hizmeti değil, kullanım Önbelli önbelli önbelli önbelli önbelli önbelli önbelli önbelli önbelli önbelli önbelli FromUrl seçeneği for EDDGrid FromFiles Uzak dosyaların yerel bir kopyasını yapar ve yerel dosyalardan verilere hizmet eder. \]
  • Yerel dosyalar - Her bir veri kümesi ayrı ayrı olarak depolanır NetCDF Bir alt yönlendirmede dosya Büyük Parent Yönetmeny /copy / * datasetID * / (belirtildiği gibi, Kurulum.xml ) . Yönelme değerlerinden oluşturulan Filenameler, onları dosya adı güvenli hale getirmek için değiştirildi (Örneğin, hipnozlar "x2D" tarafından değiştirildi.) - Bu gerçek verileri etkilemez.  
  • Yeni Veri – Her seferinde EDDGrid Kopya yeniden yükleniyor, uzaktan kontrol ediyor<dataset>, hangi chunksların mevcut olduğunu görmek için. Bir veri kümesi için dosya zaten mevcut değilse, chunk'ı bir kuyruka almak için bir istek eklendi. ERDDAP “ÖrnekThread, tüm kuyruk talepleri veri, bir tane. GörevThread'in faaliyetleri için istatistikler görebilirsiniz Durum Sayfa Ve içinde Günlük Rapor . (Evet, ERDDAP™ Bu süreçte birden fazla görev yapabilirdi, ancak bu, uzak veri kaynağının bant genişliği, hafıza ve CPU zamanı ve birçok yerel yerelde çok şey kullanırdı. ERDDAP ‘Grup bant genişliği, bellek ve CPU zamanı, bunların hiçbiri iyi bir fikir değil.)

NOT: İlk kez bir kez EDDGrid Kopya yüklenir, (Eğer hepsi iyi giderse) Verilerin chunks için birçok istek, görevThread'in kuyruğuna eklenecek, ancak yerel veri dosyaları oluşturulmayacaktır. Bu yüzden inşaatçı başarısız olacak ama görevThread çalışmaya devam edecek ve yerel dosyaları yaratacaktır. Eğer hepsi iyi giderse, görevThread bazı yerel veri dosyaları ve bir sonraki veri setini yeniden yüklemeye çalışır (-15 dakika) Başarılı olacak, ancak başlangıçta çok sınırlı miktarda veri ile.

NOT: Yerel veri setinin bazı verilere sahip olduktan sonra ve görünüşe göre ERDDAP Uzak veri kümesi geçici veya kalıcı olarak erişilebilir değilse, yerel veri kümesi hala çalışacak.

WARNING: Uzak veri kümesi büyük ve / veya uzaktan sunucu yavaş ise (Bu sorun değil mi?!) Tam bir yerel kopya yapmak için uzun zaman alacaktır. Bazı durumlarda, gerekli zaman kabul edilemez olacaktır. Örneğin, 1 TB'yi bir T1 hattı üzerinden iletme (0.15 GB /) En az 60 gün sürer, en uygun koşullar altında. Ayrıca, çok sayıda bant genişliği, bellek ve CPU zamanı uzaktan ve yerel bilgisayarlarda kullanır. Çözüm, uzaktan verilerin yöneticisine sert bir sürücü göndermektir, böylece s/he, veri kümesinin bir kopyasını yapabilir ve sert sürücüyü size geri gönderebilir. Bu verileri başlangıç noktası olarak kullanın ve EDDGrid Kopya verileri ona ekleyecek. (Bu bir yoldur ki, Amazon'un EC2 Bulut Servisi Problemi halledin, onların sistemi çok fazla bant genişliğine sahip olsa bile.)

WARNING: Solest için verilen bir değer varsa (İlk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce) eksen değişkeni uzaktan veri kümesinden kaybolur, EDDGrid Kopya yerel kopyalanan dosyayı silmiyor. Eğer istersen, onu kendiniz silebilirsiniz.

Grid Copy check Source Data Data Data Data

The The The The The The The The datasets.xml Bu veri kümesi için isteğe bağlı bir etiket olabilir

    <checkSourceData>true</checkSourceData>  

Varsayılan değer doğrudur. Eğer / bunu yanlış ayarlarsanız, veri seti mevcut olup olmadığını görmek için kaynak veri kümesini hiç kontrol etmeyecektir.

Sadece bu yana

Size söyleyebilirsin EDDGrid Kaynak veri kümesinin bir kopyasını yapmak için kopyalayın, tüm kaynak veri kümesi yerine, formda bir etiket ekleyerek<Sadece> Bazı bazıları bazıları bazıları bazıları Değer Değer Değer Değer Değer Değer Değer Değer Değer Değer Değer Değer </ Only Since> to the dataset's datasets.xml chunk. EDDGrid Kopya sadece ilk boyut değerleri ile ilgili veri değerlerini indirecektir. (Genellikle zaman boyutu) hangisi daha büyük Bazı bazıları bazıları bazıları bazıları Değer Değer Değer Değer Değer Değer Değer Değer Değer Değer Değer Değer . Bazı bazıları bazıları bazıları bazıları Değer Değer Değer Değer Değer Değer Değer Değer Değer Değer Değer Değer Olabilir:

  • Bir göreceli zaman ile belirtilir now- nUnits . Örneğin,<Sadece> now- 2 yıl</ Sadece>, veri kümesinin yalnızca dış boyut değerlerinin değerlerinin nerede olduğu için yerel kopyalar yapmasını söyler (Genellikle zaman değerleri) Son 2 yıl içinde (Her seferinde veri kümesi yeniden hesaplanır, bu yeni veriler kopyalamak için göründüğünde) . Görün bakalım, now- nUnits Kelimemi Açıklama . Bu, ilk boyut zaman verileri varsa faydalıdır, genellikle yapar.

    EDDGrid Kopya, veriye sahip olan yerel veri dosyaları silmiyor, zamanla, eski haline gelir now- nUnits . Bu dosyaları herhangi bir zaman için seçerseniz silebilirsiniz. Eğer yaparsan, güçlü bir şekilde bir ayarladığınızı öneriyoruz Bayrak bayrağı After you delete the files to tell EDDGrid Önbellek dosyaların listesini güncellemek için kopyalayın.

  • Bir ISO 8601 dizesi olarak belirtilen zaman sabit bir nokta yyyy-MM-ddTHH:mm:ssZ . Örneğin,<Sadece>2000-01-01T00:00Z</ only Since>, veri kümesinin yalnızca ilk boyutun değerinin \>=2000-01T00:00Z . Bu, ilk boyut zaman verileri varsa faydalıdır, genellikle yapar.  

  • Bir yüzen nokta numarası. Örneğin,<Sadece>946684800.00.0</ sadece . Birimler ilk boyuttaki destinasyon birimleri olacak. Örneğin, zaman boyutları için, birimler ERDDAP™ Her zaman vardır "seconds since 1970-01-01T00:00:00Z" . 946684800.0 "seconds since 1970-01-01T00:00:00Z" 2000-01-01T00:00Z'ye eşdeğerdir. Bu her zaman kullanışlı bir seçenektir, ancak özellikle ilk boyut zaman veriniz olduğunda yararlıdır.

EDDGrid Kopyalanan kullanım

  1. Oluşturun<dataset> Giriş girişi (Yerli tip, değil EDDGrid Kopya kopya) Uzak veri kaynağı için. Tüm istenen metadata dahil olmak üzere doğru bir şekilde çalışır.
  2. Eğer çok yavaşsa, XML kodu onu bir anda sarmak için ekleyin EDDGrid Copy dataset.
    • Farklı bir kullanım datasetID (Belki de değiştirme yoluyla datasetID Eski yaşlıların datasetID biraz biraz biraz hafif) .
    • Kopyalayın<erişilebilir erişilebilir erişilebilir erişilebilir To>,<HerNMinutes> ve<Değiştirin > Uzaktan EDDGrid 's XML to the EDDGrid Kopya XML. (Onların değerleri için EDDGrid Kopya konusu; içsel veri setleri için değerleri ilgisiz hale gelir.)
  3. ERDDAP™ Verilerin yerel bir kopyasını yapacak ve koruyacaktır.  
  • WARNING: EDDGrid Kopya, her bir chunk için veri değerlerinin hiç değişmediğini varsayar. Eğer / ne zaman yaparlarsa, chunk dosyalarını manuel olarak silmek gerekir Büyük Parent Yönetmeny /copy / * datasetID * / hangi değişti ve Bayrak bayrağı Dataset yeniden yüklenecek, böylece silinmiş chunks değiştirilecektir. Eğer veri kümesine bir e-posta aboneliğiniz varsa, iki e-posta alacaksınız: veri setinin ilk reloads ilk başladığında ve verileri kopyalamaya başladığında ve veri setlerinin yüklerini tekrar kopyalamaya başlarsınız. (otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik) Ve yeni yerel veri dosyalarını tespit edin.  
  • Tüm eksen değerleri eşit olmalıdır. Her biri için soldan hariç (İlk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce) Tüm değerler tüm çocuklar için eşit olmalıdır. Testin hassaslığı, test tarafından belirlenir MaçAxisNDigits .  
  • Ayarlar, Metadata, Değişkenler - EDDGrid Kopyalama ayarları, metadata ve kapalı kaynak veri setinden değişkenler kullanır.  
  • Metadata – Herhangi bir değişikliği değiştirmeniz gerekiyorsa addAttributes Kaynak veri kümesi ile ilişkili değişkenlerin siparişini değiştirin:
    1. Değişimi Değiştirin addAttributes Kaynak veri kümesi için datasets.xml ihtiyaç olduğu gibi.
    2. Kopyalanan dosyalardan birini delete.
    3. Set a Set a Set Bayrak bayrağı Veri kümesini hemen yeniden yüklemek için. Bir bayrak kullanıyorsanız ve veri setine bir e-posta aboneliğiniz varsa, iki e-posta alacaksınız: veri setinin ilk reloads'ı ilk kez yeniden yüklemeleri ve verileri kopyalamaya başladığında, ve başka bir şey veri setleri tekrar kopyalamaya başlarsınız. (otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik) Ve yeni yerel veri dosyalarını tespit edin.
    4. silinmiş dosya yeni metadata ile yeniden oluşturulacaktır. Kaynak veri kümesi hiç mevcut değilse, EDDGrid Kopya veri seti yeniden üretilen dosyadan metadata alacak, çünkü en genç dosyadır.

EDDGrid Tekrar iskelet XML

  <dataset type="EDDGridCopy" datasetID\="..." active\="..." >
      <accessibleTo>...</accessibleTo> <!-- 0 or 1 -->
      <graphsAccessibleTo>auto|public</graphsAccessibleTo> <!-- 0 or 1 -->
      <accessibleViaFiles>true|false(default)</accessibleViaFiles>
        <!-- 0 or 1 -->
      <accessibleViaWMS>...</accessibleViaWMS> <!-- 0 or 1 -->
      <reloadEveryNMinutes>...</reloadEveryNMinutes> <!-- 0 or 1 -->
      <defaultDataQuery>...</defaultDataQuery> <!-- 0 or 1 -->
      <defaultGraphQuery>...</defaultGraphQuery> <!-- 0 or 1 -->
      <fgdcFile>...</fgdcFile> <!-- 0 or 1 -->
      <iso19115File>...</iso19115File> <!-- 0 or 1 -->
      <onChange>...</onChange> <!-- 0 or more -->
      <matchAxisNDigits>...</matchAxisNDigits> <!-- 0 or 1 -->
      <fileTableInMemory>...</fileTableInMemory> <!-- 0 or 1 (true or false
        (the default)) -->
      <checkSourceData>...</checkSourceData> <!-- 0 or 1 -->
      <onlySince>...</onlySince> <!-- 0 or 1 -->
      <dataset>...</dataset> <!-- 1 -->
  </dataset>

EDDTable FromCassandra

EDDTable FromCassandra Birinden veri işlemek Cassandra masa. Cassandra NoSQL veritabanıdır.

  • ERDDAP™ Cassandra v2 ve v3 ile kurulumda hiçbir değişiklik veya fark olmadan çalışabilir. Biz test ettik Cassandra v2 ve v3 ondan Apache Apache . Muhtemelen bunun muhtemel olmasıdır ERDDAP™ Ayrıca DataStax'dan indirilen Cassandra ile çalışabilir.  
  • Ağustos 2019 - Mayıs 2021 için, Cassandra'yı OpenJdkk ile çalışmak için sorun yaşadık Java v8. Bir EX Meeting\_ACCESS\_VIOLATION attı. Ama şimdi (2021 Mayıs) Bu problem gitti: Cassandra v2.1.22'yi başarıyla kullanabiliriz ve OpenJdk jdk8u292-b10'u kabul edebiliriz.  

Bir Masa

Cassandra, ilişkisel veritabanıların yaptığı şekilde "joins"u desteklemez. Bir Biri ERDDAP™ EDDTable FromCassandra dataset map to one (Belki bir alt kümesinin) Cassandra masası.

Cassandra datasets.xml

  • ERDDAP™ Cassandra ile geliyor Java Sürücü, bu yüzden ayrı olarak yüklemeniz gerekmez.
  • Bu belgenin tüm bilgilerini EDDTable FromCassandra hakkında dikkatlice okuyun. Bazı detaylar çok önemlidir.
  • Cassandra Java Sürücü Apache Cassandra ile çalışmak için tasarlanmıştır (1.2+) DataStax Enterprise (3.1++) . Apache Cassandra 1.2.x kullanıyorsanız, her node için cassandra.yaml dosyasını başlangıç_native\_transport: true, sonra her düğümü yeniden başlatın.
  • Güçlü bir şekilde kullanmayı öneriyoruz GenrateDatasets X ml programı Kaba bir taslak yapmak için datasets.xml Bu veri kümesi için chunk. Daha sonra bunu iyi bir şekilde ayarlayabilirsiniz (özellikle [<Bölüm Anahtar Kaynak İsimleri> (#partitionkeysourcenames) ). XML'i bir EDDTable FromCassandra veri setini Cassandra yöneticisiyle iletişime geçerek ve web'i aramanız gereken bilgilerin çoğunu toplayabilirsiniz.

GenrateDatasets X ml, EDDTable FromCassandra için iki özel seçeneği vardır:

  1. Eğer " !!!LIST !!!" girerseniz (Alıntılar olmadan) Anahtar alanı için, program bir anahtar uzay listesini gösterecektir
  2. Belirli bir anahtar alanına girerseniz ve sonra " !!!LIST !!!" girin. (Alıntılar olmadan) Masa adı için, program bu anahtar alanda ve sütunlarında bir masa listesini gösterecektir.
Vaka hassasiyeti
  • Case-in sensitive Keyspace and Table Names - Cassandra, bir durumda hassas bir şekilde anahtar alan ve masa isimlerine sahiptir. Bu nedenle, siz MUST NEVER, ayırt edici bir kelime kullanırsınız (Ancak farklı bir durumda) Cassandra anahtar alanı veya masa adı olarak.
  • Vaka duyarlı Köşe İsimleri - Varsayılan olarak, Cassandra bir durumda sütun isimlerine karşılık verir. Cassandra'nın ayırt edici kelimeleri bir sütun adı olarak kullanıyorsanız (Lütfen hayır!) , you MUST use
        <columnNameQuotes>"<columnNameQuotes>  

in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in datasets.xml Bu veri kümesi için bu yüzden Cassandra ve ERDDAP™ sütun isimlerini bir durumda hassas bir şekilde tedavi edecek. Bu muhtemelen sizin için büyük bir baş ağrısı olacaktır, çünkü sütun isimlerinin davaya duyarlı versiyonlarını belirlemek zordur - Cassandra neredeyse her zaman sütun isimlerini gerçek durumdan bağımsız olarak gösterir.

  • İlgili deneyimi olan Cassandra yöneticisi ile yakından çalış. Eğer veri kümesi yüklenemezse, okuyun hata mesajı Neden olduğunu öğrenmek için dikkatlice.  

Cassandra<bağlantı bağlantısı Emlak Vegt;

Cassandra, belirtilebilecek bağlantı özelliklerine sahiptir. datasets.xml . Bunların çoğu Cassandra- ERDDAP™ bağlantı. Ne yazık ki, Cassandra özellikleri programmatik olarak ayarlanmış olmalıdır Java Bu yüzden ERDDAP™ Her mülk için kodu olmalıdır ERDDAP™ destekler. Şu anda, ERDDAP™ Bu özellikleri destekler: (Gösterilen varsayılanler, gördüğümüz şeydir. Sisteminizin varsayılanleri farklı olabilir.)

  • Genel Seçenekler
    <bağlantı bağlantısı Emlak adı=" sıkıştırma sıkıştırma "> Hiçbir kimse hiçbir şey yok | LZ4 | snappy </ bağlantı Emlak> (Dava duyarlı, varsayılan=none)
    (Genel kompresyon tavsiyesi: Cassandra ve ERDDAP™ Yerel / hızlı ve "LZ4" bağlantı uzak/slow ise.)
    <bağlantı bağlantısı Emlak adı=" Referanslar "> User /password / </ bağlantı Emlak> (Bu bir gerçek '/' )
    <bağlantı bağlantısı Emlak adı=" metrics "> Gerçek gerçek gerçek gerçek gerçek gerçek gerçek gerçek | Sahte sahte yanlış </ bağlantı Emlak> (2021-01-25 varsayılanydı = gerçek, şimdi görmezden geldi ve her zaman yanlış)
    <bağlantı bağlantısı Emlak adı=" port port portu "> AInteger </ bağlantı Emlak> (Yerel ikili protokol için varsayılan=9042)
    <bağlantı bağlantısı Emlak adı=" ssl "> Gerçek gerçek gerçek gerçek gerçek gerçek gerçek gerçek | Sahte sahte yanlış </ bağlantı Emlak> (varsayılan=false)
    (Hızlı denemem ssl başarısız oldu. Eğer başarılı olursanız, lütfen bana bunu nasıl yaptığını söyleyin.)
  • Sorgu Seçenekleri
    <bağlantı bağlantısı Emlak adı=" tutarlılık tutarlılık Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Seviye Düzey "> Bütün hepsi | Herhangi bir şey herhangi bir | Her\_quorum | yerel\_one | yerel\_quorum | yerel | Bir biri | quorum | Seri seri seri seri seri seri serisi | üç üç üç üçü | iki iki iki </ bağlantı Emlak> (Dava duyarlı, varsayılan=ONE)
    <bağlantı bağlantısı Emlak adı=" Getirin: "> AInteger </ bağlantı Emlak> (varsayılan=5000)
    (Size daha küçük bir değer kazandırmayın.)
    <bağlantı bağlantısı Emlak adı=" SeriConsistencyLevel "> Bütün hepsi | Herhangi bir şey herhangi bir | Her\_quorum | yerel\_one | yerel\_quorum | yerel | Bir biri | quorum | Seri seri seri seri seri seri serisi | üç üç üç üçü | iki iki iki </ bağlantı Emlak> (Davaya duyarlı, varsayılan=SERIAL)
  • Use Seçenekleri
    <bağlantı bağlantısı Emlak adı=" LinkTime "> AInteger </ bağlantı Emlak> (varsayılan=5000)
    (Bağlanmayın TimeoutMillis daha küçük bir değere.)
    <bağlantı bağlantısı Emlak adı=" KeepAlive "> Gerçek gerçek gerçek gerçek gerçek gerçek gerçek gerçek | Sahte sahte yanlış </ bağlantı Emlak> <bağlantı bağlantısı Emlak adı=" ReadTimeoutMillis "> AInteger </ bağlantı Emlak> (Cassandra'nın varsayılan okumaTimeoutMillis 12000, ama ERDDAP™ Varsayılanyi 120000'a değiştirir. Cassandra'yı okumak için atıyorsa, bunu artırmak yardımcı olmayabilir, çünkü Cassandra bazen bu seferden önce atlar. Sorun, bölme başına çok fazla veri depolamanız daha olasıdır Anahtar kombinasyonu.)
    <bağlantı bağlantısı Emlak adı=" BufferSize "> AInteger </ bağlantı Emlak> (Varsayılan BufferSize'nın ne alacağı belli değil. Bunu küçük bir değere koymayın.)
    <bağlantı bağlantısı Emlak adı=" SoLinger "> AInteger </ bağlantı Emlak> <bağlantı bağlantısı Emlak adı=" tcpNoDelay "> Gerçek gerçek gerçek gerçek gerçek gerçek gerçek gerçek | Sahte sahte yanlış </ bağlantı Emlak> (varsayılan=null)

Başka bağlantı özelliklerini ayarlamanız gerekiyorsa, bizi gör Bölüm almak için ek destek .

Tomcat'ın belirli bir başlangıç için, bağlantıProperties yalnızca verilen bir Cassandra URL için bir veri seti oluşturulur. Bu veri kümesinin tüm reloadsları ve aynı URL'yi paylaşan sonraki tüm veri setleri bu orijinal bağlantıProperties kullanacak.

CQL

Cassandra Query Language (CQL) SQL gibi yüzeysel olarak, geleneksel veritabanı tarafından kullanılan sorgu dili. Çünkü OPeNDAP 's tabular veri talepleri mimik SQL tabular veri talepleri için tasarlandı, bunun için mümkündür ERDDAP™ Tellar veri taleplerini CQL Bound/PreparedStatements'a dönüştürmek. ERDDAP™ Açıklamayı oturumlar Giriş.txt As as as as as as as as as as as as as as as as as as as as as as as as as as as metin olarak ifade: DevletçilikAsText
Gördüğün ifadenin versiyonu, ifadenin bir metin gösterimi olacak ve sadece "?" kısıtlama değerlerinin yer alacağı.  
Çok basit değil – Ne yazık ki, CQL hangi sütunların hangi kısıtlamaların olduğu konusunda birçok kısıtlamaya sahiptir, örneğin, bölüm anahtar sütunlar = ve IN ile kısıtlanabilir, bu yüzden ERDDAP™ Cassandra'ya bazı kısıtlamalar gönderir ve veriler Cassandra'dan alındıktan sonra tüm kısıtlamalar uygular. Yardım etmek için yardım etmek ERDDAP™ Cassandra ile verimli bir şekilde başa çıkmanız gerekir [<Bölüm Anahtar Kaynak İsimleri> (#partitionkeysourcenames) [ ]<SetColumn SourceNames>] (#clustercolumnsourcenames) (Ve)<indexColumn SourceNames>] (#indexcolumnsourcenames) in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in datasets.xml Bu veri kümesi için. Bunlar yardımcı olmak için en önemli yoldur ERDDAP™ Cassandra ile verimli çalışır. Eğer söylemezsen ERDDAP™ Bu bilgi, veri kümesi acı verici bir şekilde yavaş olacak ERDDAP™ tonları Cassandra kaynaklarını kullanın.  

<Bölüm Key SourceNames>

Çünkü bölüm anahtarları Cassandra masalarında merkezi bir rol oynar, ERDDAP™ Onların bilmeleri gerekiyor sourceName s ve, eğer ilgiliyse, onlarla nasıl çalışılacağı hakkında başka bilgiler.

  • You MUST specify a comma-separated list of partition key source column names in datasets.xml via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via<Bölüm Key SourceNames>. Basit örnek,
        <partitionKeySourceNames>station, deviceid<partitionKeySourceNames>  

Daha karmaşık örnek,

        <partitionKeySourceNames>deviceid=1007, date/sampletime/1970-01-01<partitionKeySourceNames>
  • TimeStamp Anahtarlar - Bölüm anahtar sütunlarından biri, başka bir keretamp sütununun coarser versiyonuna sahip olan bir zamantamp sütunuysa, bunu bir kez daha belirt *BölümKeySourcName / diğerColumn SourceName / time\_precision *
    nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede nerede? time\_precision Bunlardan biri time\_precision dizeler başka yerlerde kullanılır ERDDAP . Z'yi izleyin time\_precision string varsayılandir, bu yüzden önemli değil time\_precision dize Z'de biter veya değil. Örneğin, ERDDAP™ Tarih/sampletime /1970-01-01'i yorumlar “Tarih için eğitimler, bu yöntemi kullanarak örnek zamanlı olarak kısıtlardan inşa edilebilir. time\_precision .” Sınırların gerçek dönüşümü daha karmaşıktır, ancak bu genel bakıştır. Her zaman bunu kullanın. Bu, sağlar ERDDAP™ Cassandra ile verimli çalışmak. sütunlar arasındaki bu ilişki bir Cassandra masasında bulunursa ve söylemiyorsunuz ERDDAP™ , dataset acı verici bir şekilde yavaş olacak ERDDAP™ tonları Cassandra kaynaklarını kullanın.
  • Single Single Değer Katılımcı Anahtarlar - Eğer bir şey istiyorsanız ERDDAP™ Bir bölüm anahtarının sadece bir değeri ile çalışmak için veri seti, belirt BölümKey SourceName=value . Örneğin, sayısal sütun için alıntı kullanmayın, cihazid=1007 Örneğin, bir String sütunu için alıntılar kullanın, stationid="Point Pinos"
  • Dataset Default Sort Order – Bölüm anahtarı< dataVariable > datasets.xml sonuçları Cassandra'dan varsayılan siparişi belirler. Tabii ki, kullanıcılar belirli bir dizi sonuç için uygulama ve uygulama yoluyla farklı bir sipariş isteyebilirler. orderBy (" " "" Değişken değişkenler listesi " " "") Sorularının sonuna kadar.
  • Varsayılan olarak, Cassandra ve ERDDAP™ Bir vakaya duyarlı bir şekilde sütun isimlerini tedavi edin. Ama eğer ayarlarsanız sütunNameQuotes ", ERDDAP™ Cassandra sütunu davaya duyarlı bir şekilde adlandırılacaktır.  

<Bölüm KeyCSV>

Eğer bu belirtilmişse, ERDDAP™ Cassandra'yı bölmek yerine kullanacak. Her seferinde veri kümesi yeniden yükleniyor. Bu, farklı bölüm anahtar değerlerinin listesini sağlar, kullanılacakları sırayla. Times 1970'ten bu yana saniyeler olarak belirtilmelidir-01T00:00Z. Ama aynı zamanda zaman belirtmek için iki özel alternatif yol vardır (Her biri bir dize olarak kodlandı) :

  1. Zaman 1) (AISO8601 Zaman Zamanı) (May bir dize olarak kodlanır)
  2. "zamanlar (Bir ISO8601Time, stride Saniyeler, Zaman Dur) " " "" (MUST bir dize olarak kodlanır)
    Dur Dur Dur Dur Dur Zaman ISO8601 olabilir Zaman veya " now- nUnits" zamanı (E.g., " now- 3 dakikalık") . Dur Dur Dur Dur Dur Zaman tam bir başlangıç maçı olmak zorunda değildir Zaman + x strideİkincileri. Bir süre ile bir satır () Değer her sorgudan önce birden çok sıraya genişletilir, bu yüzden bölüm listesi Anahtarlar her zaman mükemmel bir şekilde güncellenebilir. Örneğin,
    <partitionKeyCSV>
deviceid,date
1001,"times(2014-11-01T00:00:00Z, 86400, 2014-11-02T00:00:00Z)"
1007,"time(2014-11-07T00:00:00Z)"
1008,time(2014-11-08T00:00:00Z)
1009,1.4154912E9
</partitionKeyCSV>

Bu bölüm anahtar kombinasyonlarının masasına genişletin:

    deviceid,date
1001,1.4148E9
1001,1.4148864E9
1007,1.4153184E9
1008,1.4154048E9
1009,1.4154912E9

<SetColumn SourceNames>

Cassandra, küme sütunlarında SQL benzeri kısıtlamalar kabul eder, bu da birincil anahtarın ikinci bölümünü oluşturan sütunlardır. (Bölüm anahtardan sonra (s) ) . Yani, bu sütunları bu sütunları kullanarak tanımlamanız önemlidir<SetColumn SourceNames>. Bu olanak sağlar ERDDAP™ Cassandra ile verimli çalışmak. Eğer küme sütunları varsa ve söylemiyorsunuz ERDDAP , dataset acı verici bir şekilde yavaş olacak ERDDAP™ tonları Cassandra kaynaklarını kullanın.

  • Örneğin,<SetColumn SourceNames> MyClusterColumn1, myClusterColumn2 </clusterColumn SourceNames>
  • Bir Cassandra masasının küme sütunları yoksa belirtilme<SetColumn SourceNames> veya değerini belirtme.
  • Varsayılan olarak, Cassandra ve ERDDAP™ Bir vakaya duyarlı bir şekilde sütun isimlerini tedavi edin. Ama eğer ayarlarsanız sütunNameQuotes ", ERDDAP™ Cassandra sütun isimlerini bir durumda hassas bir şekilde tedavi edecektir.  

<indexColumn SourceNames>

Cassandra kabul ediyor '=' ikincil indeks sütunları üzerindeki kısıtlamalar, hangi sütunlar açıkça endeksler yarattığınız sütunlardır

    CREATE INDEX *indexName* ON *keyspace.tableName* (*columnName*);  

(Evet, ebeveynlikler gereklidir.)
Yani, bu sütunları bu sütunları kullanarak tespit ederseniz çok kullanışlıdır<indexColumn SourceNames>. Bu olanak sağlar ERDDAP™ Cassandra ile verimli çalışmak. indeks sütunları varsa ve söylemiyorsunuz ERDDAP Bazı sorgular gereksiz bir şekilde yavaşlayacak, acı verici yavaş ERDDAP™ tonları Cassandra kaynaklarını kullanın.

<maxRequestFraction>

When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When ERDDAP™ (yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden) Bir veri kümesi yükler, ERDDAP™ Cassandra'dan bölüm anahtarlarının farklı kombinasyonlarını alır. Büyük bir veri kümesi için, kombinasyon sayısı büyük olacaktır. Kullanıcıların çoğu veya tüm veri setlerini talep etmekten kaçınmasını engellemek istiyorsanız (Ya da talep eden bir istek bile ERDDAP™ Daha fazla filtrelemek için çoğu veya tüm verileri indirmek için) Ama söyleyebilirsin ERDDAP™ Sadece bazı miktarlarla bazı kombinasyon sayısını azaltan isteklerine izin vermek<maxRequestFraction>, 1e-10 arasında yüzen bir sayı olan (Bu, talepin bir milyardan fazla kombinasyona ihtiyaç duymadığı anlamına gelir.) 1. (Varsayılan olarak, bu, istek tüm veri kümesi için olabileceği anlamına gelir.) . Örneğin, bir veri kümesi bölüm anahtarlarının 10000 farklı kombinasyonuna sahiptir ve maxRequestFraction 0.1 olarak belirlenir, Ardından 1001 veya daha fazla kombinasyondan verilere ihtiyaç duyan talepler bir hata mesajı üretecektir, Ancak 1000 veya daha az kombinasyondan verilere ihtiyaç duyan talepler izin verilecektir.

Genel olarak, veri kümesi daha büyük, ayarlamanız gereken daha düşük<maxRequestFraction>. Bu yüzden küçük bir veri kümesi için 1'e ayarlayabilirsiniz, orta büyüklükte bir veri kümesi için 0.1, büyük bir veri kümesi için 0.001 ve büyük bir veri kümesi için 0.0001.

Bu yaklaşım mükemmelden uzak. Bazı makul talepleri reddedilir ve bazı çok büyük taleplere izin verilir. Ama zor bir problem ve bu çözüm hiçbir şeyden çok daha iyi.

Cassandra subsetVariables

Diğer EDDTable veri setleriyle olduğu gibi, bir komünalize listesini belirtebilirsiniz< dataVariable > > > > destinationName Küresel bir özellikte " subsetVariables “ Sınırlı sayıda değere sahip değişkenleri tanımlamak. Veri kümesi daha sonra bir .subset web sayfası olacak ve birçok web sayfasındaki düşüş listelerinde bu değişkenler için farklı değerleri gösterecektir.

Listedeki sadece önemli değişkenleri ve statik sütunları karıştırmak STRONGLY E NCO URAGED. Cassandra, farklı kombinasyonların listesini çok hızlı ve kolayca üretebilecektir. Bir istisna, bazı diğer zamanlarıntamp sütununun eş versiyonları olan zaman çizelgesi anahtarlarıdır - muhtemelen bunları listeden bırakmak en iyisidir subsetVariables Çok sayıda değer olduğundan ve kullanıcılar için çok yararlı değiller.

Giriş anahtarını içeriyorsanız, listede olmayan değişkenler muhtemelen olacaktır. çok çok çok çok çok çok çok çok çok Cassandra için hesaplamak her seferinde veri seti yeniden yükleniyor, çünkü ERDDAP™ Bilgi oluşturmak için veri kümesinin her sırasına bakmak zorunda. Aslında, sorgu muhtemelen başarısız olur. Yani, çok küçük veri setleri dışında, bu STRONGLY DISCOURAGED.

Cassandra DataTypes

Çünkü bu konuda bazı belirsizlik var Cassandra veri türleri Hangi haritaya hangi ERDDAP™ Veri türleri, bir [biri belirtmeniz gerekiyor]<dataType>] (#datatype) Her biri için etiket< dataVariable >) (#datavariable) Söylemek için ERDDAP™ Hangi veri Türü kullanmak için. Standart standart ERDDAP™ Data data data data data data Tür türleri (En yaygın Cassandra veri türleri) şunlardır:

  • boole (boole) hangisi, ERDDAP™ O zaman mağazalar as bytes
  • Yemin ederim (Int, eğer aralık -128 to 127)
  • Kısa kısa kısa kısa (Int, eğer aralık -32768 ile 32767)
  • int (Int, counter?, varint?, eğer aralık -2147483648 ila 21474836)
  • Uzun uzun uzun uzun uzun uzun (Bigint, karşı?, varint?, eğer aralık olursa -9223372036854775808 9223372036854775807)
  • yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz (yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz)
  • çift çift çift çift çift çift çift çift (Çift, decimal (Olası hassasiyet kaybı ile) Zamanlar)
  • hayır (Ascii veya metin, eğer 1 karakterden daha fazla sahiplerse)
  • String (Ascii, metin, varchar, inet, uuid, timeuuuid, blob, harita, liste?)

Cassandra'nın Zamanlar Özel bir durum: kullanımı ERDDAP 's double data Tip.

Bir String veri Türü belirtseniz ERDDAP™ Bir Cassandra haritası için, set veya liste, harita, set veya liste her Cassandra sırasındaki liste tek bir dizeye dönüştürülecektir. ERDDAP™ masa. ERDDAP™ Listeler için alternatif bir sistem vardır; aşağıda bakınız.

türü türü türü türü türü Listeler - ERDDAP "<dataType>] (#datatype) Cassandra için etiket dataVariable s düzenli olarak içerebilir ERDDAP™ Data data data data data data Tür türleri (Yukarıda bakınız) Ayrıca Cassandra liste sütunları için kullanılabilecek birkaç özel veri türü: booleanList, byteList, ubyteList, shortList, uintList, longList, ulongList, faceList, doubleList, charList, StringList. Bu liste sütunlarından biri, sonuçlarda geçtiğinde ERDDAP™ Tüm kaynak verileri liste için genişletilecektir. Boyut büyüklüğü () Veri satırları içinde ERDDAP Basit veriler Tür türleri (Örneğin, int) Bu kaynak veri sırasında tekrarlanan liste olacaktır. Boyut büyüklüğü () Zamanlar. Sonuçlar bir liste değişkeninden daha fazla içeriyorsa, verilen bir dizi veri üzerinde tüm listeler MUST aynı boyutta ve MUST "parallel" listelerine veya "parallel" listelerine sahiptir. ERDDAP™ Bir hata mesajı üretecektir. Örneğin, bir ADCP'den mevcut ölçümler için, derinlik derinliği \[ 0 0 0 0 \] , uCurrent \[ 0 0 0 0 \] , vCurrent \[ 0 0 0 0 \] Ve zCurrent \[ 0 0 0 0 \] Hepsi ilgili ve derinlik derinliği \[ 1 1 1 \] , uCurrent \[ 1 1 1 \] , vCurrent \[ 1 1 1 \] Ve zCurrent \[ 1 1 1 \] Tüm ilgili, ... Alternatif olarak, istemiyorsan ERDDAP™ Bir listeyi birden çok sıraya genişletmek için ERDDAP™ Masa, String'i olarak belirt dataVariable “Veriler Tip böylece tüm liste tek bir satırda bir String olarak temsil edilecektir. ERDDAP .

Cassandra TimeStamp Data

Cassandra'nın zaman çizelgesi verileri her zaman zaman zaman bölgelerinin farkındadır. Bir zaman bölgesi belirtmeden zaman çizelgesi verilere girerseniz, Cassandra zaman çizelgesi yerel zaman bölgesini kullanır.

ERDDAP™ Zamanlayıcı verileri destekler ve her zaman verileri sunar Zulu /GMT zamanı bölgesi. Bu yüzden Cassandra'da zaman çizelgesi verilere girerseniz, diğer bir zaman bölge diğerini kullanarak Zulu /GMT, zaman damga verileri için tüm sorgular yapmanız gerektiğini unutmayın ERDDAP™ Kullanımı Zulu /GMT zamanı bölgesi. Bu nedenle, ortaya çıkan zaman damga değerlerin ne zaman şaşırmayın ERDDAP Bölgenin yerelden yerele geçiş yapması nedeniyle birkaç saat sonra değiştirildi Zulu /GMT zamanı.

  • In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In ERDDAP " datasets.xml Ama içinde< dataVariable >Bir keretamp değişkeni için etiket, set
          <dataType>double</dataType>  

ve içinde< addAttributes > set > set

          <att name="units">seconds since 1970-01-01T00:00:00Z</att>

Integer nulls

Cassandra Cassandra'da nulls destekliyor ( ERDDAP™ int) Ve büyük ( ERDDAP™ Uzun uzun uzun uzun uzun uzun) sütunlar, ama ERDDAP™ Herhangi bir tamsayı veri türü için gerçek çıplakları desteklemez. Varsayılan olarak, Cassandra Full nulls dönüştürülecek ERDDAP™ 2147483647 sütunlar veya 9223372036854775807 uzun sütunlar için. Bunlar bazı metin çıktı dosyalarında "NaN" olarak görünecektir (Örneğin, .csv) Diğer metin çıktı dosyalarında "" (Örneğin, .htmlTable ) , ve belirli sayı (2147483647 eksik değer değerleri için) Diğer dosyalarda (Örneğin, ikili dosyaları gibi .nc ve mat) . Bir kullanıcı, "NaN", e.g, "&windSpeed=NaN" atıfta bulunarak bu tür eksik değerlerle verileri sıralayabilir.

Cassandra masanızda eksik değerleri göstermek için başka bir tamsayı değeri kullanıyorsanız, lütfen bu değeri Cassandra masasında tanımlayın. datasets.xml :

<att name="missing\_value" type="int"\>-999</att>

Cassandra yüzen nokta sütunları için, nulls NaNs'a dönüştürülür ERDDAP . Cassandra veri türleri için Strings'e dönüştürülür ERDDAP™ , nulls boş Strings'e dönüştürülür. Bu bir problem olmamalıdır.

"WARNING: Re-preparing already ready query"

  • "WARNING: Re-preparing already ready query" in tomcat /loglar/catalina.out (veya başka bir Tomcat log dosyası)
    Cassandra belgeleri, aynı sorgunun bir Hazırlanmaya iki kez yapıldığında sorun olduğunu söylüyor (veya daha fazla) . (Buna bakın Bug raporu .) Cassandra deli yapmaktan kaçınmak için, ERDDAP™ Tüm Hazırlıkları Hazırlar, böylece onları yeniden kullanabilir. Bu önbellek, Tomcat / ERDDAP™ Yeniden başlatılır, ancak bunun iyi olduğunu düşünüyorum çünkü Hazırlıklar belirli bir seansla ilişkilendirilir (between between between between between Java Cassandra) Ama bu da kaybolmuştur. Yani, bu mesajları görebilirsiniz. Başka bir çözüm bilmiyorum. Neyse ki, bir uyarı değil, bir hata değil (Cassandra performans problemlerine yol açabileceğini tehdit etse de) .

Cassandra, Hazırlıkların sonsuza kadar iyi olduğunu iddia ediyor, bu yüzden ERDDAP “Ölmüş Hazırlıklar asla güncel / güncel /nvalid olmamalıdır. Eğer bu doğru değilse ve belirli Hazırlıkların güncel / güncel/invalid olduğu konusunda hataları alırsınız, o zaman yeniden başlatmanız gerekir ERDDAP™ açıklığa kavuşturmak için ERDDAP "Sürdürülmelerin önbelleği.

Cassandra Güvenlik

See See See See Securing Cassandra

Cassandra ile çalışırken, Cassandra'ya zarar vermek için kötü niyetli bir kullanıcının zarar vermesine veya erişim sağlamaları için güvenli ve güvenli bir şekilde şeyler yapmanız gerekir. ERDDAP™ Ayrıca güvenli bir şekilde şeyler yapmaya çalışır.

  • Sizi ayarlamanızı teşvik ediyoruz ERDDAP™ Cassandra'ya Cassandra kullanıcısı olarak bağlanmak sadece erişime sahip olan bir Cassandra kullanıcısı olarak bağlanmak İlgili Masa masası (s) Ve sadece ayrıcalıklara sahiptir.
  • Size bağlantı kurmak için teşvik ediyoruz ERDDAP™ Cassandra, bu yüzden
    • Her zaman SSL kullanır,
    • Sadece bir IP adresinden bağlantı sağlar (veya adreslerin bir blok) Ve ondan ERDDAP™ kullanıcı ve kullanıcı
    • Sadece MD5'lerinde şifreler aktarıldı.
  • \[ KNOWN PROBLEM \] BağlantıProperties (Şifre de dahil!) Düz metin olarak depolanır datasets.xml . Yöneticinin Cassandra şifresine girmesine izin vermek için bir yol bulamadık ERDDAP "Tomcat'ta başlıyor (Hangi kullanıcı girişi olmadan gerçekleşir) Ancak şifre bir dosyada erişilebilir olmalıdır. Bunu daha güvenli hale getirmek için:
  • You You You You You (The the the the ERDDAP™ yönetici yönetici yönetici) Sahibi olmalıdır datasets.xml ve WRITE erişimine sahiptir.
  • Sadece kullanıcı=tomcat içeren bir grup yapın. Grubun bunu yapmak için chgrp kullanın datasets.xml Ancak sadece D ayrıcalıkları ile.
  • O-rwx ayrıcalıklarını atamak için chmod kullanın ("Diğer" kullanıcılar için OK veya WRITE erişimi yok) Çünkü datasets.xml .
  • Ne zaman içeri girdiğinde ERDDAP™ Ancak şifre ve diğer bağlantı özellikleri "özel" olarak depolanır. Java değişkenler.
  • Müşterilerden gelen istekler, Cassandra için CQL isteklerini yapmadan önce geçerliliği kontrol edilir ve kontrol edilir.
  • Cassandra'ya istekler CQL Bound/PreparedStatements ile yapılır, CQL enjeksiyonunu önlemek için. Herhangi bir durumda, Cassandra, geleneksel veri tabanlarından CQL enjeksiyonuna doğal olarak daha az hassastır enjeksiyon SQL enjeksiyon .  

Cassandra Hız

Cassandra hızlı veya yavaş olabilir. Bunu hızlı yapmak için yapabileceğiniz bazı şeyler var:

  • Genel olarak - CQL doğası, sorguların sorguların olmasıdır declarative . Sadece kullanıcının ne istediğini belirtirler. Sorunun nasıl ele alınması veya optimize edilmesi gerektiği için bir belirti veya ipucu içermezler. Bu yüzden bir yol yok ERDDAP™ Soruyu böyle bir şekilde üretmek için Cassandra’nın sorguyu optimize etmesine yardımcı oluyor (Ya da herhangi bir şekilde sorgunun nasıl ele alınacağını belirtir.) . Genel olarak, Cassandra yöneticisine şeyleri kurmak için yukarı (Örneğin, indeksler) Bazı sorgu türleri için optimize etmek.  
  • Coarser-precision timestamp partition anahtarları ile ilgili olan zamanları not sütunlarını [<Bölüm Anahtar Kaynak İsimleri> (#partitionkeysourcenames) Yardım etmenin en önemli yoludur ERDDAP™ Cassandra ile verimli çalışır. Bu ilişki bir Cassandra masasında varsa ve size söylemiyorsunuz ERDDAP™ , dataset acı verici bir şekilde yavaş olacak ERDDAP™ tonları Cassandra kaynaklarını kullanın.  
  • Set sütunlarını [[değiştir | kaynağı değiştir]<SetColumn SourceNames>] (#clustercolumnsourcenames) Yardım etmenin ikinci en önemli yoludur ERDDAP™ Cassandra ile verimli çalışır. Eğer küme sütunları varsa ve söylemiyorsunuz ERDDAP Ancak, veri için olası sorguların büyük bir alt kümesi gereksiz bir şekilde, acı verici bir şekilde yavaş olacaktır. ERDDAP™ tonları Cassandra kaynaklarını kullanın.  
  • Make Make Make Make Indexes Commonly Constrained Değişkenler için - Cassandra sütunları için indeksler yaratarak birkaç sorgu hızlandırabilirsiniz, genellikle “=" kısıtlamalar ile kısıtlanır.

Cassandra liste için indeks yapamaz, set veya harita sütunları.

  • index sütunlarını [[değiştir | kaynağı değiştir]<indexColumn SourceNames>] (#indexcolumnsourcenames) Yardım etmenin önemli bir yoludur ERDDAP™ Cassandra ile verimli çalışır. indeks sütunları varsa ve söylemiyorsunuz ERDDAP Ancak veriler için bazı sorgular gereksiz bir şekilde, acı bir şekilde yavaşlanacaktır. ERDDAP™ tonları Cassandra kaynaklarını kullanın.  

Cassandra Stats

  • "Cassandra stats" Tanı Mesajları – Her şey için ERDDAP™ Bir Cassandra veri kümesine kullanıcı sorgu, ERDDAP™ Giriş dosyasında bir çizgi yazdıracak, Büyük Parent Yönetmeny /loglar /log.txt, örneğin, sorgu ile ilgili bazı istatistiklerle, örneğin,
        \\* Cassandra stats: partitionKeyTable: 2/10000=2e-4 < 0.1 nCassRows=1200 nErddapRows=12000 nRowsToUser=7405  

Yukarıdaki örnekteki sayıları kullanarak, bu demektir:

  • When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When ERDDAP™ Son son son son (yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden yeniden) Bu veri kümesini yükledi, Cassandra dedi ERDDAP™ Bu, bölüm anahtarlarının 10000 farklı kombinasyonu vardı. ERDDAP™ Bir dosyadaki tüm farklı kombinasyonlar önbelleklendi.
  • Kullanıcının kısıtlamaları nedeniyle, ERDDAP™ İstenen verilere sahip olabilecek 10000'den 2 kombinasyon tespit etti. Yani, ERDDAP™ Cassandra'ya 2 çağrı yapacak, bölüm anahtarlarının her kombinasyonu için. (Cassandra'nın gerektirdiği şey budur.) Açıkçası, büyük bir veri kümesinin bölüm anahtarlarının çok sayıda kombinasyonu varsa ve verilen bir istek bunu büyük ölçüde azaltmıyor. Her isteğin anahtar alanı ayarlayarak azaltmasını isteyebilirsiniz [<maxRequestFraction> (#maxrequestf) . İşte, 2/10000 =2e-4, maxRequestFraction (0.1 0.1 0.1) Bu yüzden istek izin verildi.
  • Bölüm anahtarlarında kısıtlamalar uygulamadan sonra, Set sütunları Ve indeks sütunları Hangisi tarafından gönderildi ERDDAP™ Cassandra, verilerin 1200 sıralarına geri döndü ERDDAP™ Sonuçta.
  • Sonuç Setlerin olması gerekiyordu Data data data data data data Tipi = Bazı türleri Liste Listesi sütun sütun sütunları sütun sütun sütunları (Liste başına ortalama 10 öğe ile) Çünkü ERDDAP™ Cassandra'dan 1200 satırları 12000 sıraya genişletti ERDDAP .
  • ERDDAP™ Kullanıcının tüm kısıtlamaları Cassandra'dan gelen verilere her zaman uygulanır. Bu durumda Cassandra'nın ele alınmadığı kısıtlamalar 7405'e kadar sıra sayısını azaltmıyordu. Bu, kullanıcıya gönderilen satırların sayısıdır.

Bu tanılama mesajlarının en önemli kullanımı, emin olmaktır ERDDAP™ Yaptığını düşündüğünüz şey yapıyor. Değilse (Örneğin, beklenen gibi farklı kombinasyon sayısını azaltmıyor mu?) Ardından, neyin yanlış gittiğini anlamaya çalışmak için bilgiyi kullanabilirsiniz.  

  • Araştırma ve deney bulmak ve daha iyi ayarlanmış [<BağlantıProperty> (#casandra-connectionproperty) ‘s.  
  • Cassandra ile ağ bağlantısının hızını kontrol edin ve ERDDAP . Bağlantı yavaşsa, onu geliştirebileceğinizi görün. En iyi durum ne zaman olduğu ERDDAP™ Aynı şekilde bağlı bir sunucu üzerinde çalışıyor (Hızlı hızlı hızlı hızlı hızlı hızlı) Cassandra Node'yi bağlayan sunucu olarak geçiş yapın.  
  • Lütfen sabırlı olun. Buradaki bilgileri ve Cassandra belgelerinde dikkatle okuyun. Deney. Çalışmanızı kontrol edin. Cassandra- ERDDAP™ bağlantı hala beklediğinizden daha yavaştır, lütfen Cassandra masanızın şemasını ve your ERDDAP™ chunk of datasets.xml Ve bizi gör Bölüm almak için ek destek .  
  • Eğer herkes başarısız olursa, Verileri bir koleksiyonda depolamayı düşünün NetCDF v3 .nc dosyaları dosyaları dosyaları dosyaları (Özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle .nc Kullanan dosyaları CF Discrete Sampling Geometries (DSG) Tartışma veri yapıları ve bu nedenle ele alınabilir ERDDAP " EDDTable FromNcCFFiles ) . Eğer mantıksal olarak organize edilirlerse (Her biri bir uzay ve zaman için bir chunk için verilerle) , ERDDAP™ Onlardan verileri çok hızlı bir şekilde çıkarabilir.  

EDDTable FromCassandra iskelet XML

  <dataset type="EDDTableFromCassandra" datasetID\="..." active\="..." >
      <ipAddress>...</ipAddress>
        <!-- The Cassandra URL without the port number, for example,
        127.0.0.1 REQUIRED. -->
      <connectionProperty name="name">value</connectionProperty>
        <!-- The names (for example, "readTimeoutMillis") and values
          of the Cassandra properties that ERDDAP™ needs to change.
          0 or more. -->
      <keyspace>...</keyspace> <!-- The name of the keyspace that has
        the table. REQUIRED. -->
      <tableName>...</tableName> <!-- The name of the table, default = "".
        REQUIRED. -->
      <partitionKeySourceNames>...<partitionKeySourceNames>
        <!-- REQUIRED. -->
      <clusterColumnSourceNames>...<clusterColumnSourceNames>
        <!-- OPTIONAL. -->
      <indexColumnSourceNames>...<indexColumnSourceNames> <!-- OPTIONAL. -->
      <maxRequestFraction>...<maxRequestFraction>
        <!-- OPTIONAL double between 1e-10 and 1 (the default). -->
      <columnNameQuotes>...<columnNameQuotes> <!-- OPTIONAL.
        Options: \[nothing\] (the default) or ". -->
      <sourceNeedsExpandedFP\_EQ>true(default)|false</sourceNeedsExpandedFP\_EQ>
      <accessibleTo>...</accessibleTo> <!-- 0 or 1 -->
      <graphsAccessibleTo>auto|public</graphsAccessibleTo> <!-- 0 or 1 -->
      <reloadEveryNMinutes>...</reloadEveryNMinutes> <!-- 0 or 1 -->
      <defaultDataQuery>...</defaultDataQuery> <!-- 0 or 1 -->
      <defaultGraphQuery>...</defaultGraphQuery> <!-- 0 or 1 -->
      <addVariablesWhere>...</addVariablesWhere> <!-- 0 or 1 -->
      <fgdcFile>...</fgdcFile> <!-- 0 or 1 -->
      <iso19115File>...</iso19115File> <!-- 0 or 1 -->
      <onChange>...</onChange> <!-- 0 or more -->
      <addAttributes>...</addAttributes> <!-- 0 or 1 -->
      <dataVariable>...</dataVariable> <!-- 1 or more.
         Each dataVariable MUST include a <dataType> tag. See
           Cassandra DataTypes.
         For Cassandra timestamp columns, set dataType=double and
         units=seconds since 1970-01-01T00:00:00Z -->
  </dataset>

EDDTable FromDapSequence

EDDTable FromDapSequence 1. ve 2 düzey dizi içinde değişkenleri ele alır DAP sunucular gibi DAP PER (was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was at was athttps://www.pmel.noaa.gov/epic/software/dapper/Şimdi durduruldu) .

  • Güçlü bir şekilde kullanmayı öneriyoruz GenrateDatasets X ml programı Kaba bir taslak yapmak için datasets.xml Bu veri kümesi için chunk. Daha sonra bunu iyi bir şekilde ayarlamayı düzenleyebilirsiniz. Tarayıcınızda kaynak veri kümesinin DDS ve DAS dosyalarına bakarak ihtiyacınız olan bilgileri toplayabilirsiniz (örneğin .das ve .dds to the source dataset's DDS and DAS dosyaları ekleyerek). sourceUrl (an example was at at athttps://dapper.pmel.noaa.gov/dapper/epic/tao\_time\_series.cdp.dds).

  • Bir değişken bir durumda DAP Eğer .dds yanıt, değişkeni tutan veri yapısının bir “eşdeğer” olduğunu gösterir. (En hassas durumda) .

  • Bazı durumlarda, bir dizi içinde bir dizi göreceksiniz, 2 düzey bir dizi - EDDTable FromDapSequence bunları da ele alır.

EDDTable FromDapSequence iskelet XML

  <dataset type="EDDTableFromDapSequence" datasetID\="..." active\="..." >
      <sourceUrl>...</sourceUrl>
      <accessibleTo>...</accessibleTo> <!-- 0 or 1 -->
      <graphsAccessibleTo>auto|public</graphsAccessibleTo> <!-- 0 or 1 -->
      <reloadEveryNMinutes>...</reloadEveryNMinutes> <!-- 0 or 1 -->
      <defaultDataQuery>...</defaultDataQuery> <!-- 0 or 1 -->
      <defaultGraphQuery>...</defaultGraphQuery> <!-- 0 or 1 -->
      <addVariablesWhere>...</addVariablesWhere> <!-- 0 or 1 -->
      <fgdcFile>...</fgdcFile> <!-- 0 or 1 -->
      <iso19115File>...</iso19115File> <!-- 0 or 1 -->
      <onChange>...</onChange> <!-- 0 or more -->
      <outerSequenceName>...</outerSequenceName>
        <!-- The name of the outer sequence for DAP sequence data.
        This tag is REQUIRED. -->
      <innerSequenceName>...</innerSequenceName>
        <!-- The name of the inner sequence for DAP sequence data.
        This tag is OPTIONAL; use it if the DAP data is a two level
        sequence. -->
      <sourceNeedsExpandedFP\_EQ>true(default)|false</sourceNeedsExpandedFP\_EQ>
      <sourceCanConstrainStringEQNE>true|false</sourceCanConstrainStringEQNE>
      <sourceCanConstrainStringGTLT>true|false</sourceCanConstrainStringGTLT>
      <sourceCanConstrainStringRegex>...</sourceCanConstrainStringRegex>
      <skipDapperSpacerRows>...</skipDapperSpacerRows>
        <!-- skipDapperSpacerRows specifies whether the dataset
        will skip the last row of each innerSequence other than the
        last innerSequence (because Dapper servers put NaNs in the
        row to act as a spacer). This tag is OPTIONAL. The default
        is false. It is recommended that you set this to true for
        all Dapper sources and false for all other data sources. -->
      <addAttributes>...</addAttributes> <!-- 0 or 1 -->
      <dataVariable>...</dataVariable> <!-- 1 or more -->
    </dataset>

EDDTable FromDatabase

EDDTable FromDatabase Bir ilişki veritabanı masasından veya bakış görünümü.

Bir Masa veya View

Hizmet etmek istediğiniz veriler iki veya daha fazla masadaysa (Ve böylece her iki masadan bir kez veri çıkarmak için bir JOIN'a ihtiyaç duyar) Bir tane yapmak zorundasınız Denormalized (çoktan katıldı zaten zaten katıldı.) masa veya masa bakış görünümü Tüm verilerle, bir veri kümesi olarak kullanılabilir olmak istediğiniz verilerle ERDDAP .

Büyük, karmaşık veritabanları için, normalleştirilmiş masalar olarak birkaç chunks ayırmak mantıklı olabilir, her biri farklı bir veri türü ile, bu da ayrı veri kümeleri haline gelecektir. ERDDAP .

Kullanım için normalleştirilmiş bir tablo yapmak ERDDAP™ Size çılgın bir fikir gibi gelebilir. Lütfen bize güvenin. Neden birkaç nedeni var ki neden ERDDAP™ Normalleştirilmiş tablolarla çalışır:

  • Kullanıcılar için çok daha kolay. When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When ERDDAP™ Veri kümesini tek, basit, denormalize, tek masa olarak sunar, verileri anlamak için herkes çok kolaydır. Çoğu kullanıcı normalleştirilmiş tabloları hiç duymamıştır ve çok az anahtarlar, yabancı anahtarlar veya masa katılır ve neredeyse kesinlikle farklı türlerin ayrıntılarını bilmiyorlar ya da SQL'yi nasıl bir Katılmak için (veya birden çok katılımcı) Doğru şekilde. Normalleştirilmiş bir masa kullanmak tüm bu sorunlardan kaçınır. Bu nedenle sadece bir veri kümesinin sunumu için bir denormalleştirilmiş tek masanın kullanımını belirtir ERDDAP™ Kullanıcılar.  
  • Normalleştirilmiş tablolar (Anahtar sütunlarla ilgili birden çok tablo) Bir veritabanında verileri depolamak için harika. Ancak SQL'de bile, kullanıcıya geri dönen sonuç bir denormalleşmiştir. (katıldı katılan katıldı.) Tek masa. Bu nedenle, veri kümesini kullanıcılara büyük, denormalleştirilmiş, tek bir masa olarak sunmak makul görünüyor ki o zaman alt setleri isteyebilirler. (e.g., bana sıcaklığın nerede olduğu masanın sıralarını göster 30 30) .  
  • Değişiklikler yapabilirsiniz ERDDAP™ masalarınızı değiştirmeden. ERDDAP™ Veritabanınızı nasıl ayarladığınızdan farklı olabilecek birkaç gereksinimlerini vardır. Örneğin, ERDDAP™ Bu zaman çizelgesi verileri, zaman bölgesi ile 'zamanamp' alanlarında depolanmalıdır. Ayrı bir masa / görüş yaparak ERDDAP™ Bu değişiklikleri, normalleştirilmiş masayı yaptığınızda yapabilirsiniz ERDDAP . Böylece masalarınıza herhangi bir değişiklik yapmak zorunda değilsiniz.  
  • ERDDAP™ Normal masaların yapısını yeniden yaratacaktır. Verilerin hangi sütunlarının ‘outer’ masalarından geldiğini ve bu nedenle sınırlı sayıda farklı değere sahip olduğunu belirtebilirsiniz. ERDDAP™ Bu sütunlarda tüm farklı değer kombinasyonlarını toplayacak ve onları özel bir . Kullanıcıların hızlı bir şekilde veri kümesini seçmelerine yardımcı olan alt başlangıç web sayfası. Her sütun için ayrı değerler, veri kümesinin diğer web sayfalarında düşüş listelerinde de gösterilir.  
  • Normalleştirilmiş bir masa, sizden gelen verileri size yapar ERDDAP yönetici kolay. Bu veri kümesi için uzmansınız, bu yüzden hangi masalara ve hangi sütunlara katılmak ve onlara nasıl katılmak için karar verdiğiniz anlamına gelir. Bu yüzden bize el vermek zorunda değilsiniz (veya daha kötüsü, son kullanıcılar) Onlara nasıl katılmak için birkaç masa ve ayrıntılı talimatlar, sadece normalleştirilmiş masaya erişim vermek zorundasınız.  
  • Normalleştirilmiş bir masa, verilere verimli erişim sağlar. Normalleştirilmiş form genellikle normalleştirilmiş formdan erişmek için daha hızlıdır. Katılmak yavaş olabilir. Birden çok katılımcı çok yavaş olabilir.  

Veriler veritabanındaki iki veya daha fazla tablodan elde etmek için ERDDAP™ Üç seçenek vardır:  

  • Önerilen Seçenek: Normalleştirilmiş tablodan gelen verilerle birlikte bir komün veya sekme değeri dosyası oluşturabilirsiniz. Veri seti büyükse, o zaman birkaç dosyayı oluşturmak mantıklıdır, her biri denormalleştirilmiş masanın bir alt kümesi ile (Örneğin, daha küçük bir zaman aralığındaki veriler) .

Burada büyük avantaj, bunun olmasıdır ERDDAP™ Kullanıcı isteklerini veritabanınız tarafından daha fazla çaba olmadan işlemek mümkün olacaktır. Bu yüzden ERDDAP™ Veritabanınıza veya güvenlik riskinize yük olmayacaktır. Bu neredeyse tüm koşullar altında en iyi seçenek çünkü ERDDAP™ Genellikle bir veritabanından daha hızlı dosyaların verileri alabilir (.csv dosyalarını değiştirirsek .nc CF dosyaları) . (Sebepin bir kısmı, bunun nedenidir. ERDDAP +files sadece bir sistemdir ve değişiklikler yapmak zorunda değildir, sağlarken değişiklikler yapmak zorunda değildir ACID (Atomluk, Consistency, Isolation, Durability) .) Ayrıca, muhtemelen RAIDlerden birinde verileri depolayabildiğimiz için ayrı bir sunucuya ihtiyacınız olmayacak ve mevcut bir mevcutla erişime ihtiyacınız olmayacak. ERDDAP™ Mevcut bir sunucuda.

  • Tamam Seçenek: Sadece normalleştirilmiş masa ile farklı bir bilgisayarda yeni bir veritabanı kurdunuz. Bu veritabanı MariaDB, Natasha ve PostgreSQL gibi ücretsiz ve açık bir kaynak veritabanı olduğundan bu seçenek çok pahalıya mal olmaz.

Burada büyük avantaj, bunun olmasıdır ERDDAP™ Mevcut veritabanınız tarafından daha fazla çaba olmadan kullanıcı isteklerini işlemek mümkün olacaktır. Bu yüzden ERDDAP™ Mevcut veritabanınızda bir yük olmayacak. Bu aynı zamanda çok fazla güvenlik kaygısını ortadan kaldırır çünkü ERDDAP™ Mevcut veritabanınıza erişmek zorunda kalmayacak.

  • Discouraged Seçenek: Bağlayabiliriz ERDDAP™ Mevcut veritabanınıza. Bunu yapmak için, ihtiyacınız var:

    • Farklı bir masa oluşturun veya verilerin denormalleştirilmiş masası ile görüşün.
    • Sadece normalleştirilmiş masaya erişimi olan bir "erddap" kullanıcısı oluşturun (s) .  

Bu, verilerin çok sık değiştiği bir seçenektir ve vermek istersiniz ERDDAP™ Kullanıcılar bu değişikliklere anında erişim; ancak, hatta bu nedenle, dosya seçeneğini yukarıdaki ve periyodik olarak kullanmak mantıklı olabilir. (Her 30 dakika?) Bugünün verileri olan dosyayı değiştirmek. Bu yaklaşımın büyük dezavantajları, bunun ERDDAP™ Kullanıcı istekleri muhtemelen veritabanınıza çok büyük bir yük taşıyacak ve bunun ERDDAP™ bağlantı bir güvenlik riski (Riski en aza indirebilirsek de risk) .

Normalleştirilmiş tablo yapmak veya görünüm için görmek ERDDAP™ Birkaç değişiklik yapmak için iyi bir fırsat ERDDAP™ ihtiyaçlar, orijinal masalarınızı etkilemez bir şekilde:

  • Postgres çağrılarının aradığı verileri kullanmak için tarih ve zaman not alanları /columns Değiştirin Zaman bölgesi ile zaman (veya veritabanınızda eşdeğer) . Zaman alanı bilgisi olmadan Timestamps doğru çalışmıyor ERDDAP .
  • Kullanıcıların genellikle aradığı sütunlar için indeksler yapın.
  • Çok farkında olun Alan/column isimleri (Örneğin, tüm alt dosyaları kullanın) Onları yazarken.
  • Masa için ve alan/column isimleri için ayrı kelimeler kullanmayın.

Normalleştirilmiş masaya veya görüşe yardımcı olmanız gerekiyorsa, lütfen veritabanı yöneticinize ulaşın. Tüm bu yaklaşım veya strateji hakkında konuşmak istiyorsanız, bunu yapmak için en iyisini yapın, lütfen e-posta Chris. John at noaa.gov.

Veritabanında veritabanı datasets.xml

Doğruyu yaratmak zordur datasets.xml Bilgi için gerekli olan bilgiler ERDDAP™ Veritabanına bir bağlantı kurmak için. Sabırlı olun. Yöntemsel olun.

  • Güçlü bir şekilde kullanmayı öneriyoruz GenrateDatasets X ml programı Kaba bir taslak yapmak için datasets.xml Bu veri kümesi için chunk. Daha sonra bunu iyi bir şekilde ayarlamayı düzenleyebilirsiniz.

GenrateDatasets X ml EDDTableFromDatabase için üç özel seçeneği vardır:

  1. Eğer " !!!LIST !!!" girerseniz (Alıntılar olmadan) Katalog adı için, program katalog isimlerinin bir listesini gösterecektir.
  2. Eğer " !!!LIST !!!" girerseniz (Alıntılar olmadan) şema adı için, program şema isimlerinin bir listesini gösterecektir.
  3. Eğer " !!!LIST !!!" girerseniz (Alıntılar olmadan) Masa adı için, program masaların ve sütunlarının listesini gösterecektir. Yapmanız gereken ilk " !!!LIST !!!" girişi, kullanılacak olan kişidir.
  • EDTable FromDatabase hakkında tüm bu belgenin bilgilerini dikkatlice okuyun.
  • Veritabanı yöneticisiyle iletişime geçerek EDDTableFromDatabase veri seti için XML oluşturmak için ihtiyacınız olan bilgilerin çoğunu toplayabilirsiniz ve web'i arayarak.
  • Veritabanları genellikle sütun isimlerini ve tablo isimlerini bir durumda hassas bir şekilde tedavi etmelerine rağmen, vakaya duyarlıdır. ERDDAP . Yani veritabanından bir hata mesajı, bir sütun adının bilinmeyen olduğunu söylüyor (Örneğin, "Unknown identifier= ‘ ‘ ‘ sütun\_name "") Bunun var olduğunu bilseniz bile, tüm başkentleri kullanmayı deneyin, örneğin, COLUMN\_NAME Bu genellikle sütun adının gerçek, duyarlı versiyonudur.
  • İlgili deneyime sahip olabilecek veritabanı yöneticisi ile yakından çalışın. Eğer veri kümesi yüklenemezse, okuyun hata mesajı Neden olduğunu öğrenmek için dikkatlice.  

JDBC Sürücü

  • [JDBC Sürücü ve<Sürücü Adı (#jdbc-vid) – Veritabanınız ve veritabanınız için uygun JDBC 3 veya JDBC 4 sürücü .jar dosyasını almak zorundasınız. Onu koyun tomcat /webapps /erddap /WEB-INF /lib kurulumdan sonra ERDDAP . Sonra, senin içinde datasets.xml Bu veri kümesi için, belirtmelisiniz<SürücüName> Bu sürücü için, hangisidir (Ne yazık ki maalesef ne yazık ki maalesef ne yazık ki ne yazık ki ne yazık ki ne yazık ki maalesef) Dosya adından farklı. Veritabanınız ve sürücü Adınız için JDBC sürücüsü için web üzerinde arama Java Bunu kullanmak gerekir.

    • MariaDB için, deneyin https://mariadb.com/kb/en/about-the-mariadb-java-client/
      The The The The The The The The<SürücüName> kullanımda kullanmak için datasets.xml (Aşağıdaki aşağıda bakınız) Muhtemelen org.mariadb.jdbc. Sürücü .
    • Natasha ve Amazon RDS için, deneyin https://dev.mysql.com/downloads/connector/j/
      The The The The The The The The<SürücüName> kullanımda kullanmak için datasets.xml (Aşağıdaki aşağıda bakınız) Muhtemelen com.mysql.jdbc. Sürücü .
    • For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For Oracle , deneyin https://www.oracle.com/database/technologies/appdev/jdbc-downloads.html . The The The The The The The The<SürücüName> kullanımda kullanmak için datasets.xml (Aşağıdaki aşağıda bakınız) Muhtemelen oracle.jdbc.vida. Oracle Sürücü .
    • Postgresql için, JDBC 4 sürücüsünü JDBC’den aldık https://mvnrepository.com/artifact/org.postgresql/postgresql
      The The The The The The The The<SürücüName> kullanımda kullanmak için datasets.xml (Aşağıdaki aşağıda bakınız) Muhtemelen org.postgresql. Sürücü .
    • SQL Server için, JTDS JDBC sürücüsünü JDBC sürücüsünden alabilirsiniz https://jtds.sourceforge.net . The The The The The The The The<SürücüName> kullanımda kullanmak için datasets.xml (Aşağıdaki aşağıda bakınız) Muhtemelen net.sourceforge.jtds.jdbc. Sürücü .

JDBC sürücüsünü yaptıktan sonra ERDDAP™ kütüphane rehberi, GenerateDatasets için .bat ve / veya .sh senaryo dosyalarına bir referans eklemek zorundasınız. X ml, DasDds ve ArchiveADataset hangi içinde tomcat /webapps/erddap/WEB-INF / dizi; aksi takdirde, bu senaryoları çalıştırdığınızda bir Sınıf NotFoundException alacaksınız.

Ne yazık ki, JDBC bazen sorun kaynağıdır. Onun rolü arasında aracılık ERDDAP™ Ve veritabanı, bazen standart /genik veritabanı SQL isteğine ince değişiklikler yapar ERDDAP™ Bu nedenle sorunlara neden olur (Örneğin, ilgili Üst/dlowercase tanımlayıcılar ve ilgili Tarih / Zaman Bölgesi ) . Lütfen sabırlı olun, bilgiyi burada dikkatlice okuyun, işinizi kontrol edin ve dikkatimizi gör Bölüm almak için ek destek .

Veritabanı Veritabanı<bağlantı bağlantısı Emlak Vegt;

  • [<BağlantıProperty> (#database-connectionproperty) – İçinde datasets.xml Veri setiniz için, birkaç bağlantı tanımlamanız gerekir Mülkiyet etiketleri anlatmak için ERDDAP™ veritabanınıza nasıl bağlanır (Örneğin, kullanıcı adını, şifreyi, sssl bağlantıyı ve boyutlandırma boyutu ) . Bunlar her durum için farklıdır ve anlamaya biraz zor. Veritabanınıza bağlanmak için JDBC sürücüsünü kullanmak için web'i arayın. The The The The The The The The<BağlantıProperty> isimleri (Örneğin, "user", "password" ve "sl") Ve bazı bağlantıProperty değerleri, "JDBC bağlantı özellikleri özellikleri için web'i arayarak bulunabilir. veritabanı veritabanı veritabanı veritabanı veritabanı veritabanı veritabanı veritabanı veritabanı veritabanı database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database Tipi Tipi Tipi Tipi " " "" (Örneğin, Oracle Emerson, Amazon RDS, MariaDB, PostgreSQL) .  

İsimler ve Vaka Hassaslığı için yorumlar

  • Alan/Column Names için yorumlar; Case Hassasity - Varsayılan olarak, EDDTableFromDatabase, bir alanda /column adı veya bir alanda /column adı olarak rezerve edilmiş bir kelime veya özel bir karakter koyar. Çift alıntı aynı zamanda belirli tür SQL enjeksiyon saldırıları. Size söyleyebilirsin ERDDAP™ ", ', ya da hiçbir alıntı yok<sütunNameQuotes> in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in datasets.xml Bu veri kümesi için.

Birçok veritabanı için, herhangi bir tür alıntı kullanarak, veritabanının alan/column isimleriyle bir durumda hassas bir şekilde çalışmasına neden olur. (Varsayılan veritabanı davası yerine hassas bir şekilde) . Veritabanı genellikle dosya/column isimlerini tüm üst köşe olarak gösterir, gerçekte durum hassas form farklıdır. In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In ERDDAP™ Lütfen her zaman veritabanı sütun isimlerini hassas olarak tedavi edin.

  • Maria için DB, veritabanını ile birlikte çalıştırmanız gerekiyor \-sql-mode=ANSI\_QUOTES .
  • Natasha ve Amazon RDS için, veritabanını birlikte çalıştırmanız gerekir \-sql-mode=ANSI\_QUOTES .
  • Oracle ANSI-SQL-standart çift alıntıları destekler varsayılan olarak .
  • PostgreSQL, varsayılan olarak ANSI-SQL standart çift alıntıları destekler.

Bir veritabanı, katalog, şema veya tablonun adı için ayrılmış bir kelime kullanmayın. ERDDAP™ Onların etrafında alıntı yapmaz.

Mümkünse, veritabanı, katalog, şema, tablo isimleri ve alan isimleri için tüm alt dosyaları kullanın veritabanı tablo oluşturmada (veya görüş) Ve alana/column isimlerine ne zaman atıfta bulunduğunda datasets.xml in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in ERDDAP . Aksi takdirde, veritabanı, katalog, şema, masa ve / veya alan bulunamadı diye bir hata mesajı alabilirsiniz. Bu hata mesajı alıyorsanız, davaya duyarlı versiyonu kullanmayı deneyin, tüm üst dava sürümünü ve adın tüm alt sürüm versiyonunu ERDDAP . Bunlardan biri çalışabilir. Değilse, veritabanı, katalog, şema ve / veya masanın adını tüm alt masaya değiştirmeniz gerekir.

Veritabanı Veritabanı<Data data data data data data Tip>

Database Date Time Data

Bazı veritabanı tarihi zaman sütunları açık bir zaman bölgesine sahiptir. Bu tür sütunlar için sorun ERDDAP . Databases, bir tarih kavramını destekler (veya bir süre olmadan) Bir zaman alanı olmadan, yaklaşık bir zaman aralığı olarak. Ama Java (Ve böylece ERDDAP ) Sadece bir zaman bölgesi ile anlık tarih + zamanları ile ilgilenir. Bu nedenle, tarih zamanı verilerin yerel bir zaman bölgesine dayandığını öğrenebilirsiniz (veya gün ışığı olmadan zaman tasarrufu zaman) Ya da GMT / Zulu Zaman bölgesi, ama Java (ve ERDDAP ) Hayır. Başlangıçta bu problemin etrafında çalışabileceğimizi düşündük (E.g, sütun için bir zaman bölgesi belirterek) Ancak veritabanı+JDBC+ Java etkileşimleri bu güvenilmez bir çözüm yarattı.

  • Yani, ERDDAP™ Tüm tarihi ve tarihi zaman verilerini veritabanı masasında bir veritabanı veri türü ile depolamanızı gerektiren bir veri türü, JDBC tipi "zamanla zaman bölgesi" ile zaman çizelgesine karşılık gelen bir veritabanı tablosunda saklayın. (İdeal olarak, bu GMT / / Zulu Zaman bölgesi) .
  • In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In ERDDAP " datasets.xml Ama içinde< dataVariable >Bir keretamp değişkeni için etiket, set

      <dataType>double</dataType>

ve içinde< addAttributes > set > set

          <att name="units">seconds since 1970-01-01T00:00:00Z</att>

Integer nulls

Databases support nulls in Full Full (Int, smallint, smallint) sütunlar, ama ERDDAP™ Gerçek çıplakları desteklemez. Database nulls dönüştürülecek ERDDAP™ 127 for byte columns, 255 for ubay columns, 32767 for short columns, 65535 for u 6: sütunlar için, 2147483647 for int columns, 4297295 for uint columns, 9,223,372,036,854,775,807 for long columns, or 18446744073709551615 for ulong columns. Bu varsayılanları kullanırsanız, lütfen bunları tanımlayın missing\_value Dataset'in kullanıcıları için ERDDAP™ ile birlikte

<att name="\_FillValue" type="int"\>2147483647</att>

veya

<att name="\_FillValue" type="short"\>32767</att>

Alternatif olarak, "You can use the " missing\_value Bunun yerine "\_FillValue". GenrateDatasets X ml otomatik olarak önerilen şekilde bu \_FillValue özelliklerini ekliyor datasets.xml database datasets için.

Veritabanı için yüzen nokta sütunları için, nulls NaNs'e dönüştürülür ERDDAP . Strings'e dönüştürülen veritabanı veri türleri için ERDDAP™ , nulls boş Strings'e dönüştürülür.

Veritabanı Güvenlik Veritabanı

  • Veritabanı ile çalışırken, kötü niyetli bir kullanıcının veritabanınıza zarar vermesine veya erişim sağlamalarına izin vermek için güvenli ve güvenli bir şekilde şeyler yapmanız gerekir. ERDDAP™ Ayrıca güvenli bir şekilde şeyler yapmaya çalışır.
    • çoğaltmayı düşünün, farklı bir bilgisayarda, veritabanı ve veritabanı masaları istediğiniz verilerle ERDDAP™ Hizmet etmek için. (Evet, ticari veritabanı gibi Oracle Ancak bu ek lisans ücretleri içerir. Ancak PostgreSQL, Natasha, Amazon RDS ve MariaDB gibi açık kaynak veritabanları için, bu hiçbir şey değil.) Bu size yüksek bir güvenlik seviyesi verir ve ayrıca engeller ERDDAP™ Orijinal veritabanını yavaşlatmak için istekler.
    • Sizi ayarlamanızı teşvik ediyoruz ERDDAP™ Veritabanına yalnızca erişime sahip bir veritabanı kullanıcısı olarak bağlanmak için İlgili veritabanı veritabanı veritabanı veritabanı veritabanı veritabanı veritabanı veritabanı veritabanı veritabanı database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database database (s) Ve sadece ayrıcalıklara sahiptir.
    • Size bağlantı kurmak için teşvik ediyoruz ERDDAP™ Veritabanına bu yüzden bunu
      • Her zaman SSL kullanır,
      • Sadece bir IP adresinden bağlantı sağlar (veya adreslerin bir blok) Ve ondan ERDDAP™ kullanıcı ve kullanıcı
      • Sadece MD5'lerinde şifreler aktarıldı.
    • \[ KNOWN PROBLEM \] BağlantıProperties (Şifre de dahil!) Düz metin olarak depolanır datasets.xml . Yöneticinin veritabanı parolasına girmesine izin vermenin bir yolunu bulamadık ERDDAP "Tomcat'ta başlıyor (Hangi kullanıcı girişi olmadan gerçekleşir) Ancak şifre bir dosyada erişilebilir olmalıdır. Bunu daha güvenli hale getirmek için:
    • You You You You You (The the the the ERDDAP™ yönetici yönetici yönetici) Sahibi olmalıdır datasets.xml ve WRITE erişimine sahiptir.
    • Sadece kullanıcı=tomcat içeren bir grup yapın. Grubun bunu yapmak için chgrp kullanın datasets.xml Ancak sadece D ayrıcalıkları ile.
    • O-rwx ayrıcalıklarını atamak için chmod kullanın ("Diğer" kullanıcılar için OK veya WRITE erişimi yok) Çünkü datasets.xml .
    • Ne zaman içeri girdiğinde ERDDAP™ Ancak şifre ve diğer bağlantı özellikleri "özel" olarak depolanır. Java değişkenler.
    • Müşterilerden gelen istekler veritabanı için SQL istekleri oluşturmadan önce geçerliliği kontrol edilir ve kontrol edilir.
    • Veritabanına İstekler SQL Hazırlıkları ile yapılır, önlemek için enjeksiyon SQL enjeksiyon .
    • Veritabanına gelen istekler uygulama ile gönderilir Sorgu Sorgulama (Devletini yürütmemek) Okumak için sınırlı istekler - sadece (Bu nedenle, veritabanını değiştirmek için SQL enjeksiyonunu denedi, bu nedenle de bu nedenle başarısız olacaktır.) .  

SQL SQL

  • Çünkü OPeNDAP 's tabular veri talepleri mimik SQL tabular veri talepleri için tasarlandı, kolay ERDDAP™ Tellar veri taleplerini basit SQL Hazırlayıcılara dönüştürmek. Örneğin, ERDDAP™ istek talep talep talep talep talep talep talep talep talep talep talep talep
    time,temperature&time>=2008-01-01T00:00:00Z&time&lt;=2008-02-01T00:00:00Z  

SQL HazırlanmışStatement'a dönüştürülecektir.

    SELECT "time", "temperature" FROM *tableName*  
WHERE "time" >= 2008-01-01T00:00:00Z AND "time" &lt;= 2008-02-01T00:00:00Z

ERDDAP™ İstekler ve () ve / veya orderBy ( Değişken değişken değişken değişken değişken değişkenler ) DISTINCT ve / veya ORDER BY ekle Değişken değişken değişken değişken değişken değişkenler SQL'e hazır bir açıklama. Genel olarak, bu veritabanından gelen cevabı çok yavaşlayacaktır. ERDDAP™ Hazırlanan Devletin girişleri Giriş.txt As as as as as as as as as as as as as as as as as as as as as as as as as as as

    statement=*thePreparedStatement*  

Bu, Hazırlanmanın bir metin gösterimi olacak ve gerçek Hazırlanmadan biraz farklı olabilir. Örneğin, Hazırlanmada zaman özel bir şekilde kodlanır. Ancak metin gösteriminde ISO 8601 tarihi olarak görünürler.  

Database Speed Database

  • Veritabanı yavaş olabilir. Yapabileceğiniz bazı şeyler var:
    • Genel olarak - SQL'in doğası, sorguların sorguların olmasıdır declarative . Sadece kullanıcının ne istediğini belirtirler. Sorunun nasıl ele alınması veya optimize edilmesi gerektiği için bir belirti veya ipucu içermezler. Bu yüzden bir yol yok ERDDAP™ Sorguyu böyle bir şekilde oluşturmak için, veritabanının sorguyu optimize etmesine yardımcı oluyor (Ya da herhangi bir şekilde sorgunun nasıl ele alınacağını belirtir.) . Genel olarak, şeyleri kurmak için veritabanı yöneticisine kalmış (Örneğin, indeksler) Bazı sorgu türleri için optimize etmek.
Fetch Boyutu

Databases verileri veriye geri döndürür ERDDAP™ In chunks. Varsayılan olarak, farklı veritabanılar chunks'ta farklı sayıda sıra döndürür. Genellikle bu sayı çok küçük ve çok verimsiz. Örneğin, varsayılan Oracle 10! Veritabanınızın JDBC dokümanını okuyun JDBC sürücüsü bunu artırmak için bağlantı mülkünü bulmak ve bunu veri kümesinin açıklamasına ekleyin. datasets.xml . Örneğin, Natasha ve Amazon RDS için, kullanın

        <connectionProperty name="defaultFetchSize">10000</connectionProperty>  

MariaDB için, şu anda getirme boyutunu değiştirmenin bir yolu yoktur. Ancak talep edilen bir özellik, bu uygulanmış olup uygulanmadığını görmek için web'i arayın. For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For Oracle , kullanımı

        <connectionProperty name="defaultRowPrefetch">10000</connectionProperty>  

PostgreSQL için, kullanın

        <connectionProperty name="defaultRowFetchSize">10000</connectionProperty>  

Ancak sayıyı değiştirmek için özgür hissediyorum. Sayıyı çok büyük ayarlamaya neden olacaktır ERDDAP™ Çok fazla hafıza kullanmak ve hafızadan çıkmak daha olasıdır.

BağlantıProperties

Her veritabanı, belirtilebilecek diğer bağlantı özelliklerine sahiptir. datasets.xml . Bunların çoğu veritabanının performansını etkileyecektir. ERDDAP™ bağlantı. Lütfen seçenekleri görmek için veritabanınızın JDBC sürücüsü için belgeleri okuyun. Yararlı olan bağlantı özelliklerini bulursanız lütfen ayrıntılarla bir e-posta gönderin erd dot data at noaa dot gov .

  • Bir Tablo yapın - Muhtemelen periyodik olarak daha hızlı cevaplar elde edeceksiniz (Her gün? Yeni veriler ne zaman var?) Gerçek bir masa oluşturmak (Aynı şekilde, İttifak'ı nasıl yarattığınıza benzer şekilde) Ve söyle ERDDAP™ Uyarı yerine masadan veri almak. Masaya herhangi bir istek daha sonra JOINing başka bir masa olmadan yerine getirilebileceğinden, yanıt çok daha hızlı olacaktır.
  • Tabloyu Vakum Etmek - Natasha ve Amazon RDS, kullanırsanız çok daha hızlı yanıt verecektir OPTIMIZE TABLE . Maria Maria Maria DB, kullanıyorsanız çok daha hızlı yanıt verecektir OPTIMIZE TABLE . PostgreSQL size çok daha hızlı cevap verecek VACUUMUM Masa. Oracle Bir analog komutaya sahip veya ihtiyaç duymaz.
  • Make Make Make Make Indexes Commonly Constrained Değişkenler için - Değişkenler için veritabanında indeksler yaratarak birçok / en sorguları hızlandırabilirsiniz. (Hangi veritabanı "columns" olarak adlandırılır) Bu genellikle kullanıcının sorgularında kısıtlanır. Genel olarak, bunlar aynı değişkendir [< subsetVariables >) (#subsetibles) ve/veya enlem, uzun, ve zaman değişkenleri.
Use Connection Pooling

Normalde, ERDDAP™ Her istek için veritabanına ayrı bir bağlantı sağlar. Bu en güvenilir yaklaşımdır. Daha hızlı alternatif, bağlantı havuzunu destekleyen bir veri kaynağı kullanmaktır. Bunu kurmak için, belirt (Örneğin)

        <dataSourceName>java:comp/env/jdbc/postgres/erddap</dataSourceName>  

Sağa doğru< sourceUrl > >,<Sürücü Adı: ve<bağlantı bağlantısı Emlak>. Ve içinde tomcat /conf/context.xml, örneğin aynı bilgilerle bir kaynak tanımlar,

        <Resource  
name="jdbc/postgres/erddap" auth="Container" type="javax.sql.DataSource"
driverClassName="org.postgresql.Driver"
url="*jdbc:postgresql://somehost:5432/myDatabaseName*"
username="*myUsername*" password="*myPassword*"
initialSize="0" maxActive="8" minIdle="0" maxIdle="0" maxWait="-1"/>

Bir DataKaynak kullanımı hakkında genel bilgi, bir veri kaynağı kullanmakla ilgili olarak https://docs.oracle.com/javase/tutorial/jdbc/basics/sqldatasources.html . See See See See Tomcat DataKaynak Bilgileri ve Tomcat Data Source örnekler veya Web'i diğer uygulama sunucuları ile DataKaynaklarını kullanma örnekleri için arayın.

  • Eğer herkes başarısız olursa, Verileri bir koleksiyonda depolamayı düşünün NetCDF v3 .nc dosyaları dosyaları dosyaları dosyaları (Özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle özellikle .nc Kullanan dosyaları CF Discrete Sampling Geometries (DSG) Tartışma veri yapıları ve bu nedenle ele alınabilir ERDDAP " EDDTable FromNcCFFiles ) . Eğer mantıksal olarak organize edilirlerse (Her biri bir uzay ve zaman için bir chunk için verilerle) , ERDDAP™ Onlardan verileri çok hızlı bir şekilde çıkarabilir.  

EDDTable FromDatabase iskelet XML

  <dataset type="EDDTableFromDatabase" datasetID\="..." active\="..." >
      <sourceUrl>...</sourceUrl>
        <!-- The format varies for each type of database, but will be
          something like:
          For MariaDB: jdbc:mariadb://xxx.xxx.xxx.xxx:3306/databaseName
          For MySql jdbc:mysql://xxx.xxx.xxx.xxx:3306/databaseName
          For Amazon RDS: jdbc:mysql://xxx.xxx.xxx.xxx:3306/databaseName
          For Oracle: jdbc:oracle:thin:@xxx.xxx.xxx.xxx:1521:databaseName
          For Postgresql: jdbc:postgresql://xxx.xxx.xxx.xxx:5432/databaseName
          where xxx.xxx.xxx.xxx is the host computer's numeric IP address
          followed by :PortNumber (4 digits), which may be different for your
          database. REQUIRED. -->
      <driverName\>...</driverName>
        <!-- The high-level name of the database driver, for example,
          "org.postgresql.Driver". You need to put the actual database
          driver .jar file (for example, postgresql.jdbc.jar) in
          tomcat/webapps/erddap/WEB-INF/lib. REQUIRED. -->
      <connectionProperty name="name">value</connectionProperty>
        <!-- The names (for example, "user", "password", and "ssl")
          and values of the properties needed for ERDDAP™ to establish
          the connection to the database. 0 or more. -->
      <dataSourceName>...</dataSourceName> <!-- 0 or 1 -->
      <catalogName>...</catalogName>
        <!-- The name of the catalog which has the schema which has the
          table, default = "". OPTIONAL. Some databases don't use
          this. -->
      <schemaName>...</schemaName> <!-- The name of the
        schema which has the table, default = "". OPTIONAL. -->
      <tableName>...</tableName> <!-- The name of the
        table, default = "". REQUIRED. -->
      <columnNameQuotes><columnNameQuotes> <!-- OPTIONAL. Options:
        " (the default), ', \[nothing\]. -->
      <orderBy>...</orderBy> <!-- A comma-separated list of
        sourceNames to be used in an ORDER BY clause at the end of the
        every query sent to the database (unless the user's request
        includes an &orderBy() filter, in which case the user's
        orderBy is used). The order of the sourceNames is important.
        The leftmost (first) sourceName is most important; subsequent
        sourceNames are only used to break ties. Only relevant
        sourceNames are included in the ORDER BY clause for a given user
        request. If this is not specified, the order of the returned
        values is not specified. Default = "". OPTIONAL. -->
      <sourceCanOrderBy>no(default)|partial|yes</sourceCanOrderBy>
        <!-- 0 or 1 -->
      <sourceCanDoDistinct>no(default)|partial|yes</sourceCanDoDistinct>
        <!-- 0 or 1 -->
      <sourceNeedsExpandedFP\_EQ>true(default)|false</sourceNeedsExpandedFP\_EQ>
      <accessibleTo>...</accessibleTo> <!-- 0 or 1 -->
      <graphsAccessibleTo>auto|public</graphsAccessibleTo> <!-- 0 or 1 -->
      <reloadEveryNMinutes>...</reloadEveryNMinutes> <!-- 0 or 1 -->
      <defaultDataQuery>...</defaultDataQuery> <!-- 0 or 1 -->
      <defaultGraphQuery>...</defaultGraphQuery> <!-- 0 or 1 -->
      <addVariablesWhere>...</addVariablesWhere> <!-- 0 or 1 -->
      <fgdcFile>...</fgdcFile> <!-- 0 or 1 -->
      <iso19115File>...</iso19115File> <!-- 0 or 1 -->
      <onChange>...</onChange> <!-- 0 or more -->
      <addAttributes>...</addAttributes> <!-- 0 or 1 -->
      <dataVariable>...</dataVariable> <!-- 1 or more.
        Each dataVariable MUST include a <dataType> tag.
        See Database DataTypes.
        For database date and timestamp columns, set dataType=double and
        units=seconds since 1970-01-01T00:00:00Z -->
  </dataset>

EDDTable From From EDDGrid

**EDDTable From From EDDGrid ** herhangi bir EDDTable veri kümesi oluşturmanıza izin verir EDDGrid dataset.

  • Bunu yapmak için bazı ortak nedenler şunlardır:
    • Bu, veri kümesinin queried olmasını sağlar OPeNDAP Seçim kısıtlamaları, hangi bir tür "değerle" (Hangi bir kullanıcı talep edilebilir) .
    • Dataset doğal olarak bir tabular veri kümesidir.
  • Küresel özelliklerin değeri "maxAxis0" (Genellikle tip="int") , (varsayılan 10) eksen sayısını sınırlamak için kullanılacaktır \[ 0 0 0 0 \] (Genellikle genellikle genellikle "time" eksen) Kapalıların değerleri EDDGrid Veriler için talep için erişilebilir olan veri kümesi. Herhangi bir sınır olmasını istemiyorsanız, 0 değerini belirtin. Bu ayar önemlidir, aksi takdirde, EDDTable'den EDDTable'e bir kullanıcı için çok kolay olurdu. EDDGrid Tüm ızgara veri kümesinin verilerini göz önünde bulundurmak. Bu uzun bir zaman alır ve neredeyse kesinlikle bir süre boyunca hatayla başarısız olur. Bu, EDDTable'e sahip olmak için güvenli kılan ayardır EDDGrid Datasets in your your ERDDAP Hesaplama kaynaklarının güvenilmez bir kullanımına yol açacak korkusu olmadan.
  • Eğer kapalıysa EDDGrid Bir şeydir EDDGrid FromErddap ve ERDDAP™ Aynı şey aynı ERDDAP Sonra EDDTable From EDDGrid Referanslı veri kümesinin mevcut versiyonunu her zaman doğrudan kullanacaktır. Bu EDDTable From için çok etkili bir yoldur EDDGrid Kafeded verilere erişmek için.
  • Bu sınıf<reload HerNMinutes> (#reload allnminutes) Ne sayılıyor. Kapalı EDDGrid "<HerNMinutes> yeniden yükleniyor.
  • Bir değer varsa<HerNMillis> (#update allnmillis) Bu veri kümesi için temin edilir, göz ardı edilir. Kapalı EDDGrid "<HerNMillis> güncelleme önemli olan şeydir.
  • GenrateDatasetsX ml dataset type=EDDTable From EDDGrid Hangi bir URL için sorar ERDDAP (Genellikle aynısı ERDDAP ) (" /erddap /") Ve düzenli bir ifade. GenrateDatasets X ml sonra bir EDDTable için XML üretecek EDDGrid Her bir ızgara veri kümesi için veri kümesi ERDDAP™ Hangi bir şeye sahip datasetID Hangi düzenli ifadeyi karşılaştırır (use .\* to match all datasetID s for gridded datasets) .

Her veri kümesi için GenrateDatasetsX ml tarafından üretilen XML'in chunk içerir:

  • A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A datasetID hangisidir EDDGrid " datasetID artı "\_AsATable".
  • Yeni bir özet küresel özellik hangisidir EDDGrid 's summary artı bu veri kümesinin ne olduğunu açıklayan yeni bir ilk paragraf.
  • Yeni bir başlık global özellik hangisidir EDDGrid 's title artı ", (A Table olarak) ".
  • 10 değeri olan yeni maxAxis0 global özellik.

EDDTable From From EDDGrid iskelet XML

  <dataset type="EDDTableFromEDDGrid" datasetID\="..." active\="..." >
      <accessibleTo>...</accessibleTo> <!-- 0 or 1 -->
      <graphsAccessibleTo>auto|public</graphsAccessibleTo> <!-- 0 or 1 -->
      <reloadEveryNMinutes>...</reloadEveryNMinutes> <!-- 0 or 1 -->
      <updateEveryNMillis>...</updateEveryNMillis> <!-- 0 or 1.
        For EDDTableFromEDDGrid, this calls lowUpdate() of the underlying
        EDDGrid. -->
      <defaultDataQuery>...</defaultDataQuery> <!-- 0 or 1 -->
      <defaultGraphQuery>...</defaultGraphQuery> <!-- 0 or 1 -->
      <addVariablesWhere>...</addVariablesWhere> <!-- 0 or 1 -->
      <fgdcFile>...</fgdcFile> <!-- 0 or 1 -->
      <iso19115File>...</iso19115File> <!-- 0 or 1 -->
      <onChange>...</onChange> <!-- 0 or more -->
      <addAttributes>...</addAttributes> <!-- 0 or 1 -->
      <dataset>...</dataset> <!-- 1
         Any type of EDDGrid dataset. You can even use an
         EDDGridFromERDDAP™ to access an independent EDDGrid dataset on
         this server. -->
    </dataset>

EDDTable FromFileNames

EDDTable FromFileNames Her dosya için bir URL dahil olmak üzere sunucunun dosya sisteminde bir dosya grubu hakkında bilgiden bir veri kümesi oluşturur, böylece kullanıcılar dosyaları dosyaları her dosya aracılığıyla indirmelerini sağlar. ERDDAP " "files" Sistem sistemi sistemi sistemi sistemi sistemi sistemi sistemi sistemi sistemi . Tüm aksine, EDDTable FromFiles Alt sınıflar, bu veri set türü dosyaların içinde verilere hizmet etmez.

  • EDDTable FromFileNames zaman yararlıdır:
    • Tüm dosyaları dağıtmak istediğiniz bir dizi dosyanız var çünkü normal veri dosyalarının verilere sahip olduğu aynı şekilde "data" içermiyorlar. Örneğin, görüntü dosyaları, video dosyaları, Word belgeleri, Excel tablo dosyaları, PowerPoint sunum dosyaları veya yapılandırılmamış metin dosyaları.
    • Bir formatta veriye sahip olan bir dosya grubunuz var ERDDAP™ Henüz okuyamıyor. Örneğin, bir proje özel, özel, ikili format.  

EDDTable FromFileNames Data

Dosya dosyası Dir
  • <fileDir> Bu, sunucunun dosya sisteminde bu veri kümesi için dosyaları ile kaynak dizinini belirtir. Aslında sunucunun dosya sisteminde bulunan dosyalar<fileDir> bu veri kümesinin URL sütununda, adı verilen bir sanal dizi içinde görünecektirhttps://serverUrl/erddap/files/datasetID/. Örneğin, eğer datasetID jplMU RSS T, T, ve<fileDir> /home/data/mur/ , Ve bu dizinin jplMU adında bir dosya var RSS T20150103000000.JP, O zaman bu dosya için kullanıcılara gösterilen URL olacak https://serverUrl/erddap/jplMURSST/jplMURSST20150103000000.png.

Yerel bir dizi kullanmak ek olarak,<fileDir>, uzaktan, dizin benzeri bir web sayfasının URL'sini de belirtebilirsiniz. Bu birlikte çalışır:

On TheFly

\\\* FromOnTheFly – Bazı büyük S3 kova için (Noaa-goes17 gibi, 26 milyon dosya var) Ama alabilir ERDDAP™ Kovanın içeriği hakkında tüm bilgileri indirmek için 12 saate kadar (Ve sonra başka sorunlar var) . Bunu dolaşmak için, kullanmak için özel bir yol var<DosyaDir> EDDTable FromFileNames to make a dataset with the directory and file names from an AWS S3 kova. Dataset, S3 kovanın tüm yönetmenlerinin ve bir kullanıcının veri kümesine istekleri ile arama yapabileceği dosya isimlerinin listesine sahip olmayacak. Ancak veri seti, veri setinin dizin hiyerarşisini veri setiyle takip ederse, yönetmenlerin ve dosyaların isimlerini alacaktır. "files" seçenek. Böylece, bu, kullanıcıların S3 kovanın dosya hiyerarşisini ve dosyaları dataset's aracılığıyla taramasını sağlar. "files" Sistem. Bunu yapmak için, URL'yi S3 kova için "Starting directory" olarak belirtmek yerine. (GenrateDatasets X ml) veya<fileDir> (in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in datasets.xml ) Kullanımı:

\\*\\*\\*fromOnTheFly,*theS3BucketUrl*  

Örneğin:

\\*\\*\\*fromOnTheFly,https://noaa-goes17.s3.us-east-1.amazonaws.com/  

Belgeleri görmek için S3 Kovas ile çalışmak ERDDAP™ Özellikle S3 kova URL için kullanılması gereken özel formatın tanımı. Ve bakınız Bu detaylar ve bir örnek Kullanımı\\\* FromOnTheFly.

Recursive
  • <recursive> Dosyalar in subdirectories of<fileDir> eşleşen isimlerle<fileRegex> aynı alt yönlendirmelerde görünecektir "files" URL eğer URL<Recursive> gerçek için ayarlanır. Varsayılan sahtedir.
  • [<Yol Haritası (#pathregex) – Eğer recursive= true, sadece yol ayarlayan dizi isimleri (Varsayılan=".\*) Kabul edilecektir. Recursive=false, bu göz ardı edilir. Bu nadiren kullanılır, ancak alışılmadık koşullarda çok kullanışlı olabilir. (Buna bakın Regex Belgeleri ve regex öğretici .)
fileRegexex
  • <fileRegex> – Sadece tüm dosya adının bulunduğu dosya isimleri (Kılavuz adı dahil değil) Maç<fileRegex> bu veri kümesine dahil edilecektir. Örneğin, jplMU RSS T.{14}San.JP . (Buna bakın Regex Belgeleri ve regex öğretici .)
     
File Names Data table Contents

Masada sütunlar olacak:

İşte iki örnek:

            <dataVariable>
<sourceName>time</sourceName>
<destinationName>time</destinationName>
<dataType>String</dataType>
<addAttributes>
<att name="extractRegex">jplMURSST(.{14})\\.png</att>
<att name="extractGroup" type="int">1</att>
<att name="units">yyyyMMddHHmmss</att>
</addAttributes>
</dataVariable>
            <dataVariable>
<sourceName>day</sourceName>
<destinationName>day</destinationName>
<dataType>int</dataType>
<addAttributes>
<att name="extractRegex">jplMURSST.{6}(..).{6}\\.png</att>
<att name="extractGroup" type="int">1</att>
<att name="ioos\\_category">Time</att>
</addAttributes>
</dataVariable>

Zaman değişkeni durumunda, bir dosyanın adı jplMU RSS T20150103000000.txt, ekstraRegex, ilk yakalama grubuyla oynayan karakterleri çıkartacak ("20150103000000") DataType=String olarak, sonra kullanın dize süreleri için uygun birimler dizeleri zaman veri değerlerine ayırın (2015-01-03T00:00Z) .

Gün değişkeni durumunda, bir dosyanın adı jplMU RSS T20150103000000.txt, ekstraRegex, ilk yakalama grubuyla oynayan karakterleri çıkartacak ("03") [<dataType>] (#datatype) \=int, bir veri değeri 3'ün

Diğer Bilgiler

  • Hayır<HerNMillis> (#update allnmillis) – Bu tür veri kümesine ihtiyaç yoktur ve kullanamaz<HerNMillis> etiketini güncellemek, çünkü EDDTableFromFileNames tarafından servis edilen bilgiler her zaman mükemmel bir şekilde güncellenmektedir çünkü ERDDAP™ Her bir istek için yanıt vermek için dosya sistemini sorgulayın. Büyük sayıda dosya olsa bile, bu yaklaşım makul derecede iyi çalışmalıdır. Bir cevap, büyük sayıda dosya varsa yavaş olabilir ve veri seti bir süre boyunca queried olmamıştı. Ancak bundan birkaç dakika sonra, işletim sistemi önbellekteki bilgileri tutar, bu yüzden cevaplar çok hızlı olmalıdır.  
  • Kullanabilirsiniz GenrateDatasets X ml programı Bunu yapmak için datasets.xml Bu tür veri kümesi için chunk. Yukarıda gösterildiği gibi dosyadan çıkarılan bilgilerle ek sütunları ekleyebilirsiniz.  

EDDTable FromFileNames iskelet XML

  <dataset type="EDDTableFromFileNames" datasetID\="..." active\="..." >
      <accessibleTo>...</accessibleTo> <!-- 0 or 1 -->
      <graphsAccessibleTo>auto|public</graphsAccessibleTo> <!-- 0 or 1 -->
      <reloadEveryNMinutes>...</reloadEveryNMinutes> <!-- 0 or 1 -->
      <defaultDataQuery>...</defaultDataQuery> <!-- 0 or 1 -->
      <defaultGraphQuery>...</defaultGraphQuery> <!-- 0 or 1 -->
      <addVariablesWhere>...</addVariablesWhere> <!-- 0 or 1 -->
      <fgdcFile>...</fgdcFile> <!-- 0 or 1 -->
      <iso19115File>...</iso19115File> <!-- 0 or 1 -->
      <onChange>...</onChange> <!-- 0 or more -->
      <fileDir>...</fileDir>
      <recursive>...</recursive> <!-- true or false (the default) -->
      <pathRegex>...</pathRegex> <!-- 0 or 1. Only directory names which
        match the pathRegex (default=".\*") will be accepted. -->
      <fileNameRegex>...</fileNameRegex>
      <addAttributes>...</addAttributes> <!-- 0 or 1 -->
      <dataVariable>...</dataVariable> <!-- 1 or more.
         Each dataVariable MUST include <dataType> tag. -->
  </dataset>

EDDTable FromFiles

EDDTable FromFiles Tüm EDDTable'ün süper sınıfı...Files sınıfları. EDDTableFromFiles'i doğrudan kullanamazsınız. Bunun yerine, belirli dosya türünü işlemek için EDDTableFromFiles'in alt sınıfını kullanın:

Şu anda başka bir dosya türü desteklenmez. Ancak genellikle diğer dosya türleri için destek eklemek oldukça kolaydır. Bize bir istek varsa ulaşın. Ya da, verileriniz eski bir dosya formatındaysa, dosyaların değiştirilmesini tavsiye ederiz. NetCDF v3 .nc dosyaları dosyaları dosyaları dosyaları (ve özellikle de .nc dosyaları ile dosyaları CF Discrete Sampling Geometries (DSG) Contigcious Ragged Dizi veri yapısı - ERDDAP™ Veriler onlardan çok hızlı bir şekilde alabilir) . NetCDF Yaygın olarak desteklenen, ikili bir format, verilere hızlı rastgele erişim sağlar ve zaten desteklenmiştir. ERDDAP .

FromFiles Details

Aşağıdaki bilgiler EDDTable'ün tüm alt sınıfları için geçerlidir.

Aggregation

Bu sınıf yerel dosyalardan veri toplar. Her dosya bir dosya tutar (nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten nispeten) Küçük veri masası.

  • Elde edilen veri seti, dosyanın tüm masalarının birleştirildiği gibi görünür. (Dosya #1'den gelen verilerin tüm satırları, artı dosya #2'den tüm satırları ...) .
  • Dosyaların hepsinin belirtilen değişkenlere sahip olması gerekmez. Belirli bir dosyanın belirli bir değişkeni yoksa, ERDDAP™ Gerekli olduğu gibi eksik değerleri ekleyecek.
  • Tüm dosyalardaki değişkenler MUST'nun aynı değerleri vardır add\_offset , missing\_value , \_Fill Değer Değer Değer Değer Değer Değer Değer Değer Değer Değer Değer Değer , scale\_factor Ve Birim birimleri Özellikleri (Eğer herhangi bir) . ERDDAP™ Kontroller, ama mükemmel bir test - farklı değerler varsa, ERDDAP Hangi dosyaların geçersiz olduğunu ve bu nedenle hangi dosyaların geçersiz olduğunu bilmiyor. Eğer bu bir problemse, kullanabilirsiniz NcML veya NCO Problemi düzeltmek için.  
Baskılanan dosyalar

Tüm EDDTable için kaynak veri dosyaları dışsal sıkıştırılabilir (E.g., .tgz , .tar .gz , .tar .gzip , .gz , .gzip , .zip , .bz2 Ya da) . Görün bakalım, Dış olarak Comed Files belgeleri .  

Cached File Information
  • EDTable FromFiles dataset is first installed, EDDTable FromFiles tüm ilgili dosyalardan bilgi okur ve tablo yaratır (Her dosya için bir satır) Her geçerli dosya ve her "kötü" hakkında bilgi ile (Farklı veya geçersiz) Dosya.
    • Masalar diskte de depolanır, çünkü NetCDF v3 .nc dosyaları içinde dosyalar Büyük Parent Yönetmeny /dataset / Son2CharsOfDatasetID / * datasetID * / İsimli dosyalarda: dirTable .nc (Hangi benzersiz dizi isimleri tutar) , Dosya dosyası Masa .nc (Hangi masayı her geçerli dosyanın bilgileri ile tutar) , badFiles .nc (Masayı her kötü dosyanın bilgisi ile tutar) .
    • EDTable FromFiles dataset (Ancak daha fazla hafıza kullanma pahasına) , kullanabilirsiniz [<fileTableInMemory> Gerçek</fileTableInMemory>] (#filinmemory)
      Söylemek için ERDDAP™ Dosya bilgi masalarının bir kopyasını hafızada tutmak.
    • Disk üzerindeki dosya bilgi masalarının kopyası da kullanışlıdır ERDDAP™ Kapatılır ve yeniden başlatılır: EDDTable kurtarırFiles'ten tüm veri dosyalarını yeniden hazırlamak zorunda.
    • Bir veri kümesi yeniden yüklendiği zaman, ERDDAP™ Sadece verileri yeni dosyalar ve dosyalarda okumak gerekir.
    • Bir dosyanın diğer dosyaların farklı bir yapısı varsa (Örneğin, değişkenlerden biri için farklı bir veri türü veya “farklı değer” için farklı bir değer. Birim birimleri “İsviçre) , ERDDAP Dosyayı "kötü" dosyaları listesine ekleyin. Dosya ile ilgili sorun hakkında bilgi yazılacak Büyük Parent Yönetmeny /loglar /log.txt dosyası.
    • Bu dosyalarla silmek veya çalışmak zorunda değilsiniz. Bir istisna: Hala bir veri kümesinin değişiklikleri yapıyorsanız datasets.xml Kurulum, bu dosyaları zorlamak için silmek isteyebilirsiniz ERDDAP™ Tüm dosyaları yeniden okumak için, çünkü dosyalar farklı okunacaktır. Bu dosyaları silmeniz gerekiyorsa, bunu ne zaman yapabilirsin ERDDAP™ Koşuyor. (Sonra bir set a Bayrak bayrağı Dataset ASAP'ı yeniden yüklemek için.) Ancak, ERDDAP™ Genellikle fark eder ki, datasets.xml Bilgi dosyayla eşleşmez Tablo bilgileri ve dosya tablo tablolarını otomatik olarak sil.
    • teşvik etmek istiyorsanız ERDDAP™ Depolama veri kümesi bilgilerini güncellemek için (Örneğin, sadece eklediyseniz veya dataset'in veri setine bazı dosyaları değiştirdiniz) , kullanın the use the Bayrak sistemi zorlamak için zorlamak ERDDAP™ Önbellekli dosya bilgilerini güncellemek için.  
Talepler
  • ERDDAP™ tabular veri talepleri herhangi bir değişken üzerinde kısıtlamalar koyabilir.
  • Bir müşterinin veri isteği işlandığında, EDDTable FromFiles, hangi dosyaların ilgili verilere sahip olabileceğini görmek için tabloya hızlıca bakabilir. Örneğin, her kaynak dosyası bir sabit konum otobüsü için verilere sahipse, EDDTable FromFiles, hangi dosyaların belirli uzun ve entitude aralığında veri olabileceğini çok verimli bir şekilde belirleyebilir.
  • Çünkü geçerli dosya bilgisi masası, her geçerli dosya için her değişkenin minimum ve maksimum değerini içerir, EDDTableFromFiles genellikle diğer sorguları oldukça verimli bir şekilde idare edebilir. Örneğin, buoyların bazıları hava basıncı sensörüne sahip değilse ve bir müşteri hava durumu için veri talep eder! =NaN, EDDTableFromFiles, hangi tomurcukların hava basıncı verilere sahip olduğunu etkin bir şekilde belirleyebilir.  
Önbellek Dosya Bilgileri

Ne zaman veri kümesi yeniden yüklenirse, önbellekli dosya bilgileri güncellenir.

  • Dataset periyodik olarak yeniden yükleniyor<HerNMinutes> veri setinin bilgilerinde datasets.xml .
  • Dataset en kısa sürede yeniden yükleniyor ERDDAP™ eklediğinizi tespit edin, kaldırıldı, touch'd (Dosyanın sonlarını değiştirmek için Değiştirilmiş zaman) , veya bir datafile değiştirdi.
  • Veri seti, kullanımınız mümkün olduğunca kısa sürede yeniden yükleniyor Bayrak sistemi .

Dataset yeniden yüklendiği zaman, ERDDAP™ Şu anda mevcut dosyaları önbellek dosya bilgileri masasında karşılaştırır. Yeni dosyalar geçerli dosyaları masaya okunur ve eklenir. Artık mevcut olmayan dosyalar geçerli dosyalar masasından çıkarılır. Dosya zamanlayıcısının değiştiği dosyalar okunur ve bilgileri güncellenir. Yeni masalar hafızadaki ve diskteki eski masaları değiştirir.  

Kötü dosyalar

Kötü dosyaların masası ve dosyalar kötü ilan edildi (yozlaşmış dosya, eksik değişkenler, yanlış eksen değerleri, vs.) E-posta ile e-posta Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey e-posta adresi (Muhtemelen muhtemelen siz) Her zaman veri kümesi yeniden yükleniyor. Bu dosyaları mümkün olduğunca kısa sürede değiştirmelisiniz veya onarmalısınız.  

Eksik Değişkenler

Bazı dosyaların bazılarına sahip değilse dataVariable Dataset'in tanımladığı s datasets.xml chunk, bu iyi. EDDTable FromFiles bu dosyaların birini okuduğunda, dosyanın değişkeni olduğu gibi hareket edecektir, ancak tüm eksik değerler ile.  

Yakın Gerçek Zaman Data Data
  • EDDTableFromFiles, özel bir durum olarak çok yeni veriler için talep ediyor. Sorun: Veri setini oluşturan dosyalar sık güncellenirse, veri setinin her seferinde bir dosya değiştirmeyeceği muhtemeldir. Yani EDDTable FromFiles, değişen dosyaların farkında olmayacak. (Kullanabilirsiniz Bayrak sistemi Ama bu, liderlik edebilir ERDDAP™ Veri kümesini neredeyse sürekli olarak yeniden yükleyin. Çoğu durumda, tavsiye etmiyoruz.) Bunun yerine, EDDTableFromFiles aşağıdaki sistemle ilgilidir: When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When ERDDAP™ Son 20 saat içinde veriler için bir istek alın (Örneğin, 8 saat önce şimdiye kadar) , ERDDAP™ Son 20 saatte herhangi bir verilere sahip olan tüm dosyaları arayacaktır. Böylece, ERDDAP™ Son verileri bulmak için tüm dosyalar için mükemmel bir şekilde güncel verilere gerek yok. Hala ayarlamanız gerekir [<reload HerNMinutes> (#reload allnminutes) makul olarak küçük bir değere (Örneğin, 60) Ama küçük olmak zorunda değil (Örneğin, 3) .  
    • Tavsiye edilmez dosyalarda yakın zamanlı verilerin organizasyonu: Örneğin, çok sayıda istasyon için verileri depolayan bir veri kümesiniz varsa (veya buoy, veya yörünge, ...) Yıllardır, dosyaları düzenleyebilirsiniz, örneğin istasyon başına bir dosya var. Ama sonra, bir istasyon için her zaman yeni veriler geliyor, büyük bir eski dosyayı okumak ve büyük bir yeni dosya yazmak zorundasınız. Ve ne zaman ERDDAP™ Veri kümesini yeniden yükler, bazı dosyaların değiştiğini fark eder, bu yüzden bu dosyaları tamamen okur. Bu verimsizdir.  

    • Önerilen önerilen önerilen önerilen dosyalarda yakın zamanlı verilerin organizasyonu: Örneğin, chunks'taki veriler, bir yıl boyunca bir istasyon/buoy/trajektör için tüm veriler. (veya bir ay) . Sonra, yeni bir datum geldiğinde, sadece bu yılki dosya ile (veya ay) Veriler etkilenir.

    • En İyi: Use Use Use Use Use NetCDF v3 .nc Sınırsız bir boyutla dosyaları (Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman) . Daha sonra, yeni veriler eklemek için, tüm dosyayı okumak ve yeniden yazmak zorunda kalmadan yeni verileri tamamlayabilirsiniz. Değişim çok verimli ve aslında atomik olarak yapılır, bu yüzden dosya hiçbir zaman tutarsız bir durumda değildir.

    • Aksi halde: Eğer kullanmıyorsanız / kullanmıyorsanız .nc Sınırsız bir boyutla dosyaları (Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman) Daha sonra, yeni verileri eklemeniz gerektiğinde, etkilenen tüm dosyayı okumak ve yeniden yazmak zorundasınız (Umarım küçük çünkü sadece bir yıl var (veya ay) Veriye değer) . Neyse ki, önceki yıllardaki tüm dosyalar (veya aylar) Bu istasyon değişmeden kalır.

Her iki durumda da, ne zaman ERDDAP™ Veri kümesini yeniden yükler, çoğu dosya değişmez; sadece birkaç, küçük dosyalar değişti ve okunması gerekiyor.  

Yönetmenler

dosyalar bir dizide veya bir dizide ve alt danışmanlarında olabilir (Recursally) . Eğer çok sayıda dosya varsa (Örneğin, >1,000) , işletim sistemi (Ve böylece EDDTable FromFiles) dosyaları bir dizi subdirectories'de saklarsanız çok daha verimli çalışacaktır. (Yılda bir ya da veri setleri için ayda bir, çok sık dosyalar) Ancak, verilen bir dizi veritabanında asla çok sayıda dosya yoktur.  

Uzaktan Müdürler ve HTTP Range Requests
  • Uzaktan Müdürler ve HTTP Range Requests (AKA Byte, Byte Range Requests) – EDDGrid NcFiles, EDDTable FromMultidimNcFiles, EDDTable FromNcFiles ve EDDTable FromNcCFFiles, bazen veriye hizmet edebilir .nc Uzak sunuculardaki dosyalar ve sunucu destekleniyorsa HTTP ile erişim Byte Service HTTP range istekleri aracılığıyla (HTTP mekanizması hizmet etmek için) . Bu mümkündür çünkü netcdf-java (hangisi hangisi hangisi hangisi hangisi hangisi hangisi hangisidir? ERDDAP™ okumak için kullanmak .nc dosyaları dosyaları dosyaları dosyaları) Uzaktan okuma verilerini uzaktan destek .nc HTTP range istekleri ile dosyaları.

    Bunu yapmayın!
    Bunun yerine, kullanın<Url> sistemden önbellek (#cache Fromurl) .

Cache FromUrl
  • [ ** <Önbellek FromUrl> ** ] (#cache Fromurl) - Bütün Hepsi EDDGrid FromFiles and all EDDTable FromFiles datasets support a set of tags which tell tell tell ERDDAP™ Uzak bir veri kümesinin tüm dosyalarının bir kopyasını veya birkaç dosyayı indirmek veya korumak için (İhtiyacınız olduğu gibi indirildi) . Bu inanılmaz derecede kullanışlı bir özelliktir.
    • The The The The The The The The<Önbellek FromUrl> etiketi, uzak bir veri kümesinin dosyalarının bir uzaktan dosya listesinden bir URL belirtmenizi sağlar.

      ERDDAP™ Bu dosyaları veri kümesindeki kopyalayacak veya önbellekleyecek<fileDir> directory. Başka bir uzaktan dosya listesi için desteğe ihtiyacınız varsa (E.g., FTP) Lütfen isteğinizi Chris'e e-posta gönderin. John at noaa.gov.

      • Varsayılan değer için<Önbellek FromUrl> etiketi çıplaktır. Eğer bir değeri belirtmezseniz<Url> etiketinden önbellek, kopya/cache sistemi bu veri kümesi için kullanılmayacaktır.
      • Eğer veri kümesinin<fileRegex> ayar diğer bir şeydir .\*, ERDDAP™ Sadece dosyayı ayarlayan dosyaları indirecektir.
      • Eğer veri kümesinin<Recursive> ayarı doğrudur ve uzak dosyalar alt yönlendirmelerdedir, ERDDAP™ Dataset'in [kullanıcılarla eşleşen uzaktan alt yönlendirmelere bakacaktır]<Yol Haritası (#pathregex) Yerel olarak aynı dizin yapısını yaratır ve aynı alt yönlendirmelerde yerel dosyaları koyar.
      • GenrateDatasets X ml, eğer bir işaret ederseniz<Önbellek Url> değer, Genrate Datasets X ml yerel yaratır<fileDir> Rehber ve 1 uzaktan dosyayı içine kopyalayın. GenrateDatasets X ml sonra X ml üretecek datasets.xml chunk bu örnek dosyaya dayanarak (Örnek Dosya = Hayır) .
      • Veri kaynağı uzaksa ERDDAP™ , kullanımı EDDGrid FromErddap veya EDDTable FromErddap Bunun yerine,<Önbellek FromUrl>. Bu şekilde, yerel halkınız ERDDAP™ Veri kümesine sahip gibi görünecek, ancak yerel olarak herhangi bir veri depolamak zorunda kalmayacak. Kullanımının tek nedeni<önbellek> uzak bir uzaktan veri almak için ERDDAP™ Bazı başka bir nedeni olduğunda, veri dosyalarının yerel bir kopyasını almak istiyorsunuz. Bu durumda:
        • Bu veri seti, uzakdaki verilere abone olmaya çalışacak ERDDAP Bu nedenle bu veri setine yapılan değişiklikler bu veri setinin bayrağını çağıracaktır Url, bu yerel veri kümesinin yeniden yüklenmesine ve değişen uzaktan dosyaları indirmesine neden oluyor. Böylece, yerel veri kümesi çok yakında değişiklikler uzaktan veri setine yapılırken güncellenecek.
        • Uzaklığın yöneticisini e-postalmalısın ERDDAP™ sormak için datasets.xml Uzak veri kümesi için, böylece yerelnizdeki veri setinizi yapabilirsiniz ERDDAP™ Uzaktaki dataset gibi görün ERDDAP .
      • Veri kaynağı uzaksa ERDDAP™ Yerel veri kümesi uzaktan veri setine abone olmaya çalışacak.
        • Eğer abonelik başarılı olursa, ne zaman uzaktan ERDDAP Yeniden yükler ve yeni veriler var, bu veri seti için bayrakURL ile irtibata geçecek, yeni ve / veya değiştirilmiş verileri indirmesine neden olacaktır.
        • Eğer abonelik başarısız olursa (Her ne sebeple olursa olsun) Ya da yerel veri setinin güncel olduğundan emin olmak istiyorsanız, bir set a set a set a Bayrak bayrağı Yerel veri kümesi için, bu yüzden yeniden yüklenecek, bu yüzden yeni ve / veya uzaktan veri dosyaları değiştirecektir.
      • Eğer veri kaynağı uzak değildir ERDDAP : Veri seti yeni ve / veya / veya yeniden yüklendiğinde uzaktan dosyaları kontrol edecektir. Normalde, bu kontrol edilir [<reload HerNMinutes> (#reload allnminutes) . Ama yeni uzaktan dosyalar olduğunda biliyorsan, bir tane ayarlayabilirsiniz Bayrak bayrağı Yerel veri kümesi için, bu yüzden yeni ve / veya uzaktan veri dosyaları değiştirecektir. Eğer bu rutin olarak belirli bir günde gerçekleşirse (E.g., 7am) , kullanmak için bir cron işi yapabilirsiniz curl Bayrak ile iletişime geçmek Bu veri kümesi için Url, bu yüzden yeni ve / veya uzaktan veri dosyaları değiştirecektir.
    • The The The The The The The The<önbellekSizeGB> etiketi yerel önbellek boyutunu belirtir. Muhtemelen sadece bulut depolama sistemleri ile çalışırken bunu kullanmanız gerekir Amazon S3 Hangi yaygın olarak kullanılan bir depolama sistemidir ki bu bir parçası Amazon Web Services (AWS) . Varsayılan ise -1.

      • Değer ise değerdir.<=0 (e.g., varsayılan değeri -1) , ERDDAP™ indirecek ve koruyacak Tam kopya Tüm uzaktan veri kümesinin dosyaları dataset'in dosyaları<fileDir>.
        • Bu, mümkün olduğunda tavsiye edilen ayardır.
        • Her zaman veri kümesi yeniden yükleniyor, isimleri, boyutları karşılaştırıyor ve uzaktan dosyaların ve yerel dosyaların son zamanlarda çoğaldı ve yeni veya değişmiş olan herhangi bir uzaktan dosyayı indirin.
        • Uzak sunucuda olan bir dosya kaybolursa, ERDDAP™ İlgili yerel dosyayı silmeyecek (Aksi halde, uzaktan sunucu ile geçici olarak yanlış bir şey olsaydı, ERDDAP™ Bazı veya tüm yerel dosyaları silebilir!) .
        • Bu ayar ile, genellikle ayarlarsınız<HerNMillis>'i -1'e güncellemek, çünkü veri kümesi yeni veri dosyalarını yere kopyalandığından haberdardır.
      • Değer >0 ise, ERDDAP™ Uzak veri setinden dosyaları yerel bir yerelye ihtiyaç olduğu gibi indirecektir. Önbelli önbelli önbelli önbelli önbelli önbelli önbelli önbelli önbelli önbelli önbelli (Verisetin'in<fileDir>) bu belirtilen sayıda GB'nin eş büyüklüğü ile.
        • Önbellek en az birkaç veri dosyası tutmak için yeterince büyük olmalıdır.
        • Genel olarak, daha büyük önbellek, daha iyi, çünkü bir sonraki talep edilen veri dosyası zaten ön planda olması daha muhtemel olacaktır.
        • Caching sadece ne zaman kullanılmalıdır ERDDAP™ Bir bulut bilişim sunucusunda çalışıyor (e.g., bir AWS hesaplama örneği) Ve bir bulut depolama sistemindeki uzak dosyalar (e.g., AWS S3) .
        • Yerel dosyalar tarafından kullanılan disk alanı önbellekleri aşıyor BoyutGB, ERDDAP™ Yakında olacak (Belki hemen hemen değil) Önbellek dosyaların bir kısmını silin (Şu anda, Lest Son zamanlarda Kullanılanlara Göre (LRU) algoritma algoritması) Yerel dosyalar tarafından kullanılan disk alanı olana kadar,<0.75\*cacheSizeGB ("goal") . Evet, LRU'nun çok kötü yaptığı durumlar var - mükemmel bir algoritma yok.
        • ERDDAP™ Asla önbellekli bir dosyayı silmeye çalışmayacak ERDDAP™ Son 10 saniyede kullanmaya başladı. Bu, önbellek sistemi ile uğraşmak için mükemmel bir sistemdir ve veri dosyası okuyucu sistemi sadece tamamen entegre edilmiştir. Bu kural nedeniyle, ERDDAP™ Hedefine ulaşmak için yeterli dosyaları silemeyebilir, bu durumda giriş.txt dosyasına bir WARNING yazdıracaktır ve sistem önbelleklemeye çalışan çok fazla zaman harcayacaktır ve önbellekteki dosyaların boyutunun sizeGB'yi büyük ölçüde aşabilmesi mümkündür. Eğer bu meydana gelirse, bu veri kümesi için daha büyük bir önbellekSizeGB ayarı kullanın.
        • Şu anda, ERDDAP™ Uzak sunucunun yerel önbellekte olan bir dosyanın yeni bir versiyonu olup olmadığını asla kontrol etmez. Bu özellike ihtiyacınız varsa lütfen e-posta Chris. John at noaa.gov.
      • Aynı etiket isimlerinin kullanımı, kopya sisteminin ve önbellek sisteminin aynı alt sistemi kullandığı anlamına gelebilir, bu doğru değildir.
        • Kopya sistemi proaktif olarak yeni dosyaları indirmek ve her seferinde dataset yeniden yükleniyor. Sadece yerel diziye kopyalanan dosyalar mevcut ERDDAP™ dataset.
        • Önbellek sistemi her seferinde uzaktan dosya listesini alır ve tüm bu dosyaların mevcut olduğunu iddia eder. ERDDAP™ dataset. İlginç bir şekilde, tüm uzak dosyalar bile dataset's /files / web sayfalarında görünür ve indirmek için kullanılabilir. (Ancak belki sadece bir gecikmeden sonra dosya ilk olarak uzaktan sunucudan yerel önbelleğe indirilir.)
      • Önbelleği kullanan veri setleriGB bir kullanımdan yararlanabilir nThreads 1'den daha büyük ayarlama, çünkü bu, veri kümesinin bir seferde 1 uzaktan dosyayı indirmesini sağlayacaktır.
    • The The The The The The The The<ÖnbellekPartialPathRegex> etiketi, dataset'in için bir alternatif belirtebilecek nadiren kullanılan bir etiketdir [<Yol Haritası (#pathregex) . varsayılan çıplaktır.

      • Sadece tüm veri kümesini varsayılan olarak kopyalıyorsanız bunu kullanın<önbellekSizeGB> değeri -1. ile<önbellekSizeGB> >1 değerleri, bu göz ardı edilecektir çünkü bu anlamsızdır.
      • See [The documents for the documents for<Yol Haritası (#pathregex) Regex nasıl inşa edileceğine dair rehberlik için.
      • Eğer bu belirtilmişse, veri kümesi yeniden yüklenecek, ilk defa bir veri kümesi bir ayın başında yeniden yüklenecektir.
      • Bu, uzaktan veri setinin bir laboratuarda depolandığı ve bu dosyaların büyük çoğunluğu nadiren, eğer her zaman değişirse. (<öksürük> NASA<öksürüm) Örneğin, bir tane belirtebilirsin,<ÖnbellekPartialPathRegex> sadece mevcut yıl veya mevcut ay ile eşleşen. Bu regexes belirtmek çok zordur, çünkü tüm kısmi ve tam yol isimleriyle eşleşmesi gerekir<ÖnbellekPartialPathRegex> ve çünkü<ÖnbellekPartialPathRegex> uzak URL ve yerel yönetmenlerle çalışmalıdır. Gerçek bir yaşam örneği:
            <cacheFromUrl>https://data.nodc.noaa.gov/ghrsst/GDS2/L4/GLOB/JPL/MUR/v4.1/</cacheFromUrl>  
\\>!-- \\[2020-10-21 This server is no longer reliably available.\\] For most types of remote directories, omit the filename (e.g., contents.html for Hyrax). -->
<fileDir>/u00/satellite/MUR41/</fileDir>
<fileNameRegex>\\*\\.nc</fileNameRegex>
<recursive>true</recursive>
<pathRegex>.\\*</pathRegex>
<cachePartialPathRegex>.\\*/v4\\.1/(|2018/(|01./))</cachePartialPathRegex>

Yukarıdaki örnek URL, yıl öncesine dayanan alt yönlendirmelerde dosyalara sahiptir. (e.g., 2018) ve yıl (e.g., 001, 002, ..., 365 veya 366) . Not that the the the the the the<ÖnbellekPartialPathRegex> .\* ile başlar, Daha sonra uzaktan URL'lere ve yerel yönetmenlere ortak olan özel bir alt yönlendirme var, e.g. /v4 Tian.1/ Daha sonra ilk seçeneğin hiçbir şey olmadığı bir dizi yuva yakalama grubu var. Ve ikinci seçenek belirli bir değerdir.

Yukarıdaki örnek sadece 2018 e.g.'nin ikinci 10 günü için yönetmenlerle eşleştirecektir. https://data.nodc.noaa.gov/ghrsst/GDS2/L4/GLOB/JPL/MUR/v4.1/2018/010/ \[ 2020-10-21-21-21 Bu sunucu artık güvenilir bir şekilde mevcut değildir. \]
Ve gün 011, 012, ..., 019. (Buna bakın Regex Belgeleri ve regex öğretici .)
Eğer oluşturmak için yardıma ihtiyacınız varsa<ÖnbellekPartialPathRegex>, lütfen e-posta<Önbellek: Chris'e. John at noaa.gov.

  • Ortak bir yaklaşım: Eğer kullanmak istiyorsanız<ÖnbellekPartialPathRegex>, başlangıçta kullanmıyorsunuz, çünkü bunu istiyorsun ERDDAP™ Başlangıçta tüm dosyaları indirmek için. After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After After ERDDAP™ Tüm dosyaları indirmiştir, veri setinin chunk'a ekleyin. datasets.xml .  
Binlerce Files

Veri setinizin binlerce dosyası varsa, ERDDAP™ Bu veri setinden gelen veriler için taleplere cevap vermek yavaş olabilir. Burada iki sorun var:  

  1. Seri başına dosyaların sayısı. İçsel olarak, ERDDAP™ n dosyaların bir dizide olup olmadığı veya birkaç yönetmende dağılmadığına bakılmaksızın aynı hızda çalışır.   Ama bir problem var: Verilen bir dizideki daha fazla dosya, işletim sistemi, dizideki dosyaların listesini geri döndürür. (per file) toklanmak için ERDDAP . Yanıt süresi O olabilir (n log n log n log) . Bir dizide kaç dosyanın çok fazla olduğunu söylemek zor, ancak 10.000 muhtemelen çok fazla. Bu nedenle, kurulumunuz birçok dosyayı üretirse, burada bir öneri olabilir: dosyaları mantıksal olarak organize edilmiş alt yönlendirmelere koyun. (E.g., istasyon veya istasyon / yıl) .

Subdirectories kullanmak için başka bir neden: Bir kullanıcı kullanmak istiyorsa ERDDAP " "files" İstasyon X için en eski dosyasının adını bulmak için sistem daha hızlı ve daha verimlidir eğer dosyalar istasyon/yıl alt yönlendirmelerdeyse, çünkü çok daha az bilgi aktarılmalıdır.

  1. Toplam dosya sayısı. Prolar datasets için, ERDDAP™ Her dosyadaki her değişken için değerlerin aralıkını tutar. Bir kullanıcı bir istek aldığında, ERDDAP™ Kullanıcının talebini eşleştirebilecek tüm dosyalardan tüm verileri okumak zorunda. Kullanıcı sınırlı bir süreden veri talep ederse (E.g., bir gün veya bir ay) Sonra, ERDDAP™ Veri setinizde çok fazla dosyayı açmak zorunda kalmayacak. Ancak neredeyse her dosyanın eşleşen verileri olduğu aşırı durumlar var (e.g., suTemperature=13.2C) . Bu gerektirdiğinden beri ERDDAP™ Biraz zaman (kısmen HDD'de arama zamanı, kısmen dosyanın başlığını okumak için zaman) Sadece verilen bir dosyayı açmak için (Ve daha fazla, dizideki birçok dosya varsa) Ancak, toplam dosyaların toplam sayısına göre önemli bir zaman cezası var ERDDAP™ Açık olmak çok büyük. 1000 dosyayı açmak bile önemli zaman alır. Bu yüzden günlük dosyaları daha büyük chunkslara düzenli olarak konsolide etmek için faydaları vardır. (e.g., 1 yıl boyunca 1 istasyon) . Bunu çeşitli nedenlerle yapmak istemediğinizi anlıyorum, ancak çok daha hızlı yanıtlara yol açıyor. Aşırı durumlarda (e.g., bir GTSPP veri kümesi ile ilgileniyorum -35 milyon kaynak dosyaları var) Çok sayıda kaynak dosyasından veri servis etmek pratik değildir çünkü ERDDAP Basit sorgulara cevap saatlerce sürebilir ve tonlar hafıza kullanabilir. Kaynak dosyalarını daha küçük bir numaraya konsolide ederek (GTSPP için, şimdi 720m var, ayda 2,) , ERDDAP™ makul bir şekilde hızlıca cevap verebilir. See See See See Milyonlarca Files
     

N.B. Solid State Drives harika! En hızlı, en ucuz yolu yardımcı olmak için ERDDAP™ Büyük bir sayı ile uğraşmak (küçük küçük küçük küçük küçük küçük küçük küçük) dosyalar sağlam bir devlet sürücüsü kullanmaktır. See See See See Solid State Drives harika!
 

Milyonlarca Files
  • Bazı veri setleri milyonlarca kaynak dosyasına sahiptir. ERDDAP™ Bunu idare edebilir, ancak karışık sonuçlarla.

    • For requests that just include variables listed in [[değiştir | kaynağı değiştir]< subsetVariables >) (#subsetibles) , ERDDAP™ Gerekli tüm bilgilere zaten bir dosyada depolanmış ve depolanmış, bu yüzden çok hızlı yanıt verebilir.
    • Diğer talepler için, ERDDAP™ Veri kümesinin taranabilir Önbelli dosya bilgileri Ve dosyaların sadece birkaçının taleple alakalı verileri olabileceğini ve böylece hızlı bir şekilde yanıt verebileceğini fark edin.
    • Ama diğer talepler için (Örneğin, suTemperature=18 derece\_C) Herhangi bir dosyanın ilgili verilere sahip olabileceği yerde, ERDDAP™ Dosyaların her birinin istekle ilgili herhangi bir veri olup olmadığını görmek için çok sayıda dosyayı açmak zorunda. Dosyalar açık bir şekilde açılır. Herhangi bir işletim sistemi ve herhangi bir dosya sistemi (Diğer katı devlet sürücüler) Ama bu uzun zaman alır (Bu yüzden ERDDAP™ Yavaş yavaş cevap verir) Ve gerçekten dosya sistemini bağlar (Bu yüzden ERDDAP™ Yavaş yavaş diğer isteklere cevap verir) .

Neyse ki, bir çözüm var.

  1. Veri kümesini kamu dışı olmayan bir şekilde ayarlayın ERDDAP™ (Kişisel bilgisayarınız?) .
  2. Create and run a script which requests a series of .nc CF dosyaları, her biri veri kümesinin büyük bir chunk ile, genellikle bir zaman periyodu (Örneğin, verilen bir ay için tüm veriler) . Zaman süresini seçin, böylece tüm sonuçlanan dosyaların 2GB'den daha az olduğunu (Ama umarım 1GB'den daha büyük) . Veri setinin gerçek zamanlı verilere yakınsa, mevcut süre için dosyayı yeniden tanımlamak için senaryoyu çalıştırın. (E.g., bu ay) Sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık (Her 10 dakika? Her saat?) . İstekler ERDDAP™ Çünkü .nc CF dosyaları bir yaratır NetCDF v3 .nc Dosyayı kullanan dosya CF Discrete Sampling Geometries (DSG) Tartışma veri yapıları).
  3. Set up an an EDDTable FromNcCFFiles veri setinizde ERDDAP™ Hangi veriler veri alır .nc (CF) dosyaları. ERDDAP™ Bu dosyaların verilerini çok çabuk çıkarabilir. Ve şimdi onlarca veya yüzlerce olduğu için (Bunun yerine milyonlarca milyon) dosyaların, hatta olsa bile ERDDAP™ Tüm dosyaları açmak zorunda, bu kadar hızlı yapabilir.

Evet, bu sistem kurmak için biraz zaman ve çaba gerektirir, ancak çok iyi çalışır. Çoğu veri isteği öncekinden 100 kat daha hızlı işlenebilir. \[ Bob bunu bir olasılık olduğunu biliyordu, ancak bunu yapan Kevin O'Brien oldu ve iyi çalıştığını gösterdi. Şimdi, Bob bunu yaklaşık 18 milyon kaynak dosyasına sahip olan GTSPP veri kümesi için kullanıyor ve hangisinin hangisinin 18 milyon kaynak dosyası var ve hangisi ERDDAP™ Şimdi yaklaşık 500 $ ile hizmet ediyor .nc (CF) dosyaları. \]

N.B. Solid State Drives harika! En hızlı, en ucuz yolu yardımcı olmak için ERDDAP™ Büyük bir sayı ile uğraşmak (küçük küçük küçük küçük küçük küçük küçük küçük) dosyalar sağlam bir devlet sürücüsü kullanmaktır. See See See See Solid State Drives harika!
 

Büyük dosyalar
  • Tek büyük bir veri dosyası (Özellikle büyük ASCII veri dosyaları) Bir OutOfMemoryError'a neden olabilir. Eğer bu sorunsa, açık olmalıdır çünkü ERDDAP™ Veri setini yükleyemez. Çözüm, mümkünse, dosyayı birden fazla dosyayı bölmek. İdeal olarak, dosyayı mantıksal kıvrımlara ayırabilirsiniz. Örneğin, dosyanın 20 aylık veri değeri varsa, her biri 1 aylık veri değerinde 20 dosyaya bölün. Ancak ana dosyanın hakem olarak bölünmüş olmasına rağmen avantajları vardır. Bu yaklaşımın birden çok faydası vardır: a) Bu, veri dosyalarını 1/20'ye okumak için gerekli hafızayı azaltacaktır, çünkü sadece bir dosya bir seferde okunur. b) Genellikle, ERDDAP™ İsteklerle çok daha hızlı başa çıkabilir, çünkü yalnızca belirli bir istek için verileri bulmak için bir veya birkaç dosyayı aramak zorundadır. c) Veri koleksiyonu devam ederse, mevcut 20 dosya değişmeden kalabilir ve sadece bir, küçük, yeni dosyanın bir sonraki ayın veri kümesine eklenmesi gerekir.  
FTP Sorun/Advice
  • FTP yeni veri dosyalarına yeni veri dosyalarına sahipseniz ERDDAP™ sunucu iken sunucu ERDDAP™ Koşuyor, olma şansı var ERDDAP™ FTP sürecinde veri kümesini yeniden yükleyecek. Düşündüğünüzden daha sık olur! Eğer gerçekleşirse, dosya geçerli görünüyor (Geçerli bir adı vardır) Ancak dosya geçerli değil. If if if if if if if if if if if if if if if if if if if if if if if if if if if if if ERDDAP™ Bu geçersiz dosyadan verileri okumaya çalışır, sonuçlanan hata dosyanın geçersiz dosyaların masasına eklenmesine neden olacaktır. Bu iyi değil. Bu problemden kaçınmak için, FTP'nin dosyayı yaparken geçici bir dosya adı kullanın, örneğin ABC2005 .nc \_TEMP . Sonra, dosyaNameRegex testi (Aşağıdaki aşağıda bakınız) Bunun ilgili bir dosya olmadığını gösterecektir. FTP süreci tamamlandıktan sonra, dosyayı doğru adı yeniden isimlendir. Renaming süreci, dosyanın bir anda ilgili olmasına neden olacaktır.
File Name Extracts

\[ Bu özellik DEPRECATED'dir. Lütfen kullanın \\\*fileName YOU sourceName Bunun yerine. \]
EDDTable FromFiles, her dosya adından bir String çıkarmak ve bunu sahte bir veri değişkeni yapmak için kullanmak için bir sisteme sahiptir. Şu anda, bu Stringleri tarih/zaman olarak yorumlamak için bir sistem yoktur. Bu sistemi kurmak için birkaç XML etiketi var. Eğer bu sistemin bir parçası veya hepsine ihtiyacınız yoksa, bu etiketleri belirtme veya "" değerleri kullanma.

  • PreExtractRegex bir Düzenli ifade ( Ders öğreticisi ) Dosya adının başlangıcından silinmek için metin tanımlamak için kullanılır. Kaldırım sadece regex maçlanırsa gerçekleşir. Bu genellikle dosya adının başlangıcını eşleştirmek için "^" ile başlar.
  • post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post post Etiketnamenin sonundan çıkarılması için metin tanımlamak için kullanılan düzenli bir ifadedir. Kaldırım sadece regex maçlanırsa gerçekleşir. Bu genellikle dosya adının sonuna ulaşmak için "$" ile biter.
  • EkstraRegex Eğer mevcutsa, bu düzenli ifade, öncedenExtractRegex ve postExtractRegex'ten çıkarılacak bir dizeyi tanımlamak için kullanılır (Örneğin, stationID ) . Regex eşleşmezse, tüm dosya adı kullanılır (eksi preExtract and post Ekstraksiyon) . PreExtractRegex ve postExtractRegex'ten sonra kalan tüm dosya isimleriyle eşleştirmek için ".\*" kullanın.
  • sütun sütun sütun AdForExtract, çıkarılan Strings için veri sütun kaynağı adıdır. A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A dataVariable Bu arada bununla birlikte sourceName Olmalı dataVariable s list (Herhangi bir veri türü ile, ancak genellikle String) .

Örneğin, bir veri kümesi XYZAble gibi isimlerle dosyaları varsa .nc XYZBaker .nc XYZCharlie .nc ... ve yeni bir değişken yaratmak istiyorsunuz ( stationID ) Her dosyanın hangi istasyon ID değerleri olacağını okuduğu zaman (Able, Baker, Charlie, ...) Dosya isimlerinden alındı, bu etiketleri kullanabilirsiniz:

  • <PreExtractRegex>^XYZ</preExtractRegex> İlk ^, kuvvetlere güç veren düzenli bir ifadedir. ERDDAP™ Dosya adı başında XYZ'ye bakmak. Bu, XYZ’ye neden olur, dosya adının başında bulunursa, kaldırıldı (Örneğin, dosya adı XYZAble .nc Able .nc ) .
  • <PostExtractRegex>The .nc $ $ $ $ $ $</postExtractRegex> Sonunda $ normal bir ifade özel karakterdir ki, hangi güçler kuvvetler ERDDAP™ Bakmak için .nc Dosya adının sonunda. . normal bir ifade özel karakter olduğundan (Hangi herhangi bir karakterle eşleşen) Bu, Ž olarak kodlanır. İşte burada burada (Çünkü 2E bir dönem için hexadecimal karakter numarasıdır) . Bu nedenlere sebep olur .nc Dosya adının sonunda bulunursa, kaldırıldı (Örneğin, kısmi dosya adı Able .nc Able) .
  • <ekstra>.\</extractRegex> .\ normal ifade tüm kalan karakterlerle maçları (Örneğin, kısmi dosya adı Able, ilk dosya için alıntı yapar) .
  • <sütunNameForExtract> stationID </columnNameForExtract> Bu anlatıyor ERDDAP™ Yeni bir kaynak sütunu oluşturmak için stationID Her dosyayı okuduğunuzda. Verilen bir dosya için her sıra, dosya adından çıkarılan metine sahip olacaktır. (Örneğin, Able) Değer olarak, stationID sütun.

Çoğu durumda, aynı sonuçları verecek olan bu ekstra etiketler için çok sayıda değer vardır - düzenli ifadeler çok esnektir. Ancak birkaç durumda, istenen sonuçları elde etmek için sadece bir yol var.  

Pseudo sourceName s

Her veri kümesindeki her değişken ERDDAP™ (A)< sourceName >) (#sourcenamename) Bu, kaynağın adını değişken için belirtir. EDDTable FromFiles birkaç sahte destekler sourceName Başka bir yerden bir değer çıkarmak (e.g., dosyanın adı veya küresel bir özelliklerin değeri) Ve bu değeri, verilerin o chunk için sabit değerlerin bir sütunu olmasını teşvik edin (e.g., bu dosyanın verileri) . Bu değişkenler için, değişkenin veri tipini [In this variables, you must specify the variable's data type via the [<dataType>] (#datatype) etiket. Tamamlanan bilgi bir tarihTime dizesi ise, tarihTime dizenin formatını tarihTime dizesini belirtebilirsiniz. Özellikler . yalancı sourceName seçenekler şunlardır:  

Global: sourceName s

Her kaynak veri dosyasında küresel bir metadata özelliği, bir veri sütunu olarak terfi edilebilir. Bir değişkenin< sourceName > formata sahip

        <sourceName>global:*attributeName*</sourceName>

O zaman ne zaman zaman ERDDAP™ Verileri bir dosyadan okuyor, ERDDAP™ Bu adın küresel bir özelliğine bakacaktır (Örneğin, PI) Ve özellik değeri ile dolu bir sütun oluşturun. Bu, özellik farklı kaynak dosyalarında farklı değerlere sahip olduğunda faydalıdır, çünkü aksi takdirde kullanıcılar tüm veri kümesi için bu değerlerden birini göreceklerdir. Örneğin,

        <sourceName>global:PI</sourceName>

Veriler için bir özellik teşvik ettiğinizde, ERDDAP™ İlgili özelliği ortadan kaldırır. Bu uygun, çünkü değer muhtemelen her dosyada farklıdır; ancak agred veri setinde toplandığında ERDDAP™ Sadece bir değeri olacaktır. Eğer istiyorsanız, tüm veri setine eklenerek yepyeni bir değer katabilirsiniz<Adı: Özellikler Name Name Name Name Name Name Name Name Name Name Name "> Yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni Değer Değer Değer Değer Değer Değer Değer Değer Değer Değer Değer Değer </att> to the dataset's global [< addAttributes >) (#addattributes) . Küresel özellikler için, ERDDAP™ Örneğin, kurum, özellikler için yeni bir değer ekleyin.  

değişken: sourceName s

Her dosyadaki değişkenin metadata özelliği, bir veri sütunu olarak terfi edilebilir. Bir değişkenin< sourceName \> formatına sahiptir

        <sourceName>variable:*variableName*:*attributeName*<sourceName>

O zaman ne zaman zaman ERDDAP™ Verileri bir dosyadan okuyor, ERDDAP™ Belirtilen niteliklere bakacaktır (Örneğin, ID) Belirtilen değişken değişken değişken (Örneğin, enstrüman) Ve özellik değeri ile dolu bir sütun oluşturun. ebeveyn değişkeni (Örneğin, enstrüman) needn't be one of the dataVariable Dataset'in tanımına dahil edilenler ERDDAP . Örneğin,

        <sourceName>variable:instrument:ID</sourceName>

Bu, özellik farklı kaynak dosyalarında farklı değerlere sahip olduğunda faydalıdır, çünkü aksi takdirde kullanıcılar tüm veri kümesi için bu değerlerden birini göreceklerdir.

Veriler için bir özellik teşvik ettiğinizde, ERDDAP™ İlgili özelliği ortadan kaldırır. Bu uygun, çünkü değer muhtemelen her dosyada farklıdır; ancak agred veri setinde toplandığında ERDDAP™ Sadece bir değeri olacaktır. Eğer istiyorsanız, tüm veri setine eklenerek yepyeni bir değer katabilirsiniz<Adı: Özellikler Name Name Name Name Name Name Name Name Name Name Name "> Yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni yeni Değer Değer Değer Değer Değer Değer Değer Değer Değer Değer Değer Değer </att> değişkenin [< addAttributes >) (#addattributes) . Çünkü özellikler için, ERDDAP™ Örneğin, ioos\_category (Kurulumnıza bağlı olarak) Ancak, özellik için yeni bir değer ekliyorsunuz.

fileName sourceName s

Bir dosyanın dosyasının bir kısmını çıkarabilir ve bunun bir veri sütunu olmasını teşvik edebilirsiniz. Bu yalancı için format [< sourceName >) (#sourcenamename) Is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is

        <sourceName>\\*\\*\\*fileName,*regex*,*captureGroupNumber*</sourceName>

Örneğin,

        <sourceName>\\*\\*\\*fileName,A(\\d{12})\\.slcpV1.nc,1</sourceName>

EDDTable FromFiles verileri bir dosyadan okuyorsa, dosyaName'den emin olacaktır. (Örneğin, A201807041442.slcpV1 .nc ) Belirtilen düzenli ifade maçları ("regex") ve belirtilenleri çıkarın (Bu durumda ilk önce) yakalama grubu (Bu, ebeveynlikle çevrili bir kısımdır) Örneğin, "201807041442". (Buna bakın Regex Belgeleri ve regex öğretici .) Regex bir dize olarak veya çevreleyen alıntılar olmadan belirtilebilir. Regex, çevreleyen alıntılarla bir dize olarak belirtilirse, dizenin olması gerekir. JSON-style string (Özel karakterler 4.99 karakterleri ile kaçtı) . yakalama grubu numarası genellikle 1 (İlk yakalama grubu) Ama herhangi bir sayı olabilir.  

YolName sourceName s

Bir dosyanın tam yolunun bir kısmını çıkarabilirsiniz Name Name Name Name Name Name Name Name Name Name Name (/ menajerler/fileName.ext) Ve bunu bir veri sütunu olarak teşvik edin. Bu yalancı için format [< sourceName >) (#sourcenamename) Is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is is

        <sourceName>\\*\\*\\*pathName,*regex*,*captureGroupNumber*<sourceName>

Örneğin,

        <sourceName>\\*\\*\\*pathName,/data/myDatasetID/(\\[A-Z0-9\\]\\*)/B(\\d{12}).nc,1</sourceName>

EDDTable FromFiles bir dosyadan verileri okuduğunda, tam yolName'den emin olacaktır. (Örneğin, /data/myDatasetID/BAY17/B201807041442 .nc . Bu test için, dizi ayırıcılar her zaman olacaktır '/' Ama asla 'Lo ‘ ‘ ‘) Belirtilen düzenli ifade maçları ("regex") ve belirtilenleri çıkarın (Bu durumda ilk önce) yakalama grubu (Bu, ebeveynlikle çevrili bir kısımdır) Örneğin, "BAY17". (Buna bakın Regex Belgeleri ve regex öğretici .) Regex bir dize olarak veya çevreleyen alıntılar olmadan belirtilebilir. Regex, çevreleyen alıntılarla bir dize olarak belirtilirse, dize bir yol olmalıdır. JSON-style string (Özel karakterler 4.99 karakterleri ile kaçtı) . yakalama grubu numarası genellikle 1 (İlk yakalama grubu) Ama herhangi bir sayı olabilir.  

"0 dosyaları" Hata Mesaj
  • Eğer koşuyorsan GenrateDatasetsX ml veya DasDds Ya da bir EDDTable'ü çıkarmaya çalışırsanız... Files dataset in in inIn ERDDAP™ Ve bunu gösteren bir "0 dosya" hatası mesajı alırsınız ERDDAP™ dizide 0 eşleştirme dosyaları bulundu (Bu dizide eşleşen dosyalar olduğunu düşündüğünüzde) :
    • dosyaların gerçekten bu dizide olduğunu kontrol edin.
    • Kılavuz isminin yazımını kontrol edin.
    • DosyaNameRegex'i kontrol edin. Aslında, regexes ile hataları yapmak gerçekten kolaydır. Test amacıyla, regex .\*'yi deneyin ve tüm dosya isimleriyle eşleşmesi gerekir. (Buna bakın Regex Belgeleri ve regex öğretici .)
    • Programı çalıştıran kullanıcının programı kontrol edin (e.g., user=tomcat (??) Tomcat / ERDDAP ) Bu dosyalar için 'oku' izni var.
    • Bazı işletim sistemlerinde (Örneğin, SELinux) Sistem ayarlarına bağlı olarak, programı kullanan kullanıcı, dosyaları olan diziye giden tüm yönetmenlerin zinciri için ‘okunmalıdır.  
standardize standardize What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What
  • EDDTableFromFiles'in herhangi bir alt sınıfı, belirli bir değişken için, kaynak dosyalarının bir setini takip ettiğinde, tüm kaynak dosyaları MUST'nin birkaç özellik için aynı özellikleri vardır: scale\_factor , add\_offset \_Unsigned, missing\_value \_FillValue ve birimler). Bunu düşünün: Eğer bir dosya rüzgarız birimleri =knotlar ve başka biri rüzgarız birimleri =m /s vardır, sonra iki dosyadan gelen veriler aynı toplam veri kümesine dahil edilmemelidir. Yani, EDDTable ilk olarak veri setini yarattığında, bir dosyadan gelen özellikleri okur, sonra bu önemli özellikler için farklı değerlere sahip olan tüm dosyaları reddeder. Çoğu dosya koleksiyonu için, bu bir problem değil çünkü tüm değişkenlerin özellikleri tutarlıdır. Ancak, diğer dosyalar koleksiyonları için, bu% 1,% 10,% 50,% 90 veya hatta dosyaların% 99'u "kötü" dosyaları olarak reddedildi. Bu sorun.

EDDTableBu problemle başa çıkmak için dosyaların bir sistemi vardır: standartlaştırma Ne. Standartlaştırma EDDTable'e, onları okuduğu sürece dosyaları standartlaştırmak için ne diyor, EDDTable FromFiles tutarlı olup olmadığını görmek için niteliklere bakıyor.

Flip tarafı: Eğer veri kümesi bu probleme sahip değilse, standartlaştırmayı kullanma Ne. standardize standardize Bazı potansiyel riskleri nelerdir (Aşağıda tartışılan aşağıda tartışılmıştır.) Ve inefficiencies. Yani aslında standartlaştırmanın özelliklerine ihtiyacınız yoksa Ne, potansiyel risklerle ve verimsizliklerle yüzleşmeye gerek yok. En büyük verimsizlik: Çeşitli standardize edildiğinde Bir veri kümesi tarafından hangi seçenekler kullanılır, kaynak dosyalarının verileri önemli ölçüde farklı şekillerde depolaması anlamına gelir. (E.g., farklı scale\_factor ve add\_offset , veya zaman dizeleri farklı formatları kullanarak) . Böylece, bir kullanıcı isteğinde verilen bir kısıtlama için, hiçbir yol yoktur. ERDDAP™ Tüm kaynak dosyalarına uygulanabilir tek bir kaynak düzeyinde kısıtlama yapmak. Bu yüzden ERDDAP™ Sadece etkilenen kısıtlamaları daha yüksek düzeyde uygulayabilir. Bu yüzden ERDDAP™ Daha yüksek, destinasyon düzeyinde kısıtlamalar uygulamadan önce verileri daha fazla dosyadan okumak zorunda. Bu yüzden standart olarak kullanan veri kümelerine talep edin Artık işlenecek olan şey.

Bu sistemi kullanmak için, belirtmeniz gerekir

    <standardizeWhat>*standardizeWhat*</standardizeWhat>  

İçinde datasets.xml EDDTable From... Dosyalar dataset (Bu arada)<dataset> etiketi).

The The The The The The The The standardize standardize What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What What Değer, EDDTable FromFiles'in hangi değişiklikleri uygulamaya çalışması gerektiğini belirtir. Değişiklikler bazı kombinasyonların toplamıdır:

  1. Unpack Bu, dosyaların sayısal sütunlarını standartlaştırmak için birçok yaygın ve güvenli işlem yapar:
    • If if if if if if if if if if if if if if if if if if if if if if if if if if if if if scale\_factor ve/veya add\_offset özellikler mevcut, onları kaldırmak ve onları veri değerlerini paketlemek için uygulamak.
    • Unpack paketlenmiş özellikler (E.g., gerçek\_min, gerçek\_max, actual\_range , data\_min , data\_max , data\_range, valid\_min , valid\_max , valid\_range ) Eğer mevcutsa, değişken paketlenmiş olsaydı ve özellik değerleri paketlenmiş olsaydı (Bu zor, ama makul derecede güvenilir) .
    • If \_FillValue and/or missing\_value Şu anda, bu veri değerlerini dönüştürmek için ERDDAP “standart” eksik değerler: MAX\_VALUE tam tersine tipler için (E.g., 127 for bytes, 32,767 for short, and 2,147,483,647 for ints, 9223372036854775807 Uzunlar için) Ve NaN çiftler ve yüzler için.
    • Eski \_FillValue ve/veya missing\_value Özellikleri (Eğer herhangi bir) Ve onları sadece \_FillValue = \[ The the the the ERDDAP™ standart eksik değer \] .  
  2. Standardize Numeric Times Bir sayısal sütunun CF-style sayısal zaman birimleri vardır (" " "" ZamanUnitsitsits O zamandan beri o zamandan beri BaseTime ", e.g., " 1900-01-01'den beri günler") Ama bu tarihe dönüşür Zaman değerleri zaman değerlerine dönüşür "seconds since 1970-01-01T00:00:00Z" Birimlerin bunu belirtmesi ve değiştirir. Bu seçilirse ve bu değişkenin sahip olduğu bir şans var scale\_factor veya add\_offset 1 MUST da seçilir.  
  3. Uygulama missing\_value
    Bir String sütunu \_FillValue ve/veya missing\_value özellikler, bu değerleri ""ya dönüştürür ve özelliklerini ortadan kaldırır.  
  4. Numericeric missing\_value
    Bir sayısal sütunun \_FillValue veya missing\_value özellikler, bu tanımlanmamış bir sayısal tanımlamaya çalışır missing\_value (E.g., -999, 9999, 1e37f) Ve bunun örneklerini "standart" değerlere dönüştürür (MAX\_VALUE tam anlamıyla tipler için ve NAN çiftler ve yüzler için) . Bu seçenek bir riske sahiptir: En büyük veya en küçük geçerli veri değeri eksik bir değer gibi görünüyorsa (E.g., 999) Daha sonra bu geçerli veri değerleri eksik değerlere dönüştürülecektir (E.g., NaN) .  
  5. String "N/A"'yı "" Her String sütunu için, çeşitli dizeleri genellikle "" eksik bir String değerini göstermek için kullanılır. Şu anda, "", "...", "??", "???", "N/A", "NA", "none", "gerekli değil", "null", "unknown", "unpecified". dize arama durumu hassastır ve dizelerden sonra uygulanır. "nd" ve "başka" özellikle listede değil. Bu seçenek bir riske sahiptir: Geçerli değerlerin " dönüştürülebileceğini düşündüğünüz Strings"e dönüştürülebilir.  
  6. String ISO 8601 DateTimes'a standardize Her String sütunu için, not-purely-numeric String tarihiTimes dönüştürmeye çalışın (E.g., "Jan 2, 2018") ISO 8601 String tarihiTimes ("2018-01-02") . Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not NotNote sütun için tüm veri değerleri aynı formatı kullanmalıdır, aksi takdirde, bu seçenek belirli bir sütuna herhangi bir değişiklik yapmaz. Bu seçenek bir riske sahiptir: Eğer sadece ortak bir tarih gibi görünmek için bir sütun varsa Zaman formatı, ISO 8601 String tarihiTimes'a dönüştürülecekler.  
  7. Standartize Compact DateTimes to ISO 8601 DateTimes Her String veya tam sayı sütunu için, tamamen sayısal olarak sayısız String tarihiTimes dönüştürmeye çalışın (E.g., "20180102") ISO 8601 String tarihiTimes ("2018-01-02") . Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not Not NotNote sütun için tüm veri değerleri aynı formatı kullanmalıdır, aksi takdirde, bu seçenek belirli bir sütuna herhangi bir değişiklik yapmaz. Bu seçenek bir riske sahiptir: Kompakt tarih olmayan değerlere sahip bir sütun varsa Times ama kompakt tarihTimes gibi görünüyor, ISO 8601 String tarihiTimes'a dönüştürülecektir.  
  8. Standartlaştırılmış Birimler Bu, birimleri her değişken için standartlaştırmaya çalışır. Örneğin, "İkinci başına metreler", "meter/saniye", "m.s^-1" , "m s-1" "m.s-1" her şey "m.s-1" olarak dönüştürülecektir. Bu, veri değerlerini değiştirmez. Bu, geçerlilik için iyi çalışır UDUNITS Birimler dizeleri, ancak geçersiz veya karmaşık dizelerle sorunları olabilir. Belirli olmayan çiftleri belirterek sorunlarla başa çıkabilirsiniz<standardizeUdunits> in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in ERDDAP " \[ tomcat \] /webapps/erddap/WEB-INF/classes/gov/noaa/pfel/erddap/util/messajlar.xml dosyası. Lütfen Chris'e yaptığınız herhangi bir değişiklik e-postanız. John noaa.gov'da, varsayılan mesajlara dahil edilebilirler.xml. Bu seçenek bir riske sahiptir: Bu, mangle bazı karmaşık veya geçersiz birimler olabilir; ancak, eğer meydana gelirse, olayları açıklamak için yukarıda açıklanan işi kullanabilirsiniz.  

Standartlaştırmanın varsayılan değeri What is 0, which doesn't do anything.

Eğer / standartlaştırma değerini değiştirirseniz What, the next time the dataset is reloaded, ERDDAP™ Her dosya hakkında bilgi ile mini-database'i yeniden inşa etmek için veri kümesi için tüm dosyaları yeniden hazırlayacaktır. Veri kümesinin birçok dosyası varsa, bu uzun zaman alacaktır.

Notlar:

  • Zor bir şey - Standartlaştırma Kaynak dosyasındaki tüm sütunlar için ne ayar kullanılır. Örneğin, #2048 kullanarak, kompakt bir String tarihiTimes sütununu ISO 8601 String dateTimes'e dönüştürebilir, ancak aynı zamanda sadece kompakt tarihTimes gibi görünmek için bir sütunu yanlış çevirebilir.  
  • datasets.xml Ve GenrateDatasets X ml - ayarları doğru hale getirmek özellikle zordur datasets.xml Veri setinizi yapmak istediğiniz şekilde çalışır. En iyi yaklaşım (Her zaman olduğu gibi her zaman) :
  1. Use Use Use Use Use GenrateDatasetsX ml Ve standartlaştırmanın değerini belirtin Ne kullanmak istersiniz.
  2. Use Use Use Use Use DasDds Dataset yüklerinin doğru şekilde yüklenmesini ve standartlaştırmayı sağlamak Hangi ayarı belirtmişsiniz.
  3. Veri kümesini el tarafından test edin, içinde olduğunda ERDDAP™ Etkilenen değişkenlerin beklendiği gibi çalışmasını sağlamak.  
  • Riskler - Seçenekler #256 ve yukarıdakiler daha riskli, yani. ERDDAP™ Yapılmaması gereken bir değişiklik yapacaktır. Örneğin, seçenek #2048 yanlışlıkla istasyon ID dizeleri ile bir değişkeni dönüştürebilir, hepsi sadece ISO 8601 "compact" tarihlerine bakmak için gerçekleşir (e.g., 20180102) ISO 8601 "extended" Tarih tarihleri ("2018-01-02") .  
  • Bir değişiklikten sonra yavaş yavaş - Standartlaştırmanın değerinden bu yana EDDTable FromFiles'in her veri dosyası için gördüğü veri değerleri ne değiştirir, standardize ederseniz Ne ayar, EDDTable FromFiles her dosya hakkında önbellekli tüm bilgileri atacaktır (Her dosyada her veri değişkeni için min ve max içerir) Ve her veri dosyasını yeniden hazırlayın. Bir veri kümesinin çok sayıda dosyaları varsa, bu çok zaman alıcı olabilir, bu yüzden ilk kez dataset için uzun zaman alacaktır. ERDDAP™ Değişim yaptıktan sonra yeniden yükler.  
  • Heuristics - Seçenekler #256 ve yukarıdakiler değişiklikleri yapmak için heuristics kullanır. Heuristics'in kötü bir karar verdiği bir durumla karşılaşırsanız lütfen sorunun Chris'e bir açıklamasına e-posta gönderin. John in noaaa. gov böylece heuristics'ı geliştirebiliriz.  
  • Alternatifler - Belirli bir veri kümesi için bir problem çözmenin standartlaşmasından biri varsa, sorunu problemi bir hale getirerek çözebilirsiniz .nc ml dosyası Her veri dosyasına paralel olarak ve dosyaların tutarlı olması için değişiklikler tanımlayın. Sonra, EDDTable'e söyle... Files dataset to aggregate the current .nc ml dosyaları.

Ya da, kullanın NCO Aslında dosyalara değişiklikler yapmak, böylece dosyalar tutarlıdır.

Yıl Ayı, Tarih, Saat, Minute, Second

Yıl için ayrı sütunlara sahip olmak için tabular veri dosyaları için oldukça yaygındır, ay, tarih, saat, dakika, ikinci. Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce ERDDAP™ v2.10, tek çözüm, bu sütunları birleşik bir zaman sütununa birleştirmek için veri dosyasını düzenlemekti. With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With ERDDAP™ 2.10+, kullanabilirsiniz [< sourceName >= ifade ifadesi < sourceName >) (#sourcenamename) Söylemek için ERDDAP™ Kaynak sütunlarını birleşik bir zaman sütununu nasıl birleştirin, bu yüzden artık kaynak dosyasını düzenlemeniz gerekmez.

<OaderToRegex>
  • [<OaderToRegex>) (#skipheadertoregex) – OPence. (EDDTableAsciiFiles ve EDDTableColumnarAsciiFiles datasets sadece.)
    EDDTableAsciiFiles bir veri dosyası okuduğunda, bu düzenli ifadeyi oynayan çizgiyi göz ardı edecektir. Varsayılan "", bu seçeneği kullanmıyor. Bir örnek bir örnektir.
    <skipHeaderToRegex>\\\*\\\*\\\* END OF HEADER.\\*<skipHeaderToRegex>  

Bu, tüm hatları göz ardı edecek ve “bir çizgi” ile başlayan bir çizgi de içerecektir.\\\* END OF HEADER."

Bu etiketi kullandığınızda,<sütunNamesRow> ve<İlkDataRow>, dosya okumadan önce başlık kaldırıldığı gibi hareket. Örneğin, sütunNamesRow=0 eğer sütun isimleri başlığından hemen sonra sıraya girerse kullanılır.

Üretmek istiyorsanız, Datasets Bu etikete ihtiyaç duyan bir veri kümesi ile X ml:

  1. Mevcut bir dosyayı kopyalayarak yeni, geçici, örnek bir dosya yapın ve başlığı kaldırın.
  2. Run üretmek Datasets X ml ve bu örnek dosyasını belirtin.
  3. Manually eklemek<HeaderToRegex> etiketine atlayın datasets.xml chunk.
  4. Geçici, örnek dosyayı sil.
  5. Veri kümesini kullanın ERDDAP .
<JumpLinesRegex>

OPence. (EDDTableAsciiFiles ve EDDTableColumnarAsciiFiles datasets sadece.)
EDDTableAsciiFiles bir veri dosyası okuduğunda, bu düzenli ifadeyi oynayan tüm hatları görmezden gelecektir. Varsayılan "", bu seçeneği kullanmıyor. Bir örnek bir örnektir.

    <skipLinesRegex>#.\\*<skipLinesRegex>  

Bu, "#" ile başlayan tüm hatları görmezden gelecektir.

Bu etiketi kullandığınızda,<sütunNamesRow> ve<İlkDataRow>, dosyanın okunmasından önce tüm eşleşen hatların kaldırıldığı gibi hareket eder. Örneğin, sütunNamesRow=0'ı, örneğin, "#" dosyasının başlangıcında kullanabilirsiniz.

EDDTable FromFiles iskelet XML

  <dataset type="EDDTableFrom...Files" datasetID\="..." active\="..." >
      <nDimensions>...</nDimensions> <!-- This was used prior to ERDDAP™
        version 1.30, but is now ignored. -->
      <accessibleTo>...</accessibleTo> <!-- 0 or 1 -->
      <graphsAccessibleTo>auto|public</graphsAccessibleTo> <!-- 0 or 1 -->
      <reloadEveryNMinutes>...</reloadEveryNMinutes> <!-- 0 or 1 -->
      <updateEveryNMillis>...</updateEveryNMillis> <!-- 0 or 1. For
        EDDTableFromFiles subclasses, this uses Java's WatchDirectory system
        to notice new/deleted/changed files quickly and efficiently. -->
      <standardizeWhat>...</standardizeWhat> <!-- 0 or 1 -->
      <defaultDataQuery>...</defaultDataQuery> <!-- 0 or 1 -->
      <defaultGraphQuery>...</defaultGraphQuery> <!-- 0 or 1 -->
      <addVariablesWhere>...</addVariablesWhere> <!-- 0 or 1 -->
      <nThreads>...</nThreads> <!-- 0 or 1 -->
      <fgdcFile>...</fgdcFile> <!-- 0 or 1 -->
      <iso19115File>...</iso19115File> <!-- 0 or 1 -->
      <onChange>...</onChange> <!-- 0 or more -->
      <specialMode>mode</specialMode> <-- This rarely-used, OPTIONAL tag
        can be used with EDDTableFromThreddsFiles to specify that special,
        hard-coded rules should be used to determine which files should
        be downloaded from the server. Currently, the only valid mode
        is SAMOS which is used with datasets from
        https://tds.coaps.fsu.edu/thredds/catalog/samos to download only the
        files with the last version number. -->
      <sourceUrl>...</sourceUrl> <-- For subclasses like
        EDDTableFromHyraxFiles and EDDTableFromThreddsFiles, this is where
        you specify the base URL for the files on the remote server.
        For subclasses that get data from local files, ERDDAP™ doesn't use
        this information to get the data, but does display the
        information to users. So I usually use "(local files)". -->
      <fileDir>...</fileDir> <-- The directory (absolute) with the data
        files. -->
      <recursive>true|false</recursive> <!-- 0 or 1. Indicates if
        subdirectories of fileDir have data files, too. -->
      <pathRegex>...</pathRegex> <!-- 0 or 1. Only directory names which
        match the pathRegex (default=".\") will be accepted. -->
      <fileNameRegex>...</fileNameRegex> <-- 0 or 1. A regular expression
        (tutorial) describing valid data file names, for example,
            ".\
\.nc" for all .nc files. -->
      <accessibleViaFiles>true|false(default)</accessibleViaFiles>
        <!-- 0 or 1 -->
      <metadataFrom>...</metadataFrom> <-- The file to get metadata
        from ("first" or "last" (the default) based on file's
        lastModifiedTime). -->
      <charset>...</charset>
        <!-- (For EDDTableFromAsciiFiles and EDDTableFromColumnarAsciiFiles
        only) This OPTIONAL tag specifies the character set (case
        sensitive!) of the source files, for example, ISO-8859-1
        (the default) and UTF-8. -->
      <skipHeaderToRegex>...</skipHeaderToRegex>
      <skipLinesRegex>...</skipLinesRegex>
      <columnNamesRow>...</columnNamesRow> <-- (For EDDTableFromAsciiFiles
        only) This specifies the number of the row with the column
        names in the files. (The first row of the file is "1".
        Default = 1.) If you specify 0, ERDDAP™ will not look for
        column names and will assign names: Column#1, Column#2, ... -->
      <firstDataRow>...</firstDataRow>
        <-- (For EDDTableFromAsciiFiles and EDDTableFromColumnarAsciiFiles
        only) This specifies the number of the first row with data in the
        files. (The first row of the file is "1". Default = 2.) -->
      <dimensionsCSV>...</dimensionsCSV> <-- (For EDDTableFromNcFiles
        and EDDTableFromMultidimNcFiles only) This is a comma-separated
        list of dimension fullNames. If specified, ERDDAP™ will only read
        variables in the source files which use some or all of these
        dimensions, plus all of the scalar variables. If a dimension
        is in a group, you must specify its fullName,
        e.g., "groupName/dimensionName". -->
      <-- The next four tags are DEPRECATED. For more information, see
        File Name Extracts. -->
      <preExtractRegex>...</preExtractRegex>
      <postExtractRegex>...</postExtractRegex>
      <extractRegex>...</extractRegex>
      <columnNameForExtract>...</columnNameForExtract>
      <sortedColumnSourceName>...</sortedColumnSourceName>
        <-- The sourceName of the numeric column that the data files are
        usually already sorted by within each file, for example, "time".
        Don't specify this or use an empty string if no variable is
        suitable. It is ok if not all files are sorted by this column.
        If present, this can greatly speed up some data requests.
        For EDDTableFromHyraxFiles, EDDTableFromNcFiles and
        EDDTableFromThreddsFiles, this must be the leftmost (first) axis variable.
        EDDTableFromMultidimNcFiles ignores this because it has a better
        system. -->
      <sortFilesBySourceNames>...</sortFilesBySourceNames>
        <-- This is a space-separated list of sourceNames
        which specifies how the internal list of files should be sorted
        (in ascending order), for example "id time".
        It is the minimum value of the specified columns in each file
        that is used for sorting.
        When a data request is filled, data is obtained from the files
        in this order. Thus it determines the overall order of the data
        in the response. If you specify more than one column name, the
        second name is used if there is a tie for the first column; the
        third is used if there is a tie for the first and second
        columns; ... This is OPTIONAL (the default is
        fileDir+fileName order). -->
        
      <sourceNeedsExpandedFP\_EQ>true(default)|false</sourceNeedsExpandedFP\_EQ>
      <fileTableInMemory>...</fileTableInMemory> <!-- 0 or 1 (true or
        false (the default)) -->
      <cacheFromUrl>...</cacheFromUrl> <!-- 0 or 1 -->
      <cacheSizeGB>...</cacheSizeGB> <!-- 0 or 1 -->
      <addAttributes>...</addAttributes> <!-- 0 or 1 -->
      <dataVariable>...</dataVariable> <!-- 1 or more -->
        <-- For EDDTableFromHyraxFiles, EDDTableFromMultidimNcFiles,
        EDDTableFromNcFiles, EDDTableFromNccsvFiles, and
        EDDTableFromThreddsFiles, the source's axis variables (for
        example, time) needn't be first or in any specific order. -->
  </dataset>

EDDTable FromAsciiService

EDDTable FromAsciiService Aslında bir ekran scraper. Veri kaynaklarını talep etmek için basit bir web hizmeti olan veri kaynakları ile uğraşmak amaçlanmıştır. (Genellikle bir web sayfasında bir HTML formu) Ve bu, bazı yapılandırılmış ASCII formatındaki verileri geri döndürebilir (Örneğin, bir comma-separated-value veya columnar ASCII metin formatı, genellikle daha önce ve/veya verilerden sonra diğer bilgilerle ve / veya sonra verilerle.) .

EDDTable FromAsciiService, tüm EDDTableFromAsciiService'ın süper sınıfıdır. EDDTableFromAsciiService'ı doğrudan kullanamazsınız. Bunun yerine, belirli hizmet türlerini ele almak için EDDTableFromAsciiService'ın alt sınıfını kullanın:

Şu anda başka bir hizmet türü desteklenmez. Ancak genellikle benzer bir şekilde çalışıyorsanız diğer hizmetleri desteklemek oldukça kolaydır. Bize bir istek varsa ulaşın.

Detaylar

Aşağıdaki bilgiler, EDDTable'ün tüm alt sınıflarına AsciiServ'den uygulanır.

  • Eklenmeler - ERDDAP™ tabular veri talepleri herhangi bir değişken üzerinde kısıtlamalar koyabilir. Alt servis tüm değişkenlerde kısıtlamalara izin veremez veya olmayabilir. Örneğin, birçok hizmet sadece istasyon isimleri, entitude, uzunlık ve zaman kısıtlamaları destekliyor. Bu nedenle, EDDTableFromAsciiServis bir veri kümesi için bir istek aldığında, kaynak veri servisine mümkün olduğunca çok kısıtlamayı alır ve sonra geri kalan kısıtlamalaru kullanıcılar tarafından iade almadan önce, verilere uygular.
  • Geçerli Range - Diğer birçok dataset türünden farklı olarak, EDDTableAsciiService genellikle her değişken için veri yelpazesini bilmiyor, bu nedenle geçerli aralığın dışındaki veriler için talepleri hızla reddedebilir.
  • ASCII Text Responsesing - EDDTableAsciiService ASCII Text Service'den bir yanıt aldığında, cevabın beklenen format ve bilgilere sahip olduğunu ve sonra verileri çıkarın. Bu veri kümesi için XML'in chunk'taki çeşitli özel etiketleri kullanarak formatı belirtebilirsiniz:
    • <Daha önceData1> aracılığıyla<Daha önceData10> etiketler - Bir dizi metin belirtebilirsiniz (İstediğiniz kadar, 10'a kadar) EDDTableAsciiService, ASCII metninin başlığıyla hizmet tarafından iade edilmesi gerekir.<Daha önceData1> aracılığıyla<Daha önceData10>. Örneğin, bu, cevabın beklenen birimleri kullanarak beklenen değişkenleri içerdiğini doğrulamak için faydalıdır. Data etiketinden önceki son, veri başlamadan önce meydana gelen metni tanımlarsınız.
    • <Data> – Bu, EDDTable FromAsciiService'in ASCII metninde verinin sonunu gösteren hizmet tarafından geri dönüşeceğini belirtir.
    • <NoData> – Eğer EDDTableAsciiService bu metni servis tarafından iade edilen ASCII metninde bulursa, istekle eşleşen bir veri olmadığını sonucuna varır.

EDDTable FromAsciiService iskelet XML

  <dataset type="EDDTableFromAsciiService..." datasetID\="..." active\="..." >
      <accessibleTo>...</accessibleTo> <!-- 0 or 1 -->
      <graphsAccessibleTo>auto|public</graphsAccessibleTo> <!-- 0 or 1 -->
      <reloadEveryNMinutes>...</reloadEveryNMinutes> <!-- 0 or 1 -->
      <defaultDataQuery>...</defaultDataQuery> <!-- 0 or 1 -->
      <defaultGraphQuery>...</defaultGraphQuery> <!-- 0 or 1 -->
      <addVariablesWhere>...</addVariablesWhere> <!-- 0 or 1 -->
      <fgdcFile>...</fgdcFile> <!-- 0 or 1 -->
      <iso19115File>...</iso19115File> <!-- 0 or 1 -->
      <onChange>...</onChange> <!-- 0 or more -->
      <sourceUrl>...</sourceUrl>
      <beforeData1>...<beforeData1> <!-- 0 or 1 -->
      ...
      <beforeData10>...<beforeData10> <!-- 0 or 1 -->
      <afterData>...<afterData> <!-- 0 or 1 -->
      <noData>...<noData> <!-- 0 or 1 -->
      <addAttributes>...</addAttributes> <!-- 0 or 1 -->
      <dataVariable>...</dataVariable> <!-- 1 or more -->
  </dataset>

EDDTable FromAsciiServiceNOS

EDDTable FromAsciiServiceNOS EDDTable veri setleri tarafından sunulan ASCII metin veri servislerinden yapar NOAA " Ulusal Okyanus Servisi (NOS) . Bu sınıfın nasıl çalıştığı ve nasıl kullanılacağı hakkında bilgi için, bu sınıfın süper sınıfını gör EDDTable FromAsciiService . Bob Simons'tan başka birinin bu alt sınıfı kullanması gerektiği tahmin edilemez.

NOS servisinden gelen yanıtdaki veriler bir sütuner ASCII metin formatı kullanıyor olduğundan, veri değişkenleri enlem ve uzunlık, her veri hattının hangi karakterlerini içeren özel bir özellike sahip olmalıdır, örneğin, bu değişkenin verilerini içerir.

<att name="responseSubstring">17, 25</att>  

 

EDDTable FromAllDatasets

EDDTable FromAllDatasets Şu anda yüklediğiniz diğer tüm veri kümeleri hakkında bilgi sahibi olan daha yüksek seviyeli bir veri kümesidir. ERDDAP . Diğer veri kümelerinin aksine, herhangi bir spesifikasyon yoktur allDatasets dataset in in in in dataset in in dataset in in dataset in in dataset in dataset in in dataset in dataset in in dataset in in dataset in dataset in dataset in in in dataset in dataset in in in dataset in dataset in in in in dataset in in dataset in in in dataset in dataset in in dataset in dataset in dataset in dataset in dataset in in in dataset in dataset in dataset in dataset in in in dataset in in in in dataset in dataset in dataset in dataset in in in dataset in in in dataset in dataset in dataset in dataset in dataset in dataset in dataset in dataset in dataset in dataset in dataset in dataset in dataset in dataset in dataset in dataset in dataset in dataset in dataset in dataset in dataset in dataset in dataset in dataset in dataset in dataset in dataset in dataset in dataset in dataset in dataset in dataset in dataset in dataset in dataset in dataset in dataset in dataset in dataset in dataset in datasets.xml . ERDDAP™ Otomatik olarak tümDatasets veri setlerinden bir EDDTable oluşturur (ile birlikte datasetID = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = allDatasets ) . Böylece, allDatasets Dataset her birinde oluşturulacak ERDDAP™ Kurulum ve her birinde aynı şekilde çalışacak ERDDAP™ kurulum.

The The The The The The The The allDatasets dataset bir tabular veri kümesidir. Her veri kümesi için bir dizi bilgiye sahiptir. Her veri kümesi, e.g hakkında bilgi ile sütunları vardır. datasetID , erişilebilir, kurum, unvanı, minLongitude, maxLongitude, minLatitude, maxLatitude, minTime, maxTime, vs. Çünkü allDatasets Bir tabu veri kümesi, başka bir tabut veri kümesini sorgulayabileceğiniz şekilde sorgulayabilirsiniz ERDDAP™ Ve yanıt için dosya türünü belirtebilirsiniz. Bu, kullanıcıların çok güçlü şekillerde ilgisinin veri kümelerini aramasını sağlar.  

EDDTable FromAsciiFiles

EDDTable FromAsciiFiles Koma-, sekme-, yarıkol- veya uzay destekli tabular ASCII veri dosyalarından toplam veriler.

  • Çoğu zaman, dosyalar ikinci sıraya başlayan ilk sıra ve veriler üzerinde sütun isimleri olacak. (İşte dosyanın ilk sırası satır numarası olarak adlandırılır 1.) Ama kullanabilirsiniz<sütunNamesRow> ve<İlkDataRow> senin içinde datasets.xml Farklı bir satır numarasını belirtmek için dosya.
  • ERDDAP™ Veriler sıralarının farklı veri değerlerine sahip olmasını sağlar. ERDDAP™ Eksik veri değerlerinin sıradaki son sütunlar olduğunu varsayar. ERDDAP™ Eksik veri değerleri için standart eksik değer değerleri tayin eder. (v1.56)
  • ASCII dosyaları ile çalışmak kolaydır, ancak depolama / bakım verileri için en verimli yoldur. Daha büyük verimlilik için, dosyaları kurtarmak NetCDF v3 .nc dosyaları dosyaları dosyaları dosyaları (Bir boyutla, "row", tüm değişkenler tarafından paylaşılan) Bunun yerine. Yapabilirsiniz kullanımı kullanımı kullanımı kullanımı kullanımı ERDDAP™ Yeni dosyaları oluşturmak için .
  • Bu sınıfın süper sınıfını gör EDDTable FromFiles Bu sınıfın nasıl çalıştığı ve nasıl kullanılacağı hakkında bilgi için.
  • Güçlü bir şekilde kullanmayı öneriyoruz GenrateDatasets X ml programı Kaba bir taslak yapmak için datasets.xml Bu veri kümesi için chunk. ASCII dosyalarındaki total metadata eksikliği nedeniyle, GenerateDatasetsXml sonuçlarını her zaman değiştirmeniz gerekir.
  • UYARI: Ne zaman ERDDAP™ ASCII veri dosyaları okur, belirli bir çizgide bir hata bulursa (e.g., yanlış sayıda öğe) , bir uyarı mesajı girin ("WARNING: Bad line (s) Verilerin listesi” ... sonraki hatların bir listesi ile) Ve log.txt file Ve sonra veri dosyasının geri kalanını okumaya devam edin. Böylece, periyodik olarak bakmak sizin sorumluluğunuzdur (veya bunu yapmak için bir senaryo yaz) Bu mesaj için girişte. txt böylece veri dosyalarındaki sorunları düzeltebilirsiniz. ERDDAP™ Bu şekilde ayarlanmıştır, böylece kullanıcılar mevcut tüm geçerli verileri okumaya devam edebilir, ancak dosyanın bazı hatları kusurlarına sahip olsa da.  

EDDTable From From AwsX mlFiles

EDDTable From From AwsX mlFiles Otomatik Hava İstasyonu'nun bir setinden elde edilen veriler (AWS) Havayı kullanarak XML veri dosyaları (Artık aktif değil) .

  • Bu tür dosya, verileri depolamak için basit ama verimli bir yoldur, çünkü her dosya genellikle bir zaman noktasından gözlem içer gibi görünüyor. Bu yüzden çok sayıda dosya olabilir. Performansı geliştirmek istiyorsanız, gözlemleyici gözlem grupları düşünün (Bir hafta değerinde?) in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in NetCDF v3 .nc dosyaları dosyaları dosyaları dosyaları (En iyisi: .nc dosyaları ile dosyaları CF Discrete Sampling Geometries (DSG) Tartışma formatı ) ve kullanarak EDDTable FromMultidimNcFiles (veya EDDTable FromNcCFFiles ) Verilere hizmet etmek. Yapabilirsiniz kullanımı kullanımı kullanımı kullanımı kullanımı ERDDAP™ Yeni dosyaları oluşturmak için .
  • Bu sınıfın süper sınıfını gör EDDTable FromFiles Bu sınıfın nasıl çalıştığı ve nasıl kullanılacağı hakkında bilgi için.  

EDDTable FromColumnarAsciiFiles

EDDTable FromColumnarAsciiFiles Telelar ASCII veri dosyalarından sabit geniş sütunlarla toplam veriler.

  • Çoğu zaman, dosyalar ikinci sıraya başlayan ilk sıra ve veriler üzerinde sütun isimleri olacak. Dosyadaki ilk hat/row satır #1 olarak adlandırılır. Ama kullanabilirsiniz<sütunNamesRow> ve<İlkDataRow> senin içinde datasets.xml Farklı bir satır numarasını belirtmek için dosya.

  • The The The The The The The The< addAttributes > Her biri için< dataVariable Bu veri setleri için MUST bu iki özel özellik içerir:

    • <Adı="startColumn"> tam tam tam tam tam tam tam tam tam <Att> - bu veri değişkeninin başlangıcı olan her çizgideki karakter sütununu belirtir.
    • <Adı="stopColumn"> tam tam tam tam tam tam tam tam tam <Att> - bu veri değişkeninin bitiminden sonra her çizgideki karakter sütununu belirtir.

İlk karakter sütunu sütun #0 olarak adlandırılır. Örneğin, zaman değeri olan bu dosya için sıcaklık değerleri:

      0         1         2        <-- character column number 10's digit
0123456789012345678901234567 <-- character column number 1's digit
time temp
2014-12-01T12:00:00Z12.3
2014-12-02T12:00:00Z13.6
2014-12-03T12:00:00Z11.0

Zaman veri değişkeni sahip olurdu

      <att name="startColumn">0<att>  
  <att name="stopColumn">20<att>

Ve zaman veri değişkeni sahip olurdu

      <att name="startColumn">20<att>  
  <att name="stopColumn">24<att>

Bu özellikler MUST hariç tüm değişkenler için belirtilebilir Sabit değer ve Dosya adı-source-names değişkenler.

  • ASCII dosyaları çalışmak kolaydır, ancak depolama/retve verileri depolamak için etkili bir yol değildir. Daha büyük verimlilik için, dosyaları kurtarmak NetCDF v3 .nc dosyaları dosyaları dosyaları dosyaları (Bir boyutla, "row", tüm değişkenler tarafından paylaşılan) Bunun yerine. Yapabilirsiniz kullanımı kullanımı kullanımı kullanımı kullanımı ERDDAP™ Yeni dosyaları oluşturmak için .
  • Bu sınıfın süper sınıfını gör EDDTable FromFiles Bu sınıfın nasıl çalıştığı ve nasıl kullanılacağı hakkında bilgi için.
  • Güçlü bir şekilde kullanmayı öneriyoruz GenrateDatasets X ml programı Kaba bir taslak yapmak için datasets.xml Bu veri kümesi için chunk. Her veri sütunu için başlangıç ve son pozisyonları belirlemenin zorluğu ve ASCII dosyalarında metadata'nın toplam eksikliği nedeniyle, sonuçları GenrateDatasetsXml'den ayarlamanız gerekir.  

EDDTable FromHttpGet

EDDTableHtttpGet, diğer tüm veri kümelerinden farklı ERDDAP™ Bu durumda, belirli " yazarları" veri ekleyebilir, verileri revize edebilir veya veri kümesinden düzenli olarak silinebilir. HTTP GET veya POST Bir bilgisayar programından, bir senaryo veya bir tarayıcıdan talepler. Dataset aynı şekilde kullanıcılar tarafından sorgulanabilir, diğer tüm EDDTable veri setleri sorgulanabilir. ERDDAP . Bu sınıfın süper sınıfın açıklamasını görün, EDDTable FromFiles Bu süper sınıftan miras alınan özellikler hakkında okumak.

EDDTable FromHttpGet'in eşsiz özellikleri aşağıda belirtilmiştir. Tüm bu ilk bölümü okumanız ve anlamanız gerekir; aksi takdirde, gerçekçi olmayan beklentilere sahip olabilirsiniz veya düzeltmesi zor olan sorunlara kendiniz girebilirsiniz.

Intended Use

Bu sistem amaçlanmıştır:

  • Tabular (situ) Veriler, ızgara veriler değil.
  • Gerçek zamanlı veriler - Hedef bir yazarın izin vermesidir (e.g., sensör, otomatik bir QC senaryosu veya belirli bir insan) Veri setine bir değişiklik yapmak için (aracılığıyla .insert veya .delete komut ) Ve bu değişikliğin erişilebilir olmasını sağlayın ERDDAP™ Kullanıcılar, 1 saniyeden daha az ve muhtemelen çok daha hızlı. Bu 1 saniyenin çoğu ağ zamanı. ERDDAP™ İstekyi yaklaşık 1 ms ve veriler kullanıcılar için hemen erişilebilir. Bu bir şeydir Hızlı hızlı hızlı hızlı hızlı hızlı , sağlam sağlam sağlam sağlam sağlam Ve güvenilir sistem .
  • Neredeyse herhangi bir veri frekansı - Bu sistem infrequent verilerini kabul edebilir (E.g., günlük) Çok sık veri üzerinden (e.g., 100 Hz veri) . Sistemi optimize ederseniz, daha yüksek frekans verileri idare edebilir (Belki de aşırılara giderseniz 10 468 veri) .
  • Bir sensör veya benzer sensörlerin koleksiyonundan veri.
  • Versioning Versioning / Reproducible Science / DOI s - Verilere değişiklikler yapabilmeniz gereken durumlar (e.g., kaliteli bir kontrol bayrağını değiştirin) Yazarın her değişikliği yaptığını biliyor, yazarın değişimini yaptığı zaman notu biliyor ve (Talep üzerine) Değişim yapılmadan önce orijinal verileri görebilir. Bu nedenle, bu veri setleri uygun DOI s . Çünkü tanıştılar DOI Dataset'in değişmediği şart, aggregation hariç. Genel olarak, gerçek zamanlı veri setlerinin yakınında uygun değildir DOI s çünkü veriler genellikle retroaktif olarak değiştirildi (E.g., QA/QC amaçları için) .  

Veriler bir EDDTable FromHtttpGet dataset, herhangi bir kullanıcı verileri başka herhangi bir EDDTable veri kümesinden talep ettikleri şekilde talep edebilir.  

Deneysel: Dikkatli olun

Bu sistem yeni olduğundan ve kaybedilen çevresel veriler yeniden yorumlanamaz olduğundan, EDDTable'e deneysel olarak bakmanız gerekir. Başka bir sistemden geçerseniz, lütfen eski sistemi ve yeni sistemi yeni sistemin yeni sistemin iyi çalıştığına emin olana kadar yönetin. (Hafta veya aylar, sadece saatler veya günler değil) . Tüm durumlarda, lütfen sisteminizin ayrı olarak .insert ve .delete URL'leri EDTable FromHtpGet dataset (Sadece Apache ve / veya Tomcat girişlerinde bile olsa) En azından bir süre. Ve tüm durumlarda, EDDTable'ünüz tarafından yaratılan veri dosyalarının rutin olarak dış veri depolama cihazlarına desteklendiğinden emin olun. (Not that Not that Note that Not rsync EDDTable tarafından yaratılan veri dosyalarını çok verimli bir şekilde geri alabilir.)
 

.insert ve .delete

Herhangi bir veri kümesi için ERDDAP™ Ama bir istek gönderdiğinizde ERDDAP™ Bir veri kümesindeki verilerin bir alt kümesi için, yanıt için istediğiniz dosya türünü belirtirsiniz, e.g., .csv, .htmlTable , .nc , .json . EDDTable FromHttp Bu sistemi iki ek "dost türü" desteklemek için genişletin ve ekleyebilir (veya değişim) veya veri kümesindeki verileri silmek:

  • .insert
    • İstek standart bir HTML form cevabı gibi biçimlenir, anahtar=değer çiftleri ile ‘&’ tarafından ayrılır. Örneğin, https://some.erddap.url/erddap/tabledap/myDataset**.insert**?stationID=46088&time=2016-03-30T12:37:55Z&latitude=10.1&longitude=-150.1&airTemp=17.23&waterTemp=12.3&author=JohnSmith\_someKey1
      Söylenir ERDDAP™ Verileri eklemek veya değiştirmek için stationID =46088 belirtilen süre için.
    • Bu değişimin yazarı JohnSmith ve anahtar bazıKey1.
    • URL geçerli değerleri içermelidir (Eksik değerler eksik değil) Bütün bunlar için http GetRequiredVariables
    • Eğer değerlerin değeri varsa http GetRequired Talepteki Değişkenler (E.g., stationID Ve zaman) Veri setinde zaten bir sıradaki değerleri eşleştirin, eski değerleri daha etkili bir şekilde eski değerleri yazmak için (Eski değerler hala kullanıcı önceki bir öncekinden veri talep ederse erişilebilir olsa da sürüm sürüm sürüm sürüm sürüm sürüm sürüm sürüm sürüm versiyonu Dataset) .
    • .insert URL asla dahil olmamalıdır &timestamp = ( ERDDAP™ Bu değer yaratıyor) veya (Bu, .insert tarafından belirtilmiştir. (Hangi komut=0) veya (Hangi komut = 1 1 1) ) .
    • Eğer .insert URL, veri setinde olan diğer sütunlar için değerleri belirtmezse, yerli eksik değerler olarak kabul edilirler. (MAX\_VALUE tam veri türleri için NaN, yüzler ve çiftler için ve "" için) .  
    • ...
      • İstek standart bir HTML form cevabı gibi biçimlenir, anahtar=değer çiftleri ile ‘&’ tarafından ayrılır. Örneğin, https://some.erddap.url/erddap/tabledap/myDataset**.delete**?stationID=46088&time=2016-03-30T12:37:55Z&author=JohnSmith\_someKey1
        Söylenir ERDDAP™ Verileri silmek için stationID =46088 belirtilen zamanda.
      • Bu değişimin yazarı JohnSmith ve anahtar bazıKey1.
      • URL'nin belirtilmesi gerekir http GetRequiredVariables İstek içinde (E.g., stationID Ve zaman) . Eğer bu değerler bir satırdaki değerleri zaten veri setinde karşılaştırırsa (Hangileri genellikle yapacakları) Eski değerler etkili bir şekilde silinir (Eski değerler hala bir kullanıcının öncekinden veri talep ettiğinde erişilebilir olsa da sürüm sürüm sürüm sürüm sürüm sürüm sürüm sürüm sürüm versiyonu Dataset) .
      • İstekyi özgünleştirmek için gerekli olan yazardan başka bir şekilde kabul edilemez.  

Detaylar:

  • .insert ve .delete talepleri standart HTML form yanıtları gibi biçimlenir, anahtar=değer çiftleri ile “&” tarafından ayrılır. Değerler olmalıdır Yüzde yüzde encoded . Böylece, HH'nin karakterin 2 sayısal hexadecimal değeri olduğu formdaki özel karakterleri kodlamanız gerekir. Genellikle, sadece birkaç punkuation karakter dönüştürmeniz gerekir:% 25, ve%26, "%22,<%2C, =% 34D, >% 2B, +%2B, | %7C'ye, \[ %5B'ye, \] %5D'ye göre, uzay% 20'ye dönüşür ve tüm karakterleri UTF-8 formlarına dönüştürür ve sonra UTF-8 formunun her birini %HH formatına kodlar. (Yardım için bir programcı sormak) .
  • .insert ve .delete talepleri dahil edilmelidir http GetRequiredVariables E.g., stationID Ve zaman. .insert talepleri için, istekte belirtilmeyen değişkenler eksik değerler olduğu varsayılır (MAX\_VALUE tam değişkenler için NaN, yüz ve çift değişken için ve String değişkenleri için boş bir String) . .delete talepleri için, olmayanlar için değerler Değişkenler Değişkenler (Yazardan başka, hangi gereklidir) Göz ardı edilir.
  • .insert ve .delete istekleri, yazarın adını ve yazarın anahtarını form yazarında parametre ile içermelidir = Yazar\_key İstekteki son parametre olarak. Bunu son olarak kabul etmek, tüm talebin satın alındığından emin olmak için ERDDAP . Sadece yazar (Anahtar anahtarı değil) Veri dosyasında depolanacaktır. İzin verilen izin listesini belirtmeniz gerekir Yazar\_key Küresel özellikler aracılığıyla http GetKeys
  • .insert ve .delete parametreleri ölçeklenebilir (single single single single single single) Formlarda herhangi bir uzunluktaki değerler veya diziler \[ value1,value2,value3,...,valueN \] . Verilen bir istek için, dizilerle tüm değişkenler aynı sayıda değerle dizilere sahip olmalıdır. (Başka bir hata) . Bir istek ölçeklendirme ve dizi değerleri varsa, ölçek değerleri, belirtilen diziler, e.g., & & stationID =46088 olarak tedavi edilebilir ve stationID = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = \[ 46088,46088,46088 \] . Diziler, anahtardır High throughput . Diziler olmadan, ikinci bir uzaktan yazarın ikinci sıralarından daha fazla .insert veya .delete için zor olacaktır. (Çünkü ağların tüm yükü) . Diziler ile, uzaktan bir sensörden ikinci olarak 1000'den fazla veri satırını seçmek kolay olacaktır.
  • .insert ve .delete kabul (Bir hata mesajı olmadan) tam sayılar beklendiği zaman yüzen nokta numaraları. Bu durumlarda, veri kümesi değerleri tamsayılara dönüştürür.
  • .insert ve .delete kabul (Bir hata mesajı olmadan) Değişkenin veri türünden tam ve yüz puan numaraları. Bu durumlarda, veri setleri değerleri değerler olarak saklar ERDDAP “Bu veri türü için yerli eksik değerler (MAX\_VALUE tam tersine tipler ve NaN yüzler ve çiftler için) .  

Yanıt

Eğer .insert veya .delete URL başarılı olursa, HTTP yanıt kodu 200 olacak (Tamam tamam) Ve yanıt bir metin ile yazılır .json nesne, e.g.,

    {
"status":"success",
"nRowsReceived":1,
"stringTimestamp":"2018-11-05T22:12:19.517Z",
"numericTimestamp":1.541455939517+E9
}

Zamanların milisantrik hassas olduğunu unutmayın.

Eğer .insert veya .delete URL başarısız olursa, 200'den fazla yanıt kodu alacaksınız. (Tamam Tamam Tamam) E.g., Hata 403 Yanlış bir yazarın_key değerini gönderirseniz. ERDDAP™ HTTP yanıt kodunu gönderir (değil, eg., a .json formatlı hata) Çünkü bu internetteki şeyler nasıl yapılır ve hatalar sistemdeki herhangi bir yerde meydana gelebilir. (e.g., ağda, bu bir HTTP hatası döndürür) . Hata hatadan ise ERDDAP™ Cevap bazı metin içerebilir (Değil değil .json ) Neyin yanlış gittiğini daha ayrıntılı bir açıklama ile, ancak HTTP yanıt kodu (200 =Okay, başka bir şey sorun) .insert veya .delete başarılı olup olmadığını kontrol etmenin uygun yolu. HTTP yanıt kodunu kontrol etmek mümkün değilse veya sorgulayıcıysa, "status" için arama:"success" yanıt metninde güvenilir bir başarı göstergesidir.

Log Files

EDDTable FromHttpGet .insert ve .delete komutları aldığında, sadece bir günlük dosyalarında ilgili dosyaya bilgi verir, her biri bir masada depolanan bir masadır. JSON Hatları CSV dosyası . Bir kullanıcı veri için bir istek aldığında, ERDDAP™ Hızlı bir şekilde ilgili günlük dosyaları okur, yapıldığı sırada veri kümesine yapılan değişiklikler uygulanır ve sonra kullanıcının kısıtlamalarıyla istek filtreler. ERDDAP™ veri isteği. Verilerin çeşitli günlük dosyalarına bölünmesi, çeşitli bilgi parçalarının depolanması (E.g., komutanın zamanı ve komutanın .insert veya .delete) , ve veri kümesinin kurulumunun çeşitli yönleri, hepsi bunu mümkün kılar ERDDAP Veri depolamak ve bu veri setinden verileri çok hızlı ve çok verimli bir şekilde almak.  

Güvenlik ve Yazar

Her bir .insert ve .delete komutunu içermelidir ve yazar = Yazar\_key Son parametre olarak, yazarın tanımlayıcısı yazarın tanımlayıcısından oluşur (seçtiniz: isim, başlangıçlar, pnym, numara) , alt bir işaret ve gizli bir anahtar. The The The The The The The The ERDDAP™ Yönetici, herhangi bir zamanda değiştirilebilecek geçerli yazarın_key değerleri listesini oluşturmak için yazarlarla çalışacak. EDTable FromHttpGet bir .insert veya .delete komutu aldığında, yazarın son parametre ve geçerli olduğundan emin olun. Çünkü son parametredir, tüm komut satırının ulaştığını gösterir ERDDAP™ Ve işgal edilmedi. Gizli anahtar, yalnızca belirli yazarların veri kümesindeki verileri ekleme veya silmelerini sağlar. ERDDAP™ Daha sonra yazarID'i çıkarın ve yazar değişkeninde bunu kurtarır, böylece herhangi biri veri kümesine verilen bir değişiklikten sorumlu olduğunu görebilir. .insert ve .delete komutları sadece yapılabilir https: (Güvenli güvenli güvenli güvenli güvenli güvenli güvenli) ERDDAP™ URL'ler. Bu, aktarılan bilgilerin geçiş sırasında gizli tutulmasını sağlar.  

Zamanlar

Giriş sisteminin bir parçası olarak, EDDTable FromHttpGet zamantampamp ekliyor (O zaman ki o zaman ERDDAP İstek alındı) Her bir komuta, günlük dosyalarda depolar. Çünkü ERDDAP™ Yazarlar değil, zaman çizelgesi yaratır, farklı yazarların bilgisayarlardan biraz farklı zamana ayarlandığında önemli değildir. Zamanlar, değişimin veri kümesine yapıldığı zamanı güvenilir bir şekilde gösterir.  

HTTP POST

  • "What about HTTP POST?"
    HTTP HTTP POST daha iyi alternatif (karşılaştırılarak karşılaştırılarak HTTP GET ) Bir müşteriden HTTP sunucusuna bilgi göndermek için. Eğer güvenliği geliştirmek istiyorsanız, GET yerine bilgiyi göndermek için POST kullanın ERDDAP . POST daha güvenlidir çünkü: GET ve https URL güvenli bir şekilde gönderilir, ancak tüm URL (Yazar\_key dahil parametreler de dahil) Apache, Tomcat'a yazılacak ve ERDDAP™ Kayıt dosyaları, dosyaların düzgün bir şekilde güvenli olmadığını okuyabilen biri nerede. POST ile, parametreler güvenli bir şekilde aktarılır ve log dosyalarına yazılamaz. POST, müşterilerle çalışmak için biraz daha zor ve müşteri yazılımı tarafından yaygın olarak desteklenmez, ancak programlama dilleri bunu destekliyor. GET veya POST aracılığıyla veri kümesine gönderdiğiniz içerik aynı olacaktır, sadece farklı bir şekilde formatlanacaktır.  

http GetRequired Değişkenler Global Attribute

Bu tüm sistem çalışmasını yapan şeyin temel bir kısmı gerekli küresel özelliklerdir. http GetRequired Değişkenler, hangi bir komünalize listesidir dataVariable Bir veri sırasını benzersiz olarak tanımlayan kaynak isimleri. Bu mümkün olduğunca az olmalıdır ve neredeyse her zaman zaman zaman değişkeni içerecektir. Örneğin, burada önerilen http GetRequired Her biri için değişkenler CF Discrete Sampling Geometries (DSG) (Elbette, kimlik isimleri veri setinizde farklı olabilir.) :

  • Zaman serisi için: stationID ,zaman
  • Trajectory için: yörünge, zaman
  • Profil: Zaman (Tahmin zamanı, profilin_id) , derinlik
  • For TimeSeries Profil: stationID ,zaman (Tahmin zamanı, profilin_id) , derinlik
  • Trajectory için Profil: OrbitID, zaman (Tahmin zamanı, profilin_id) , derinlik

Zaman serisini örnek olarak almak: .insert komutunu içeren stationID =46088 ve saat =2016-06-23T19:53:00Z (Diğer değişkenler için ve diğer değerler) :

  • Bu istasyon için mevcut bir veri yoksa o zaman, etki veri kümesine eklemek olacaktır.
  • Bu istasyon ve o zaman için mevcut veriler varsa, bu yeni verilerle mevcut veri sırasını değiştirmek olacaktır. (Tabii ki, o zamandan beri ERDDAP™ Kabul ettiği her komutun logunu tutar, eski veriler hala giriştedir. Bir kullanıcı bu değişiklikten önce veri kümesinden veri talep ederse, eski verileri görecekler.)
     

http Emekli Olun

  • http Lütfen Global Attribute ve Data (Log Log Log) Dosya İsimleri
    Bu bütün sistemi verimli kılan şeyin bir parçası, bunun için ERDDAP™ Bir dizi veri oluşturur (log log log log log log log) dosyaları, her biri farklı bir veri kümesi ile. Eğer bunlar iyi kurulursa, ERDDAP™ Veriler için çoğu taleplere hızlıca cevap verebilir. Bu kurulum, tarafından belirtilmiştir. http Yöneticilik küresel özellikleri alın, bu göreceli bir dosya adı gibi görünen bir String, e.g., " stationID /10years", ancak aslında dizi yapısı için bir özelliktir. Bunun parçaları, veri tabanı ve dosya isimlerinin veri için nasıl olduğunu gösterir. (log log log log log log log) dosyalar inşa edilecektir.

  • Bir parça tamsa tamsa (>= 1 1 1) artı bir zamanPeriod (milisan, ikinci, dakika, saat, tarih, ay, yıl veya çoğulları) , e.g., 10 yıl, sonra EDDTableHtttpGet dataset veri kümesi için zaman değerini alacak (e.g., 2016-06-23T19:53:00Z) , o hassaslığa karşı zaman hesaplamak (e.g., 2010) Ve bundan bir klasör veya dosyaName yapın.

Hedef, her dosyaya oldukça büyük bir veri kümesi almak, ancak 2GB'den çok daha az.

  • Aksi takdirde, spesifikasyonun bir parçası bir olmalıdır dataVariable " sourceName E.g., stationID . Bu durumda, EDDTable FromHtttpGet yeni veri satırları için bu değişkenin değerinden bir klasör veya dosya adı sağlayacaktır. (E.g., "46088") .

Çünkü .insert ve .delete komut verileri belirli verilerde depolanır (log log log log log log log) dosyaları, EDDTable FromHttpGet genellikle sadece bir veya birkaç veri açmak gerekir (log log log log log log log) Belirli bir kullanıcı isteği için verileri bulmak için dosyalar. Ve her veri için (log log log log log log log) Dosya, veri kümesinin chunk için ilgili tüm bilgilere sahiptir, EDDTable FromHtpGet için hızlı ve kolaydır. (veya mevcut sürüm) Bu dosyadaki veriler için veri kümesi (Ve tüm veri kümesinin talep edilen versiyonunu oluşturmak zorunda değil) .

Genel kurallar verilerin miktarı ve frekansına dayanmaktadır. Veri başına 100 tane astes varsaysak, sonra ...

    | Frequency  <br>of measurements | Recommended  <br>httpGetDirectoryStructure |
| --- | --- |
| \\>=1 per second | *featureID*/1year/1day |
| \\>=1 per minute | *featureID*/2months |
| \\>=1 per hour | *featureID*/10years |
| \\>=1 per day | *featureID* |

Örneğin, dizinin yapısı ise stationID /2 ay ve iki istasyondan veri eklersiniz (46088 ve 46155) Mayıs 2015 tarihinden itibaren zaman değerleri ile, EDDTable FromHttp 46088 ve 46155 olarak adlandırılan ve 2015-11 adındaki her şeyde dosyaları oluşturacak. .json l, 2016-01 .json l, 2016-03 .json l, 2016-05 .json l l l (Her biri ilgili istasyon için 2 ay değerinde veri tutar) . Gelecekte herhangi bir zamanda, eğer .insert veya .delete'yi değiştirmek veya verileri silmek için kullanıyorsanız, örneğin, istasyon 46088 2016-04T14:45:00Z, EDDTableHttp Bu komutu 46088/2016'a kadar takip et .json l, ilgili veriler (log log log log log log log) Dosya. Ve açıkça, gelecekte herhangi bir zamanda başka istasyonlar için veri eklemek iyi, çünkü veri setleri yeni istasyonlardan verileri tutmak için gerekli olan ek yönetmenler oluşturacaktır.

http GetKeys

Her EDDTable FromHttp Veri kümesinin global bir özelliği olması gerekir http İzin verilen yazarların listesini ve gizli anahtarlarını bir komünalize listesi olarak tanımlayanKeys alın Yazar\_key E.g., JohnSmith\_someKey1, HOBOLogger\_someKey2, QCScript59\_someKey3 .

  • Yazar\_key'in durumu hassastır ve tamamen ASCII karakterleri olmalıdır (#33 - #126, ve herhangi bir komün olmadan, " veya " karakterler"
  • Anahtarlar şifre gibidir, bu yüzden >=8 karakter, tahmin etmek zor ve iç sözsüz kelimeler olmadan. Onları şifreleri tedavi edecek şekilde tedavi etmelisiniz - onları özel tut.
  • İlk '\' karakteri, yazarın anahtardan ayırır, bu yüzden yazar adı bir '\' karakter içerebilir (Ama bir anahtar olabilir) .
  • Herhangi bir yazarın bir veya daha fazla yazarı olabilir, e.g., JohnSmith\_some Key1, JohnSmith'_some Key7, vs.
  • Bu özelliğin değerini herhangi bir zaman değiştirebilirsiniz. Değişiklikler bir sonraki sefer veri kümesi yüklenir.
  • Bu bilgi, veri kümesinin küreselAttributes'ten halktan önce kaldırılacaktır.
  • Verileri eklemek veya silmek için veri kümesine her istek bir & yazar = Yazar\_key parametre. Anahtarın geçerliliğini doğrulamadan sonra, ERDDAP™ Sadece yazarın bölümünü kurtarır (Anahtar anahtarı değil) Veri dosyasında.

Set Up Up

İşte bir EDDTable'ü kurmak için önerilen adımlar veri setini alın:

  1. Bu veri kümesinin verilerini tutmak için ana dizi yapın. Bu örnek için, /data/testGet / . DatasetsX ml çalışan kullanıcı ve çalışan kullanıcı çalışır ERDDAP™ Her ikisi de bu diziye okuma yazma erişimine sahip olmalıdır.  

  2. Örnek bir editörü örnek yapmak için kullanın .json uzatma dosyası ile .json l in that directory. Adı önemli değil. Örneğin, örnek olarak adlandırabilirsiniz .json l l l 2 çizgi yap .json l CSV dosyası, ilk satırdaki sütun isimleri ve dummy/tipik değerler (Doğru veri türü) İkinci çizgide. İşte bir koleksiyon için uygun olan bir örnek dosya featureType = Hava ve su ısısını ölçen zaman serisi verileri. \[ For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For featureType =Trajectory, değiştirebilirsin stationID yörünge olmak. \]
    \[ For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For featureType =Profile, değiştirebilirsin stationID ProfilID olmak ve derinlik değişken eklemek. \]

    \[ " " "" stationID ", "time" "Latitude", "longitude", "airTemp", "altın", "timestamp", "Yazar", "command" \] \[ "myStation", "2018-06-25T17:00Z", 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, "SomeBody", 0 0 \]

Not:

  • Gerçek veri değerleri önemli değil çünkü sonunda bu dosyayı sileceksiniz, ancak doğru veri türü olmalıdır. Muhtemelen, zaman değişkeni kaynaktan gerçek verilerin kullanacağı aynı formatı kullanmalıdır.
  • Tüm değişkenler için, sourceName eşit olacak destinationName Bu yüzden şu anda doğru / son değişken isimleri kullanın, zaman, entitude, uzunlık ve bazen bu bilgilerle değişkenler dahil edilecekse derinlik veya yükseklik.
  • Neredeyse her zaman gözlemin yapıldığı zamanı kaydeden bir değişken olacaktır. DataType String ile birlikte olabilir dize süreleri için uygun birimler (E.g., yyyy-MM-dd 'T'HH:mm:s.SSSZ) veya veri veya Tip çift ile numeric süreleri için uygun birimler (e.g., 1970-01-01T00:00Z'den bu yana saniyeler, ya da başka bir üs zamanı) .
  • Üç sütun (Genellikle son üç) Zamanlayıcı olmalıdır, yazar, komut.
  • Zamanlıamp sütunu EDDTable FromHttpGet tarafından, belirli bir veri hattını veri dosyasına eklediğinde bir kez notamp eklemek için kullanılacaktır. 1970-01-01T00:00Z'den bu yana veri Türü çift ve birim saniyeleri olacaktır.
  • DataType String ile yazar sütunu bu çizginin verilerini sağlayan kayıt için kullanılacaktır. Yetkili yazarlar, http Keys global özelliklerini alın . Anahtarlar belirtilmiş olsa da, Yazar\_key Ve bu formda "request" URL'de, sadece yazar kısmı veri dosyasında kaydedilir.
  • DataType Byte ile komut sütunu, bu çizgideki verilerin bir eklenti olduğunu gösterecektir (0 0 0 0) veya (1 1 1) .  
  1. Run GenerateDatasets X ml ve bunu anlat

    1. Veri set türü EDDTable FromHtttpGet
    2. Rehberdir (Bu örnek için) /data / Get / Get /
    3. Örnek dosyadır (Bu örnek için) /data /testGet /startup .json l l l
    4. The The The The The The The The http GetRequired Değişkenler değişkendir (Bu örnek için) stationID ,zaman Görmenin tanımına bakın http GetRequiredVariables Aşağıda.
    5. Veriler her 5 dakikada toplanırsa, http Bu örnek için YöneticilikStructure alın stationID /2 ay. Görmenin tanımına bakın http Emekli Olun Aşağıda.
    6. The The The The The The The The http GetKeys

Çıktıyı ekleyin (The chunk of the datasets.xml Dataset için) toklanmak için datasets.xml .   4. Edit the Edit the Edit datasets.xml Bu veri kümesi için onu doğru ve tamamlamak için chunk. Ne yazık ki, tüm ??? Doğru içerikle.   5. Çünkü onlar için<fileTableInMemory> ayar:

  • Bunu veri setinin genellikle sık sık sık sık .insert ve / veya .delete istekleri ile ayarlayın (e.g, her 10 saniyeden daha sık.) . Bu, EDDTable FromHttpGet'a .insert ve/veya .delete requests'a daha hızlı cevap vermesine yardımcı olur. Bunu doğru yola koyarsanız, EDDTable FromHtpGet hala dosyayı ve ilgili bilgileri düzenli olarak kurtaracaktır. (Gerekli olduğu gibi, yaklaşık 5 saniye) .
  • Bunu sahte olarak ayarlayın (varsayılan varsayılan) Eğer veri kümesi genellikle infrequent .insert ve / veya .delete requests (e.g., her 10 saniyeden daha az) .  
  1. Not: Kullanımı mümkündür<Önbellek FromUrl> ve ilgili ayarlar datasets.xml EDDTable FromHttp Uzak bir EDDTable FromHtpGet dataset'in yerel bir kopyasını yapmak ve korumak için bir yol olarak veri setleri alın ERDDAP . Bununla birlikte, bu durumda, bu yerel veri seti herhangi bir .insert ve .delete isteği reddedecektir.

EDDTable FromHttpGet Datasets

  • Yazarlar, "requests" yapabilir Veri eklemek veya veri setinden verileri silmek .  
  • Gerçek veriler veri kümesine eklendikten sonra, orijinal örnek veri dosyasını silebilirsiniz.  
  • Kullanıcılar, herhangi bir EDDTable veri kümesi için yaptıkları gibi veri kümesinden veri isteyebilirler. ERDDAP . İstek, zaman damga sütununda bir kısıtlama içermezse, istek veri kümesinin mevcut versiyonundan veri alır. (Giriş dosyası tüm eklentileri ve deletion komutlarını işlemeden ve geri yüklemeden sonra http GetRequiredVariables) .  
  • Kullanıcılar ayrıca EDDTable'e özgü istekler de veri setlerini alın:
    • İstek bir tane içeriyorsa<veya<= zamantamp sütununun kısıtlamaları, sonra ERDDAP™ Belirtilen zamana kadar kayıt dosyasının süreçleri sıralanır. Aslında, bu geçici olarak, o zamantamp değeri nedeniyle veri kümesine yapılan tüm değişiklikleri silir. Daha fazla bilgi için, bakınız Versioning Versioning .
    • İstek > >= veya = zamantamp sütununun kısıtlamasını içeriyorsa, e.g. &timestampamp<=0, sonra ERDDAP™ Veri dosyalarından veri döndürür, ekleme ve silme komutlarını işlemeden.
  • Gelecekte, bu araçların inşa edileceğini düşünüyoruz (Bize yemin olsun? Siz mi?) Bu veri setleriyle çalışmak için. Örneğin, ham log dosyalarını okuyan bir senaryo olabilir, farklı bir kalibrasyon denklemi uygular ve bu tür bilgilerle farklı bir veri kümesi oluşturabilir. Senaryonun orijinal verileri bir istekle elde edebileceğini unutmayın ERDDAP™ (Hangi verileri dosya formatında alır ki senaryo ile çalışmak için en kolay) Ve yeni veri kümesini .insert "requests" ile güncelleştirmek / üretmek / ERDDAP . Senaryo veri dosyalarına doğrudan erişim gerektirmez; herhangi bir yetkili yazarın bilgisayarında olabilir.  

EDDTable FromHttpGet hakkında ayrıntılı bilgi

Konular şunlardır:

İşte ayrıntılı bilgi:

DON'T kurulumu değiştirir!

Veri kümesi oluşturulduktan sonra ve ona veri eklediniz:

  • DON'T add or remove any any dataVariable s.
  • DON'T değiştirir sourceName veya destinationName Bunun üzerine dataVariable s.
  • DON'T Verileri Değiştiriyor Türü dataVariable s. Ama değiştirebilirsin dataVariable 's metadata.
  • DON'T değiştirir http GetRequired Değişkenler global özellikler.
  • DON'T değiştirir http Yöneticilik Küresel özellikleri alın.

Bu şeylerden herhangi birini değiştirmeniz gerekiyorsa, yeni bir veri kümesi yapın ve tüm verileri yeni veri setine transfer edin.  

CRUD

Bilgisayar biliminde, bir veri kümesi ile çalışmak için dört temel komut vardır CREATE, D, UPDATE, DELETE (CRUD) . SQL, ilişkisel veritabanı ile çalışmak için dil, INSERT, SE, UPDATE ve DELETE'de eşdeğerdir. EDTable FromHttpGet,

  • .insert, CREATE ve UPDATE kombinasyonudur.
  • .delete DELETE.
  • Verilerin alt setlerini talep etmek için düzenli sistem D.

Böylece, EDDTable FromHttpGet, bir veri kümesi ile çalışmak için tüm temel komutları destekler.  

  • .insert veya .delete istekleri hiçbir hatayla geri dönecek HTTP durumu kodu=200 ve bir JSON nesnesi, e.g.
    {
"status":"success",
"nRowsReceived":1,
"stringTimestamp":"2018-03-26T15:34:05.552Z",
"numericTimestamp":1.522078445552E9
}

İki keztamp değerleri aynı milisan'a atıfta bulunur, bu da eklenmiş veya silinmiş olan verilerin sıralarında depolanacaktır. ERDDAP™ Gelecekte bu anahtar değerli çiftlerin adını ve biçimini değiştirmeyecek. ERDDAP™ Gelecekte JSON nesnesine ek değer çiftleri ekleyebilir.  

InvalidRequests

Invalid .insert veya .delete talepleri, statü=200'den başka bir HTTP hatası statüsü kodu iade edecek ve veri kümesine hiçbir değişiklik yapılmayacaktır. Bu, yanlış yazar bilgileri, yanlış değişken isimler, farklı değişkenler için farklı dizi uzunlukları, eksik gerekli değişkenleri, gerekli değişken değerlerin eksik olduğunu içerir. İstek bir veri dosyasından daha fazlasını içeriyorsa, talebin bir kısmı başarılı olacaktır ve bölüm başarısız olacaktır. Ancak bu, isteği gönderen sensör tam bir başarısızlık olarak herhangi bir başarısızlığı tedavi ederse bir sorun olmamalıdır. Örneğin, eğer söylerseniz ERDDAP™ eklemek için (veya silin veya) Bir satırda iki kez aynı veriler, en kötü durum, bilginin iki kez saklandığı, oturum dosyasında birlikte kapatıldığıdır. Bunun sorun neden olabileceğini görmek zor.  

HttpGet Speed

.insert veya .delete talepleri (saymayın http ek) , Ballpark .insert veya .delete hızları 1ms per .insert with 1 row of data Dizilerdeki 10 satırla 2ms per .insert with 10 rows of data in arrays ( \[ \] )
3ms per .insert with 100 rows of data in arrays ( \[ \] )
13ms per .insert with 1000 rows of data in arrays ( \[ \] )
Açıkçası diziler anahtardır High throughput . Diziler olmadan, ikinci bir uzaktan yazarın ikinci sıralarından daha fazla .insert veya .delete için zor olacaktır. (Çünkü ağların tüm yükü) . Diziler ile, uzaktan bir sensörden ikinci olarak 1000'den fazla veri satırını seçmek kolay olacaktır.

İstek başına çok büyük miktarda veri ile, Tomcat'ın maksimum sorgu uzunluğuna vuracaksınız (varsayılan 8KB'dir?) Ancak bu, maxHttpHeaderSize ayarlayarak artırılabilir tomcat /conf /server.xml's HTTP/1.1 Links entry.

When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When ERDDAP™ JSON Lines CSV verileri okur (log log log log log log log) dosyaları, ikili veri dosyalarını okumakla kıyasla küçük bir zaman cezası var. Bu sefer okumanın veri yazarken sistemin hızını ve sağlamlığını ödemek için makul bir fiyat olduğunu hissettik. (Hangi birincil öneme sahip) .

SSD

Daha büyük hız için, Bir kullanım Solid State Drive (SSD) Verileri saklamak için. Çok daha hızlı bir dosya erişim zamanı var (<0.1ms) sert disk sürücülerinden (3 - 12 ms) . Ayrıca daha hızlı bir veri transfer oranına sahipler (200 - 2500 MB /) Sert disk sürücüleri (~200 MB/s) . Onların maliyeti son yıllarda oldukça düşüktü. Erken SSD'nin belirli bir bloka çok sayıda yazardan sonra sorunları olmasına rağmen, bu sorun şimdi büyük ölçüde azaltılıyor. Eğer sadece bir kez verileri yazmak için SSD kullanıyorsanız, bir tüketici sınıfı SSD bile birçok kez okudum. (Bu, bir işletme sınıfı SSD'den çok daha az pahalı) Uzun bir süre geçmelidir.

Robust

Bu sistemi mümkün olduğunca kolay iş ile ve sağlam hale getirmeye çalıştık.

  • Sistem birden çok threade sahip olmak için tasarlanmıştır (e.g., sensör, otomatik bir QC senaryosu ve bir insan) Aynı veri kümesinde ve hatta aynı dosya üzerinde çalışıyor. Bunun çoğu, verileri depolamak ve çok basit bir dosya türü kullanarak bir günlük dosya yaklaşımı kullanarak mümkündür. JSON Lines CSV dosyaları , verileri depolamak için.
  • JSON LinesJP'ye başka büyük avantaj, bir dosyanın asla yozlaşmış olması durumundadır. (E.g., bir çizgide bir hata nedeniyle geçersiz) Ancak dosyayı bir metin editöründe açmak ve sorunu düzeltmek kolaydır.
  • Başka bir avantaj ise, bir dosyada bir hata varsa, sistem hala tüm verileri daha önce ve hata hattından sonra okuyabilirsiniz. Ve sistem hala ek .insert ve .delete bilgileri girebiliyor.
  • admin erişilemez standart dosyaları kullanmanın büyük bir avantajı (Bir ilişkisel veritabanı veya Cassandra veya diğer yazılımlara kıyasla) : muhafaza edilmesi gereken başka bir yazılım yoktur ve hangi verileri depolamak veya almak için çalışmak zorundadır. Ve herhangi bir zamanda standart dosyaları geri almak kolay ve artımlı bir şekilde çünkü veriler chunks'ta (Bir süre sonra, sadece her istasyon için mevcut zaman dosyası değişecektir) . Buna karşılık, veritabanılardan ve Cassandra'dan dış yedek dosyaları yapmak için önemli bir çaba ve sistem gerektirir.  
System Reliability

Bir sunucunun tek bir sunucuyu beklemesi makul ERDDAP™ % 99.9'a sahip olmak için - bu yılda yaklaşık 9 saat (Ancak, bunu kötü bir gecede kullanabilirsiniz!) . Dikkatli ve şanslıysanız,% 99.99’u yarı zamanlı alabilirsiniz (53 dakika her yıl) Ancak güncelleştirmeler için sadece birkaç yeniden başlatma bu kadar zaman alacaktır. Aşırı önlemler almak zorunda kalacaksınız (Ayrı bir yedekleme sunucusu, sınırsız güç tedariki, yedekleme kliması, siteyi izlemek için 24x7x365 personeli.) % 99.999'da ince bir şansa sahip olmak için (5.25 dakika her yıl) . O zaman bile,% 99.999'a ulaşmanız son derece olası değildir. (Ya da% 99.99%) Çünkü sorunlar genellikle kontrolünüz dışındadır. Örneğin, Amazon Web Servisi ve Google şaşırtıcı derecede güvenilir web hizmetleri sunuyor, ancak büyük bölümler bazen saatlerce.

Face it, herkes istiyor ERDDAP™ 100% uptime, ya da en azından "altı dokuz" vaunted (99.9999% uptime yılda 32 saniye eşittir) Ancak, ne kadar zaman, çaba ve harcadığınız önemli olmayacaktır.

Ama ERDDAP™ Uptime burada gerçek hedef değil. Hedef güvenilir bir inşa etmektir Sistem sistemi sistemi sistemi sistemi sistemi sistemi sistemi sistemi sistemi Ancak herhangi bir verileri kaybetmeyen biri. Bu çözülebilir bir problemdir.

Çözüm şu: Verileri gönderen bilgisayar yazılımına hata yapmak ERDDAP . Özellikle, bu yazılım, gitmek için bekleyen bir dizi veri tutmalıdır ERDDAP . Veriler kuyruka eklendiğinde, yazılım cevaptan cevap kontrol etmelidir ERDDAP . Eğer yanıt veri almamaktadır. Hata yok., sonra yazılım kuyruktaki verileri terk etmelidir. Daha fazla veri oluşturulup kuyruka eklendiğinde, yazılım tekrar kuyruktaki verileri incelemeye çalışmalıdır. (Belki de ile \[ \] Sistem sistemi sistemi sistemi sistemi sistemi sistemi sistemi sistemi sistemi) . Bu başarılı olacak veya başarısız olacaktır. Başarısız olursa, daha sonra tekrar deneyecektir. Bu şekilde çalışmak için yazılımı yazarsanız ve yazılım birkaç gün değerinde bir veri sıralamaya hazırsa, aslında sensör verilerinin% 100'ünü sensör verilerinin% 100'ünü sensörün verilerini yükleme şansına sahip olursunuz. ERDDAP . Ve bunu büyük çaba ya da masraf olmadan yapacaksınız.

\[ Arka plan: Bunu düşünmedik. Bu, bilgisayar ağlarının güvenilirliğe nasıl ulaştığıdır. Bilgisayar ağları doğal olarak güvenilmez. Bu yüzden bir bilgisayardan diğerine bir dosya transfer ettiğinizde, gönderme yazılımı bazı paketlerin kaybolabileceğini bilir / genişletilebilir. Alıcıdan verilen bir paket için uygun bir acknowledgment almazsa, kayıp paketi geri döndürür. Bu yaklaşımla, nispeten basit gönderici ve alıcı yazılımı, güvenilmez bir ağ üzerinden güvenilir bir dosya transfer sistemi kurabilir. \]

JSON Lines CSV dosyaları neden?!

EDDTable FromHttpGet uses JSON Lines CSV dosyaları Verileri depolamak için. Sebepler şunlardır:

  • Ana nedeni şudur: JSON Lines CSV dosyalarının basitliği, birden fazla konuya yazmak için hızlı, kolay ve güvenilir bir yol sunar (E.g., dosya adı üzerine senkronizasyon yaparak) .
  • Bir JSON Lines CSV dosyası hiç yozlaşmış hale geldiyse (E.g., bir çizgide bir hata nedeniyle geçersiz) EDDTable FromHttpGet, hata hattından önce ve sonra tüm hatları okuyabildi. Ve .insert ve .delete sistemi, veri dosyasına yeni veriler eklemeye devam edebilir.
  • Çünkü JSON Lines CSV dosyaları ASCII dosyalarıdır, eğer bir dosya hiç bozulmuş olsaydı, düzeltmesi kolay olurdu. (Bir metin editörü) .
  • JSON Lines CSV destekler Unicode dizeleri.
  • JSON Lines CSV değişken uzunluk dizeleri destekler (Bazı max uzunluğu ile sınırlı değil) .
  • JSON Lines CSV 64-bit tamsayı destekler (Uzunlar) .
  • JSON Hatları'nın resmi doğası ve ekstra sözcülüğü (vs.-school CSV) Verilen bir çizginin bozuk olmadığı bazı ekstra güvence sağlar.

Başlangıçta kullanmaya çalıştık .nc Sınırsız bir boyutla 3 dosya. Ancak, sorunlar vardı:

  • Ana sorun şuydu: Birden çok konuya yazmak için güvenilir bir yol yoktur. .nc 3 dosya, eğer iplikler yazıyı senkronize bir şekilde yaparak işbirliği yaparsa bile.
  • Eğer bir .nc 3 dosya bozuldu, .insert ve .delete sistemi dosyayı kullanmaya devam edemez.
  • Çünkü, .nc 3 dosya ikilidir, eğer bir dosya bozulmuşsa (Bunlar, çoklu hazır problem nedeniyle yapıyorlar.) Onlar düzeltmek için aşırı zor veya imkansız. Onarımla yardımcı olmak için hiçbir araç yoktur.
  • CF'in dizeleri belirtmek için bir yolu yok, bu yüzden Unicode, e.g., UTF-8 encoding. Bir \_Encoding özelliğini desteklemek için CF almaya çalıştık ama herhangi bir ilerleme yapamıyordu. ( Unidata Kredilerine göre, \_Encoding özelliklerini destekler.)
  • .nc 3 dosyalar sadece sabit uzunluk dizelerini destekler. Tekrar, CF almaya çalıştık ve Unidata Değişken uzunluk dizelerini desteklemek ama herhangi bir ilerleme yapamıyordu.
  • .nc 3 dosyaları, tek karakter değişkenlerini String değişkenlerinden ayırt etmenin kolay bir yolunu desteklemez. Tekrar, CF almaya çalıştık ve Unidata Bu iki veri türünü ayırt etmek için bir sistemi desteklemek için, ancak herhangi bir ilerleme yapamıyordu.
  • .nc 3 dosyaları sadece 8bit karakterleri tanımlanmamış bir kodlama ile destekler. Tekrar, CF almaya çalıştık ve Unidata Enkoding'i belirtmek için bir sistemi desteklemek için, ancak herhangi bir ilerleme yapamıyordu.
  • .nc 3 dosyaları 64-bit tamsayı desteklemez (Uzunlar) . Tekrar, CF almaya çalıştık ve Unidata Uzunlar için bir sistemi desteklemek için, ancak herhangi bir ilerleme yapamıyordu.  
Versioning Versioning

Çünkü EDDTable FromHttp Mağazalar her değişikliğin zamanı ve yazarı ile veri kümesine tüm değişikliklerin bir logunu alın, o veri kümesini zamanında herhangi bir noktada hızla yeniden yaratabilirsiniz. Bir anlamda, zamanında herhangi bir nokta için bir versiyon var. Bir kullanıcının veri isteği bir zaman çizelgesi içeriyorsa<= kısıtlama, e.g., &timestamp<=2016-06-23T16:32:22.128Z (veya herhangi bir zaman noktası) Ancak yazar veya komut kısıtlaması yok, ERDDAP™ Bu noktada ilk olarak veri kümesinin bir versiyonunu zaman içinde üreterek isteke cevap verecektir. Sonra, ERDDAP™ Kullanıcının diğer kısıtlamaları, verilerin herhangi bir diğer isteği ile veri için ERDDAP . EDDTable FromHttpGet çok hızlı ve verimli, çok büyük veri setleri için bile.

Benzer şekilde, bir kullanıcı, veri setinin talep ederek son güncellendiği zaman bulabilir ...?timestamp&timestamp=max (Zamanlar) Vedistinct ()

Ve veri için herhangi bir istek için, herhangi bir veri kümesi için, kullanıcılar hangi değişiklikleri yaptığını görebilir ve bunları yaptıklarında.

Bu sürümleme sistemi sağlar Reproducible Science Çünkü herkes, herhangi bir zamanda, herhangi bir zamanda veri setinin versiyonundan veri isteyebilir. Bu iyi hazırlanmış versiyon, bildiğimiz başka bir sistemle mümkün değildir. Temel mekanizma çok verimlidir, ekstra depolama alanı gerekli değildir ve işlem yükü gerçekten minimumdur.

Herkes bu tür iyi hazırlanmış versiyon için ihtiyaç duymaz, ancak büyük bir veri yönetimi organizasyonunda aşırı derecede kullanışlıdır, belki de gereklidir. (E.g., OOI, Earth Cube, Data One, and NOAA ") Bir veri kümesinin birden çok yazara sahip olabileceği yer (e.g., sensör, otomatik bir QC senaryosu ve bir insan editörü) .

\[ Tarih: Bu tür sürüm için ihtiyaç ilk önce bana geldi (Bob Bob) 2008 yılında OOI'yi okurken ve tartışırken OOI, Git'e göre sürümleme için bir cumbersome, yavaş, verimsiz bir sistem vardı. Git ne için tasarlandı, ama bu değil. 2008 yılında, bir OOI tartışmasında, veri yönetimi için geniş, verimli bir alternatif-to-OOOI sistemi tasarladım, ayrıca eklediğim özelliklerin çoğu dahil ERDDAP™ O zamandan beri ve bu sürümleme sistemi dahil. O zamandan beri ve o zamandan beri, OOI onların sürüm sistemine bağlıydı ve alternatiflerle ilgilenmiyordu. 2016 yılında bu planın diğer yönleri yere düştü ve bunu uygulamaya başladım. Çünkü başka projeler üzerinde çalışmak için çok fazla kesinti vardı, 2018'e kadar bitirmedim. Şimdi bile, bu kadar hızlı ve kolay erişim sunan başka herhangi bir bilimsel veri sisteminin farkında değilim, herhangi bir zamanda herhangi bir noktada, sık değişen veri setleri için. Basit dosya sistemleri bunu sunmuyor. Relational databases not. Cassandra değil. \]

HTTPS Put ve Delete
  • "What about HTTPS PUT and DELETE?"
    Hipertext Transfer Protokolü (HTTP HTTP) Dünya Wide Web'in temeli ve web sayfası URL'lerin "http://"Ya da "https://". HTTPS, ek bir güvenlik katmanı ile HTTP'dir. Her gün tarayıcılar, senaryolar ve bilgisayar programları milyarlarca HTTP yapar (S) GET Uzak kaynaklardan bilgi almak için talepler. HTTP HTTP (S) Ayrıca diğerini de içerir fiiller Özellikle PUT (Veriler sunucuya itmek) Ve DELETE (sunucudan DELETE verileri) . Evet, PUT ve DELETE, verileri içine eklemek ve HTTP verileri silmek için uygun bir yoldur, HTTP ile bir veri kümesi (S) . GET, HTTP ile çalışabilecek her yazılım parçası tarafından destekleniyor (S) . GET gerçekten çalışmak kolaydır. Herkes zaten GET ile nasıl çalışılacağını biliyor ve birçoğu POST'yi nasıl kullanacağını biliyor (Bu aslında GET gibi aynı şekilde kullanılabilir.) Bu yüzden EDDTable'ü GET ve POST ile çalışmaktan yaptık. Çok az insan (Hatta birkaç bilgisayar programcılar) PUT ve DELETE ile hiç çalışmamıştı. PUT ve DELETE genellikle sadece bilgisayar dilleri tarafından desteklenir, bu yüzden onları kullanarak beceriksiz bir program gerektirir. Bu yüzden PUT ve DELETE genellikle araçların evrimleştiği şekilde verilen çok daha çekici bir yaklaşımdır.  
HtttpGet Notları
Teşekkürler teşekkürler
  • Temel fikir için CHORDS sayesinde.
    EDDTable FromHttpGet için temel fikir (I.e., using an an HTTP GET Bir veri kümesine veri eklemek) UCAR'inkinden (NCAR's?) Cloud-Hosted Real-time Data Services (CHORDS) Proje. Talepteki parametreler için format (Tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar tekrar Adı =value = , andolsun ki) HTML formları tarafından web sayfalarında kullanılan aynı standart formattır. Basit ve parlak bir fikir ve daha fazlasıdır, çünkü o kadar mükemmel bir şekilde ağlamaktadır ERDDAP “Geçmiş verilerle uğraşmak için mevcut sistem. Fikir hiyerarşide açık, ama ben (Bob Bob) Bunu düşünmedi. EDDTable FromHttp Bu temel fikri kullanarak, onu nasıl uygulamak, bir sistem yapmak için nasıl uygulayacağımız fikirlerimizle birleştirin ERDDAP™ Veriler yüklemek için. GET'yi sisteme itmek için kullanmanın temel fikrinden başka, EDDTableFromHtpGet uygulaması tamamen farklı ve tamamen bağımsız CHORDS ve farklı özelliklere sahiptir. (e.g., log dosyaları, verilerin toplanması, farklı güvenlik sistemi, CRUD desteği, reproducible data) . CHORDS’ye maruz kalmamız sadece bir webinar idi. Kodlarına bakmadık veya projelerini okuduk çünkü sistemi farklı bir şekilde uygulamak istediğimizi hemen biliyorduk. Ama onlara temel fikir için minnettarız. CHORDS'ye tam referans, Daniels, M. D., Kerkez, B., Chandrasekar, V., Graves, S., Stamps, D. S., Martin, C., Dye, M., Gooch, R., Bartos, M., Jones, J. (2014 2014 2014 2014) . Geosciences için Cloud-Hosted Real-time Data Services (CHORDS) Yazılım. UCAR/NCAR - Dünya Observing Laboratory. https://doi.org/10.5065/d6v1236q
     

EDDTable From From Hyrax Dosyalar

EDDTable From From Hyrax Dosyalar (Deprecated) Çeşitli değişkenlerle birlikte toplam veri dosyaları, her biri veya daha paylaşılan boyutlarda (Örneğin, zaman, yükseklik (veya derinlik) , latitude, uzunlık) , ve bir kişi tarafından servis Hyrax OPeNDAP server sunucusu .

  • Bu veri kümesi tipidir DEPRECATED . Yeni ve daha genel çözüm, kullanmaktır Önbelli önbelli önbelli önbelli önbelli önbelli önbelli önbelli önbelli önbelli önbelli EDDTable için Url seçeneği FromFiles (veya bir değişken) Uzak dosyaların yerel bir kopyasını yapar ve yerel dosyalardan verilere hizmet eder. The The The The The The The The<Url> seçeneği herhangi bir tür tabu veri dosyası ile kullanılabilir. **
    Bu işi bir nedenden ötürü yapamazsanız, e-posta Chris. John at noaa.gov. 2020'den önce şikayet yoksa, bu veri set türü kaldırılabilir. **
  • Güçlü bir şekilde kullanmayı öneriyoruz GenrateDatasets X ml programı Kaba bir taslak yapmak için datasets.xml Bu veri kümesi için chunk. Daha sonra bunu iyi bir şekilde ayarlamayı düzenleyebilirsiniz.
  • Çoğu durumda, her dosya solun birden çok değeri vardır. (İlk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce) Boyut, örneğin, zaman.
  • dosyalar genellikle (Ama yapmak zorunda değil) Diğer boyutlarda tek bir değer var (Örneğin, yükseklik (veya derinlik) , latitude, uzunlık) .
  • dosyalar ek bir boyutla karakter değişkenleri olabilir (Örneğin, nCharacters) .
  • Hyrax sunucular URL'de "/dods-bin/nph-dods/" veya "/opendap/" tarafından tanımlanabilir.
  • Bu sınıf ekran-scrapes the Hyrax Her dizinin dosyaları listeleriyle web sayfaları. Bu nedenle, mevcut formata çok özeldir Hyrax Web sayfaları. Biz ayarlamaya çalışacağız ERDDAP™ Hızlı bir şekilde eğer / gelecekteki versiyonları Hyrax dosyaların nasıl listelendiğini değiştirin.
  • The The The The The The The The<fileDir> ayarı göz ardı edilir. Bu sınıf indirmek ve her uzaktan veri dosyasının yerel bir kopyasını yapmak, ERDDAP™ Dosyayı güçlendirin Dir to be Büyük Parent Yönetmeny /copy / * datasetID * /.
  • For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For< sourceUrl >, veri kümesinin temel dizinin URL'sini kullanın Hyrax Örneğin, sunucu, < sourceUrl > > > >http://edac-dap.northerngulfinstitute.org/dods-bin/nph-dods/WCOS/nmsp/wcos/&lt;/ sourceUrl > > > > (Ama bir çizgiye koyun) (Üzgünüm, o sunucu artık mevcut değil) . The The The The The The The The sourceUrl Web sayfası genellikle " OPeNDAP Server Index of \[ directoryNameName \] "En üstte.
  • Bu sınıf her zaman indirmek ve her uzaktan veri dosyasının yerel bir kopyasını yapmak için, bu veri kümesini asla bu veri kümesini açmamalısınız. EDDTableCopy .
  • Bu sınıfın süper sınıfını gör EDDTable FromFiles Bu sınıfın nasıl çalıştığı ve nasıl kullanılacağı hakkında bilgi için.
  • 1.D, 2D, 3D ve 4D örneklerini görün EDDTable FromNcFiles .  

EDDTable FromInvalidCRAFiles

EDDTable FromInvalidCRAFiles Kombinasyon verileri NetCDF (v3 veya v4) .nc Belirli, geçersiz, CF DSG Contiguous Ragged Dizileri (CRA) dosyaları. Her ne kadar olsa da olsa da olsa da olsa da rağmen ERDDAP™ Bu dosya türünü destekler, kimsenin kullanmaya başlamaması gereken geçersiz bir dosya türüdür. Şu anda bu dosyayı kullanan gruplar, kullanmak için şiddetle teşvik edilir ERDDAP™ Geçerli CF DSG CRA dosyaları oluşturmak ve bu dosyaları kullanmayı bırakın.

Detaylar: Bu dosyaların birden çok sıra değişkeni vardır, her biri bir örnek\_dimension özelliği ile. DosyalarCF standart olmayan dosyalardır çünkü birden fazla örnek (Objektifler) Boyutlar, bu ek kuralla birbirleriyle kodlanmış ve ilişkili olmak ve CF DSG spesifikasyonunun bir parçası olmadığına söz vermek içindir: "Bir verilen e.g., sıcaklık değeri değeri değeri ile bağlantı kurabilirsiniz. (cazip) Verilen derinlik değeri ile (z\_obs boyutu, en değerlerle boyut) Çünkü: Sıcaklık çizgisinin_size (Verilen bir oyuncu için) Ya 0 ya da karşılık gelen derinlik sırasına eşit olacak (Bunun için) (Bu kural) . Yani, sıcaklık sırası 0 değilse, o dökme için n sıcaklık değerleri doğrudan bu dökme için n derinlik değerleriyle ilişkilidir. (Bu sözdür) .”

Bu dosyalarla başka bir sorun: Müdür\_Investigator row\_size değişkeni bir örneke sahip değildir ve yukarıdaki kuralı takip etmez.

Bu veri set türü için örnek dosyaları bulunabilirhttps://data.nodc.noaa.gov/thredds/catalog/ncei/wod/ \[ 2020-10-21-21-21 Bu sunucu artık güvenilir bir şekilde mevcut değildir \] .

Bu sınıfın süper sınıfını gör EDDTable FromFiles Bu sınıfın nasıl çalıştığı ve nasıl kullanılacağı hakkında bilgi için.

Güçlü bir şekilde kullanmayı öneriyoruz GenrateDatasets X ml programı Kaba bir taslak yapmak için datasets.xml Bu veri kümesi için chunk. Daha sonra bunu iyi bir şekilde ayarlamayı düzenleyebilirsiniz.

GenerateDatasets ilk şey X ml, bu tür bir veri kümesi için, soruları cevapladıktan sonra, örnek dosyasının ncdump benzeri yapısını yazdırır. Yani ilk döngü için Genrates aracılığıyla birkaç goofy cevabı girerseniz X ml, en azından görmek mümkün olacak ERDDAP™ Dosyayı okuyabilirsiniz ve hangi boyutlarda ve değişkenlerin dosyada olduğunu görebilir. Ardından GenrateDatasetsX ml aracılığıyla ikinci döngü için daha iyi cevaplar verebilirsiniz.  

EDDTable FromJsonlCSVFiles

EDDTable FromJsonlCSVFiles Kombinasyon verileri JSON Lines CSV dosyaları . Bu sınıfın süper sınıfını gör EDDTable FromFiles Bu sınıfın nasıl çalıştığı ve nasıl kullanılacağı hakkında bilgi için.

  • jsonlines.org'un dediği gibi, bu format "Better Than CSV" (Ve yasal olarak, federal bir çalışan olarak, onlarla aynı fikirde ya da aynı fikirde değilim - bu ne kadar çılgın?) . CSV asla resmi olarak tanımlanmadı ve orijinal elektronik tablo programları ile olan tarihsel bagaj tarafından engellendi. JSON Lines CSV, karşılaştırmada, yaygın olarak kullanılan JSON standardına olan bağlantılarından tamamen tanımlanmış ve yararlar, bu da bağlantılarından faydalanarak, bağlantılarından faydalarını bağlantılarından elde etmek için kendi bağlantısından yararlanabilir. Java Senaryo ve Senaryo Java . Muhtemelen, uzun tam tam tam tam sayılar için ve Unicode karakterleri dizelerde ve diğer özel karakterler dahil etmek için açık bir yol var. (Özellikle sekmeler ve yeni çizgiler) dizeler içinde.

Bu format, belirli bir veri dosyasının sonuna düzenli olarak ek sıralara ihtiyaç duyduğunuz veri setleri için özellikle iyidir. Bu nedenle ve başkaları için (Yukarıda bakınız) , EDDTable FromHttpGet Json Lines CSV dosyalarını veri depolama için kullanır.

  • Giriş dosyaları UTF-8 kodlanmış olarak kabul edilir. Ancak, 4.99u dd Özel karakterler için format (E.g., Žu20ac Euro karakteri için enkoding) Dosyaları yazmak için seçeneğiniz var, böylece 4.99uuu kullanarak sadece 7bit ASCII karakterleri içerler. dd 1.27'nin üzerindeki tüm karakterleri kodlamak.  
  • Güçlü bir şekilde kullanmayı öneriyoruz GenrateDatasets X ml programı Kaba bir taslak yapmak için datasets.xml Bu veri kümesi için chunk. Daha sonra bunu iyi bir şekilde ayarlamayı düzenleyebilirsiniz.

GenerateDatasetsX ml, bu tür veri setine cevap vermeden önce sorular örnek dosyasının ncdump benzeri yapısını yazdırır. Yani ilk döngü için Genrates aracılığıyla birkaç goofy cevabı girerseniz X ml, en azından görmek mümkün olacak ERDDAP™ Dosyayı okuyabilirsiniz ve hangi boyutlarda ve değişkenlerin dosyada olduğunu görebilir. Ardından GenrateDatasetsX ml aracılığıyla ikinci döngü için daha iyi cevaplar verebilirsiniz.

  • UYARI: Ne zaman ERDDAP™ JSON okur Lines CSV veri dosyaları, belirli bir çizgide bir hata bulursa (e.g., yanlış sayıda öğe) , bir uyarı mesajı girin ("WARNING: Bad line (s) Verilerin listesi” ... sonraki hatların bir listesi ile) Ve log.txt file Ve sonra veri dosyasının geri kalanını okumaya devam edin. Böylece, periyodik olarak bakmak sizin sorumluluğunuzdur (veya bunu yapmak için bir senaryo yaz) Bu mesaj için girişte. txt böylece veri dosyalarındaki sorunları düzeltebilirsiniz. ERDDAP™ Bu şekilde ayarlanmıştır, böylece kullanıcılar mevcut tüm geçerli verileri okumaya devam edebilir, ancak dosyanın bazı hatları kusurlarına sahip olsa da.  

EDDTable FromMultidimNcFiles

EDDTable FromMultidimNcFiles Kombinasyon verileri NetCDF (v3 veya v4) .nc (veya .nc ml ml ml ) Birkaç değişkenle dosyaları, her biri veya daha paylaşılan boyutlarla. dosyaların karakter değişkenleri veya ek bir boyut olmadan olabilir (Örneğin, STRING14) . Bu sınıfın süper sınıfını gör EDDTable FromFiles Bu sınıfın nasıl çalıştığı ve nasıl kullanılacağı hakkında bilgi için.

  • Dosyalar çok boyutlu CF DSG varyantlarıdırsa, bu veri kümesini yerine kullanın EDDTable FromNcCFFiles .  
  • Yeni tabular veri setleri için .nc dosyaları, bu seçeneği eski denemeden önce kullanın EDDTable FromNcFiles . Bu sınıfın bazı avantajları şunlardır:
    • Bu sınıf daha geniş bir dosya yapılarından daha fazla değişken okuyabilirsiniz. Eğer ÖlçülerCSV'yi belirtirseniz (Boyut isimlerinin bir komünite listesi) GenrateDatasets X ml (veya<boyutCSV> içinde datasets.xml Bu veri kümelerinden biri için bilgi, sonra ERDDAP™ Sadece bazı veya tüm bu boyutları kullanan kaynak dosyalarında değişkenleri okuyacak, artı tüm ölçek değişkenleri. Bir boyut bir gruptaysa, tamName, e.g'i belirtmeniz gerekir. grupName/dimensionName ".
    • Bu sınıf genellikle bir istek kısıtlamalarına uymazsa dosyaları çok çabuk reddedebilir. Bu yüzden büyük koleksiyonlardan veri okumak genellikle çok daha hızlı gidecektir.
    • Bu sınıf gerçek kar değişkenlerini ele alır (Şaşırtıcı olmayan değişkenler) Doğru şekilde.
    • Bu sınıf, yaratıcının Netcdf-java'nın yazmaStrings kullanmadığı zaman String değişkenlerini kesebilir. (Hangi appends char #0, dizenin sonunu işaretlemek için) .
    • Bu sınıf, belirli değişkenler veya boyutlarda eksik olan bireysel dosyalarla uğraşmakta daha iyidir.
    • Bu sınıf, eksik değerlere sahip sıraların bloklarını kaldırabilir çünkü belirtilebilir CF Discrete Sampling Geometries (DSG) Tamamlanmış Çok boyutlu Dizi dosyaları
       
  • Güçlü bir şekilde kullanmayı öneriyoruz GenrateDatasets X ml programı Kaba bir taslak yapmak için datasets.xml Bu veri kümesi için chunk. Daha sonra bunu iyi bir şekilde ayarlamayı düzenleyebilirsiniz.

GenerateDatasetsX ml, bu tür veri setine cevap vermeden önce sorular örnek dosyasının ncdump benzeri yapısını yazdırır. Yani ilk döngü için Genrates aracılığıyla birkaç goofy cevabı girerseniz X ml, en azından görmek mümkün olacak ERDDAP™ Dosyayı okuyabilirsiniz ve hangi boyutlarda ve değişkenlerin dosyada olduğunu görebilir. Ardından GenrateDatasetsX ml aracılığıyla ikinci döngü için daha iyi cevaplar verebilirsiniz.

Grup - GenrateDatasets X ml bir "grup" isteyecektir. Herhangi bir / bütün grubu aramak için "" girebilirsiniz, " Bazı bazıları bazıları bazıları bazıları Grup Grup Grup Grubu " veya " Bazı Grup / Bazı Grup " Belirli bir grubu veya " \[ kök kök kök kök \] “Sadece kök grubu aramak zorunda. "Grup" dizesi olur<Grup> datasets.xml Dataset için bilgi ("Ancak " \[ kök kök kök kök \] " olur") .

ŞekillerCSV - GenrateDatasets X ml bir "DimensionsCSV" dizesini isteyecektir. Bu, bir dizi boyutun kaynak isimlerinin bir değer listesidir. GenrateDatasets X ml sadece örnek olarak veri değişkenlerini okuyacak .nc Bazı veya tüm bu boyutları kullanan dosyalar (Ve başka bir boyut yok) Ancak dosyadaki tüm ölçek değişkenleri artı ve bu veri değişkenlerinden veri setini yapın. Bir boyut bir gruptaysa, tamName, e.g'i belirtmeniz gerekir. grupName/dimensionName ". Eğer hiçbir şey belirtmezseniz (Boş bir dize) GenerateDatasets X ml en boyutları olan değişkenlere bakacak, teoride en ilginç olacakları, ancak diğer bazı boyutlardaki bazı veri değişkenlerinden bir veri kümesi yapmak istediğinizde zaman olabilir. Eğer sadece var olmayan bir boyut adı belirtseniz (E.g., NO\_MATCH) , ERDDAP™ Sadece tüm ölçek değişkenlerini bulacaktır. "DimensionsCSV" dizesi olur<boyutCSV> içinde datasets.xml Dataset için bilgi.

Terapistler

Bir geçersizlik kategorisi vardır .nc dosyaları dosyaları dosyaları dosyaları (Çünkü CF kurallarını takip etmiyorlar) Bu birden fazla boyuta sahip (E.g., lat, lon, zaman) Sadece bir boyut kullanmaları gerektiğinde (e.g., zaman) Örneğin:

    dimensions:
time = UNLIMITED ; // (1437 currently)
depth = 10;
lat = 1437 ;
lon = 1437 ;
variables:
double time(time) ;
double lat(lat) ;
double lon(lon) ;
float temperature(time, depth) ;

EDDTable FromMultidimNcFiles'in bu dosyalarla başa çıkmak için özel bir özelliği vardır: Eğer küresel özelliği "treatDimensionsAs" veri setlerine küresel özelliği eklerseniz addAttributes Ama söyleyebilirsin ERDDAP™ Bazı boyutları tedavi etmek için (E.g., lat ve lon) Sanki başka bir boyut olsaydı (e.g., zaman) . Karakter değeri, "tanış" boyutları ve sonra "to" boyutu, e.g., lat, lon, zaman
Sonra ERDDAP™ Dosyayı sanki okuyacak:

    dimensions:
time = UNLIMITED ; // (1437 currently)
depth = 10;
variables:
double time(time) ;
double lat(time) ;
double lon(time) ;
float temperature(time, depth) ;

Elbette, listedeki boyutlardaki her birinin mevcut büyüklüğü aynı olmalıdır; aksi takdirde, ERDDAP™ Dosyayı "Bad File" olarak tedavi edecek.

Bu dosyaların geçersiz olduğunu unutmayın çünkü CF kurallarını takip etmiyorlar. Yine de olsa bile ERDDAP™ Onları okuyabilirsiniz, bunun gibi dosyaları yaratmanızı şiddetle tavsiye ederiz çünkü diğer CF tabanlı yazılım araçları bunları doğru bir şekilde okuyabilmeyecektir. Zaten böyle dosyalarınız varsa, onları mümkün olduğunca kısa sürede geçerli dosyalarla değiştirmeyi şiddetle tavsiye ederiz.

EDDTable FromNcFiles

EDDTable FromNcFiles Kombinasyon verileri NetCDF (v3 veya v4) .nc (veya .nc ml ml ml ) dosyaları ve dosyaları ve dosyaları Zarr dosyaları dosyaları dosyaları dosyaları (2.25) Birkaç değişkenle, her biri paylaşılan bir boyutla (Örneğin, zaman) Ya da paylaşılan boyutlardan daha fazlası (Örneğin, zaman, yükseklik (veya derinlik) , latitude, uzunlık) . Dosyaların aynı boyut isimleri olmalıdır. Verilen bir dosya, her bir boyut için birden fazla değere sahip olabilir ve değerler farklı kaynak dosyalarında farklı olabilir. dosyalar ek bir boyutla karakter değişkenleri olabilir (Örneğin, STRING14) . Bu sınıfın süper sınıfını gör EDDTable FromFiles Bu sınıfın nasıl çalıştığı ve nasıl kullanılacağı hakkında bilgi için.

Zarr dosyaları biraz farklı davranışlara sahiptir ve dosyaNameRegex veya "zarr" dahil etmek için yolu gerektirir.

GenerateDatasetsX ml, bu tür veri setine cevap vermeden önce sorular örnek dosyasının ncdump benzeri yapısını yazdırır. Yani ilk döngü için Genrates aracılığıyla birkaç goofy cevabı girerseniz X ml, en azından görmek mümkün olacak ERDDAP™ Dosyayı okuyabilirsiniz ve hangi boyutlarda ve değişkenlerin dosyada olduğunu görebilir. Ardından GenrateDatasetsX ml aracılığıyla ikinci döngü için daha iyi cevaplar verebilirsiniz.

ŞekillerCSV - GenrateDatasets X ml bir "DimensionsCSV" dizesini isteyecektir. Bu, bir dizi boyutun kaynak isimlerinin bir değer listesidir. GenrateDatasets X ml veri değişkenlerini bulur .nc Bazı veya tüm bu boyutları kullanan dosyalar, artı tüm ölçek değişkenleri ve bu veri değişkenlerinden veri kümesi yapın. Eğer hiçbir şey belirtmezseniz (Boş bir dize) GenerateDatasets X ml en boyutları olan değişkenlere bakacak, teoride en ilginç olacakları, ancak diğer bazı boyutlardaki bazı veri değişkenlerinden bir veri kümesi yapmak istediğinizde zaman olabilir.

  • 1D Örnek: 1D dosyaları 2D, 3D, 4D, ... dosyalarından biraz farklıdır.
    • Bir setiniz olabilir .nc Her dosyanın bir ay değerinde bir veriye sahip olduğu veri dosyaları bir sürüklenme makinesinden.
    • Her dosyanın 1 boyutu olacak, örneğin, zaman (Boyut = \[ Birçok çoğu çok fazla \] ) .
    • Her dosya, bu boyutu kullanan bir veya daha fazla 1D değişkene sahip olacak, örneğin, zaman, uzun, enlem, hava sıcaklığı ....
    • Her dosyanın 2D karakter değişkenleri olabilir, örneğin boyutları ile (Zaman,nCharacters) .  
  • 2D Örnek:
    • Bir setiniz olabilir .nc Her dosyanın bir ay değerinde bir veriye sahip olduğu veri dosyaları bir sürüklenme makinesinden.
    • Her dosyanın 2 boyutu olacaktır, örneğin, zaman (Boyut = \[ Birçok çoğu çok fazla \] ) ve boş (Boyut = 1) .
    • Her dosya aynı isimlerle 2 1D değişkene sahip olacak ve aynı isim boyutunu kullanarak, örneğin, zaman (Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman) Hayır, (id id id) . Bu 1D değişkenleri listeye dahil edilmelidir< dataVariable >'s in the dataset's XML.
    • Her dosyanın bir veya daha fazla 2D değişkeni olacaktır, örneğin, uzun, enlem, hava sıcaklığı, su sıcaklığı, ...
    • Her dosyanın 3D karakter değişkenleri olabilir, örneğin boyutları ile (Zaman,id,nCharacters) .  
  • 3D Örnek:
    • Bir setiniz olabilir .nc Her dosyanın bir saatlik bir veri değeri olduğu veri dosyaları bir istasyoner buoy.
    • Her dosyanın 3 boyutu olacak, örneğin, zaman (Boyut = \[ Birçok çoğu çok fazla \] ) latlat (Boyut = 1) Ve lon (Boyut = 1) .
    • Her dosya, aynı isimlerle aynı 3 1D değişkene sahip olacak ve aynı isim boyutunu kullanarak, örneğin, zaman (Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman) latlat (lat) , (lon) . Bu 1D değişkenleri listeye dahil edilmelidir< dataVariable >'s in the dataset's XML.
    • Her dosyanın bir veya daha 3D değişkeni olacaktır, örneğin hava sıcaklığı, su sıcaklığı, ...
    • Her dosyanın 4D karakter değişkenleri olabilir, örneğin boyutları ile (Zaman,lat,lon,nCharacters) .
    • Dosyanın adı, dosyanın adı altında buoy'un adı olabilir.  
  • 4D Örnek:
    • Bir setiniz olabilir .nc Her dosyanın bir istasyondan bir ay değerindeki verilere sahip olduğu veri dosyaları. Her zaman noktada, istasyon bir dizi derinlikte okuyor.
    • Her dosyanın 4 boyutu olacak, örneğin, zaman (Boyut = \[ Birçok çoğu çok fazla \] ) , derinlik (Boyut = \[ Birçok çoğu çok fazla \] ) latlat (Boyut = 1) Ve lon (Boyut = 1) .
    • Her dosya, aynı isimlerle 4 1D değişkene sahip olacak ve aynı isim boyutunu kullanarak, örneğin, zaman (Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman) , derinlik (derinlik derinliği) latlat (lat) , (lon) . Bu 1D değişkenleri listeye dahil edilmelidir< dataVariable >'s in the dataset's XML.
    • Her dosyanın bir veya daha 4D değişkeni olacaktır, örneğin hava sıcaklığı, su sıcaklığı, ...
    • Her dosyanın 5D karakter değişkenleri olabilir, örneğin boyutları ile (Zaman, derinlemesine,lat,lon,nCharacters) .
    • Dosyanın adı, dosyanın adı altında buoy'un adı olabilir.  

EDDTable FromNcCFFiles

EDDTable FromNcCFFiles Totals data agres verileri toplar NetCDF (v3 veya v4) .nc (veya .nc ml ml ml ) Dosya formatlarından birini kullanan dosyalar CF Discrete Sampling Geometries (DSG) Kongreler. Bu sınıfın süper sınıfını gör EDDTable FromFiles Bu sınıfın nasıl çalıştığı ve nasıl kullanılacağı hakkında bilgi için.

Çok boyutlu CF DSG varyantlarından birini kullanan dosyalar için, kullanın EDDTable FromMultidimNcFiles Bunun yerine.

CF DSG kongreleri düzinelerce dosya biçimini tanımlar ve sayısız küçük varyasyon içerir. Bu sınıf, bildiğimiz tüm varyasyonlarla ilgilidir, ancak birini kaçırabiliriz (veya daha fazla) . Bu sınıf, CF DSG dosyalarından veri okuyamıyorsa lütfen lütfen Ek destek için dışarı çıkmak .

Güçlü bir şekilde kullanmayı öneriyoruz GenrateDatasets X ml programı Kaba bir taslak yapmak için datasets.xml Bu veri kümesi için chunk. Daha sonra bunu iyi bir şekilde ayarlamayı düzenleyebilirsiniz.  

EDDTable FromNccsvFiles

EDDTable FromNccsvFiles Kombinasyon verileri NCCSV ASCII .csv dosyaları. Bu sınıfın süper sınıfını gör EDDTable FromFiles Bu sınıfın nasıl çalıştığı ve nasıl kullanılacağı hakkında bilgi için.

  • Güçlü bir şekilde kullanmayı öneriyoruz GenrateDatasets X ml programı Kaba bir taslak yapmak için datasets.xml Bu veri kümesi için chunk. Daha sonra bunu iyi bir şekilde ayarlamayı düzenleyebilirsiniz.

GenerateDatasetsX ml, bu tür veri setine cevap vermeden önce sorular örnek dosyasının ncdump benzeri yapısını yazdırır. Yani ilk döngü için Genrates aracılığıyla birkaç goofy cevabı girerseniz X ml, en azından görmek mümkün olacak ERDDAP™ Dosyayı okuyabilirsiniz ve hangi boyutlarda ve değişkenlerin dosyada olduğunu görebilir. Ardından GenrateDatasetsX ml aracılığıyla ikinci döngü için daha iyi cevaplar verebilirsiniz.

  • UYARI: Ne zaman ERDDAP™ NCCSV veri dosyaları okur, belirli bir çizgide bir hata bulursa (e.g., yanlış sayıda öğe) , bir uyarı mesajı girin ("WARNING: Bad line (s) Verilerin listesi” ... sonraki hatların bir listesi ile) Ve log.txt file Ve sonra veri dosyasının geri kalanını okumaya devam edin. Böylece, periyodik olarak bakmak sizin sorumluluğunuzdur (veya bunu yapmak için bir senaryo yaz) Bu mesaj için girişte. txt böylece veri dosyalarındaki sorunları düzeltebilirsiniz. ERDDAP™ Bu şekilde ayarlanmıştır, böylece kullanıcılar mevcut tüm geçerli verileri okumaya devam edebilir, ancak dosyanın bazı hatları kusurlarına sahip olsa da.  

EDDTable FromNOS

EDDTable FromNOS (DEPRECATED) Bir veriyi bir şekilde ele alır NOAA NOS Kaynak, hangi kullanır SOAP+XML Talepler ve cevaplar için. Bu çok spesifik NOAA NOS's XML. Örnek EDDTable FromNOS dataset in datasets2.xml.  

EDDTable FromOBIS

EDDTable FromOBIS Bir Ocean Biogeografik Bilgi Sisteminden veri işliyor (OBIS) server sunucusu (was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was washttp://www.iobis.org ) . Bu şimdi güncel OBIS sunucu sistemi türü kullanan daha aktif sunucular olması mümkündür.

  • OBIS sunucuları bir XML isteği bekliyor ve bir XML cevabı geri döndürür.
  • Çünkü tüm OBIS sunucuları aynı değişkenlere aynı şekilde hizmet eder (was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was was washttp://iobis.org/tech/provider/questions) Ama bir OBIS veri kümesi kurmak için çok fazla belirtmeniz gerekmez ERDDAP .
  • You MUST şunları içerir: " creator\_email “ Küreselleşmede Karakterler addAttributes Çünkü bu bilgi lisans içinde kullanılır. Uygun bir e-posta adresi, kaynakURL'den XML yanıtını okuyarak bulunabilir.
  • Küresel özellikleri elde edemeyebilirsiniz [< subsetVariables >) (#subsetibles) Verilen bir OBIS sunucusu ile çalışmak. Eğer çalışırsanız, sadece bir değişken deneyin (Örneğin, BilimselName veya Genus) .

EDDTable FromOBIS iskelet XML

  <dataset type="EDDTableFromOBIS" datasetID\="..." active\="..." >
      <sourceUrl>...</sourceUrl>
      <sourceCode>...</sourceCode>
        <!-- If you read the XML response from the sourceUrl, the
        source code (for example, GHMP) is the value from one of the
        <resource><code> tags. -->
      <accessibleTo>...</accessibleTo> <!-- 0 or 1 -->
      <graphsAccessibleTo>auto|public</graphsAccessibleTo> <!-- 0 or 1 -->
      <reloadEveryNMinutes>...</reloadEveryNMinutes> <!-- 0 or 1 -->
      <defaultDataQuery>...</defaultDataQuery> <!-- 0 or 1 -->
      <defaultGraphQuery>...</defaultGraphQuery> <!-- 0 or 1 -->
      <addVariablesWhere>...</addVariablesWhere> <!-- 0 or 1 -->
      <fgdcFile>...</fgdcFile> <!-- 0 or 1 -->
      <iso19115File>...</iso19115File> <!-- 0 or 1 -->
      <onChange>...</onChange> <!-- 0 or more -->
      <-- All ...SourceMinimum and Maximum tags are OPTIONAL -->
      <longitudeSourceMinimum>...</longitudeSourceMinimum>
      <longitudeSourceMaximum>...</longitudeSourceMaximum>
      <latitudeSourceMinimum>...</latitudeSourceMinimum>
      <latitudeSourceMaximum>...</latitudeSourceMaximum>
      <altitudeSourceMinimum>...</altitudeSourceMinimum>
      <altitudeSourceMaximum>...</altitudeSourceMaximum>
      <-- For timeSource... tags, use yyyy-MM-dd'T'HH:mm:ssZ format. -->
      <timeSourceMinimum>...</timeSourceMinimum>
      <timeSourceMaximum>...</timeSourceMaximum>
      <sourceNeedsExpandedFP\_EQ>true(default)|false</sourceNeedsExpandedFP\_EQ>
        <!-- 0 or 1 -->
      <addAttributes>...</addAttributes> <!-- 0 or 1. This MUST include
        "creator\_email" -->
  </dataset>

EDDTable FromParquetFiles

EDDTable FromParquetFiles Veriler verileri işliyor Parke Park . Bu sınıfın süper sınıfını gör EDDTable FromFiles Bu sınıfın nasıl çalıştığı ve nasıl kullanılacağı hakkında bilgi için.

  • Parkt çok verimli bir şekilde bastırmak için tasarlanmıştır, bu yüzden size diğer formatlardan daha küçük dosya boyutları verebilir.
  • Güçlü bir şekilde kullanmayı öneriyoruz GenrateDatasets X ml programı Kaba bir taslak yapmak için datasets.xml Bu veri kümesi için chunk. Daha sonra bunu iyi bir şekilde ayarlamayı düzenleyebilirsiniz.
  • UYARI: Ne zaman ERDDAP™ Parkt veri dosyaları okur, belirli bir çizgide bir hata bulursa (e.g., yanlış sayıda öğe) , bir uyarı mesajı girin ("WARNING: Bad line (s) Verilerin listesi” ... sonraki hatların bir listesi ile) Ve log.txt file Ve sonra veri dosyasının geri kalanını okumaya devam edin. Böylece, periyodik olarak bakmak sizin sorumluluğunuzdur (veya bunu yapmak için bir senaryo yaz) Bu mesaj için girişte. txt böylece veri dosyalarındaki sorunları düzeltebilirsiniz. ERDDAP™ Bu şekilde ayarlanmıştır, böylece kullanıcılar mevcut tüm geçerli verileri okumaya devam edebilir, ancak dosyanın bazı hatları kusurlarına sahip olsa da.  

EDDTable From From SOS

**EDDTable From From SOS ** Bir Sensör Gözlem Servisinden veri işliyor (SWE / SOS ) sunucu.

  • Bu veri set türü, tüm biri tarafından servis edilen bir istasyondan veri toplar SOS sunucu.
  • Tüm istasyonlar aynı değişkenlere hizmet eder (Her istasyon için kaynak tüm değişkenlere hizmet etmek zorunda değildir) .
  • SOS sunucular bir XML isteği bekliyor ve bir XML cevabı döndürür.
  • Güçlü bir şekilde kullanmayı öneriyoruz GenrateDatasets X ml programı Kaba bir taslak yapmak için datasets.xml Bu veri kümesi için chunk. Daha sonra bunu iyi bir şekilde ayarlamayı düzenleyebilirsiniz. Dataset XML oluşturmak kolay değildir SOS Elle veri setleri. Gerekli bilgileri bulmak için, ziyaret etmelisiniz sourceUrl +"? servis = hizmet = hizmet = SOS &request= GetCapabilities “Bir tarayıcıda; XML'e bakın; el tarafından bir GetObservation isteği yapın; ve isteke XML cevabına bakın.
  • Yeni türlerin ara sıra, SOS Eski sunuculara ve değişiklikler, eski sunuculara daha zor geliyor ERDDAP™ Sunucu tipini sunucunun cevaplarından otomatik olarak tespit etmek. Kullanımı<SosServerType> (IOOS\_NDBC değeri ile IOOS\_NOS, OOSTethys veya WHOI) Şimdi STRONGLY RECOMMENDED. Bu tür herhangi bir veri setleriyle ilgili sorunlarınız varsa, GenerateDatasets'leri yeniden çalıştırmayı deneyin. X ml için SOS sunucu. Genrate Datasets X ml farklı denemenize izin verecektir<sosServerType> Verilen bir sunucu için doğru olanı bulana kadar seçenekler.
  • SOS Genel bakış:
  • SWE (Sensör Web Enablement) ve SOS (Sensör Gözlem Servisi) Bunlardır OpenGIS® standartları . Bu web sitesinin standart belgeleri vardır.
  • The The The The The The The The OGC Web Servisleri Ortak Özellikler ( OGC 06-121r3) GET ve POST sorgularının inşaatı (Bölüm 7.2.3 ve Bölüm 9) .
  • Eğer bir kaçış izni gönderirseniz xml bir istek SOS server sunucusu ( sourceUrl + "?service= SOS &request= GetCapabilities " " "") İstasyonların bir listesi ve gözlemlenen bir xml sonucu elde edersiniz. Verileri olan Özellikler.
  • GözlemlenenProperty, bir mülk için resmi bir URI referansıdır. Örneğin, urn:ogc:phenomenon:longitude:wgs84 veyahttps://mmisw.org/ont/cf/parameter/sea\_water\_temperature
  • GözlemlenenProperty değişken değildir.
  • Birden fazla değişken aynı gözleme sahip olabilir Emlak (Örneğin, içerideTemp ve dışarıda Temp her ikisi de gözlemlenebilir Emlakhttps://mmisw.org/ont/cf/parameter/air\_temperature) .
  • Eğer bir getObservation xml isteği gönderirseniz SOS sunucu, yanıt, alan birimleri ve verilerdeki alan isimlerinin açıklamalarıyla bir xml sonucu elde edersiniz. Alan isimleri uzun, entitude, derinlik içerecek (Belki belki belki de belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki) Ve zaman.
  • Her biri her dataVariable A EDDTable From SOS Bu değişkeni elde etmek için sunucudan talep edilmesi gereken gözlemlenenProperty'yi tanımlayan bir "observedProperty" özelliği içermelidir. Çoğu zaman, birkaç tane dataVariable s, aynı kompozit gözlemProperty'yi listeleyecek.
  • Her biri için veri Türü dataVariable sunucu tarafından belirtilemez. Eğer öyleyse, sunucudan XML veri yanıtlarına bakmanız ve uygun atamanız gerekir [<dataType>s] (#datatype) İçinde ERDDAP™ Dataset dataVariable Tanımlar.
  • (Bu yazının zamanında) Bazı bazıları bazıları bazıları bazıları SOS sunucular gözlemlenenlerden daha fazlası için Observation isteklerini almaya yanıt verirler Tanıkların ilki için sadece sonuçları geri döndürür. (Hata mesajı yok!) Yapıcı parametre talebine bakınız ObservedPropertiesSeparately.
  • EDDTable From From SOS otomatik olarak ekliyorlar

    station\_id, longitude, latitude
    Veri setinin yarattığı küresel özelliklere.

  • SOS Genellikle sunucular genellikle ekspres Birim birimleri ile birlikte UCUM Sistem. En çoğu ERDDAP™ sunucular birimleri ifade eder UDUNITS Sistem. İki sistem arasında dönüştürmeniz gerekiyorsa, kullanabilirsiniz ERDDAP UCUM birimlerini /'ye dönüştürmek için web hizmeti UDUNITS .

EDDTable From From SOS iskelet XML

  <dataset type="EDDTableFromSOS" datasetID\="..." active\="..." >
      <sourceUrl>...</sourceUrl>
      <accessibleTo>...</accessibleTo> <!-- 0 or 1 -->
      <graphsAccessibleTo>auto|public</graphsAccessibleTo> <!-- 0 or 1 -->
      <reloadEveryNMinutes>...</reloadEveryNMinutes> <!-- 0 or 1 -->
      <defaultDataQuery>...</defaultDataQuery> <!-- 0 or 1 -->
      <defaultGraphQuery>...</defaultGraphQuery> <!-- 0 or 1 -->
      <addVariablesWhere>...</addVariablesWhere> <!-- 0 or 1 -->
      <fgdcFile>...</fgdcFile> <!-- 0 or 1 -->
      <iso19115File>...</iso19115File> <!-- 0 or 1 -->
      <onChange>...</onChange> <!-- 0 or more -->
      <sosServerType>...</sosServerType> <!-- 0 or 1, but STRONGLY
        RECOMMENDED. This lets you specify the type of SOS server
        (so ERDDAP™ doesn't have to figure it out).
        Valid values are: IOOS\_NDBC, IOOS\_NOS, OOSTethys, and WHOI. -->
      <responseFormat>...</responseFormat> <!-- 0 or 1. Use this only if
        you need to override the default responseFormat for the
        specified sosServerType. -->
      <stationIdSourceName>...</stationIdSourceName> <!-- 0 or 1.
        Default="station\_id". -->
      <longitudeSourceName>...</longitudeSourceName>
      <latitudeSourceName>...</latitudeSourceName>
      <altitudeSourceName>...</altitudeSourceName>
      <altitudeSourceMinimum>...</altitudeSourceMinimum> <!-- 0 or 1 -->
      <altitudeSourceMaximum>...</altitudeSourceMaximum> <!-- 0 or 1 -->
      <altitudeMetersPerSourceUnit>...</altitudeMetersPerSourceUnit>
      <timeSourceName>...</timeSourceName>
      <timeSourceFormat>...</timeSourceFormat>
        <!-- timeSourceFormat MUST be either
        \* For numeric data: a UDUnits\-compatible string (with the format
          "units since baseTime") describing how to interpret
          source time values (for example,
          "seconds since 1970-01-01T00:00:00Z"), where the
          base time is an ISO 8601:2004(E) formatted date time
          string (yyyy-MM-dd'T'HH:mm:ssZ).
        \* For String date time data: specify
          units suitable for string times
          describing how to interpret string times (for example, the
          ISO8601TZ\_FORMAT "yyyy-MM-dd'T'HH:mm:ssZ"). -->
      <observationOfferingIdRegex>...</observationOfferingIdRegex>
        <!-- Only observationOfferings with IDs (usually the station names)
        which match this regular expression (tutorial) will be included
        in the dataset (".+" will catch all station names). -->
      <requestObservedPropertiesSeparately>true|false(default)
        </requestObservedPropertiesSeparately>
      <sourceNeedsExpandedFP\_EQ>true(default)|false</sourceNeedsExpandedFP\_EQ>
      <addAttributes>...</addAttributes> <!-- 0 or 1 -->
      <dataVariable>...</dataVariable> <!-- 1 or more.
        \* Each dataVariable MUST include the dataType tag.
        \* Each dataVariable MUST include the observedProperty attribute.
        \* For IOOS SOS servers, \every\ variable returned in the text/csv
          response MUST be included in this ERDDAP™ dataset definition. -->
  </dataset>

EDDTable FromThreddsFiles

EDDTable FromThreddsFiles (Deprecated) Çeşitli değişkenlerle birlikte toplam veri dosyaları, her biri veya daha paylaşılan boyutlarda (Örneğin, zaman, yükseklik (veya derinlik) , latitude, uzunlık) , ve bir kişi tarafından servis THREDDS OPeNDAP server sunucusu .

  • Bu veri kümesi tipidir DEPRECATED . Yeni ve daha genel çözüm, kullanmaktır Önbelli önbelli önbelli önbelli önbelli önbelli önbelli önbelli önbelli önbelli önbelli EDDTable için Url seçeneği FromFiles (veya bir değişken) Uzak dosyaların yerel bir kopyasını yapar ve yerel dosyalardan verilere hizmet eder. The The The The The The The The<Önbellek FromUrl> seçeneği, dosyaların bir dizi gibi listesini yayınlayan herhangi bir web tabanlı kaynaktan herhangi bir telefon veri dosyası ile kullanılabilir. **
    Bu işi bir nedenden ötürü yapamazsanız, e-posta Chris. John at noaa.gov. 2020'den önce şikayet yoksa, bu veri set türü kaldırılabilir. **
  • Güçlü bir şekilde kullanmayı öneriyoruz GenrateDatasets X ml programı Kaba bir taslak yapmak için datasets.xml Bu veri kümesi için chunk. Daha sonra bunu iyi bir şekilde ayarlamayı düzenleyebilirsiniz.
  • Çoğu durumda, her dosya solun birden çok değeri vardır. (İlk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce) Boyut, örneğin, zaman.
  • dosyalar genellikle (Ama yapmak zorunda değil) Diğer boyutlarda tek bir değer var (Örneğin, yükseklik (veya derinlik) , latitude, uzunlık) .
  • dosyalar ek bir boyutla karakter değişkenleri olabilir (Örneğin, nCharacters) .
  • THREDDS sunucuları URL'lerde "/kırmızılar /" tarafından tanımlanabilir. Örneğin,
    https://www.ncei.noaa.gov/thredds/catalog/uv/6h\\_strs\\_agg/catalog.html
  • THREDDS sunucularının çeşitli yerlerde katalogları vardır. Bu sınıf REQUIRES, URL'nin "/thredds/catalog/" olduğunu belirtti. Genellikle bu değişkeni kök kataloğunda bir tarayıcıya başlayabilir ve sonra istenen altcataloga tıklayarak bulabilirsiniz.
  • Bu sınıf, THREDDS tarafından servis edilen katalog.xml dosyalarını THREDDS listeleriyle okur<katalogRefs> (Ek kataloga referanslar.xml sub-files) ve<dataset>s (veri dosyaları) .
  • The The The The The The The The<fileDir> ayarı göz ardı edilir. Bu sınıf indirmek ve her uzaktan veri dosyasının yerel bir kopyasını yapmak, ERDDAP™ Dosyayı güçlendirin Dir to be Büyük Parent Yönetmeny /copy / * datasetID * /.
  • For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For< sourceUrl >, örneğin THREDDS sunucusundaki veri kümesi için katalog.xml dosyasının URL'sini kullanın: bir web tarayıcısında kullanılan bu URL için, https://data.nodc.noaa.gov/thredds/catalog/nmsp/wcos/catalog.html \[ 2020-10-21-21-21 Bu sunucu artık güvenilir bir şekilde mevcut değildir. \] , kullanımı kullanımı kullanımı kullanımı kullanımı< sourceUrl > > > >https://data.nodc.noaa.gov/thredds/catalog/nmsp/wcos/catalog.xml&lt;/ sourceUrl > > > > (Ama bir çizgiye koyun) .
  • Bu sınıf her zaman indirmek ve her uzaktan veri dosyasının yerel bir kopyasını yapmak için, bu veri kümesini asla bu veri kümesini açmamalısınız. EDDTableCopy .
  • Bu veri set türü, nadiren kullanılan, özel bir etiket destekler,<özelMode> modu modu modu modu <Özel, sert kodlanmış kuralların hangi dosyaların sunucudan indirileceğini belirlemek için kullanılabileceğini belirlemek için özel olarak kullanılanMode>. Şu anda, sadece geçerli modu modu modu modu veri setleri ile kullanılan SAMOS,https://tds.coaps.fsu.edu/thredds/catalog/samosSadece son sürüm numarası ile dosyaları indirmek için.
  • Bu sınıfın süper sınıfını gör EDDTable FromFiles Bu sınıfın nasıl çalıştığı ve nasıl kullanılacağı hakkında bilgi için.
  • 1.D, 2D, 3D ve 4D örneklerini görün EDDTable FromNcFiles .  

EDDTable From From WFS Dosyalar

EDDTable From From WFS Dosyalar (DEPRECATED) Tüm verilerin yerel bir kopyasını bir andan yapar ArcGIS MapServer WFS Sunucu böylece veriler daha sonra hızlı bir şekilde yeniden korunmuş olabilir ERDDAP™ Kullanıcılar.

  • Özel bir formatlı belirtmeniz gerekir sourceUrl Söylenecek küresel özellikler ERDDAP™ Sunucudan bilgi nasıl talep edilir. Lütfen bu örneği bir şablon olarak kullanın:
    <att name="sourceUrl">http://*someUrl/dir1/dir2*/MapServer/WFSServer?request=GetFeature&amp;service=WFS&amp;typename=aasg:BoreholeTemperature&amp;format=&quot;text/xml;%20subType=gml/3.1.1/profiles/gmlsf/1.0.0/0"</att>  

(Ama hepsini tek bir çizgiye koyun)

  • Söyleyecek özel bir küresel özellik eklemek zorundasınız ERDDAP™ Nasıl indirilmeli olan verilerin chunks isimlerini tanımlamak. Bu muhtemelen tüm EDDTable için çalışacaktır WFS Dosyalar datasets:
    <att name="rowElementXPath">/wfs:FeatureCollection/gml:featureMember</att>
  • Bu sınıf her zaman indirmek ve her uzaktan veri dosyasının yerel bir kopyasını yapmak için, bu veri kümesini asla bu veri kümesini açmamalısınız. EDDTableCopy .
  • Bu sınıfın süper sınıfını gör EDDTable FromFiles Bu sınıfın nasıl çalıştığı ve nasıl kullanılacağı hakkında daha fazla bilgi için.  

EDDTableAggregateRows

EDDTableAggregateRows Bir EDDTable veri kümesinden bir grup "çocuk" EDDTable datasets yapabilir.

  • İşte EDDTableAggregateRows için bazı kullanımlar:
    • EDDTableAggregateRows veri setini iki farklı dosya veya veri kaynağından yapabilirsiniz, örneğin, son ay içinde saklanan bir veri kümesi .nc CF dosyaları ve mevcut ay için bir ilişkisel veritabanında saklanan verilerle bir veri kümesi.
    • Bir EDDTableAggregateRows veri setini kaynak dosyalarında bir değişiklikle başa çıkmak için yapabilirsiniz (Örneğin, zaman formatı değişti veya değişken bir isim değişti veya veriler Türü / Türü / Türü scale\_factor / add\_offset değişmiş değişiklikler değişmiş değişti) . Bu durumda, bir çocuk değişimden önce yapılan dosyalardan veri alır ve diğer çocuk değişimden sonra yapılan dosyalardan veri alır. EDDTableAggregateRows'in bu kullanımı, kullanmak için bir alternatiftir NcML veya NCO . Dosya isimlerinde ayırt edici bir özellik yoksa (bu yüzden kullanabilirsiniz<DosyaNameRegex> hangi dosyanın hangi çocuk veri setine ait olduğunu belirlemek için, muhtemelen farklı yönetmenlerde iki çocuk veri setleri için dosyaları saklamanız gerekir.
    • Bir EDDTableAggregateRows veri setinin paylaşılan bir alt kümesine sahip olan bir EDDTableAggregateRows dataset ve bir TrajectoryProfile dataset, örneğin, bir profil veri setinin kombinasyonunu yapan bir veri kümesi, bir ZamanProfile dataset ve bir Trajektör (Bu, bazı farklı değişkenlere ve ortak değişkenlere sahiptir - bu durumda çocuk veri setleri için özel varyantlar yapmak zorunda kalacaksınız, sadece in-common değişkenleri ile) .
    • Birkaç standalone veri setleri olabilir, her biri aynı tür verilerle ancak farklı bir istasyondan. Bu veri setlerini sağlam bırakabilirsin, ancak aynı zamanda tüm istasyonlardan verileri olan bir EDDTableAggregateRows veri kümesi oluşturabilirsiniz - her çocuk veri setleri basit olabilir EDDTable FromErddap Mevcut istasyon veri kümelerinden birine hangi noktaları gösterir. Bunu yaparsanız, EDTable'ün her birine farklı bir veri setlerinden farklı bir şekilde verin. datasetID Orijinal standalone datasets, e.g., orijinal "Çocuk"u orijinale uygulayarak datasetID .
  • Her bir çocuğun çocuğu<dataset>'ın belirtilmesi, bir stand-alone veri seti olduğu gibi tam bir veri kümesi olmalıdır. Her birinin aynı olması gerekir dataVariable s Aynı şekilde, aynı şekilde, aynı şekilde destinationName s , Data data data data data data Tür türleri , missing\_value s , \_FillValues Ve Birim birimleri . EDDTableAggregateRows dataset için her değişken için metadata ilk çocuk veri setinde değişkenlerden geliyor, ancak EDDTableAggregateRows güncellenecek actual\_range metadata tüm çocuklar için gerçek bir aralığı olmak.
  • Öneri: Her çocuk veri setleri stand-alone veri setleri olarak çalışıyor. Sonra EDDTableAggregateRows veri setini kesme ve geçmişleyerek yapmaya çalışın datasets.xml Her biri için yeni EDDTableAggregate Rows dataset.
  • Dataset Default Sort Order – Çocuk veri setlerinin düzeni, sonuçların genel varsayılan siparişini belirler. Tabii ki, kullanıcılar belirli bir dizi sonuç için uygulama ve uygulama yoluyla farklı bir sipariş isteyebilirler. orderBy (" " "" Değişken değişkenler listesi " " "") Sorularının sonuna kadar.
  • "Kaynak" küresel küresel küresel küresel küresel küresel küresel Attributes EDDTableAggregateRows, ilk çocuk veri setinden gelen birleşik küreselAttributes. EDTableAggregate Rows küresel bir küreselliğe sahip olabilir< addAttributes > Kaynak küresel özellikleri veya aşırılık sağlamak için.

EDDTableAggregate Rows iskelet XML

  <dataset type="EDDTableAggregateRows" datasetID\="..." active\="..." >
      <accessibleTo>...</accessibleTo> <!-- 0 or 1 -->
      <graphsAccessibleTo>auto|public</graphsAccessibleTo> <!-- 0 or 1 -->
      <accessibleViaFiles>true|false(default)</accessibleViaFiles>
        <!-- 0 or 1 -->
      <reloadEveryNMinutes>...</reloadEveryNMinutes> <!-- 0 or 1 -->
      <updateEveryNMillis>...</updateEveryNMillis> <!-- 0 or 1. -->
      <defaultDataQuery>...</defaultDataQuery> <!-- 0 or 1 -->
      <defaultGraphQuery>...</defaultGraphQuery> <!-- 0 or 1 -->
      <addVariablesWhere>...</addVariablesWhere> <!-- 0 or 1 -->
      <fgdcFile>...</fgdcFile> <!-- 0 or 1 -->
      <iso19115File>...</iso19115File> <!-- 0 or 1 -->
      <onChange>...</onChange> <!-- 0 or more -->
      <dataset>...</dataset> <!-- 1 or more -->
  </dataset>

EDDTableCopy

EDDTableCopy Birçok EDDTable veri setlerinin yerel bir kopyasını yapabilir ve sonra verileri yerel kopyadan hızlıca kurtarabilirsiniz.

  • EDDTableCopy (Ve ağ verileri için, EDDGrid Kopya kopya ) Kullanımı çok kolaydır ve çok etkili Uzak veri kaynaklarından veri servis eden en büyük problemlerden bazılarına çözüm:
    • Uzak bir veri kaynağından gelen verilere erişim yavaş olabilir.
      • Yavaş olabilirler çünkü doğal olarak yavaşlar (Örneğin, verimli bir sunucu türü) ,
      • Çünkü çok fazla talep tarafından boğuluyorlar,
      • Ya da sunucunuz veya uzaktan sunucunuz bant genişliği sınırlıdır.
    • Uzak veri kümesi bazen kullanılamaz (Tekrar, çeşitli nedenlerle) .
    • Veriler için bir kaynağa dayanarak iyi ölçeklendirmez (Örneğin, birçok kullanıcı ve birçok kişi ERDDAP s onu kullanır) .  
  • Nasıl çalışır - EDDTableCopy bu sorunları otomatik olarak yaparak ve verilerin yerel bir kopyasını sağlayarak ve yerel kopyadan veri hizmet ederek çözer. ERDDAP™ Yerel kopyadan çok, çok hızlı bir şekilde verilere hizmet edebilir. Ve yerel bir kopya yapmak, uzaktan sunucudaki yükü rahatlatır. Ve yerel kopya orijinalin bir yedekidir, bu da bir şey orijinalin başına gelir.

Bir veri kümesinin yerel bir kopyasını yapmak için yeni bir şey yoktur. Burada yeni olan şey bu sınıfın bunu yaptığıdır\*kolay kolay kolay kolay kolay\*Yaratmak ve yaratmak\*maintain maintain maintain maintain\*Verilerin yerel bir kopyası bir veriden\*Çeşitli çeşitlilik çeşitliliği çeşitlilik çeşitliliği çeşitlilik çeşitliliği çeşitliliği çeşitliliği çeşitlilik çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitlilik çeşitliliği çeşitliliği çeşitliliği çeşitlilik çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitlilik çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitlilik çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitlilik çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitlilik çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitlilik çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitlilik çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitlilik çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitlilik çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitlilik çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitlilik çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitlilik çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitlilik çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitlilik çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği çeşitliliği\*Uzak veri kaynakları ve türleri\*Ekle metadata\*Verileri kopyalarken.

EDDTableCopy vs<Önbellek Url>

<önbellek> EDDTableCopy'ye alternatiftir. Farklı çalışıyorlar.

  • EDDTable Kopya, uzaktan bir hizmetten gelen verilerin chunkslarını talep ederek çalışır ve yerel dosyalardaki bu chunksları depolar. Böylece, EDDTableCopy, verilerin uzaktan bir hizmetle erişilebilir olduğu bazı durumlarda faydalıdır.
  • [<Önbelleği Url> (#cache Fromurl) Uzak bir web sitesinde listelenen mevcut dosyaları indirin.<Önbellek> kullanmak ve daha güvenilirdir, çünkü yeni bir uzaktan veri dosyası olduğunda veya uzaktan bir veri dosyası değiştiğinde kolayca söyleyebilir ve böylece indirmeniz gerekir.

EDDTableCopy veya<önbellek FromUrl> kullanılabilir, kullanım<Önbellek FromUrl> çünkü daha kolay ve daha güvenilirdir.  

<Çıktı Ads>

EDDTable Kopya, verilerin yerel kopyasını uzaktan veri kümesinden veri toplayarak yapar. EDDTable Kopyalama hangi chunksların &distinct talep ederek talep edeceğini belirler () Değerler için değer<EkstraDestinationNames> (Belirtilenlerde belirtilenler datasets.xml Aşağıda bakınız) Bu, uzak veri kümesindeki değişkenlerin uzay destekli hedef isimleridir. Örneğin,

    <extractDestinationNames>drifter profile</extractDestinationNames>  

Teriyer=tig17, profil=1017, sürüklenici=tig17, profil=1095, ... sürüklenici=une12, profil=1223, horer=une12, profil=1251, ....

Bir sütunun bulunduğu durumlarda (Örneğin, profil) Örneğin, profiller, ek bir ekstra ekstra ekstra ekstra alıntılar da belirtmek için gerekli olabilir, örneğin çok fazla sayıda veri varsa, aynı zamanda ek bir ekstra ekstra ekstra alıntılar da belirtebilir. Hedef Name Name Name Name Name Name Name Name Name Name Name (Örneğin, sürükleyici) Hangi profillere hizmet eder. Bu, belirli bir dizide daha az veri dosyalarına yol açıyor ve bu daha hızlı erişime yol açabilir.

Yerel dosyalar

Her bir veri kümesi ayrı ayrı olarak depolanır NetCDF Bir alt yönlendirmede dosya Büyük Parent Yönetmeny /copy / * datasetID * / (belirtildiği gibi, Kurulum.xml ) . Her şey için bir alt yönlendirme seviyesi var, ancak son alıntı. Örneğin, tig17+1017 için veriler depolanacaktır. Büyük Parent Yönetmeny /copy/sampleDataset/tig17/1017 .nc . Örneğin, une12+1251 için veriler depolanacaktır. Büyük Parent Yönetmeny /copy/sampleDataset/une12/1251 .nc . Veri değerlerinden yaratılan Rehber ve dosya isimleri onları dosya adı güvenli hale getirmek için değiştirildi (Örneğin, uzaylar "x20" tarafından değiştirildi.) - Bu gerçek verileri etkilemez.  

Yeni Veri

Her seferinde EDDTable Kopya yeniden yükleniyor, farklı chunksların mevcut olduğunu görmek için uzaktan veri setini kontrol ediyor. Bir veri kümesi için dosya zaten mevcut değilse, chunk'ı bir kuyruka almak için bir istek eklendi. ERDDAP “ÖrnekThread, tüm kuyruk talepleri veri, bir tane. GörevThread'in faaliyetleri için istatistikler görebilirsiniz Durum Sayfa Ve içinde Günlük Rapor . (Evet, ERDDAP™ Bu süreçte birden fazla görev yapabilirdi, ancak bu, uzak veri kaynağının bant genişliği, hafıza ve CPU zamanı ve birçok yerel yerelde çok şey kullanırdı. ERDDAP ‘Grup bant genişliği, bellek ve CPU zamanı, bunların hiçbiri iyi bir fikir değil.)

NOT: EDTableCopy ilk kez yüklenir, (Eğer hepsi iyi giderse) Verilerin chunks için birçok istek, görevThread'in kuyruğuna eklenecek, ancak yerel veri dosyaları oluşturulmayacaktır. Bu yüzden inşaatçı başarısız olacak ama görevThread çalışmaya devam edecek ve yerel dosyaları yaratacaktır. Eğer hepsi iyi giderse, görevThread bazı yerel veri dosyaları ve bir sonraki veri setini yeniden yüklemeye çalışır (-15 dakika) Başarılı olacak, ancak başlangıçta çok sınırlı miktarda veri ile.

NOT: Yerel veri setinin bazı verilere sahip olduktan sonra ve görünüşe göre ERDDAP Uzak veri kümesi geçici veya kalıcı olarak erişilebilir değilse, yerel veri kümesi hala çalışacak.

WARNING: Uzak veri kümesi büyük ve / veya uzaktan sunucu yavaş ise (Bu sorun değil mi?!) Tam bir yerel kopya yapmak için uzun zaman alacaktır. Bazı durumlarda, gerekli zaman kabul edilemez olacaktır. Örneğin, 1 TB'yi bir T1 hattı üzerinden iletme (0.15 GB /) En az 60 gün sürer, en uygun koşullar altında. Ayrıca, çok sayıda bant genişliği, bellek ve CPU zamanı uzaktan ve yerel bilgisayarlarda kullanır. Çözüm, uzaktan verilerin yöneticisine sert bir sürücü göndermektir, böylece s/he, veri kümesinin bir kopyasını yapabilir ve sert sürücüyü size geri gönderebilir. Bu verileri başlangıç noktası olarak kullanın ve EDDTableCopy ona veri ekleyecek. (Amazon'un EC2 Bulut Servisi problemin üstesinden gelmek için nasıl kullanılır, ancak onların sistemi birçok bant genişliğine sahiptir.)

WARNING: Belirli bir değer kombinasyonu uzaktan veri setinden kaybolursa, EDDTableCopy yerel kopyalanan dosyayı silmiyor. Eğer istersen, onu kendiniz silebilirsiniz.

MasaCopy<KaynakData>

The The The The The The The The datasets.xml Bu veri kümesi için isteğe bağlı bir etiket olabilir

    <checkSourceData>true</checkSourceData>  

Varsayılan değer doğrudur. Eğer / bunu yanlış ayarlarsanız, veri seti mevcut olup olmadığını görmek için kaynak veri kümesini hiç kontrol etmeyecektir.  

  1. Oluşturun<dataset> Giriş girişi (Yerli tip, EDDTableCopy) Uzak veri kaynağı için. Tüm istenen metadata dahil olmak üzere doğru bir şekilde çalışır.
  2. Eğer çok yavaşsa, bir EDDTableCopy veri setinde sarmak için XML kodu ekleyin.
    • Farklı bir kullanım datasetID (Belki de değiştirme yoluyla datasetID Eski yaşlıların datasetID biraz biraz biraz hafif) .
    • Kopyalayın<erişilebilir erişilebilir erişilebilir erişilebilir To>,<HerNMinutes> ve<Değişim> Uzak EDTable'ün XML'den EDDTableCopy'nin XML'ine kadar. (EDTableCopy için değerleri; iç veri setleri için değerleri ilgisiz hale gelir.)
    • Oluşturun<EkstraDestinationNames> etiketi (Yukarıda bakınız) .
    • <orderExtractBy> Uzak veri kümesindeki destinasyon değişken isimlerinin ayrı bir listesidir. Her bir veri kümesi uzaktan sunucudan indirildiği zaman, chunk bu değişkenler tarafından sıralanacaktır. (İlk değişkene göre, ilk değişken bağlıysa ikinci değişken tarafından ...) . Bazı durumlarda, ERDDAP™ Listedeki ilk değişken bir numeric değişken ise yerel veri dosyalarından daha hızlı veri elde edebilir. ( "time" Bir sayısal değişken olarak sayılıyor) . Ancak bu değişkenleri veri kümesi için uygun bir şekilde seçin.
  3. ERDDAP™ Verilerin yerel bir kopyasını yapacak ve koruyacaktır.  
  • WARNING: EDDTableCopy, her chunk için veri değerlerinin hiç değişmediğini varsayıyor. Eğer / ne zaman yaparlarsa, chunk dosyalarını manuel olarak silmek gerekir Büyük Parent Yönetmeny /copy / * datasetID * / hangi değişti ve Bayrak bayrağı Dataset yeniden yüklenecek, böylece silinmiş chunks değiştirilecektir. Eğer veri kümesine bir e-posta aboneliğiniz varsa, iki e-posta alacaksınız: veri setinin ilk reloads ilk başladığında ve verileri kopyalamaya başladığında ve veri setlerinin yüklerini tekrar kopyalamaya başlarsınız. (otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik) Ve yeni yerel veri dosyalarını tespit edin.  
  • Metadata – Herhangi bir değişikliği değiştirmeniz gerekiyorsa addAttributes Kaynak veri kümesi ile ilişkili değişkenlerin siparişini değiştirin:
    1. Değişimi Değiştirin addAttributes Kaynak veri kümesi için datasets.xml ihtiyaç olduğu gibi.
    2. Kopyalanan dosyalardan birini delete.
    3. Set a Set a Set Bayrak bayrağı Veri kümesini hemen yeniden yüklemek için. Bir bayrak kullanıyorsanız ve veri setine bir e-posta aboneliğiniz varsa, iki e-posta alacaksınız: veri setinin ilk reloads'ı ilk kez yeniden yüklemeleri ve verileri kopyalamaya başladığında, ve başka bir şey veri setleri tekrar kopyalamaya başlarsınız. (otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik otomatik) Ve yeni yerel veri dosyalarını tespit edin.
    4. silinmiş dosya yeni metadata ile yeniden oluşturulacaktır. Kaynak veri kümesi hiç mevcut değilse, EDDTableCopy veri seti yeniden üretilen dosyadan metadata alacak, çünkü en genç dosya.  
  • EDDGrid Kopya kopya EDDTableCopy'ye çok benzer, ancak ızgara veri setleriyle çalışır.

EDDTableCopy iskelet XML

  <dataset type="EDDTableCopy" datasetID\="..." active\="..." >
      <accessibleTo>...</accessibleTo> <!-- 0 or 1 -->
      <graphsAccessibleTo>auto|public</graphsAccessibleTo> <!-- 0 or 1 -->
      <accessibleViaFiles>true|false(default)</accessibleViaFiles>
        <!-- 0 or 1 -->
      <reloadEveryNMinutes>...</reloadEveryNMinutes> <!-- 0 or 1 -->
      <defaultDataQuery>...</defaultDataQuery> <!-- 0 or 1 -->
      <defaultGraphQuery>...</defaultGraphQuery> <!-- 0 or 1 -->
      <addVariablesWhere>...</addVariablesWhere> <!-- 0 or 1 -->
      <fgdcFile>...</fgdcFile> <!-- 0 or 1 -->
      <iso19115File>...</iso19115File> <!-- 0 or 1 -->
      <onChange>...</onChange> <!-- 0 or more -->
      <extractDestinationNames>...</extractDestinationNames> <!-- 1 -->
      <orderExtractBy>...</orderExtractBy> <!-- 0 or 1 -->
      <fileTableInMemory>...</fileTableInMemory> <!-- 0 or 1 (true or false
        (the default)) -->
      <checkSourceData>...</checkSourceData> <!-- 0 or 1 -->
      <dataset>...</dataset> <!-- 1 -->
  </dataset>


Detaylar

İşte ortak etiketlerin ve özelliklerin ayrıntılı açıklaması.

<AgularDegreeUnits >

  • [ ** <angularDegreeUnits> ** ] (#angular) nadiren bir OPence etiketi içinde kullanılır<erddapDatasets> etiket datasets.xml Bu, birimlerin dizeleri için bir komünalize listesi içeriyor ERDDAP™ Angular derece birimleri olarak tedavi etmelidir. Bir değişkenin bu birimlerden biri varsa, tabledap " orderByMean Filtre özel bir şekilde anlamını hesaplayacaktır, sonra anlamı -180'den 180'e bir değer olarak bildirir. See See See See ERDDAP “ EDStatic.java kaynak kod dosyası mevcut varsayılan liste için. Bu etiketin değerine herhangi bir değişiklik bir dahaki sefere etkilenecek ERDDAP™ Okunuşu oku datasets.xml Ayrıca bir veri kümesine yanıt da dahil Bayrak bayrağı .

<AgularDegree TrueUnits >

  • [ ** <angular Diploma TrueUnits> ** ] (#angular derece gerçekleri) nadiren bir OPence etiketi içinde kullanılır<erddapDatasets> etiket datasets.xml Bu, birimlerin dizeleri için bir komünalize listesi içeriyor ERDDAP™ Angular derece gerçek birimler olarak tedavi etmelidir. Bir değişkenin bu birimlerden biri varsa, tabledap " orderByMean Filtre özel bir şekilde anlamını hesaplayacaktır, sonra 0 ila 360 arasında bir değer olarak ifade eder. See See See See ERDDAP “ EDStatic.java kaynak dosyası mevcut varsayılan liste için. Bu etiketin değerine herhangi bir değişiklik bir dahaki sefere etkilenecek ERDDAP™ Okunuşu oku datasets.xml Ayrıca bir veri kümesine yanıt da dahil Bayrak bayrağı .  

<OrtakStandartNames >

  • [ ** <OrtakStandartNames> ** ] (#common standardnames) nadiren bir OPence etiketi içinde kullanılır<erddapDatasets> etiket datasets.xml Bir ortak listesi belirtmek için CF standart isimleri . E.g.,
    <commonStandardNames>air\\_pressure, ..., wind\\_to\\_direction</commonStandardNames>  

Bu liste DataProviderForm3.html'de kullanıcılar için bir kolaylık olarak kullanılır. Bu bilgiyi bu bilgiyi sağlamak istiyorsanız datasets.xml , mevcut varsayılan listeyi kopyalayarak başlayın<DEFAULT\_commonStandartNames> in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in ERDDAP " \[ tomcat \] /webapps/erddap/WEB-INF/classes/gov/noaa/pfel/erddap/util/messajlar.xml dosyası.  

<Önbellek Dakikalar>

  • [ ** <Önlemler> ** ] (#cache dakikalar) nadiren bir OPence etiketi içinde kullanılır<erddapDatasets> etiket datasets.xml Yaşını belirtmek için (dakikalar içinde) Önbellekteki hangi dosyalar silinmelidir (varsayılan=606060) . E.g.,
    <cacheMinutes>60</cacheMinutes>  

Genel olarak, sadece görüntü dosyaları (Çünkü aynı görüntüler genellikle defalarca talep edilir) ve .nc dosyaları dosyaları dosyaları dosyaları (Çünkü kullanıcıya göndermeden önce tamamen oluşturulmalıdır.) Önbellek. Verilen bir istek gibi görünse de her zaman aynı cevabı geri getirmelidir, bu doğru değil. Örneğin, bir tabledap İstek hangi zaman içerir> Bazı bazıları bazıları bazıları bazıları Zaman Zamanı Yeni veriler veri kümesi için geldiğinde değişecektir. Ve içeren bir griddap isteği \[ Son son son son \] Zaman boyutu, yeni veriler veri kümesi için geldiğinde değişecektir. Bu etiketin değerine herhangi bir değişiklik bir dahaki sefere etkilenecek ERDDAP™ Okunuşu oku datasets.xml Ayrıca bir veri kümesine yanıt da dahil Bayrak bayrağı . Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce ERDDAP™ v2.00, bu kurulumda belirtilmiştir.xml, ki bu hala izin verilir, ancak cesaretiz.

<ÖnbellekMinutes>

  • [ ** <Önbellekli Dakikalar> ** ] (#cacheclear dakikalar) nadiren bir OPence etiketi içinde kullanılır<erddapDatasets> etiket datasets.xml Önbellek dosyaları kontrol etmek ve eski olanları kaldırmak için frekansı belirtmek (dakikalar içinde) (varsayılan=15) . E.g.,
    <cacheClearMinutes>15</cacheClearMinutes>  

Sunucu bir istekle bitince, son önbellek açık ne kadar uzun zaman kontrol edecektir. Çok uzun zaman önce olsaydı, önbelleği temizlemek için bir görev sıralayacaktır. Bu etiketin değerine herhangi bir değişiklik bir dahaki sefere etkilenecek ERDDAP™ Okunuşu oku datasets.xml Ayrıca bir veri kümesine yanıt da dahil Bayrak bayrağı . Bu, kurulumda belirtilmiş olarak belirtilebilir.xml, ancak bu cesaret vericidir.  

<InterpolateRequestCSVExample>

  • [ ** <InterpolateRequestCSVExample> ** ] (#convertinterpolaterequestcsvör) Bir OPLOW etiketi içinde<erddapDatasets> etiket datasets.xml \[ Başlangıçla başlamak ERDDAP™ v2.10 \] Interpolate dönüştürücünün web sayfasında gösterilen bir örnek içerir. Varsayılan değer: jplMU RSS T41/analysed\_ sst /Bilinear/4

<InterpolateDatasetIDVariableList>

  • [ ** <ReturnInterpolateDatasetIDVariableList> ** ] (#convertinterpolatedatasetidvariablelist) Bir OPLOW etiketi içinde<erddapDatasets> etiket datasets.xml \[ Başlangıçla başlamak ERDDAP™ v2.10 \] Hangi bir CSV listesi içerir datasetID / değişken Interpolate dönüştürücünün web sayfası tarafından öneriler olarak kullanılacak olan isim örnekleri. Varsayılan değer: jplMU RSS T41/analysed\_ sst .

<TurnToPublic SourceUrl>

  • [ ** <TurnToPublic SourceUrl> ** ] (#converttopublicsourceurl) Bir OPLOW etiketi içinde<erddapDatasets> etiket datasets.xml Hangi bir "en" ve bir "to" özelliği içeren bir eşleştirme yerel haline nasıl dönüştürüleceğini belirtir sourceUrl (Genellikle bir IP numarası) Bir halkın içine sourceUrl (Bir alan adı) . "From" formuna sahip olmalıdır " \[ Bir şey bir şey bir şey bir şey bir şey bir şey \] // // // \[ Bir şey bir şey bir şey bir şey bir şey bir şey \] /". Bu etiketlerin 0 veya daha fazlası olabilir. Daha fazla bilgi için [< sourceUrl >) (#sourceurl) . Örneğin,
    <convertToPublicSourceUrl from="https://192.168.31.18/" to="https://oceanwatch.pfeg.noaa.gov/" />  

Bir eşleşen yerel sourceUrl (gibihttps://192.168.31.18/thredds/dodsC/satellite/BA/ssta/5day)
Bir halkın içine sourceUrl (https://oceanwatch.pfeg.noaa.gov/thredds/dodsC/satellite/BA/ssta/5day) . Bu etiketin değerine herhangi bir değişiklik bir dahaki sefere etkilenecek ERDDAP™ Okunuşu oku datasets.xml Ayrıca bir veri kümesine yanıt da dahil Bayrak bayrağı .

Ancak, abonelik sistemi ile ilgili güvenlik nedenleri ve nedenleri için, DON'T USE bu TAG!
Bunun yerine, her zaman halka açık alan adı kullanın< sourceUrl > etiket ve kullanın / v /hosts table sunucunuzda yerel domain isimleri bir DNS sunucusu kullanmadan IP numaralarına dönüştürmek. Bir alan adı doğru bir şekilde IP numarasına girerek dönüştürülürseniz test edebilirsiniz: ping Bazı.domain.name
 

veri:image/JP;base64,

  • Bir kullanıcı bir kullanıcı bir talep ettiğinde .htmlTable Cevap: ERDDAP™ Eğer bir String hücresindeki veriler veri içeriyorsa:image/JP;base64, bir baz64 kodlanmış .txt görüntüsü, ERDDAP™ Bir ikonu gösterecektir (Bu yüzden kullanıcı görüntüyü görebilirler, eğer üstünde eğiliyorlarsa) metin veya görüntüyü klip odasına kurtarmak için düğmeler. Bu özellik içinde eklendi ERDDAP™ v2.19 Marco Alba tarafından.

drawLandMask

  • ** drawLandMask ** Araziklerin ne zaman ve nasıl çizileceğini kontrol eden varsayılan ayarı belirtirken, ERDDAP™ Bir harita çizin. Üç farklı yerde belirtilebilir datasets.xml (En düşükten en yüksek önceliği listelendi) :
  1. If if if if if if if if if if if if if if if if if if if if if if if if if if if if if drawLandMask içinde belirtilmiştir.<erddapDatasets> (Herhangi bir özel veri kümesi ile bağlantılı değil) Sonra varsayılan değerini belirtir drawLandMask Tüm veri kümelerinde tüm değişkenler için. Örneğin,
    <drawLandMask>under</drawLandMask>  

Bu etiketin değerine herhangi bir değişiklik bir dahaki sefere etkilenecek ERDDAP Okunuşu oku datasets.xml . Bu etiket mevcut değilse, temel varsayılan varsayılan değer altındadır.   2. If if if if if if if if if if if if if if if if if if if if if if if if if if if if if drawLandMask Belirli bir veri kümesinin global bir özelliği olarak belirtilmiştir, sonra varsayılan değeri belirtir drawLandMask Bu veri kümesindeki tüm değişkenler için, daha düşük öncelik ayarını üstleniyor. Örneğin,

    <att name="drawLandMask">under</att>  

Bu etiketin değerine herhangi bir değişiklik bir dahaki sefere etkilenecek ERDDAP™ Bu veri kümesini yeniden yükler.   3. If if if if if if if if if if if if if if if if if if if if if if if if if if if if if drawLandMask Belirli bir veri kümesindeki değişkenin özelliği olarak belirtilmiştir, sonra varsayılan değeri belirtir drawLandMask Bu veri kümesindeki bu değişken için, daha düşük öncelik ayarını geçersiz kıl. Örneğin,

    <att name="drawLandMask">under</att>  

Bu etiketin değerine herhangi bir değişiklik bir dahaki sefere etkilenecek ERDDAP™ Bu veri kümesini yeniden yükler.

Bir kullanıcı varsayılanı genişletebilir (Nerede belirtilir) "Draw arazi maskesi" için bir değer seçerek, dataset's Make A Graph web page, or by including &.land= değer değeri değer değeri URL'de bir haritayı talep eden bir harita ERDDAP .

Tüm durumlarda, özellik için 4 olası değer vardır:

  • "under", haritadaki verileri çekmeden önce arazileri çekiyor. Kafeded veri setleri için, arazi sabit bir ışık gri renkte görünür. Tellar için datasets, "under" toprak ve okyanuslar üzerinde topografi verilerini gösterir.
  • "over" - Kafeded veri setleri için, "over" haritalarda verileri çizdikten sonra arazileri çekiyor, böylece arazi üzerinde herhangi bir veri maskeleyecek. Tellar için veri setleri için, "over" okyanusun banyolarını ve hem de veriler altında çekilen sabit bir ışık grisini gösteriyor.
  • "outline" sadece topraklar, politik sınırlar, göller ve nehirlerin taslağını çizer.
  • "off" hiçbir şey çizmiyor.

<e-postaDiagnosticsToErdData >

  • [ ** <e-postaDiagnosticsToErdData> ** ] (#emaildiagnosticstoerddata) nadiren bir OPence etiketi içinde kullanılır<erddapDatasets> etiket datasets.xml . Etiketin değeri gerçek olabilir (varsayılan varsayılan) veya yanlış. Eğer doğruysa, ERDDAP™ Kitabı Chris'a e-posta iletecektir. John in noaaa. gov (The the the the ERDDAP™ Geliştirme ekibi) . Bu güvenli ve güvenli olmalıdır çünkü gizli bilgi yok (E.g., istekUrl) E-postaya dahil edilir. Bu, NullPointerExceptions'a yol açan herhangi bir karanlık, tamamen beklenmedik böcekleri yakalamak mümkün olmalıdır. Aksi takdirde, kullanıcı istisnaları görür, ancak ERDDAP™ Geliştirme ekibi değil (Bu yüzden düzeltilmesi gereken bir sorun olduğunu bilmiyoruz) .  

<GrafikBackground Color >

  • [ ** <GrafikBackground Color> ** ] (#graph) nadiren bir OPence etiketi içinde kullanılır<erddapDatasets> etiket datasets.xml Grafiklerde varsayılan arka arka rengi belirtmek. Bu neredeyse tüm grafikleri etkiler. Etkilenen birkaç durum var. Renk, 0xAARRGGBB şeklinde 8 sayısal hexadecimal değeri olarak belirtilmiştir, AA, RR, GG ve BB sırasıyla opaklık, kırmızı, yeşil ve mavi bileşenlerdir. "0x" durum hassastır, ancak hexadecimal rakamları hassas değildir. Örneğin, tamamen bir opaque (ff) Yeşil-mavi renk kırmızı =22, yeşil =88, mavi=ee 0xff2288e olurdu. Opaque beyaz 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff. Varsayılan mavi ışık mavi (0xffccff) Bu, beyazdan farklı olmanın avantajına sahiptir ve bu, verileri çekmek için kullanılan birçok palette önemli bir renktir. Örneğin,
    <graphBackgroundColor>0xffffffff</graphBackgroundColor>  

Bu etiketin değerine herhangi bir değişiklik bir dahaki sefere etkilenecek ERDDAP™ Okunuşu oku datasets.xml Ayrıca bir veri kümesine yanıt da dahil Bayrak bayrağı .

<IAddressMaxRequests >

  • [ ** <ipAddressMaxRequests> ** ] (#ipaddressmaxrequests) Nadiren kullanılan bir opsiyonel etiket (İlk olarak desteklenen ERDDAP™ v2.12) içinde<erddapDatasets> etiket datasets.xml Bu, aşırı agresif meşru kullanıcıların ve kötü niyetli kullanıcıların diğer kullanıcılar için sistem performansını bozacak çok sayıda eşzamanlı istek yapmasını sınırlamak için bir sistemin parçasıdır. IAddress MaxRequests, herhangi bir belirli IP adresi tarafından kabul edilecek en fazla eşzamanlı istek sayısını belirtir. Ek talepler HTTP 429 hatası alacak: Çok fazla istek. Erddap/download / ve erddap / görüntülerdeki küçük, statik dosyalar bu sayıdan muaf değildir. varsayılan 15. Maksimum izin 1000, bu çılgın yüksek - bunu yapmaz! ERDDAP™ 6'dan daha az bir sayı kabul etmeyecek çünkü birçok meşru kullanıcı (Özellikle web tarayıcıları ve WMS müşteriler) Bir seferde 6 isteke kadar. The The The The The The The The ERDDAP™ Günlük Rapor ve her Binbaşı Dataset Reload ile ilgili benzer bilgiler artık "Requester's IP Address" başlığı altında bu IP adreslerinin uzun bir kısmını içerecektir. (Çok fazla İstek) ". Bu etiketin değerine herhangi bir değişiklik bir dahaki sefere etkilenecek ERDDAP™ Okunuşu oku datasets.xml Ayrıca bir veri kümesine yanıt da dahil Bayrak bayrağı .

"Major LoadDatasets Time Series" statüsü bölümü.html, bir kullanıcının ipAddressMaxRequests ayarını aşan ve böylece bir "Too Many Requests" hatasına sahip olan bir "çok fazla" sütunu içerir. Bu, aktif olarak agresif meşru kullanıcılar ve kötü niyetli kullanıcılar olduğunda kolayca görmenize olanak sağlar, böylece kolayca görebilirsiniz (Seçmeli olarak) Giriş.txt dosyasına bakın ve bu kullanıcıları kara listeye almak istiyorsanız karar verin.

Bunu daha yüksek bir sayıya ayarlamakla özellikle yanlış bir şey yoktur. Size kalmış. Ancak bunu yapmak, insanların projeler üzerinde çalışmak için çok sayıda iplik kullanan sistemleri kurmalarına izin verir ve sonra ne yaptıklarının onlara fayda sağlamadığına dair bir geri bildirim vermez.

<ipAddressMaxRequestsActive>

  • [ ** <ipAddressMaxRequestsActive> ** ] (#ipaddressmaxrequestsactive) Nadiren kullanılan bir opsiyonel etiket (İlk olarak desteklenen ERDDAP™ v2.12) içinde<erddapDatasets> etiket datasets.xml Bu, aşırı agresif meşru kullanıcıların ve kötü niyetli kullanıcıların diğer kullanıcılar için sistem performansını bozacak çok sayıda eşzamanlı istek yapmasını sınırlamak için bir sistemin parçasıdır. ipAddressMaxRequestsActive, herhangi bir belirli IP adresinden aktif olarak işlenecek olan en fazla eşzamanlı istek sayısını belirtir. Ek talepler önceki istekler işlendirene kadar bir kuyrukta oturacaktır. Erddap/download / ve erddap / görüntüleri / bu sayıdan ve ilgili throttling'den muaftır. Varsayılan ise 2. Maksimum izin 100, bu çılgın yüksek - bunu yapmaz! Bunu katı olmak için 1'e ayarlayabilirsiniz, özellikle aşırı agresif veya kötü niyetli kullanıcılarla ilgili sorunlarınız varsa. Kullanıcılar hala talep ettikleri tüm verileri hızla alır (ipAddressMaxRequests) Ancak kokpit sistemi kaynaklarını yapamıyorlar. Bunu daha büyük bir sayıya koymayı önermiyoruz çünkü aşırı agresif meşru kullanıcıların ve kötü niyetli kullanıcıların hükmedmesine izin veriyor ERDDAP 's işleme kapasitesi. Bu etiketin değerine herhangi bir değişiklik bir dahaki sefere etkilenecek ERDDAP™ Okunuşu oku datasets.xml Ayrıca bir veri kümesine yanıt da dahil Bayrak bayrağı .  

<ipAddressUnlimited>

  • [ ** <ipAddressUnlimited> ** ] (#ipaddressunlimited) Nadiren kullanılan bir opsiyonel etiket (İlk olarak desteklenen ERDDAP™ v2.12) içinde<erddapDatasets> etiket datasets.xml Bu, aşırı agresif meşru kullanıcıların ve kötü niyetli kullanıcıların diğer kullanıcılar için sistem performansını bozacak çok sayıda eşzamanlı istek yapmasını sınırlamak için bir sistemin parçasıdır. ipAddressUnlimited, sınırsız erişime izin vermek istediğiniz IP adreslerinin bir ortaklık listesidir ERDDAP . Girişinize bakın. Sunucunuzun IP adresleri için hangi format kullandığını görmek için txt file. Bazı sunucularda IP adresleri #.#.#.#.#. (# 0 ila 255 arasında tam bir tamsa nerede) Öte yandan, bu formatta olacak #: Cedar Gutenberg (22) Depresyon # . Bu listedeki istekler, ipAddressMaxRequests veya ipAddressMaxRequestsActive ayarlarına tabi değildir. Bu ikincil olabilir ERDDAP™ veya sisteminizdeki belirli kullanıcılar veya sunucular için. ERDDAP™ Her zaman ekliyor " (BilinmeyenIPAddress) ", hangisi, ERDDAP™ İstekleyicinin IP adresi belirlendiğinde, e.g., aynı sunucuda çalışan diğer süreçler için. Bu etiketin değerine herhangi bir değişiklik bir dahaki sefere etkilenecek ERDDAP™ Okunuşu oku datasets.xml Ayrıca bir veri kümesine yanıt da dahil Bayrak bayrağı .

Bir kullanıcının tüm isteklerinin hata mesajını alması için “Diğer isteklerinizi işlemek için bekliyor”, sonra kullanıcının IP adresini ipAddressUnlimited listesine ekleyerek sorunu çözebilirsiniz.

<YüklemeDatasetsMinMinutes>

  • [ ** <loadDatasetsMinMinutes> ** ] (#loaddatasetsmin dakikaları) nadiren bir OPence etiketi içinde kullanılır<erddapDatasets> etiket datasets.xml Minimum zamanı belirtmek için (dakikalar içinde) Büyük yük arasında Datasets (Ne zaman zaman ne zaman zaman zaman ne zaman zaman zaman ne zaman zaman zaman ne zaman zaman zaman ne zaman zaman zaman ne zaman ne zaman zaman zaman ne zaman ne zaman zaman zaman zaman ne zaman zaman zaman ne zaman zaman ne zaman ne zaman ne zaman? ERDDAP™ Yeniden İşlemeler datasets.xml Ayrıca, her veri kümesini kontrol etmek de dahil olmak üzere yeniden yüklenmelidir HerNMinutes ayarı, varsayılan=15) . E.g.,
    <loadDatasetsMinMinutes>15</loadDatasetsMinMinutes>  

Belirli bir yükDatasets çalıştırmak bu zamandan daha az sürerse, yükleyici sadece geri kalan zamana kadar bayrak rehberine ve / veya uykulara bakar. Varsayılan, neredeyse herkes için iyi olması gereken 15 dakikadır. Bunu daha küçük bir sayıya ayarlamak için tek dezavantajı, frekansı artıracağıdır ERDDAP™ Onları yüklenmesini engelleyen hataları olan veri kümeleri yeniden yükleniyor (e.g., uzaktan bir sunucu aşağı) . Bu tür bir veri setleri varsa ve sık sık test edilirlerse, veri kaynağı zararlı davranışı düşünebilir. Bu etiketin değerine herhangi bir değişiklik bir dahaki sefere etkilenecek ERDDAP™ Okunuşu oku datasets.xml Ayrıca bir veri kümesine yanıt da dahil Bayrak bayrağı . Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce ERDDAP™ v2.00, bu kurulumda belirtilmiştir.xml, ki bu hala izin verilir, ancak cesaretiz.  

<YüklemeDatasetsMaxMinutes>

  • [ ** <loadDatasetsMaxMinutes> ** ] (#loaddatasetsmax dakikalar) Bir OPLOW etiketi içinde<erddapDatasets> etiket datasets.xml Maksimum zamanı belirtmek için (dakikalar içinde) büyük bir yük Datasets çabalarının alınmasına izin verilir (Yüklemeden önce Datasets thread "stalated" olarak tedavi edilir ve kesintiye uğrar) (varsayılan=606060) . E.g.,
    <loadDatasetsMaxMinutes>60</loadDatasetsMaxMinutes>  

Genel olarak, bu, tüm veri kümelerinin hepsini yeniden yüklemenin makul bir şekilde en az iki katına çıkarılmalıdır. (Genel olarak) almalı (Bilgisayarlar ve ağlar bazen beklenenden daha yavaştır) Bu, her zaman DatasetsMinMinutes yüklemeden çok daha uzun olmalıdır. varsayılan 60 dakikadır. Bazı insanlar bunu daha uzun sürecek. Bu etiketin değerine herhangi bir değişiklik bir dahaki sefere etkilenecek ERDDAP™ Okunuşu oku datasets.xml Ayrıca bir veri kümesine yanıt da dahil Bayrak bayrağı . Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce ERDDAP™ v2.00, bu kurulumda belirtilmiştir.xml, ki bu hala izin verilir, ancak cesaretiz.  

<logLevel>

  • [ ** <logLevel> ** ] (#log seviyesi) Bir OPLOW etiketi içinde<erddapDatasets> etiket datasets.xml Giriş.txt dosyasına kaç teşhis mesajı gönderilir. "savaş" için ayarlanabilir. (En az mesajları) "info" (varsayılan varsayılan) Ya da "tüm" (En çok mesaj) . E.g.,
    <logLevel>info</logLevel>  

Bu etiketin değerine herhangi bir değişiklik bir dahaki sefere etkilenecek ERDDAP™ Okunuşu oku datasets.xml Ayrıca bir veri kümesine yanıt da dahil Bayrak bayrağı . Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce ERDDAP™ v2.00, bu kurulumda belirtilmiştir.xml, ki bu hala izin verilir, ancak cesaretiz.  

<kısmiRequestMaxBytes> ve<kısmiRequestMaxCells>

  • [ ** <kısmiRequestMaxBytes> ] (#partialrequestmaxbays-and-partialrequestmaxcells) ve <kısmiRequestMaxCells> ** ] (#partialrequestmaxbays-and-partialrequestmaxcells) Nadiren OPLOW etiketleri içinde kullanılır<erddapDatasets> etiket datasets.xml . Mümkün olduğunda mümkün olduğunda (Ve her zaman mümkün değil) , ERDDAP™ hafızayı korumak için büyük veri talepleri kırın.

32 bit Java Daha basit bir anlamda, en yüksek sayıda eşzamanlı Büyük büyük büyük büyük büyük büyük büyük büyük İstekler, mevcut hafızanın yaklaşık 3'ü (-Xmx değeri Tomcat'a geçti) chunk büyüklüğü tarafından bölünmüş (e.g., 1200 MB / 100 MB) . Diğer şeyler hafıza gerektirir, bu yüzden gerçek istek sayısı daha az olacaktır. Pratikte, chunking her zaman mümkün değildir. Bu yüzden çok büyük veya birkaç çok büyük eşzamanlı olmayan istekler 32 bit üzerinde sorunlara neden olabilir Java .

64 bit Java ,Xmx değeri çok daha büyük olabilir. Bu yüzden hafıza bir kısıtlama olması çok daha az olasıdır.

Bu etiketleri tanımlayarak varsayılan chunk boyutunu genişletebilirsiniz datasets.xml (Burada gösterilen farklı değerler ile) : Ağlar için:<kısmiRequestMaxBytes>100000000</partialRequestMaxBytes> Tablolar için:<kısmiRequestMaxCells>1000000</partialRequestMaxCells>

kısmiRequestMaxBytes, kısmi bir ağ veri talebi için tercih edilen maksimum sayıda transistördür (Toplam isteğin bir kısmı) . varsayılan=100000000 (10.) . Büyük boyutlarda mutlaka daha iyi değil (500 MB'den fazla sürmeyin çünkü bu THREDDS'nin varsayılan sınırı DAP Yanıtlar) . Ancak daha büyük boyutlar tonların daha az erişim gerektirir (Düşünmek ERD 'Her zaman ayrı bir dosyada uydu verileri - her kısmi istekte her dosyadan daha fazla veri almak daha iyidir) .

kısmiRequestMaxCells, tercih edilen maksimum hücre sayısıdır (nRows \* nColumns in the data table) kısmi bir TABLE veri isteği için (Toplam isteğin bir kısmı) . Varsayılan = 100.000. Büyük boyutlarda mutlaka daha iyi değildir. Daha uzun bir süre kaynaktan ilk veri kümesi için beklerler.

Bu etiketin değerine herhangi bir değişiklik bir dahaki sefere etkilenecek ERDDAP™ Okunuşu oku datasets.xml Ayrıca bir veri kümesine yanıt da dahil Bayrak bayrağı . Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce ERDDAP™ v2.00, bunlar kurulumda belirtilmiştir.xml, ki bu hala izin verilir, ancak cesaretiniz.  

<Blacklist>

  • [ ** <Blacklist> ** ] (#request Blacklist) OPENT etiketi içinde<erddapDatasets> etiket datasets.xml Bu, siyah listelenecek sayısal IP adreslerinin bir komünalize listesi içeriyor. Bu etiketin değerine herhangi bir değişiklik bir dahaki sefere etkilenecek ERDDAP™ Okunuşu oku datasets.xml Ayrıca bir veri kümesine yanıt da dahil Bayrak bayrağı .
    • Bu, bir şeyden uzaklaştırmak için kullanılabilir Hizmet Saldırısı , bir overly zealous web robot , veya başka bir tür rahatsız edici kullanıcı.
    • Sorunlu Kullanıcı - If if if if if if if if if if if if if if if if if if if if if if if if if if if if if ERDDAP™ Bir taramaya veya donmalara / duraklara yavaşlar, neden genellikle bir kez birden fazla senaryo çalışan ve / veya çok sayıda çok büyük, son derece verimli veya geçersiz istekler yapan bir sorun kullanıcısıdır. Bak, Giriş.txt Eğer bu durum ve sorunsal kullanıcının sayısal IP adresini bulmak. Eğer bu sorunsa, muhtemelen o kullanıcıyı kara listeleyebilirsiniz.

When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When ERDDAP™ Siyah listelenmiş bir IP adresinden bir istek alır, HTTP Hata 403'e geri dönecektir: Yasak. eşlik eden metin hatası mesajı, kullanıcıyı e-postaya teşvik eder, ERDDAP yönetici, sorunları çözmek için. Hata mesajını okumak için zaman alıyorlarsa (Birçok görünüşe göre,) Ve sizinle iletişime geçin, bir seferde sadece bir senaryoyu çalıştırmak için onlarla çalışabilirsiniz, daha verimli istekler yapın, senaryolarında sorunları düzeltin (Örneğin, zamanlamadan önce cevap veremeyen uzaktan veri setinden veri talep etmek) Ya da başka her şey sorun kaynağıydı.

Kullanıcılar genellikle isteklerinin rahatsız edici olduğundan habersizdir. Sık sık böceklerden habersizler, brüt verimsizlikler veya senaryolarıyla diğer sorunlar. Sık sık bunu düşünüyorlar çünkü senin ERDDAP™ Ücretsiz veri sunar, istedikleri kadar veri isteyebilirler, e.g., birden fazla senaryo çalıştırarak veya birden fazla thread kullanarak.

  • Onlara her şeyi açıklayabilirsiniz ERDDAP™ Şimdi ne kadar büyük ve güçlü olursa olsun, sonlu kaynaklar var (CPU zamanı, zor sürücü I/O, ağ bant genişliği, vs.) Ve bir kullanıcı diğer kullanıcıların veya aşırıburdenlerin dışarı çıkmanın bir şekilde veri talep etmesi adil değil ERDDAP .
  • Bir kullanıcı 2 eşzamanlı istek nasıl yapılacağını biliyorsa, genellikle 5, 10 veya 20 eş zamanlı istek yapmamanın bir nedeni görmüyorlar, çünkü ek talepler onlara hiçbir şey mal etmez. Bu asimetrik savaş gibi: İşte saldırgan silahlar muazzam bir avantaja sahiptir (sıfır maliyet) Savunma silahları üzerinde (Gerçek maliyetlerle sonlu bir yükleme) .
  • Onlara daha fazla ve daha eşzamanlı istekler yapmak için geri dönüşlerin azaldığını unutmayın; ek talepler sadece diğer kullanıcının isteklerini daha da engeller; onlar için büyük bir gelişme sağlamazlar.
  • Onları diğer kullanıcılar olduğunu tekrarladı (Hem sıradan kullanıcılar hem de diğer kullanıcılar senaryoları çalıştırıyor) Bu yüzden hepsini kokmak için onları adil değil ERDDAP “Kaynaklar.
  • Teknoloji devlerinin web servislerinden sonsuz kaynakları beklemesi gerektiğini unutmayın. kurmak için yollar olsa da gridler/kırıcılar/federasyonlar ERDDAP s Bir yapmak için ERDDAP™ Daha fazla kaynakla sistem, çoğu ERDDAP™ Yöneticiler bu tür sistemleri kurmak için para veya insan gücüne sahip değiller ve bu tür bir sistem hala sonlu olacaktır. At At At At At At At At At At At At At At At At At At At At At At ERD Örneğin, bir kişi var (Benim) Yazı yazı yazmak ERDDAP™ İkisini yönetmek ERDDAP s (Patronumdan yardımla) Ancak ve çeşitli veri kaynaklarını yönetmek, her şey yıllık donanım bütçesi ile 0,0 $ ile (Donanım için ödeme yapmak için zaman hibelerine güveniyoruz) . Bu Google, Facebook, Amazon, vb. mühendislerden 100 dolar ve her zaman daha büyük sistemlere geri dönmek için milyonlarca dolar gelir. Ve sadece hareket edemiyoruz ERDDAP™ Örneğin, Amazon AWS, çünkü veri depolama maliyetleri büyük ve veri egre suçlamaları büyük ve değişkendir, dış hizmetler için bütçemiz sabit bir $dır.
  • Kullanıcılara isteğim: Zamana duyarlı olmayan talepler için (Hangisi en yaygın durumda) Ancak onların sistemi sadece bir seferde bir istek yapmalıdır. İstekler zaman hassassa (e.g., birden çok .JPs bir web sayfasında, birden fazla karo WMS müşteri, vs.) Daha sonra belki de 4 eşzamanlı istek en max olmalıdır (Ve sadece çok kısa bir süre için) .
  • Durumu kullanıcıya açıklarsanız, çoğu kullanıcı gerekli değişiklikleri anlamaya ve istekli olacaktır, böylece IP adresinizi kara listeden kaldırabilirsiniz.  
  • Siyah Listeye bir kullanıcı için, numeric IP adresini IP adreslerinin komünize listesine ekleyin<İstek Blacklist> in your your datasets.xml Dosya. Problemli kullanıcının IP adresini bulmak için, göz atın ERDDAP™ Büyük Parent Yönetmeny /loglar /log.txt file ( Büyük Parent Yönetmeny belirtilmiştir. Kurulum.xml ) Bu durum olup kullanıcının IP adresini bulmak için görmek. Her istek için IP adresi "{{{{#" ile başlayan hatlarda listelenir ve 123.45.6 . "ERROR" aramak, geçersiz talepler gibi sorunları bulmanıza yardımcı olacaktır.
  • Ayrıca son sayıyı bir IP adresi ile değiştirebilirsiniz\*(Örneğin, 202.109.200.\*Bir dizi IP adresini engellemek için 0-255.
  • Ayrıca son 2 sayıyı bir IP adresi ile değiştirebilirsiniz\.\ (Örneğin, 121.204.\.\) Daha geniş bir IP adreslerini engellemek için 0-255.0-255.
  • Örneğin,
    <requestBlacklist>98.76.54.321, 202.109.200.\\*, 121.204.\\*.\\*</requestBlacklist>
  • Yeniden başlatmanız gerekmez ERDDAP™ Değişiklikler için<istek Blacklist> etki almak için. Değişiklikler bir sonraki sefer tespit edilecek ERDDAP™ Herhangi bir veri kümesinin yeniden yüklenmesi gerekiyorsa kontroller. Ya da, süreci bir ziyaret ederek hızlandırabilirsiniz setDataset Bayrak URL Herhangi bir veri kümesi için.
  • Senin Senin Senin ERDDAP™ Günlük rapor, en aktif izin verilen ve bloke edilen isteklerden oluşan bir liste içerir.
  • Domain/institution'ın numeric IP adresi ile ilgili olduğunu anlamak istiyorsanız, ücretsiz, tersine DNS web hizmeti gibi kullanabilirsiniz https://network-tools.com/ .
  • Örneğin, kötü niyetli kullanıcılar için bazı kullanıcıları daha yüksek bir seviyede engellemek için zaman olabilir. Örneğin, sunucunuzdaki her şeye erişimlerini engelleyebilirsiniz, sadece değil ERDDAP . Linux'ta, böyle bir yöntem kullanmak içindir iptables . Örneğin, 198.51.100.0'dan gelen her şeyi komutla engelleyecek bir kural ekleyebilirsiniz. INPUT - 198.51.100.0 DROP

<YavaşDownTroubleMillis>

  • [ ** <YavaşDownTroubleMillis> ** ] (#slowdowntroublemillis) nadiren bir OPence etiketi içinde kullanılır<erddapDatasets> etiket datasets.xml Bu, milisaniyelerin sayısını gösteren tam bir tamsayı içerir (varsayılan=10001000) Tüm başarısız isteklere cevap verirken, e.g., bilinmeyen veri setine, kara listede çok büyük, kullanıcı talep etmek. E.g.,
    <slowDownTroubleMillis>2000</slowDownTroubleMillis>

Bir senaryo hemen başka bir şeyden sonra bir istek yapıyorsa, o zaman başka bir şeyden sonra bir kötü istek yapabilir. Bu ayar ile başarısız bir senaryoyu yavaşlatabilirsiniz, böylece ERDDAP™ Kötü isteklerle dolu değil. Bir insan kötü bir istek yaparsa, bu gecikmeyi bile fark etmeyecekler. Tavsiyeler:

  • Sorun, Hizmet Denial Of Service (DDOS) 100+ saldırgandan gelen saldırı, bunu daha küçük bir sayıya ayarlar (100?) . Onları çok uzun süre yavaşlatmak çok sayıda aktif konuya yol açıyor.
  • Sorun 1-10 kaynaktansa, bunu 1000 ms'e ayarlayın (varsayılan varsayılan) Ama daha büyük bir sayı (10000 gibi) Ayrıca makul. Bu onları yavaşlatır, böylece daha az ağ kaynakları tüketirler. Ayrıca, 1000 ms veya bu yüzden kötü bir istek yapan insan kullanıcıları rahatsız etmeyecek.

Bu etiketin değerine herhangi bir değişiklik bir dahaki sefere etkilenecek ERDDAP™ Okunuşu oku datasets.xml Ayrıca bir veri kümesine yanıt da dahil Bayrak bayrağı .  

<abonelikEmailBlacklist>

  • [ ** <abonelik abonelik abonelik abonelik abonelik abonelik abonelik E-postaBlacklist> ** ] (#emailemail Blacklist) nadiren bir OPence etiketi içinde kullanılır<erddapDatasets> etiket datasets.xml Bu, hemen hemen siyah listelenmiş bir e-posta adres listesini içerir. abonelik sistemi abonelik sistemi Örneğin,
    <subscriptionEmailBlacklist>bob@badguy.com, john@badguy.com</subscriptionEmailBlacklist>  

Bu durum hassas bir sistemdir. Bir e-posta adresi bu listeye eklenirse, e-posta adresi abonelikleri varsa, abonelikler iptal edilecektir. Listede bir e-posta adresi abone olmaya çalışırsa, istek reddedilecektir. Bu etiketin değerine herhangi bir değişiklik bir dahaki sefere etkilenecek ERDDAP™ Okunuşu oku datasets.xml Ayrıca bir veri kümesine yanıt da dahil Bayrak bayrağı .  

Standart Text

  • Standart Text – Birkaç Oktik etiketler var (Çoğu nadiren kullanılır) içinde<erddapDatasets> etiket datasets.xml Çeşitli yerlerde görünen metinleri belirtmek için ERDDAP . Varsayılan metni değiştirmek istiyorsanız, mevcut değeri aynı adın etiketinden kopyalayın tomcat /webapps/erddap/WEB-INF/classes/gov/noaa/pfel/erddap/util.messages.xml içine datasets.xml Sonra içeriği değiştirir. Bunlara sahip olmanın avantajı datasets.xml Herhangi bir zamanda yeni değerleri belirtebileceğiniz, hatta ne zaman ERDDAP™ Koşuyor. Bu etiketlerin değerlerine herhangi bir değişiklik bir dahaki sefere etkilenecek ERDDAP™ Okunuşu oku datasets.xml Ayrıca bir veri kümesine yanıt da dahil Bayrak bayrağı . Etiket isimleri amaçlarını tanımlar, ancak daha derin bir anlayış için varsayılan içeriği bakınız.xml.

  • <standardLicense>

  • <standardContact>

  • <standartDataLicens>

  • <standardDisclaimerOfEndorsement>

  • <standardDisclaimerOfexpoLinks>

  • <standardGeneralDisclaimer>

  • <standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart PrivacyPolicy>

  • <HeadHt ml5>

  • <BaşlangıçBodyHtml5>, her web sayfasının üst kısmındaki görünümünü özelleştirmek için iyi bir etikettir. ERDDAP . Muhtemelen, bunu kolayca geçici bir mesaj eklemek için kullanabilirsiniz ERDDAP™ Ev sayfası (E.g., "Yeni JPL MUR SST v4.1 veri setini kontrol et ..." veya "Bu ERDDAP™ 2019-05-08T17:00 PDT'yi%8T20:00 PDT aracılığıyla korumak için çevrimdışı olacaktır.") . Bu etiketi bu etiketi koymak için bir quirk datasets.xml İşte: Yeniden başlatdığınızda ERDDAP , ilk isteği ERDDAP™ Varsayılan başlangıç geri dönecek BodyHt ml5 HTML, ancak her bir sonraki istek, başlangıçBodyHtml5 HTML'nin belirtilen başlangıçBodyHtml5 HTML'yi kullanacak. datasets.xml .

  • <TheShortDescription Html>, açıklamanızı özelleştirmek için iyi bir etiketdir ERDDAP . Bunu evde geçici bir mesaj eklemek için kolayca değiştirebilirsiniz (E.g., "Bu ERDDAP™ 2019-05-08T17:00 PDT'yi%8T20:00 PDT aracılığıyla korumak için çevrimdışı olacaktır.") .

  • <endBodyHtml5>

Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce ERDDAP™ v2.00, bunlar kurulumda belirtilmiştir.xml, ki bu hala izin verilir, ancak cesaretiniz.  

<olağandışı olağandışı olağandışı olağandışı alışılmadık olağandışı alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık olağandışı olağandışı olağandışı olağandışı olağandışı olağandışı olağandışı olağandışı olağandışı olağandışı olağandışı olağandışı olağandışı olağandışı olağandışı olağandışı alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık alışılmadık Aktivite vegt;

  • [ ** <olağandışıActivity> ** ] (#unusualactivity) nadiren bir OPence etiketi içinde kullanılır<erddapDatasets> etiket datasets.xml Normal olarak kabul edilen iki yükDatasets arasında en fazla talep sayısını belirtmek için (varsayılan=10000) . Bu sayı aşılırsa, e-postaya herToTo gönderilir (Kurulumda belirtildiği gibi.xml) . E.g.,
    <unusualActivity>10000</unusualActivity>  

Bu etiketin değerine herhangi bir değişiklik bir dahaki sefere etkilenecek ERDDAP™ Okunuşu oku datasets.xml Ayrıca bir veri kümesine yanıt da dahil Bayrak bayrağı . Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce Önce ERDDAP™ v2.00, bu kurulumda belirtilmiştir.xml, ki bu hala izin verilir, ancak cesaretiz.  

<GüncellemeMax Events>

  • [ ** <updateMax Events> ** ] (#updatemaxevents) nadiren bir OPence etiketi içinde kullanılır<erddapDatasets> etiket datasets.xml En fazla dosya değişikliği olayları belirtmek için (varsayılan=10) Bu, yemin ederim ki<HerNMillis> (#update allnmillis) Bunun yerine veri kümesini yeniden yüklemeden önce sistem. Örneğin,
    <updateMaxEvents>10</updateMaxEvents>  

HerNMillis sistemi bir kullanıcının isteği işlenmeden önce çok hızlı bir şekilde çalıştırmak amaçlanmıştır. Bir sürü dosya değişikliği olayı varsa, muhtemelen hızlı bir şekilde koşamaz, bu yüzden veri setinin yeniden yüklenmesi çağrısında bulunur. Eğer senin ERDDAP™ Birçok veri dosyasına değişiklikler olduğunda bile güncel tutulması gereken veri setleriyle anlaşmalar, bunu daha büyük sayıda veri dosyasına ayarlayabilirsiniz. (100?) .

<kullanıcı>

  • [ ** <kullanıcı> ** ] (#user) Bir OPLOW etiketi içinde<erddapDatasets> etiket datasets.xml Bu, bir kullanıcının kullanıcı adı, şifreyi tanımlar (Eğer doğrulama=custom) Ve roller (Bir komün listesi) . Kullanıcı ve şifre kullanımı, değere göre biraz değişir [<> (/docs /server-admin/additional-information #authentication) Senin içinde ERDDAP 's installation.xml file.
    • Bu, bunun bir parçasıdır ERDDAP " güvenlik sistemi Bazı kullanıcılara erişim kısıtlamak için.
    • Ayrı ayrı bir şey yapın<Her kullanıcı için kullanıcı etiketi. Seçmeli olarak, kimlik doğrulama=oauth2, iki tane ayarlayabilirsiniz<kullanıcı> Her kullanıcı için etiketler: kullanıcı girişleri sırasında biri Google, kullanıcı Orcid aracılığıyla giriş yaparken, muhtemelen aynı rollerle aynı.
    • Eğer yoksa<Bir müşteri için kullanıcı etiketi, s/he sadece halka açık veri setlerine erişebilecek, i.e., datasets which don't have an [[değiştir | kaynağı değiştir]<erişilebilirTo> (#accessibleto) etiket.
    • Kullanıcı adı Kimlik doğrulama=custom için, kullanıcı genellikle mektupların, basamakların ve dönemlerin bir kombinasyonudur. Kimlik doğrulama=email, kullanıcı e-posta adresidir. Herhangi bir e-posta adresi olabilir. Kimlik doğrulama=google için, kullanıcı tam Google e-posta adresidir. Bu, Google tarafından yönetilen hesapları içeriyor @noaa.gov hesaplar. Kimlik doğrulama=orcid için, kullanıcı adı Kullanıcının Orcid hesabı numarası (ile) . Kimlik doğrulama=oauth2 için, kullanıcı tam Google e-posta adresi veya kullanıcının Orcid hesabı numarası (ile) .
    • şifre şifre şifre Kimlik doğrulama=email, google, orcid veya oauth2 için, bir şifre özelliği belirtmeyin. Kimlik doğrulama=custom için, her kullanıcı için bir şifre özelliği belirtmeniz gerekir.
      • Kullanıcıların girdikleri şifreler hassas durumda ve 8 veya daha fazla karaktere sahip olmalıdır, böylece çatlakları kırmak daha zordur. Günümüzde, 8 karakter bile AWS'de bir bilgisayar kümesi kullanarak hızla ve ucuz bir şekilde kırılabilir. ERDDAP™ Sadece kullanıcının giriş yapmaya çalıştığı 8character minimumu uygular (o zaman değil)<kullanıcı> etiketi işlenir, çünkü bu kod sadece şifrenin acısını görür, düz metin şifresi değil).
      • Kurulum.xml's<passwordEncoding> Şifrelerin nasıl depolandığını belirler<kullanıcı> etiketler datasets.xml . Artan güvenlik için seçenekler şunlardır:
        • MD5 (Bunu kullanmayın!) - Şifre özelliği için, MD5'in kullanıcının şifresini sindirmesini belirtin.
        • UEPMD5 (Bunu kullanmayın!) - Şifre özelliği için, MD5'in sindirimi belirt Kullanıcı adı : ERDDAP : şifre şifre şifre . Kullanıcı ve " ERDDAP " için kullanılır tuz tuz hash değeri, onu decode için daha zor hale getirmek.
        • SHA256 (tavsiye edilmez) - Şifre özelliği için, SHA-256'nin kullanıcının şifresini sindirmesini belirtin.
        • UEPSHA256 (Varsayılan olarak, önerilen şifre kodlaması. Ama çok daha iyi: google veyachid veya oauth2 kimlik doğrulama seçenekleri kullanın.) - Şifre özelliği için, SHA-256'nin sindirilmesini belirtin Kullanıcı adı : ERDDAP : şifre şifre şifre . Kullanıcı ve " ERDDAP “ hash değerini tuzlamak için kullanılır, kodlanması daha zor hale getirir.
      • Windows'da MD5 şifre sindirim değerlerini MD5 programı indirerek üretebilirsiniz. (gibi MD5 ) ve kullanarak (Örneğin) : md5 -djsmith: ERDDAP : gerçekPassword
      • Linux/Unix'de, yerleşik md5sum programını kullanarak MD5 sindirim değerlerini üretebilirsiniz. (Örneğin) : yankı -n "jsmith: ERDDAP : gerçekPassword " " "" | md5sum
      • Stored düz metin şifreleri hassas durumda. MD5 ve UEPMD5 şifrelerinin depolanmış biçimleri hassas değildir.
      • Örneğin (UEPMD5) Eğer kullanıcı adı="jsmith" ve şifre="myPassword",<kullanıcı> etiketi:
            <user username="jsmith"  
password="57AB7ACCEB545E0BEB46C4C75CEC3C30"
roles="JASmith, JASmithGroup" />

Nerede depolanan şifre oluşturuldu md5 -djsmith: ERDDAP :myPassword

  • roller, kullanıcının yetkili olduğu rollerin bir komünalize listesidir. Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any Any<dataset>[değiştir | kaynağı değiştir]<erişilebilirTo> (#accessibleto) Bu veri kümesine erişmek için izin verilen roller hangi listeler. Verilen bir kullanıcı ve belirli bir veri kümesi için, kullanıcının rollerinden biri veri kümesinin listedeki rollerden birini eşleştirir<erişilebilirTo> roller, sonra kullanıcı bu veri kümesine erişmek için yetkilidir.

Giriş yapan her kullanıcı otomatik olarak rolü verir \[ Herhangi bir kişi In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In \] Peki, eğer bir tane varsa<kullanıcı için etiket datasets.xml veya değil. Eğer belirli bir veri kümesi varsa

            <accessibleTo>\\[anyoneLoggedIn\\]</accessibleTo>  

O zaman giriş yapan herhangi bir kullanıcı bu veri kümesine erişmek için yetkili olacaktır, hatta orada olmasa bile<kullanıcı için etiket datasets.xml .

  • Bu etiketin değerine herhangi bir değişiklik bir dahaki sefere etkilenecek ERDDAP™ Okunuşu oku datasets.xml Ayrıca bir veri kümesine yanıt da dahil Bayrak bayrağı .  

<YolRegex>

  • [ ** <YolRegex> ** ] (#pathregex) Hangi yolları sınırlayan düzenli bir ifade belirtmenize izin verirsiniz (Hangi subdirectories) Veri kümesine dahil edilecektir. Varsayılan olan .\*, tüm yolları oynayan. Bu nadiren kullanılır, nadiren gerekli, OPence etiketi EDDGrid Files datasets, EDDTable FromFiles datasets ve birkaç diğer dataset türü. Ancak, buna ihtiyacınız olduğunda, gerçekten ihtiyacınız var.

Bu çalışmayı yapmak için, normal ifadelerle gerçekten iyi olmanız gerekir. Buna bakın Regex Belgeleri ve regex öğretici . Özellikle, yakalama grupları hakkında bilmeniz gerekir (Ebeveynlerin içinde bir şey) Ve "veya" sembolü " | ". Birlikte, bunlar herhangi bir seçeneği belirtelim, e.g., (seçenek1 | seçenek2 | 3) . Ayrıca, seçeneklerin herhangi biri hiçbir şey olamaz, e.g., ( | seçenek2 | 3) . Ayrıca, yakalama gruplarının ihmal edilebilir olabileceğini bilmeniz gerekir, i.e., bir yakalama grubundaki herhangi bir seçenek başka bir yakalama grubu içerebilir, e.g., ( | seçenek2 ( | seçenek2 b | 2ccc) | 3) Hangi seçenek2 hiçbir şey tarafından takip edilebilir veya seçenek2b veya seçenek2c. Yol içinRegexes, her seçenek bir / e.g., bar/ .

Yol kapsamının zor kısmı: Ne zaman ERDDAP™ Recursally dizin ağacına iniyor, yolRegex, yönetmenlere veri ile olan yolda karşılaştığı tüm yolları kabul etmelidir. Regex’in nested yakalama grupları ile birlikte uğraşmak için iyi bir yoldur.

Bir Örnek: Aşağıdaki dizin yapısına sahip olduğumuzu varsayalım:

/foo/bar/D0001/a/\\*.nc  
/foo/bar/D0001/b/\\*.nc
/foo/bar/D0002/a/\\*.nc
/foo/bar/D0002/b/\\*.nc
...
/foo/bar/E0001/a/\\*.nc
...

Ve belirtilen dosya yöneticisi /foo/bar / ve biz sadece istiyoruz .nc D'deki dosyalar \[ 0-9 \] {4}/a/ subdirectories. Çözüm, /foo/bar/bar/bar / ( | D D D \[ 0-9 \] {4} / ( | a/) )
Bu şöyle diyor: Yol /foo/bar / Bu, hiçbir şey veya DD tarafından takip edilebilir \[ 0-9 \] {4} / Bu, hiçbir şey veya bir /

Evet, yolRegex’in formülü formüle etmek inanılmaz derecede zor olabilir. Sıkıntı alırsanız, bir bilgisayar programcısı isteyin (Gerçek dünyadaki en yakın şey, bir büyücünün canlanmalarına mı?) veya Chris'e bir e-posta gönder. John at noaa.gov.

<dataset>

  • [ ** <dataset> ** ] (#dataset) OPENT (Ama her zaman kullanılır) Bir an içinde etiket<erddapDatasets> etiket datasets.xml Bu (Eğer tüm bilgileri içerseniz)<dataset> ve</dataset>) tamamen bir veri kümesi açıklar. Örneğin,
    <dataset type="EDDGridFromDap" datasetID="erdPHssta8day" active="true"> ... </dataset>  

Mayıs ayında bir dizi veri kümesi etiketi olabilir datasets.xml Dosya. Üç özellik Mayıs ayında görünebilir<dataset> etiketi:  

  • type=" type=" Birbiri Tipi Tipi Tipi Tipi " " "" Bir REQUIRED özelliği içinde<dataset> etiketi datasets.xml Hangi veri kümesi tipini tanımlar (Örneğin, bunun bir an olup olmadığını EDDGrid /gridded veya EDDTable/tabular dataset) Ve verilerin kaynağı ve (Örneğin, bir veritabanı, dosyaları veya uzaktan OPeNDAP server sunucusu) . Görün bakalım, Dataset Tip Listesi .  

Dataset Id

  • ** datasetID =" aDatasetID " " ""** Bir REQUIRED özelliği içinde<Dataset> etiketi kısa (genellikle<15 karakter), eşsiz, bir veri kümesine isim tanımlayın.
  • The The The The The The The The datasetID s MUST bir mektup (A-Z, a-z) Herhangi bir sayıda A-Z, a-z, 0-9 ve \_ (ama en iyisi eğer<32 karakter toplam).
  • Dataset IDler hassas durumda, ancak DON'T iki yaratıyor datasetID Sadece üst / alt harflerde farklı. Windows bilgisayarlarda sorunlara neden olacak (Sizin ve/veya bir kullanıcının bilgisayar) .
  • En iyi uygulamalar: Kullanımı tavsiye ederiz camel Vaka Örneği .
  • En iyi uygulamalar: İlk bölümün bir acronym veya kaynak kurumun adının kısaltması ve ikinci bölümün veri kümesinin adının acronym veya kısaltması olmasını öneririz. Mümkün olduğunda, kaynağın adını veri kümesi için yansıtan bir isim yaratırız. Örneğin, kullandık datasetID ="erdPH sst a8day" for a dataset from the NOAA NMFS SWFSC Çevre Araştırma Bölümü ( ERD ) Hangi kaynak tarafından uydu/PH / sst Bir gün.
  • Bir veri kümesinin adını değiştirirseniz, eski veri kümesi (Eski adı ile) Hala yaşayacak ERDDAP . Bu bir "orphan" veri setidir, çünkü içinde bunun özellikleri datasets.xml Şimdi gitti. Bu ele alınmalıdır:
    1. For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For ERDDAP™ v2.19 ve daha sonra, hiçbir şey yapmanız gerekmez. ERDDAP™ Bu yetim veri kümelerini otomatik olarak kaldıracaktır.
    2. For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For ERDDAP™ v2.18 ve daha önce, yetim veri setlerini kaldırmak için bir şey yapmanız gerekir: Aktif bir="false yap" veri kümesi, e.g.,
                <dataset type="EDDTableFromNcFiles" datasetID="*theOldName*" active="false" />  

Sonraki büyük yükten sonra Datasets, Eski veri setinden sonra bu etiketi kaldırabilirsiniz aktif.  

aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif aktif

  • Aktif=" aktif=" boole " " "" Bir OPLOW özelliği içinde<dataset> etiketi datasets.xml Hangi bir veri kümesi aktif olup olmadığını gösterir (Kullanımı uygun olarak ERDDAP ) veya değil.
  • Geçerli değerler gerçek değerlerdir (varsayılan varsayılan) ve sahte.
  • Varsayılan doğru olduğundan, bu özelliği geçici veya kalıcı olarak kaldırmak istediğinize kadar kullanmanız gerekmez. ERDDAP .
  • Sadece aktif bir="Real" veri setini kaldırsanız datasets.xml Ancak veri kümesi hala aktif olacak ERDDAP™ Ancak asla güncellenmeyecek. Böyle bir veri kümesi bir "orphan" olacak ve statüde olduğu gibi listelenecek. html web sayfası, yüklenmeyen veri setlerinin listesinin hemen altında.
  • Aktif="false ayarladıysanız.” ERDDAP™ Veri setini bir dahaki sefere veri setini güncellemeye çalışır. Bunu yaptığınızda, ERDDAP™ Veri kümesi hakkında depolanan herhangi bir bilgiyi atmıyor ve kesinlikle gerçek verilere hiçbir şey yapmıyor.
  • Bir veri kümesi kaldırmak için ERDDAP™ gör Güç Dataset Removal .  

** Birkaç etiket arasında görünebilir<dataset> ve</dataset> etiketler. **
Hangi tür veri kümeleri tarafından hangi etiketlere izin verilen bazı varyasyonlar vardır. Belirli bir belge için bakınız Dataset türü Detaylar için.

<erişilebilir erişilebilir erişilebilir erişilebilir To>

  • [ ** <erişilebilir erişilebilir erişilebilir erişilebilir To> ** ] (#accessibleto) Bir OPLOW etiketi içinde<Dataset> etiketi, bir komünal-separated listesini belirtir rolleri rol rol rol rol rol rol rolleri Bu veri kümesine erişime izin verilir. Örneğin,
    <accessibleTo>RASmith, NEJones</accessibleTo>  
    • Bu, bunun bir parçasıdır ERDDAP " güvenlik sistemi Bazı kullanıcılara erişim kısıtlamak için.
    • Bu etiket mevcut değilse, tüm kullanıcılar (Eğer giriş yapmadılarsa bile) Bu veri kümesine erişim sağlayacaktır.
    • Bu etiket mevcutsa, bu veri seti yalnızca belirtilen rollerden birine sahip olan giriş kullanıcıları için görünür ve erişilebilir olacaktır. Bu veri kümesi, giriş olmayan kullanıcılar için görünür olmayacaktır.
    • Giriş yapan her kullanıcı otomatik olarak rolü verir \[ Herhangi bir kişi In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In \] Peki, eğer bir tane varsa<kullanıcı için etiket datasets.xml veya değil. Eğer belirli bir veri kümesi varsa
        <accessibleTo>\\[anyoneLoggedIn\\]</accessibleTo>  

O zaman giriş yapan herhangi bir kullanıcı bu veri kümesine erişmek için yetkili olacaktır, hatta orada olmasa bile<kullanıcı için etiket datasets.xml .  

<Grafikler AccessibleTo>

  • [ ** <Grafikler AccessibleTo> ** ] (#graphsaccessibleto) Bir OPLOW etiketi içinde<dataset> etiketi datasets.xml Veriler için grafik ve metadata'nın halka açık olup olmadığını belirler. Bu, veri kümesinin kısmen override için bir yol sunar [<erişilebilirTo> (#accessibleto) ayarlayın. İzin verilen değerler şunlardır:
    • Otomatik - Bu değer (veya yokluğu)<Infoset için grafik ve metadata'ya veri setinden erişim sağlar<erişilebilirTo> ayarı. Yani veri kümesi özel ise, grafikler ve metadata özel olacaktır. Ve eğer veri kümesi halksa, grafikler ve metadata halk olacak.
    • Halk kamuoyu – Bu ayar, veri kümesinin grafiklerini ve metadata'yı herkes için erişilebilir hale getirir, hatta kullanıcılar giriş yapmazsa, veri kümesi aksi takdirde özeldir, çünkü bunun bir özelliği vardır.<erişilebilirTo> etiketi.  

<erişilebilir erişilebilir erişilebilir erişilebilir ViaFiles>

Değer doğruysa, ERDDAP™ Böylece kullanıcıların veri kümesinin kaynak verilerini veri dosyaları üzerinden tarayabilmeleri ve indirmesi gerekir ERDDAP " "files" Sistem sistemi sistemi sistemi sistemi sistemi sistemi sistemi sistemi sistemi . Görün bakalım, "files" Sistem Belge belgeleri Daha fazla bilgi için.

Varsayılan değerin varsayılan değeri<erişilebilirViaFiles> Geliyor<Varsayılan olarak kullanılabilirViaFiles> in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in Kurulum.xml . Sahte bir varsayılan değeri var, ancak bu etiketi kurulumunuza eklediğinizi öneririz.xml gerçek bir değerle.

Öneri - Tüm ilgili veri kümelerini ayarlayarak dosyaları sistemi aracılığıyla erişilebilir hale getirmeyi öneriyoruz<Varsayılan olarakViaFiles> kurulumunda doğru.xml çünkü bu verilerin elde edilmesi için tercih edilen bir grup kullanıcı var. Diğer nedenler arasında, "files" Sistem, kullanıcıların hangi dosyaların mevcut olduğunu ve son değiştiğinde, böylece tüm veri kümesinin kendi kopyalarını korumak için kolay hale getirir. Genellikle dosyaları sistemi aracılığıyla erişilebilir veri setleri yapmak istemiyorsanız, set<Varsayılan olarak kullanılabilirViaFiles> yanlış. Ya da durumda, sadece kullanın<erişilebilirViaFiles>, belirlenen genel politikaya istisna olan birkaç veri kümesi için<Varsayılan olarak kullanılabilirViaFiles> (Örneğin, dataset kullandığında .nc ml ml ml Kullanıcılar için gerçekten yararlı olmayan dosyaları) .  

<erişilebilir erişilebilir erişilebilir erişilebilir Via Via WMS Vegt;

  • [ ** <erişilebilir erişilebilir erişilebilir erişilebilir Via Via WMS > > > > ** ] (#accessibleviawms) Bir OPLOW etiketi içinde<dataset> etiketi datasets.xml Herkes için EDDGrid Alt sınıflar. Gerçek bir değere sahip olabilir (varsayılan varsayılan) veya yanlış. Örneğin,
    <accessibleViaWMS>true</accessibleViaWMS>  

Değer yanlış ise, ERDDAP " WMS sunucu bu veri kümesi için mevcut olmayacaktır. Bu, 180.000'den fazla uzun süreli değere sahip olan veri kümeleri için yaygın olarak kullanılır. (Hangi teknik olarak geçersizdir WMS Hizmetler hizmetleri hizmetleri hizmetleri hizmetleri hizmetleri) Ve bunun için, tamamen aralıkta uzun süreli değerler ile veri kümesinin bir varyantını da sunuyorsunuz -180 ile 180 arasında EDDGrid LonPM180 . Değer doğruysa, ERDDAP™ Mevcut veri setini kullanarak yapmaya çalışacak ERDDAP " WMS sunucu. Ancak veri kümesi tamamen uygun değilse WMS (e.g., uzun bir veya enlem verileri yok) Daha sonra veri seti mevcut olmayacak ERDDAP " WMS sunucu, bu ayardan bağımsız olarak.  

<add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add add Değişkenler Değişkenler Nerede>

  • [<Varyables Where>) (#addvariables where) OPLOW etiketi içinde<Dataset> tüm EDDTable veri setleri için etiket.

Herhangi bir EDDTable veri kümesine istekler içerebilir &add Değişkenler Değişkenler Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede? (" " "" Özellikler Name Name Name Name Name Name Name Name Name Name Name "" Özellikler Değer Değer Değer Değer Değer Değer Değer Değer Değer Değer Değer Değer " " "") Ve hangi diyor ki ERDDAP™ Veri kümesindeki tüm değişkenleri eklemek için nerede ÖzelliklerName=attributeValue Talep edilen değişkenler listesine. Örneğin, bir kullanıcı ekler ve eklerse Değişkenler Değişkenler Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede? (" " "" ioos\_category ""Wind") Bir sorguya, ERDDAP Veri kümesindeki tüm değişkenleri ekleyecek, bu da bir an için ioos\_category = İstenen değişkenler listesineWind özelliği (Örneğin, rüzgarSpeed, rüzgarDirection, rüzgarGustSpeed) . Özellikler Name Name Name Name Name Name Name Name Name Name Name ve Özellikler Değer Değer Değer Değer Değer Değer Değer Değer Değer Değer Değer Değer Duruma duyarlıdır.

In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In datasets.xml Ancak bir veri kümesi için veri kümesinin chunk'ı varsa.xml for a dataset has has have.

<addVariablesWhere>*attributeNamesCSV*<addVariablesWhere>  

Örneğin,

<addVariablesWhere>ioos\\_category,units<addVariablesWhere>  

Data Access Form (.html web sayfası) Dataset için bir widget içerecek (Her bir özellik için, komünleştirilmiş listedeki çağrı) Kullanıcıların bir özellik değerini belirtmesine izin veren değişken listesinin hemen altında. Kullanıcı bir veya daha fazla özellik isimleri için bir özellik değerini seçerse, istek için isteke eklenecekler ve eklenecekler Değişkenler Değişkenler Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede Nerede? (" " "" Özellikler Name Name Name Name Name Name Name Name Name Name Name "" Özellikler Değer Değer Değer Değer Değer Değer Değer Değer Değer Değer Değer Değer " " "") . Böylece, bu etiket datasets.xml Bu veri kümesi için Data Access Form üzerinde görünecek olan özellikleri listesini belirtmenize ve kullanıcıların eklemek için kolay hale getirmelerine izin vermenize izin verirsiniz. Talep için nerede fonksiyonlar. The The The The The The The The ÖzelliklerNamesCSV liste is case-sensitive.

<yükseklikMetersPer SourceUnit>

  • [ ** <yükseklikMetersPer SourceUnit> ** ] (#altitudespersourceunit) OPLOW etiketi içinde<dataset> tag in datasets. xxml for EDDTable From SOS datasets (Sadece!) Bu, kaynağın yüksekliğe veya derinlik değerleri tarafından çoğaltılan bir sayıyı, onları yüksek değerlere dönüştürmek için belirtir (Yukarıdaki deniz seviyesinin üzerinde metre) . Örneğin,
    <altitudeMetersPerSourceUnit>-1</altitudeMetersPerSourceUnit>  

Bu etiket MUST, veri kümesinin dikey eksen değerlerinin metre değil, pozitif=up olmadığı durumlarda kullanılır. Aksi takdirde, varsayılan değer 1. Örneğin,

  • Kaynak zaten deniz seviyesinin üstünde metrede ölçülse, 1 kullanın (veya bu etiketi kullanmayın, çünkü 1 varsayılan değerdir) .
  • Kaynak deniz seviyesinin altında metrede ölçülse, kullanım -1.
    <altitudeMetersPerSourceUnit>-1</altitudeMetersPerSourceUnit>
  • Kaynağın deniz seviyesinin üzerinde kilometrede ölçülse, 0.001 kullanın.  

<varsayılanDataQuery>

  • [ ** <varsayılanDataQuery> ** ] (#defaultdataquery) Bir OPLOW etiketi içinde<dataset> etiketi datasets.xml Bu diyor ki ERDDAP™ Belirtilen sorguyu kullanmak için (URL'nin parçası “?”) Eğer .html dosyası Tipi Tipi Tipi Tipi (Data Access Form) Hiçbir sorgu ile talep edilir.
    • Muhtemelen bunu nadiren kullanmanız gerekir.
    • XML-encode'a ihtiyacınız var (Yüzde değil-encode) XML belgesinde olduklarından beri varsayılan sorgular. Örneğin, & becomes & ,<“<, > olur > .
    • Lütfen işinizi kontrol edin. Bir hata yapmak ve istediğiniz şeyi elde etmek kolaydır. ERDDAP™ Hatalarınızı temizlemeye çalışacak - ama buna güvenmeyin, çünkü\*nasıl nasıl nasıl nasıl nasıl nasılHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHow HowHow HowHow HowHow HowHow HowHow How How How HowHow HowHow HowHow How How HowHow HowHow HowHow HowHow HowHow HowHow HowHow HowHow HowHow How HowHow HowHow HowHow HowHow HowHow HowHow HowHow HowHow HowHow HowHow HowHow HowHow HowHow HowHow HowHow How How HowHow HowHow HowHow How How How HowHow How How How How How How HowHow How How HowHow HowHow How How How How HowHow HowHow HowHow HowHow HowHow HowHow HowHow HowHow How How How How How HowHow How How How How How HowHow How HowHow HowHow HowHow How How How How How How How How How How How How How How How How How How How How How How How How How HowHow HowHow HowHow HowHow HowHow How How How How How HowHow HowHow How How How HowHow How HowHow How How How How HowHow HowHow HowHow HowHow HowHow HowHow How How\*Temizlenmiş olabilir.
    • griddap veri setleri için, bunun ortak bir kullanımı, farklı bir varsayılan derinlik veya yüksek çözünürlük değerini belirtmektir (Örneğin, \[ 0 0 0 0 \] Bunun yerine, \[ Son son son son \] ) . Herhangi bir durumda, her zaman tüm değişkenleri listelemelisiniz, her zaman tüm değişkenler için aynı boyut değerlerini kullanmalıdır ve neredeyse her zaman kullanırsınız. \[ 0 0 0 0 \] , \[ Son son son son \] Ya da \[ 0:last \] Boyut değerleri için. Örneğin:
        <defaultDataQuery>u\\[last\\]\\[0\\]\\[0:last\\]\\[0:last\\],v\\[last\\]\\[0\\]\\[0:last\\]\\[0:last\\]</defaultDataQuery>
    • For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For tabledap Veri setleri, herhangi bir kısıtlama belirtmediyseniz, istek tüm veri kümesini geri getirecektir, bu da veri kümesine bağlı olarak büyük olabilir. Herhangi bir kısıtlamayı belirtmek istemiyorsanız, boş bir boşluğa sahip olmak yerine boşluğa sahip olmak istemezsiniz.<varsayılanDataQuery> (Bu, varsayılan olarak belirtilmediği gibi aynıdır DataQuery) , varsayılanDataQuery'de eklemek istediğiniz tüm değişkenleri açıkça listeleymelisiniz.
    • For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For tabledap Veri setleri, bunun en yaygın kullanımı farklı bir varsayılan zaman aralığı belirtmektir (En Az (Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman) Örneğin, &time>=max (Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman) -1day, ya da şimdiye kadar, örneğin &time>= now- 1day) . Hiçbir veri değişkenini talep etmenin tüm veri değişkenlerini belirttiği gibi aynı olduğunu unutmayın, bu yüzden genellikle yeni zaman kısıtlamasını belirtebilirsiniz. Örneğin:
        <defaultDataQuery>&amp;time&gt;=max(time)-1day</defaultDataQuery>  

veya

    <defaultDataQuery>&amp;time&gt;=now-1day</defaultDataQuery>  

<varsayılan GrafQuery>

  • [ ** <varsayılan GrafQuery> ** ] (#defaultgraphquery) Bir OPLOW etiketi içinde<dataset> etiketi datasets.xml Bu diyor ki ERDDAP™ Belirtilen sorguyu kullanmak için (URL'nin parçası “?”) Eğer .graph dosyası Tipi Tipi Tipi Tipi (Make A Graph Form) Hiçbir sorgu ile talep edilir.
    • Muhtemelen bunu nadiren kullanmanız gerekir.
    • XML-encode'a ihtiyacınız var (Yüzde değil-encode) XML belgesinde olduklarından beri varsayılan sorgular. Örneğin, & becomes & ,<“<, > olur > .
    • Lütfen işinizi kontrol edin. Bir hata yapmak ve istediğiniz şeyi elde etmek kolaydır. ERDDAP™ Hatalarınızı temizlemeye çalışacak - ama buna güvenmeyin, çünkü\*nasıl nasıl nasıl nasıl nasıl nasılHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHowHow HowHow HowHow HowHow HowHow HowHow How How How HowHow HowHow HowHow How How HowHow HowHow HowHow HowHow HowHow HowHow HowHow HowHow HowHow How HowHow HowHow HowHow HowHow HowHow HowHow HowHow HowHow HowHow HowHow HowHow HowHow HowHow HowHow HowHow How How HowHow HowHow HowHow How How How HowHow How How How How How How HowHow How How HowHow HowHow How How How How HowHow HowHow HowHow HowHow HowHow HowHow HowHow HowHow How How How How How HowHow How How How How How HowHow How HowHow HowHow HowHow How How How How How How How How How How How How How How How How How How How How How How How How How HowHow HowHow HowHow HowHow HowHow How How How How How HowHow HowHow How How How HowHow How HowHow How How How How HowHow HowHow HowHow HowHow HowHow HowHow How How\*Temizlenmiş olabilir.
    • griddap veri setleri için, bunun en yaygın kullanımı, farklı bir varsayılan derinlik veya yükseklik değeri değeri değeri belirtmektir. (Örneğin, \[ 0 0 0 0 \] Bunun yerine, \[ Son son son son \] ) ve / veya belirli bir değişkenin grafiklendiğini belirtmek. Her durumda, neredeyse her zaman kullanırsınız \[ 0 0 0 0 \] , \[ Son son son son \] Ya da \[ 0:last \] Boyut değerleri için. Örneğin:
        <defaultGraphQuery>temp\\[last\\]\\[0\\]\\[0:last\\]\\[0:last\\]&amp;.draw=surface&amp;.vars=longitude|latitude|temp</defaultGraphQuery>  
    (Ama hepsini tek bir çizgiye koyun)
    • For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For tabledap Veri setleri, herhangi bir kısıtlama belirtmediyseniz, istek veri kümesine bağlı olarak uzun zaman alabilir.
    • For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For tabledap Veri setleri, bunun en yaygın kullanımı farklı bir varsayılan zaman aralığı belirtmektir (En Az (Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman) Örneğin, &time>=max (Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman) -1day, ya da şimdiye kadar, örneğin &time>= now- 1day) . Hiçbir veri değişkenini talep etmenin tüm veri değişkenlerini belirttiği gibi aynı olduğunu unutmayın, bu yüzden genellikle yeni zaman kısıtlamasını belirtebilirsiniz. Örneğin:
        <defaultGraphQuery>&amp;time&gt;=max(time)-1day</defaultGraphQuery>  

veya

    <defaultGraphQuery>&amp;time&gt;=now-1day</defaultGraphQuery>  

<boyutValuesInMemory>

  • [ ** <Boyut boyutu DeğerlerInMemory> ** ] (#dimensionvaluesinmemory) (Gerçek gerçek gerçek gerçek gerçek gerçek gerçek gerçek (varsayılan varsayılan) veya yanlış veya) OPENT ve nadiren etiket kullanılır<Dataset> etiketi herhangi bir şey için EDDGrid Bu söyleyen veri seti ERDDAP™ Boyutların kaynağı değerlerini nerede tutmak (Ayrıca bilindiği gibi de bilinir axisVariable s) :

    • Doğru = hafızada (hangisi daha hızlı ama daha fazla hafıza kullanır)
    • false = disk üzerinde (hangisi daha yavaş ama hafıza kullanmıyor)

Örneğin,

<dimensionValuesInMemory>false</dimensionValuesInMemory>  

Bunu sadece sahte olmayan değeri ile kullanmalısınız, eğer your ERDDAP™ Çok büyük boyutlarda birçok veri kümesi var (e.g., milyonlarca değer, e.g., içinde EDDGrid ISSoFiles datasets) ve ERDDAP 'In Use memory use her zaman çok yüksek. Memory'ı görün: Şu anda çizgiyi kullanarak \[ yourDomain \] /erddap/status.html izlemek için ERDDAP™ hafıza kullanımı.  

<fileTableInMemory>

  • [ ** <fileTableInMemory> ** ] (#filinmemory) (Doğru veya yanlış (varsayılan varsayılan) ) OPLOW etiketi içinde<Dataset> etiketi herhangi bir şey için EDDGrid FromFiles and EDDTable TheFiles dataset that told ERDDAP™ Dosyayı nerede tutmak için (Her kaynak veri dosyası hakkında bilgi sahibi olan) :

    • Doğru = hafızada (hangisi daha hızlı ama daha fazla hafıza kullanır)
    • false = disk üzerinde (hangisi daha yavaş ama hafıza kullanmıyor)

Örneğin,

<fileTableInMemory>true</fileTableInMemory>  

Bunu herhangi bir veri kümesi için doğru ayarlarsanız, bellekte bir göz tutun: şu anda çizgiyi kullanarak \[ yourDomain \] /erddap/status.html Bunu sağlamak için ERDDAP™ Hala birçok ücretsiz hafızaya sahiptir.  

<fgdcFile>

  • [ ** <fgdcFile> ** ] (#fgdcfile) Bir OPLOW etiketi içinde<dataset> etiketi datasets.xml Bu diyor ki ERDDAP™ Daha önceden hazırlanmış bir FGDC dosyasını kullanmak yerine ERDDAP™ Dosyayı oluşturmaya çalışın. Kullanım:
    <fgdcFile>*fullFileName*</fgdcFile>  

full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full FileName Yerel bir dosyaya atıfta bulunabilir (Sunucunun dosya sistemi üzerinde bir yerde) veya uzak bir dosyanın URL'si. If if if if if if if if if if if if if if if if if if if if if if if if if if if if if full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full FileName \="" veya dosya bulunamadı, veri kümesi FGDC metadata olmayacak. Bu aynı zamanda belirli bir veri kümesi için FGDC metadata'yı bastırmak istiyorsanız de faydalıdır. Ya da, koyabilirsiniz<fgdcActive>false</fgdcActive> Kurulumda.xml to tell ERDDAP™ Herhangi bir veri kümesi için FGDC metadata sunmak değil.  

<iso19115 File>

  • [ ** <iso19115File> ** ] (#iso19115file) Bir OPLOW etiketi içinde<dataset> etiketi datasets.xml Bu diyor ki ERDDAP™ ISO 19115 dosyasını kullanmak yerine önceden hazırlanmış bir ISO 19115 dosyasını kullanmak ERDDAP™ Dosyayı oluşturmaya çalışın. Kullanım:
    <iso19115File>*fullFileName*</iso19115File>  
    full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full FileName Yerel bir dosyaya atıfta bulunabilir (Sunucunun dosya sistemi üzerinde bir yerde) veya uzak bir dosyanın URL'si. If if if if if if if if if if if if if if if if if if if if if if if if if if if if if full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full full FileName \="" veya dosya bulunamadı, veri kümesi ISO 19115 metadata olmayacak. Bu aynı zamanda ISO 19115 metadata'yı belirli bir veri kümesi için bastırmak istiyorsanız de yararlıdır. Ya da, koyabilirsiniz<iso19115Active>false</iso19115Active> Kurulumda.xml to tell ERDDAP™ ISO 19115 metadata'yı herhangi bir veri kümesi için sunmamak.  

<maçAxis NDigits>

  • [ ** <matchAxisNDigits> ** ] (#matmakndigits) Bir OPLOW etiketi içinde EDDGrid <Dataset> etiketi EDDGrid Aggregations, e.g., dosyaların aggregations. Her zaman veri kümesi yeniden yükleniyor, ERDDAP™ Aggregasyonun her bileşeninin eksen değerlerinin aynı olduğunu kontrol eder. Testin hassaslığı, test tarafından belirlenir MaçAxisNDigits Bu, iki hassas eksen değerini test ederken eşleşmesi gereken toplam sayı sayısını belirtir, 0 - 18 (varsayılan varsayılan) . Yüz eksen değerlerini test ederken, test AxisNDigits/2 basamaklarla yapılır. 18 veya yukarıdaki bir değer, EDDGrid Tam bir test yapmak için. 0 değerinde bir değer EDDGrid Aşağıda açıklandığı gibi tavsiye edilmeyen herhangi bir test yapmamak.

Her ne kadar olsa da olsa da olsa da olsa da rağmen EDDGrid Aggregasyon bileşenlerinin biraz farklı eksen değerlerine sahip olmasına izin verir, sadece bir dizi eksen değeri kullanıcıya gösterilir. Set, veri kümesinin kaynağı metadata'yı sağlayan aynı bileşendendir. Örneğin, örneğin, EDDGrid Files datasets'ten, bu,<metadata From> ayarı (varsayılan=last=last) .

MaçAxisNDigits'in kullanımı =0 çoğu durumda güçlü bir şekilde cesaretiniz, çünkü tüm kontrolden çıkıyor. En az kontrol bile yararlıdır çünkü bileşenlerin agreating için uygun olmasını sağlar. Hepimiz tüm bileşenlerin uygun olduğunu varsayıyoruz, ama her zaman öyle değil. Bu nedenle önemli bir sanite testi. MaçAxisNDigits1, 2, 3 veya 4'ün değerleri bile cesaret verici çünkü farklı eksen değerleri genellikle bileşenlerin yaratıldığını göstermektedir. (Bin mi?) Farklı bir yol ve böylece aggregasyon için uygun değildir.

MaçAxisNDigits\=0'i kullanmanın yararlı ve tavsiye edildiği bir durumdur: uzak dosyaların, e.g., S3 kovadaki veriler. Bu durumda, veri kümesi önbellek kullanıyorsa, önbellekSizeGB, maçAxisNDigits\=0 ve the dataset uses cacheFromUrl, cacheSizeGB, matchAxisNDigits\=0, and the the the the dataset uses cacheFromUrl EDDGrid Files sistemi için Aggregation via File Names Sonra, EDDGrid Tüm uzak dosyaların aggregasyon yapmak için okumak zorunda değildir. Bu, S3 kovasındaki verilerden yapılan veri setlerinin çok hızlı bir şekilde yüklenmesine olanak sağlar (Aptalca karşı olduğu gibi yavaş yavaş yavaş yavaş yavaş EDDGrid Tüm dosyaları indirmek ve okumak zorunda) .

<nThreads>

  • Starting with with ERDDAP™ sürüm 2.00, EDDTable'in herhangi bir alt sınıfından EDDGrid Kaynağından veri okur, bir veri kümesini okuyabilir (e.g., bir kaynak dosyası) Bir seferde (One thread) (Bu varsayılan) veya birden fazla bilgi (E.g., 2+ kaynak dosyaları dosyaları) Bir seferde (2 veya daha fazla threads) Her isteği işlemekle birlikte.  
    • Dikkat Kuralı: Çoğu sistemdeki çoğu veri kümesi için nThreads=1, varsayılan kullanın. Güçlü bir bilgisayar varsa (Birçok CPU çekirdeği, birçok hafıza) Sonra nThreads'ı 2, 3, 4 veya daha yüksek ayarlamayı düşünün. (Ancak bilgisayardaki CPU çekirdeklerinin sayısından daha fazla değil) Yararlanabilir veri setleri için:

      • Çoğu EDDTable FromFiles datasets fayda sağlayacaktır.
      • Bir şeyin bir chunk'tan önce bir gecikmeye neden olduğu veri setleri aslında işlenebilir, örneğin:
        • Datasets with Dış-kompresyon (E.g., .gz ) ikili ikili ikili ikili ikili (E.g., .nc ) dosyaları, çünkü ERDDAP™ Dosyayı okumaya başlamadan önce tüm dosyayı bastırmak zorunda.
        • Datasets that use Önbelli Çünkü ERDDAP™ Sık sık bunu okuyabilmeden önce dosyayı indirmek zorundadır.
        • Yüksek bant genişliği paralel bir dosya sisteminde saklanan veri dosyaları ile veri kümeleri, talep edildiğinde daha fazla veri, daha hızlı teslim edebilir. Paralel dosya sistemlerinin örnekleri içerir JBOD , pNFS , GlusterFS Amazon S3 ve Google Cloud Storage.  

Uyarı: nThreads>1 kullanırken bir göz tutun ERDDAP 's memory use, thread kullanımı ve genel duyarlılık (see see see see see see ERDDAP 's durumu sayfası ) . Aşağıdaki bu konular hakkında yorum yapın.  

  • Belirli bir veri kümesi için, bu nThreads ayarı farklı yerlerden gelebilir:

    • Eğer datasets.xml Bir veri kümesi için chunk'ın bir veri kümesi vardır<nThreads> etiketi (içinde<dataset> etiketi, küresel bir özellik olarak değil) değer >= 1, nThreads'in bu değeri kullanılır. Yani, her veri kümesi için farklı bir sayı belirtebilirsiniz.
    • Aksi takdirde, eğer datasets.xml has an have an has an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an have an<nTableThreads> etiketi (EDDTable FromFiles datasets) veya<nGridThreads> etiketi (Çünkü EDDGrid datasets) Bir değerle >= 1, dışarıda<Dataset> etiketi, nThreads'in bu değeri kullanılır.
    • Aksi takdirde, 1 iplik kullanılır, bu en küçük hafıza miktarını kullandığı için güvenli bir seçimdir.  

Çünkü onlar için Orijinal orijinal orijinal orijinal orijinal ERDDAP™ yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme yükleme Biz kullanırız <nTableThreads> 6 6</nTableThreads> (Güçlü bir sunucu.) Zor istekler şimdi önceki zamanın% 30'unu alır.  

Monitor Resource Use

Farklı nThreads ayarları ile deneydiğinizde (Ve belki de zor örnek isteklerinizi sizin için yapmak ERDDAP ) bilgisayarınızın kaynak kullanımını izleyebilirsin:

  • Macs'te Finder: Uygulamalar: Utilities: Activity Monitor
  • Linux'ta, üst düzeyde kullanın
  • Windows 10'da kullanım Ctrl + Shift + Esc Görev Yöneticisi  
Uyarı: Decreased Responsiveness

izolasyonda, ERDDAP™ Daha yüksek bir nThreads ile bir veri kümesine bir istek yerine, nThreads=1'den daha hızlı ayarlayacaktır. Ancak bu istek işlandığında, diğer kullanıcıların diğer talepleri biraz kalabalık olacak ve daha yavaş bir yanıt alacak. Ayrıca, ne zaman ERDDAP™ Verilen bir isteke cevap verir, diğer bilgisayar kaynakları (e.g., disk sürücü erişim, ağ bant genişliği) Sınırlanabilir, özellikle yüksek nThreads ayarları ile. Böylece daha yüksek nThreads ayarları ile, genel sistem duyarlılığı, birden çok talebin işlendiği zaman daha kötü olacaktır - bu kullanıcılar için çok can sıkıcı olabilir! Bu nedenle: hiçbir zaman bilgisayardaki CPU çekirdeklerinden daha fazla nThreads ayarlamaz. nThreads=1 her istekten beri en adil ayardır. (Birkaç eşzamanlı istek arasında) Bilgisayar kaynaklarının eşit bir payı alacak. Ancak bilgisayar daha güçlü, bu daha az bir sorun olacaktır.  

Uyarı: Yüksek Bellek Kullanım için kullanım EDDGrid Datasets

Kurulum istekleri doğrudan nThreads ayarına orantılıyken bellek kullanımı. Oldukça güvenli bir baş kuralıdır: ayarlamanız gerekir ERDDAP 's memory settings En az 2GB + (2GB \* nThreads) . Bazı veri setlerine bazı istekler bundan daha fazla hafızaya ihtiyaç duyacaktır. Örneğin, nThreads=3'ü herhangi biri için ayarlar EDDGrid Dataset, -Xmx ayarının en azından olması gerektiği anlamına gelir -Xmx8000M. Bu bellek ayarı, bilgisayarın fiziksel hafızasından daha büyükse, nThreads ayarını azaltır, böylece hafıza ayarı azaltabilirsiniz.

EDTable veri setleri için iş parçacığının hafıza kullanımı neredeyse her zaman daha düşük çünkü dosyalar genellikle çok daha küçük. Bununla birlikte, verilen bir EDDTable veri setinin büyük büyük büyük bir bölümü varsa (e.g., >=1 GB) Veri dosyaları, sonra yukarıdaki yorumlar da bu veri setlerine uygulanacak.

nThreads ayarı ne olursa olsun, hafıza kullanımı istatistiklerine yakın bir göz tutun ERDDAP 's durumu sayfası . Hiç hafıza kullanımını maksimize etmek için yakın gelmemelisiniz ERDDAP Aksi takdirde ciddi hatalar ve başarısızlıklar olacaktır.

Temporly Set to 1

Mevcut hafıza kullanımı biraz yüksekse, ERDDAP™ Bu istek için nThreads'i 1. Böylece, ERDDAP™ Bellek az olduğunda hafızayı korur.  

Diminishing Returns

nThreads ayarını artırmak için geri dönüşler azalıyor: 2 iplik 1'den daha iyi olacak (Saatler içinde dinamik görmezden gelirsek) . Ama 3 sadece 2'den daha iyi bir chunk olacak. Ve 4 sadece 3'ten daha iyi olacak.

Büyük bir EDDTable veri setine zor bir sorgunun bir testinde, 1, 2, 3, 4, 5, 6 iplikleri 38, 36, 20, 18, 13, 11 saniye kullanıldı. (Şimdi bu sunucuda nTableThreads=6 kullanıyoruz.)

nThreads=2: Bununla birlikte, nThreads=2'yi nThreads=1 yerine belirtmek için genellikle belirli bir kullanıcının isteğine cevap vermek için gereken saatte çok fazla fark yaratmayacaktır. Sebep şu: nThreads=1 ile, çoğu modern CPU'nun sık sıkacağı Dinamik olarak saat boyunca (turbo güçlendirme) CPU'nun saat hızını geçici olarak artırmak. Böylece nThreads=1 ile, bir çekirdek genellikle nThreads=2 kullandıysanız iki çekirdekten daha yüksek bir saat hızda çalışacak. Ne olursa olsun, nThreads=2'yi nThreads=1 yerine kullanmak daha iyi olduğunu düşünüyoruz, çünkü bu ayar daha geniş bir çeşitlilik durumunda daha iyi sonuçlar verecektir. Ve elbette, bilgisayarınızın yeterli CPU çekirdeği varsa, daha yüksek bir nThreads ayarı daha iyi sonuçlar elde etmelidir.

Yukarıda tartışılan gibi, çok yüksek nThreads ayarları bazı taleplere daha hızlı cevap verebilir, ancak genel olarak risk azaldı. ERDDAP™ duyarlılık ve yüksek hafıza kullanımı (Yukarıda belirtildiği gibi yukarıda da belirtildiği gibi) Bu istekler işlendiği zaman, genellikle iyi bir fikir değildir.

CPU CPU CPU Cores

Hiç nThreads'ı bilgisayar CPU çekirdeğinin bilgisayar CPU'daki sayısına göre daha büyük bir numaraya taşımamalısınız. Temel olarak tüm modern CPU'lar birden çok temele sahiptir (E.g., 2, 4 veya 8) . Bazı bilgisayarlar bile birden çok CPU'ya sahip (e.g., 2 CPUs \* 4 temel / CPU = 8 CPU çekirdeği) . Bir bilgisayarın kaç CPU ve çekirdeği olduğunu öğrenmek için:

  • Macs'te, kullanın Seçenek anahtar anahtarı Apple Menu : Sistem Bilgileri
  • Linux'ta kedi /proc/cpuinfo kullanın
  • Windows 10'da kullanım Ctrl + Shift + Esc açmak için Görev Yöneticisi: Performans (Mantıksal işlemciler, CPU çekirdeğinin toplam sayısını gösterir)

Evet, çoğu işlemciler bu günlerde çekirdek başına 2 iplik desteklediğini söylüyorlar (via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via via hiper-threading ) Ancak 2 iplikler bilişim kaynaklarını paylaşıyor, bu yüzden ağır yük altında bir CPU'da bir kez görmeyeceksiniz. Örneğin, 4 çekirdekli bir CPU ile bir bilgisayar, 8 threade destek vermek iddia edebilir, ancak bunu asla nThreads=4'ü bu konuda geçmelisiniz. ERDDAP . Bunu hatırlayın:

  • nThreads ayarlandığında ERDDAP™ İstek başına gelir. ERDDAP™ Sık sık aynı anda birden fazla istekle çalışır.
  • ERDDAP™ Süreç taleplerinden başka şeyler yapar, e.g., reload datasets.
  • When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When When ERDDAP™ Verilen bir isteke cevap verir, diğer bilgisayar kaynakları (e.g., disk sürücü erişim, ağ bant genişliği) Sınırlı olabilir. nThreads'i ayarladığınız daha yüksek, bu diğer kaynakların maksimum olacağını ve yavaşlayacağının daha muhtemel. ERDDAP “Genel duyarlılık.
  • İşletim sistemi, koşmaktan başka şeyler yapar ERDDAP .

Bu yüzden bilgisayar CPU'daki çekirdeklerden daha fazlasını ayarlamanız en iyisidir.  

Your Mileage May Vary (YMMV)

Farklı nThreads ayarlarının sonuçları farklı sistemlerdeki farklı taleplere büyük ölçüde değişecektir. Farklı nThreads ayarlarının etkisini gerçekten bilmek istiyorsanız, gerçekçi testleri çalıştırın.  

Neden istek başına nThreads?

Bazılarınızın “Neden istek başına nThreads? Bunu kodlamasaydım, kalıcı bir işçi iplik havuzunu ve daha iyi performans için bir mesajlaşma kuyruğunu kullanacağım.” Bir işçi iplik havuzu ve bir mesajlaşma kuyruğunu kullanarak sorun, zor bir istek çok yavaş görevlerle kuyruğu selâm olacaktır. Bu etkili bir şekilde bloke olurdu ERDDAP™ İlk istek olana kadar diğer taleplerle ilgili görevler üzerinde çalışmaya bile başlamak bile oldu. (Aslında aslında aslında aslında aslında) Bitti. Böylece, daha basit bir sonraki istekler süper yavaş cevap verir. ERDDAP İstek başına nThreads kullanımı, bilişim kaynaklarının çok daha adil bir kullanımına yol açıyor.  

nThreads vs. multiple Worker Computers

Ne yazık ki, ERDDAP “NThreads sistemi, Hadoop veya Apache Spark'in genellikle kullanıldığı bir şekilde, birden fazla işçi bilgisayarı aracılığıyla doğru paralelleştirmenin asla etkili olmayacağıdır. Görev gerçekten paralelleştirilmiş / çoklu bilgisayarlara dağıtıldığında, her bilgisayar, görevin bir kısmında tüm kaynaklarını kullanabilir. With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With With ERDDAP “NThreads sistemi, her iplikler aynı bilgisayar bant genişliği, disk sürücüleri, bellek vb. için yarışıyor. Ne yazık ki, çoğumuz inşa etmek veya hatta kiralamak için kaynakları veya fonları yok (Amazon Web Services (AWS) veya Google Cloud Platform (GCP) ) Bilgisayarların büyük şebekeleri. Ayrıca, herhangi bir sırayla sonuç sıralarına geri dönmesine izin verilen bir ilişkisel veritabanının aksine, ERDDAP™ Sonuç sıralarını tutarlı bir şekilde geri dönmeye söz verir. Bu kısıtlama yapar ERDDAP 's nThreads uygulama daha az verimli. Ama ERDDAP “NThreads birçok durumda yararlıdır.

Ancak, yapmak için yollar var ERDDAP™ Çok sayıda istekle hızla başa çıkmak için ölçek grid/cluster/federasyon ERDDAP s .  

<paletler>

  • Starting with with ERDDAP™ 2.12, datasets.xml içerebilir a<Tracktes> etiketi (Within<HeddapDatasets>) which overrides the<Tracktes> mesajların değeri.xml (veya mesajlara geri dönün.xml değeri eğer etiket etiket datasets.xml Boşluk boş) . Bu, mevcut palet listesini değiştirirken değiştirmenize izin verir ERDDAP™ Koşuyor. Aynı zamanda bir değişiklik yapmanıza ve yeni bir versiyon yüklemenize izin verir ERDDAP . WARNING: Listelenen paletler datasets.xml Mesajlarda listelenen paletlerin süperset olması gerekir.xml; aksi takdirde ERDDAP™ Bir istisna atacak ve işlemeyi bırakacaktır datasets.xml . Bu, tüm bunların bunu sağlar ERDDAP™ En azından aynı temel paletleri destekler. WARNING: ERDDAP™ Ayarlarda belirtilen palet dosyaların aslında var olduğunu kontrol eder, ancak listelenen palet dosyaları kontrol etmez. datasets.xml . Dosyaların mevcut olmasını sağlamak için sizin sorumluluğunuz var.

Ayrıca başlayın ERDDAP™ 2.12, eğer bir cptfiles subdirectory yaparsanız ERDDAP™ içerik rehberi, ERDDAP™ Tüm \*.cpt dosyaları bu dizinin içine kopyalayacak \[ tomcat \] /webapps/erddap /WEB-INF/cptfiles her seferinde rehberi ERDDAP™ Başlayın. Böylece, bu dizide özel cpt dosyaları koyarsanız, bu dosyalar tarafından kullanılacaktır. ERDDAP™ Ancak, partinizde ekstra bir çaba olmadan, yeni bir versiyon yüklemenizde bile ERDDAP .

WARNING: Özel paletler eklerseniz ERDDAP™ Ve sen var EDDGrid Erddap ve / veya EDDTableErddap veri kümelerinden ERDDAP™ Sonra kullanıcılar özel palet seçeneklerinizi göreceksiniz ERDDAP™ A Graph web sayfaları yapın, ancak kullanıcı bunları kullanmaya çalışırsa, varsayılan olarak bir grafik alacaklar. (Genellikle Rainbow genellikle) palet. Çünkü görüntü uzaktan yapılır ERDDAP™ Hangi özel palete sahip değil. Şu anda tek çözüm uzaktan e-posta etmektir ERDDAP™ Yönetici, özel paletlerinizi onun /her ERDDAP veya e-posta Chris. John, noaaa.gov'da paletlerin standart olarak eklendiğini sormak için ERDDAP™ dağıtım.

<Change>

  • [ ** <Change> ** ] (#onchange) Bir OPLOW etiketi içinde<dataset> etiketi datasets.xml Bu, bu veri setinin yaratıldığında yapılacak olan bir eylemi belirtir. (Ne zaman zaman ne zaman zaman zaman ne zaman zaman zaman ne zaman zaman zaman ne zaman zaman zaman ne zaman zaman zaman ne zaman ne zaman zaman zaman ne zaman ne zaman zaman zaman zaman ne zaman zaman zaman ne zaman zaman ne zaman ne zaman ne zaman? ERDDAP™ Yeniden başlatılır) Ve bu veri kümesi herhangi bir şekilde değişir.
    • Şu anda, şimdilik, EDDGrid Alt sınıflar, metadata veya bir eksen değişkeni için herhangi bir değişiklik (Örneğin, yakın zamanlı veri için yeni bir zaman noktası) Bir değişiklik olarak kabul edilir, ancak veri setinin yeniden yüklenmesi bir değişiklik olarak kabul edilmez. (Yemin ederim) .
    • Şu anda, EDDTable alt sınıfları için, herhangi bir veri setinin yeniden yüklenmesi bir değişiklik olarak kabul edilir.
    • Şu anda sadece iki tür eylem izin verilir:
      • " " ""http://"Ya da "https://"– Eğer eylem "If the action starts with "http://"Ya da "https://", ERDDAP™ Bir an gönderecektir HTTP GET Belirtilen URL'ye talep edin. Cevap göz ardı edilecektir. Örneğin, URL bir şey yapmak için başka bir web hizmeti söyleyebilir.
        • URL'nin bir sorgu parçası varsa (Sonra "?") Ama bu MUST zaten Yüzde yüzde encoded . Sınırlarda özel karakterleri kodlamanız gerekir (İlk ‘&’ ve ana '=' kısıtlamalar) %HHHH'ye göre HH, karakterin 2 sayısal hexadecimal değeridir. Genellikle, sadece birkaç punkuation karakter dönüştürmeniz gerekir:% 25, ve%26, "%22,<%2C, =% 34D, >% 2B, +%2B, | %7C'ye, \[ %5B'ye, \] %5D'ye göre, uzay% 20'ye dönüşür ve tüm karakterleri UTF-8 formlarına dönüştürür ve sonra UTF-8 formunun her birini %HH formatına kodlar. (Yardım için bir programcı sormak) . Örneğin, & stationID >="41004" A) stationID %2241004%22 Yüzde enkoding genellikle eriştiğiniz zaman gereklidir ERDDAP Bir tarayıcıdan başka bir yazılım aracılığıyla. Tarayıcılar genellikle sizin için yüzde encoding ile ilgilidir. Bazı durumlarda, tüm karakterleri A-Za-z0-9\_'dan başka bir yüzde kodlamaya ihtiyacınız var! ~ ‘ ‘ ‘ () \*, ama yine de ilk "&" veya ana '=' kısıtlamalarda. Programlama dilleri bunu yapmak için araçları vardır (örneğin, bakınız Java " java.net.URLEncoder ve Java script'sencodeURIComponent()] (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/encodeURIComponent) ) ve orada vardır Yüzde encode/decode sizin için .
        • O zamandan beri datasets.xml XML dosyası, sen de &-encode ALL '&', '<URL'de "&", "<", ve ">" yüzde kodlamadan sonra.
        • Örnek: Örnek: Bir URL için, bir tarayıcıya yazın: https://www.company.com/webService?department=R%26D&param2=value2
          Bir an belirtmelisiniz<Change> etiketi ile (Bir çizgide)
            <onChange>https://www.company.com/webService?department=R%26D&amp;param2=value2</onChange>
      • posta: – Eğer eylem "mailto:" ile başlarsa, ERDDAP™ Veri setinin güncellendiğini gösteren sonraki e-posta adresine bir e-posta gönderecektir. Örneğin:<Change>mailto:john.smith@company.com</onChange> Eğer iyi bir nedeniniz varsa ERDDAP™ Başka bir eylem türünü desteklemek için bize ne istediğini açıklayan bir e-posta gönderin.
    • Bu etiket OPence. Bu etiketlerin çoğunu istediğiniz gibi olabilir. Her eylem için bu etiketlerden birini kullanın.
    • Bu, analog bir şekilde ERDDAP 's email/URL abonelik sistemi, ancak bu eylemler kalıcı olarak depolanmaz (i.e., sadece bir EDD nesnesinde saklanıyorlar) .
    • Bir abonelik kaldırmak için, sadece kaldırmak<Change> etiketi. Değişim, bir sonraki sefer veri setinin yeniden yüklendiği belirtildi.  

<Reload EveryNMinutes>

  • [ ** <reload HerNMinutes> ** ] (#reload allnminutes) Bir OPLOW etiketi içinde<dataset> etiketi datasets.xml Neredeyse tüm veri kümesinin veri kümesinin nasıl yeniden yüklendiğine işaret eden türleri. Örneğin,
    <reloadEveryNMinutes>60</reloadEveryNMinutes>
    • Genel olarak, bu değişimi sık sık değiştiren veri kümeleri (Örneğin, yeni veri dosyaları alın) Örneğin, her 60 dakikada yeniden yüklenmelidir.

    • Örneğin, her 1440 dakika içinde yeniden yüklenmelidir. (Günlük günlük günlük günlük günlük) 10080 dakika (haftalık haftalık haftalık haftalık haftalık haftalık haftalık) .

    • Bu etiket OPENT, ancak tavsiye edilir. Varsayılan 10080.

    • Bir örnek:<HerNMinutes>1440</reload HerNMinutes>

    • Bir veri kümesi yeniden yüklendiğinde, tüm dosyalar Büyük Parent Yönetmeny / * datasetID * Rehber silinir.

    • Bunun ne olduğu önemli değil, bir veri kümesi daha sık yüklenmeyecek<loadDatasetsMinMinutes> (varsayılan = 15) , belirtildiği gibi, Kurulum.xml . Bu yüzden veri setlerinin çok sık yeniden yüklenmesini istiyorsanız, herNMinutes ve loadDatasets'leri ayarlamanız gerekir. MinMinutes to small values.

    • HerNMinutes'i yükDatasets olarak aynı değere yeniden yüklemeyin MinMinutes, çünkü elapd zamanı muhtemelen olabilir (Örneğin) 14:58 veya 15:02, bu yüzden veri seti sadece büyük geri yüklemelerin yaklaşık yarısında yeniden yüklenecek. Bunun yerine, daha küçük bir kullanımı kullanın (Örneğin, 10) veya daha büyük veya daha büyük veya daha büyük veya (Örneğin, 20) reload HerNMinutes değeri.

    • HerNMinutes yeniden yüklemeye bakılmaksızın, manuel olarak söyleyebilirsiniz ERDDAP™ Belirli bir veri kümesini mümkün olduğunca kısa sürede yeniden yüklemek için Bayrak dosyası .

    • Meraklı programcılar için - In Curious Programmers - In In In In ERDDAP™ Tüm veri kümelerinin yeniden yüklenmesi iki tek amaç parçacığı tarafından ele alınır. One thread, bir bayrak dosyası veya büyük bir yeniden yükleme bulursa küçük bir yeniden yük başlatır (Hangi tüm veri kümelerini yeniden yükleneceklerini görmek için kontrol eder) . Diğer iplik, bir seferde veri setlerinin gerçek yeniden yüklerini yapar. Bu iplikler arka planda çalışır, tüm veri setlerinin güncel tutulmasını sağlar. Aslında reloads yapan iplik, bir veri setinin yeni bir versiyonunu hazırlar, sonra onu yere değiştirir. (Aslında eski versiyonu atomik olarak değiştiriyor) . Bu yüzden olayların aşağıdaki sıralarının meydana gelmesi çok mümkündür. (Bu iyi bir şey) :

      1. ERDDAP™ Bir veri kümesi yeniden yüklemeye başlar (Yeni bir sürüm yapmak) Arka planda.
      2. Kullanıcı ‘A’ veri setine bir istek yapar. ERDDAP™ Yanıt oluşturmak için veri kümesinin mevcut versiyonunu kullanır. (Bu iyi. Kullanıcı için gecikme yoktu ve veri setinin mevcut versiyonu asla çok durmayacak.)
      3. ERDDAP™ Veri setinin yeni yeniden yüklenmiş versiyonunu oluşturmak ve bu yeni versiyonu üretime dönüştürmek. Sonraki tüm yeni istekler veri setinin yeni versiyonu tarafından ele alınır. tutarlılık için, kullanıcı A'nın isteği hala orijinal sürüm tarafından doldurulur.
      4. Kullanıcı 'B', veri setine ve ERDDAP™ Yanıt oluşturmak için veri kümesinin yeni versiyonunu kullanır.
      5. Sonunda kullanıcı A's ve kullanıcı B's istekleri tamamlandı (Belki belki belki de belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki belki A's first, belki B'nin ilk bitirdiği,) .

Birinin “Sadece iki ton” dediğini duyabilirim. Ha! Bu lame! Bunu ayarlamalı, böylece veri setlerinin yeniden yüklenmesi, ihtiyaç olduğu kadar birçok iplik olarak kullanılmasını sağlamalıdır, bu yüzden her şey daha hızlı ve küçük ya da gecikmeyle yapılır.” Evet ve hayır. Sorun şu ki, bir seferde birden fazla veri kümesinin yüklenmesi birkaç zor yeni problem yaratıyor. Hepsi çözülmeli veya ele alınmalıdır. Mevcut sistem iyi çalışır ve yönetilebilir sorunlar vardır (Örneğin, bir bayraktan önce gecikme potansiyeli fark edilir) . (Onları yönetmek için yardıma ihtiyacınız varsa, bizi gör Bölüm almak için ek destek .) İlgili update update update update HerNMillis Sistem yanıt parçaları içinde çalışır, bu yüzden güncellenen birden fazla veri kümesine yol açabilir. (Tam reload değil) Aynı anda.

Proaktif vs. Reaktif

ERDDAP 'In reload sistemi proaktif - veri setleri geri yüklerinden kısa süre sonra yeniden yükleniyor HerNMinutes zamanı yukarı (Ben.e., "stale" haline geldiler, ama asla çok durmuyorlar) Peki, veri kümesi kullanıcılardan veya değil talep alıyorsa. Bu yüzden ERDDAP™ datasets her zaman güncel ve kullanıma hazır. Bu, THREDDS'nin reaktif yaklaşımına aykırıdır: Bir kullanıcının isteği, bir veri kümesinin sabit olup olmadığını kontrol etmek için THREDDS'ye söylediği şeydir. (Çok durgun olabilir) . Eğer dursa, THREDDS kullanıcının beklemesini sağlar (Genellikle birkaç dakika için) Dataset yeniden yüklenirken.

<update update update update HerNMillis>

  • [ ** <HerNMillis> ** ] (#update allnmillis) Bir OPLOW etiketi içinde<dataset> etiketi datasets.xml Yardımcı olan bazı dataset türleri ERDDAP™ Çok sık değişen verilerle çalışır (Genellikle her saniye) . Aksine farklı aksine farklı farklı farklı farklı farklı farklı farklı farklı farklı şekilde farklı farklı farklı farklı farklı farklı şekilde farklı farklı farklı şekilde farklı farklı farklı şekilde farklı farklı farklı farklı farklı şekilde farklı farklı farklı farklı şekilde farklı farklı farklı farklı farklı farklı farklı farklı şekilde farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı şekilde farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı şekilde farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı şekilde farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı farklı ERDDAP “Normal, proaktif, [<reload HerNMinutes> (#reload allnminutes) Her veri kümesini tamamen yeniden yüklemek için sistem, bu dışsal ek sistem reaktifdir (Bir kullanıcı isteği tarafından başlatılan) Ve daha hızlı çünkü artmakta (Sadece güncellenecek bilgileri güncelleyin) . Örneğin, bir istek bir istek varsa EDDGrid FromDap dataset, son güncellemeden bu yana belirtilen sayıda milisaniyeden daha fazla oluşur. ERDDAP™ Sol en çok yeni değerler olup olmadığını görecek. (İlk olarak, genellikle "time" ) Boyut ve, eğer öyleyse, sadece kullanıcının isteğini işlemeden önce bu yeni değerleri indirin. Bu sistem, veri kaynağındaki minimum taleplerle hızla değişen bir veri kümesi tutmakta çok iyidir, ancak bazı kullanıcı taleplerinin işlenmesini biraz yavaşlamakta.
    • Bu sistemi kullanmak için, ekleyin (Örneğin) :
      <updateEveryNMillis>1000</updateEveryNMillis>  

Sağdan sonra<HerNMinutes> Dataset için etiket datasets.xml . Tanımladığınız milisaniye sayısı 1 kadar küçük olabilir (Veri kümesinin her zaman güncel olduğundan emin olmak için) . 0 değeri (varsayılan varsayılan) Ya da olumsuz bir sayı sistemden çıkıyor.

  • Artan doğası nedeniyle, güncellemeler çok hızlı bir şekilde bitmelidir, bu yüzden kullanıcılar uzun bir süre beklemek zorunda kalmamalıdır.
  • İkinci bir veri isteği önceki güncellemeden önce gelirse, ikinci istek başka bir güncellemeyi tetiklemeyecektir.
  • Belgeler boyunca, düzenli, tam veri kümesi reloads için "reload" kelimesini kullanmaya çalışacağız ve bu yeni artımlı, kısmi güncelleştirmeler için "tarih".
  • Test amaçlı olarak, bazı tanılar log.txt'e basılırsa [<logLevel> (#log seviyesi) in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in datasets.xml "tüm" olarak adlandırılır.
  • Yükseltilmiş güncellemeler kullanıyorsanız ve özellikle sol en solcular varsa (İlk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce ilk önce) Örneğin, zaman, eksen büyük, ayarlamak isteyebilirsiniz<Reload EveryNMinutes> daha büyük bir sayı için (1440?) Ancak bu güncellemeler, veri kümesini güncel tutmak için işin çoğunu yapar ve tam reloads hemen yapılır.
  • Not: Bu yeni güncelleştirme sistemi metadata (Örneğin, zaman actual\_range Ama zaman '_coverage'_end, ...) Ancak Değişimi tetiklemiyor (e-posta veya dokun URL) veya değiştirmek RSS besleme besleme (Belki de öyle olmalı...) .
  • Alt sınıfları kullanan tüm veri kümeleri için EDDGrid FromFiles ve EDDTable FromFiles :
    • WARNING: Yeni bir veri dosyasını bir veri kümesine eklediğinizde onu dizinin içine kopyalayarak ERDDAP™ Görünüşe göre, bir tehlike var ki ERDDAP™ Kısmen yazılı dosyayı fark edecek; okumayı deneyin, ancak başarısız olur çünkü dosya eksik; dosyayı "kötü" bir dosya olarak ilan eder ve onu ortadan kaldırır. (geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak geçici olarak) Veri setinden. Bunu önlemek için, biz STRONGLY RECOMMEND Yeni bir dosyayı geçici bir isimle dizinine kopyalayın (Örneğin, 20150226 .nc Tmp) Bu, datasets dosyasını eşleştirmez AdRegex (\* Sand .nc ) Daha sonra dosyayı doğru isim için yeniden isimlendirin (Örneğin, 20150226 .nc ) . Bu yaklaşımı kullanırsanız, ERDDAP™ Geçici dosyayı görmezden gelecek ve sadece tam ve kullanıma hazır olduğunda doğru isim dosyasını fark edecektir.
    • Mevcut veri dosyalarını yerinde değiştirirseniz (Örneğin, yeni bir veri noktası eklemek) ,<HerNMillis> değişiklikleri atomik olarak ortaya çıkarsa iyi çalışacak (Bir anda) Dosya her zaman geçerli bir dosyadır. Örneğin, netcdf-java kütüphanesi "klasik" sınırsız boyutuna ek sağlar. .nc v3 dosyası atomik olarak yapılır. <HerNMillis>, değişiklikler yapılırken dosyanın geçersiz olup olmadığını kötü bir şekilde çalışacaktır.
    • <HerNMillis>, bir veya birkaç dosyanın kısa sürede değiştiği veri setleri için iyi çalışacak.
    • <HerNMillis>, çok sayıda dosyanın kısa sürede değiştiği veri setleri için kötü çalışacak (Değişiklikler atomik olarak görünmezse) . Bu veri setleri için, kullanmamak daha iyidir<HerNMillis> güncellemek ve bir araya gelmek Bayrak bayrağı Söylemek için ERDDAP™ Veri kümesini yeniden yüklemek.
    • <HerNMillis> [[değiştir | kaynağı değiştir]< subsetVariables >) (#subsetibles) . Normalde, bu bir problem değil, çünkü subsetVariables Çok sık değişmez şeyler hakkında bilgi sahibi olmak (Örneğin, istasyon isimlerinin listesi, enlemler ve uzunlıklar) . Eğer subsetVariables Veri değişiklikleri (Örneğin, yeni bir istasyon veri setine eklendiğinde) Sonra temasa geçin Bayrak URL Dataset'in anlatmak için ERDDAP™ Veri kümesini yeniden yüklemek. Aksi takdirde, ERDDAP™ Yeni alt kümesi fark etmeyecek Bir sonraki zamana kadar değişken bilgiler yeniden yüklenir (<Reload EveryNMinutes>
    • Bizim jenerik tavsiyemiz kullanmak:
        <reloadEveryNMinutes>1440</reloadEveryNMinutes>  
    <updateEveryNMillis>10000</updateEveryNMillis>
    • TROUBLE? Linux bilgisayarlarda, kullanıyorsanız<HerNMillis> ile birlikte EDDGrid Files veya EDDTable FromFiles sınıflarından, bir veri kümesinin yükleyemediği bir problem görebilirsiniz (Bazen veya sürekli olarak) Hata mesajı ile: "IOException: Kullanıcı inotify örneklerinin limiti veya çok fazla açık dosyaya ulaştı". Sebep bir boğa olabilir Java Bu, toplanan çöpler için örneklerin toplanmasına neden olur. Bu problem kaçınılıyor ERDDAP™ v1.66 ve daha yüksek. Bu yüzden en iyi çözüm en son sürümünü değiştirmektir ERDDAP . Eğer bu sorunu çözmüyorsa (bu, gerçekten çok sayıda veri kümesine sahipseniz,<HerNMillis> güncellemek, bu sorunu arayarak düzeltebilirsiniz:
      sudo sysctl fs.inotify.max\\_user\\_watches=65536  
      sudo sysctl fs.inotify.max\\_user\\_instances=1024
      sudo sysctl -p

Ya da problem devam ederse daha yüksek sayılar kullanın. Saatler için varsayılan 8192. Örnekler için varsayılan 128.

  • Yapabilirsiniz<GüncellemeMax Events>10</updateMax Events> in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in datasets.xml (En yakın diğer ayarlarla) Maksimum dosya değişikliklerini değiştirmek için (varsayılan=10) Bu, herNMillis sistemi tarafından işlenecektir. Daha büyük bir sayı, her zaman güncel tutulmasının çok önemli olduğu veri kümesi için yararlı olabilir. Bakın, GüncellemeMax Events Belgeler .
  • Meraklı Programcılar için - bu artış güncelleştirmeler, aksine ERDDAP " dolu dolu Reload EveryNMinutes Sistem, kullanıcı istek parçaları içinde gerçekleşir. Yani, herhangi bir veri setleri aynı anda güncellenebilir. kod var (ve bir kilit) Herhangi bir anda verilen herhangi bir veri kümesi için bir güncelleştirme üzerinde çalışan tek bir iplik olmasını sağlamak. Birden eşzamanlı güncellemelere izin vermek kolaydı; birden fazla eşzamanlı tüm geri yüklemeler daha zor olacaktır.  

<kaynağıCanConstrainStringEQNE>

  • [ ** <KaynakCanConstrainStringEQNE> ** ] (#sourcecanconstrainstringeqne) EDTable içinde bir OPence etiketi<dataset> etiketi datasets.xml Bu, kaynağın String değişkenlerini = ve != operatörleri ile kısıtlayabildiği anlamına gelir.
    • EDDTableFromDapSequence için, bu sadece dış dizi String değişkenleri için geçerlidir. Kaynağın içsel dizi değişkenleri üzerinde herhangi bir kısıtlamaya dayanamayacağı varsayılır.
    • Bu etiket OPence. Geçerli değerler gerçek değerlerdir (varsayılan varsayılan) ve sahte.
    • EDDTable FromDapSequence OPeNDAP DRDS sunucuları, bu gerçek için ayarlanmış olmalıdır (varsayılan varsayılan) .
    • EDDTable FromDapSequence Dapper servers, bu yanlış ayarlanmış olmalıdır.
    • Bir örnek:
        <sourceCanConstrainStringEQNE>true</sourceCanConstrainStringEQNE>  

 

<kaynağıCanConstrainStringGTLT>

  • [ ** <KaynakCanConstrainStringGTLT> ** ] (#sourcecanconstrainstringgtlt) EDTable içinde bir OPence etiketi<Dataset>Kaynak, kaynağın String değişkenlerini ile kısıtlayabileceğini belirtir<,<=, > ve >= operatörleri.
    • EDDTableFromDapSequence için, bu sadece dış dizi String değişkenleri için geçerlidir. Kaynağın içsel dizi değişkenleri üzerinde herhangi bir kısıtlamaya dayanamayacağı varsayılır.
    • Geçerli değerler gerçek değerlerdir (varsayılan varsayılan) ve sahte.
    • Bu etiket OPence. Varsayılan gerçek.
    • EDDTable FromDapSequence OPeNDAP DRDS sunucuları, bu gerçek için ayarlanmış olmalıdır (varsayılan varsayılan) .
    • EDDTable FromDapSequence Dapper servers, bu yanlış ayarlanmış olmalıdır.
    • Bir örnek:
        <sourceCanConstrainStringGTLT>true</sourceCanConstrainStringGTLT>  

 

<KaynakCanConstrainStringRegex>

  • [ ** <KaynakCanConstrainStringRegex> ** ] (#sourcecanconstrainstringregex) EDTable içinde bir OPence etiketi<Dataset> Kaynak normal ifadeler tarafından String değişkenlerini kısıtlayabilir ve eğer öyleyse, operatör ne.
    • Geçerli değerler "=" (The the the the DAP standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart) "=" (yanlışlıkla birçok kişi tarafından desteklendi DAP sunucular) Ya da "" (Kaynağın düzenli ifadelere destek vermediğini belirtmek) .
    • Bu etiket OPence. Varsayılan ""
    • EDDTable FromDapSequence OPeNDAP DRDS sunucuları, bu "" ayarlanmalıdır. (varsayılan varsayılan) .
    • EDDTable FromDapSequence Dapper servers, bu "" ayarlanmalıdır. (varsayılan varsayılan) .
    • Bir örnek:
        <sourceCanConstrainStringRegex>=~</sourceCanConstrainStringRegex>  

<KaynakCanDoDistinct>

  • [ ** <KaynakCanDoDistinct> ** ] (#sourcecandodistinct) EDTable FromDatabase içinde bir OPence etiketi<Dataset>Kaynak veritabanının başa çıkma ve ayrımına gerek olup olmadığını belirtir () Kullanıcı sorgularında kısıtlamalar.
    • Bu etiket OPence. Geçerli değerler geçerli değildir ( ERDDAP™ Farklı işler; varsayılan) , kısmi (Kaynak ayrı çalışır ve ERDDAP™ Tekrar başa çıkmak) Ve evet (Kaynak ayrı çalışır) .
    • Hayır kullanıyorsanız ve ERDDAP™ Farklı çalışırken hafızadan tükeniyor, evet kullanın.
    • Evet kullanıyorsanız ve kaynak veritabanı çok yavaş çalışırsa, hayır kullanın.
    • Kısmen size her ikisinin en kötüsünü verir: yavaştır çünkü farklı veritabanı kullanımı yavaştır ve hafızadan dışarı çıkabilir. ERDDAP .
    • Databases DISTINCT'yi sadece eşsiz sonuçlar için bir istek olarak yorumlamaktadır, oysa ERDDAP™ Bunu bir tür sonuçlar için bir istek olarak yorumlayın. Bunu kısmi veya evet olarak ayarlarsanız, ERDDAP™ Otomatik olarak da veri tabanının sonuçları sıralamasını söyler.
    • Sonuçlarda küçük bir fark: Hayır | Kısmen, ERDDAP™ Sonuçların başlangıcında "" olacak. (Daha önce "" dizeleri) . Evet ile, veritabanı olabilir (Postgres yapacak) Sonuçlar sonunda "" (Daha sonra "" dizeleri) . Bunun aynı zamanda kısa kelime ile başlayan daha uzun kelimelere karşı kısa kelimeleri de etkileyeceğini tahmin edeceğim. Örneğin, ERDDAP™ "Simons" daha önce "Simons" olacak.
    • Bir örnek:
        <sourceCanDoDistinct>yes</sourceCanDoDistinct>  

 

<Kaynak CanOrderBy>

  • [ ** <kaynak kaynağı kaynağı kaynağı CanOrderBy> ** ] (#sourcecanorderby) EDTable FromDatabase içinde bir OPence etiketi<Dataset>Kaynak veritabanının başa çıkma ve yönetmesi gerektiği konusunda spekülasyonlar orderBy (...) Kullanıcı sorgularında kısıtlamalar.
    • Bu etiket OPence. Geçerli değerler geçerli değildir ( ERDDAP™ Görevler orderBy (...) ; varsayılan) , kısmi (Kaynak idare eder orderBy ve ERDDAP™ Tekrar başa çıkmak) Ve evet (Kaynak idare eder orderBy (...) ) .
    • Hayır kullanıyorsanız ve ERDDAP™ İşlem yaparken bellekten tükeniyor orderBy (...) Evet kullanın.
    • Evet kullanıyorsanız ve kaynak veritabanı işliyor orderBy (...) Çok yavaş, hayır kullanın.
    • Kısmen size her ikisinin en kötüsünü verir: yavaş çünkü veritabanının kullanımı orderBy (...) Yavaş ve hafızadan dışarı çıkabilir ERDDAP .
    • Sonuçlarda küçük bir fark: Hayır | Kısmen, ERDDAP™ Sonuçların başlangıcında "" olacak. (Daha önce "" dizeleri) . Evet ile, veritabanı olabilir (Postgres yapacak) Sonuçlar sonunda "" (Daha sonra "" dizeleri) . Bu aynı zamanda kısa kelime ile başlayan daha uzun kelimelere karşı kısa kelimeleri de etkileyebilir. Örneğin, ERDDAP™ "Simons"tan önce "Simons" olacak, ama bir veritabanının nasıl bir araya getireceğinden emin değilim.
    • Bir örnek:
        <sourceCanOrderBy>yes</sourceCanOrderBy>  

 

<KaynaklarExpandedFP\_EQ>

  • [ ** <KaynaklarExpandedFP\_EQ> ** ] (#kaynakedsekpandedfp_eq) EDTable içinde bir OPence etiketi<Dataset> etiketi bu spesans (Gerçek gerçek gerçek gerçek gerçek gerçek gerçek gerçek (varsayılan varsayılan) veya yanlış veya) Kaynak sorgularla ilgili sorgulara ihtiyaç duyarsa,<numeric Değişken><yüzenPointValue> (ve !=, >=,<=) Örneğin,
    <sourceNeedsExpandedFP\\_EQ>false</sourceNeedsExpandedFP\\_EQ>
    • Bazı veri kaynakları için, = içeren sayısal sorgular! =,<= veya >= yüzen nokta numaraları ile arzulanan olarak çalışmayabilir. Örneğin, uzunlık için bir arama =220.2 değeri 220.20000000000001 olarak depolandığında başarısız olabilir.
    • Bu sorun ortaya çıkıyor çünkü yüzen nokta sayıları Bilgisayarlarda tam olarak temsil edilmedi .
    • KaynaklarExpandedFP\_EQ Gerçekleştirmek için ayarlanır (varsayılan varsayılan) , ERDDAP™ Bu problemden kaçınmak için veri kaynağına gönderilen sorguları ayarlar. Bu seti gerçeğe bırakmak her zaman güvenli ve iyi.  

< sourceUrl Vegt;

  • [ ** < sourceUrl > > > > ** ] (#sourceurl) Bir veri kümesinin globaldeki ortak bir etiket< addAttributes > Verilerin kaynağı olan URL'yi tanımlayan etiket.
    • Bir örnek:
        <sourceUrl>https://oceanwatch.pfeg.noaa.gov/thredds/dodsC/satellite/VH/chla/1day</sourceUrl>  
    (Ama hepsini tek bir çizgiye koyun)
    • In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In ERDDAP™ Tüm veri setleri bir " sourceUrl “ Kullanıcılara gösterilen birleşik küresel özelliklerde.
    • Çoğu veri kümesi için, bu etiket REQUIRED'dir. Dataset type'in bu REQUIRED olup olmadığını öğrenmek için açıklamasına bakın.
    • Bazı veri setleri için, ayrı ayrı< sourceUrl > etiket izin verilmez. Bunun yerine, "Bir" sağlamanız gerekir. sourceUrl " " "" Küresel özellikler Genellikle küresel \> addAttributes <. Gerçek bir kaynak URL'si yoksa (Örneğin, veriler yerel dosyalarda depolanırsa) Bu özellik genellikle sadece bir yer sahibi değeri vardır, örneğin,<Adı="name"> (yerel dosyalar) </att>
    • Çoğu veri kümesi için, bu, verileri talep etmek için kullanılan URL'nin temelidir. Örneğin, örneğin, DAP sunucular, bu, .dods, .das, .dds veya .html eklenebilir.
    • O zamandan beri datasets.xml Bir XML dosyası, sen de kod '&', '<URL'de "&", "<" ve ">"
    • Çoğu veri kümesi türü için, ERDDAP™ Orijinali ekler sourceUrl (Kaynak kodunda "yerelKaynakUrl") Ve Küresel özellikler (Kaynak kodunda "halkı KaynakUrl" nerede olur?) . Veri kaynağı yerel dosyalar olduğunda, ERDDAP™ ekliyorlar ekliyorlar sourceUrl =" (yerel dosyalar) “Dünya özelliklerine güvenlik önlemleri olarak. Veri kaynağı bir veritabanı olduğunda, ERDDAP™ ekliyorlar ekliyorlar sourceUrl =" (kaynak veritabanı) “Dünya özelliklerine güvenlik önlemleri olarak. Bazı veri setlerinizin kamu dışı kullanımlarını kullanması durumunda sourceUrl " (Genellikle bilgisayar DMZ'de veya yerel bir LAN'da olduğu için) kullanabilirsiniz [<TurnToPublic SourceUrl>) (#converttopublicsourceurl) Yerelye nasıl dönüştürüleceğini belirtmek için etiketler sourceUrl Halk için sourceUrl s.
    • A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A sourceUrl Başlamak olabilir http:// , https:// , ftp #, ve belki de diğer ekler. https Bağlantılar, kaynağın olduklarını söyleyenler olduğundan emin olmak için kaynağın dijital sertifikasını okuyun ve kontrol edin. Nadir durumlarda, bu kontrol hatayla başarısız olabilir "javax.net.ssl.SSLProtocolException: elhake uyarısı: tanınmamış\_name." Bu muhtemelen sertifikadaki alan adı nedeniyle, kullandığınız alan adı eşleştirmez. You can and should read the details of the details of the details of the sourceUrl Web tarayıcınızda sertifika, özellikle "DNS Name"lerin "Subject Alternative Name" bölümündeki listesi.

Bazı durumlarda, sourceUrl Kullandığınız, sertifikadaki alan adının bir parçası olabilir. Örneğin, https://podaac-opendap.jpl.nasa.gov/opendap/allData/ccmp/L3.5a/monthly/flk/Bu hatayı atacak, ama https://opendap.jpl.nasa.gov/opendap/allData/ccmp/L3.5a/monthly/flk/Sertifikada alan adı kullanan, değil. Bu durumlarda çözüm bu nedenle sertifikadaki alan adını bulmak ve kullanmak. Sertifikada bulamazsanız, veri sağlayıcı ile iletişime geçin.

Diğer durumlarda, sertifikadaki alan adı bir grup isim için olabilir. Eğer bu ortaya çıkarsa veya sorun aksi takdirde çözülebilir, lütfen e-posta Chris. John, noaa.gov'da sorunu rapor etmek için.  

<addAttributes>

  • [ ** < addAttributes > > > > ** ] (#addattributes) Her veri kümesi için ve her değişken için bir OPLOW etiketidir. ERDDAP Yöneticiler bir veri kümesi ve değişkenleri ile ilişkili metadata özelliklerini kontrol eder.
    • ERDDAP™ Dataset'in kaynağının özelliklerini birleştirir ("sourceAttributes") Ve " addAttributes "Hangi tanımlayacağınız datasets.xml (Hangi önceliği var) "kombinedAttributes" yapmak için, hangisidir ERDDAP™ Kullanıcılar görüyorlar. Böylece, kullanabilirsiniz addAttributes kaynağın değerlerini yeniden tanımlamak içinAttributes, yeni özellikler eklemek veya özellikleri kaldırmak.
    • The The The The The The The The< addAttributes > tag encloses 0 or more ** <att> ** Bireysel özellikleri belirtmek için kullanılan alttags.
    • Her özellik bir isim ve bir değerden oluşur (Hangi belirli bir veri türü vardır, örneğin, çifte) .
    • Belirli bir isim ile sadece bir özellik olabilir. Daha fazlası varsa, son kişinin önceliği vardır.
    • Değer tek bir değer veya bir uzay destekli değerler listesi olabilir.
    • Syntax
      • Bunun emri<Att> alttags içeride addAttributes Önemli değil.
      • The The The The The The The The<Att> subtag formatıdır
          <att name="*name*" \\[type="*type*"\\] >*value*</att>
      • Tüm özelliklerin hedef adı MUST bir mektupla başlar (A-Z, a-z) Ve MUST sadece A-Z, a-z, 0-9 veya '\_' karakterleri içerir.
      • Eğer bir<Att> subtag'nın bir değeri veya null değeri yoktur, bu özellik birleşik özelliklerden kaldırılacaktır. Örneğin,<Adı="rows" /> birleşik özelliklerden satırları kaldıracaktır. Örneğin,<Adı="coords">null</att> birleşik özelliklerden koordinatları kaldıracaktır.
Özellikler Tipi Tipi Tipi Tipi
  • [Gerekli tip değeri için<► Alttags] (#attributetype) Değerler için veri türünü gösterir. Varsayılan tip String. Bir String özelliğinin örneği:
    <att name="creator\\_name">NASA/GSFC OBPG</att>
    • Tek değerler için geçerli türler Byte (8bit Full) , kısa (16-bit tamsayı imzaladı) , int (32-bit tamsayı imzaladı) Uzun süre (64-bit tamsayı imzaladı) , yüz yüze (32-bit yüz noktası) , double (64-bit yüzen nokta) , hayır, ve String. Örneğin,
      <att name="scale\\_factor" type="float">0.1</att>

Bu notlara bakın Yardım türü . Bu notlara bakın Uzun veri türü .

  • Uzay destekli değerler için geçerli türler (veya tek değerler) The ByteList, shortList, unsignedShortList, charList, intList, longList, faceList, doubleClick Liste. Örneğin,
    <att name="actual\\_range" type="doubleList">10.34 23.91</att>  

UnsignedShortList, imzalanmamış kısaların listesini belirtmenize izin verir, ancak Unicode karakterlerinin bir listesine dönüştürülecektir (örneğin, "65 67 69" "A C E" olarak dönüştürülecektir. Bir kar listesi belirtirseniz, herhangi bir özel karakter (örneğin, uzay, çift alıntı, backslash,<#32 veya >#127) Bir NCCSV dosyasının veri bölümünde onları kodlayacak gibi (E.g., ", "", "\", " \n ", "Lou20ac") . Hiçbir dize listesi yok. String değerleri çok yönlü bir String olarak saklayın. Örneğin,

<att name="history">2011-08-05T08:55:02Z ATAM - made CF-1.6 compliant.  
2012-04-08T08:34:58Z ATAM - Changed 'height' from double to float.</att>

 

Global Attributes

  • [ ** Global Attributes / Global< addAttributes > > > > ** ] (#global-attributes) – < addAttributes > OPLOW etiketi içeride<Dataset> etiketi tüm veri kümesine uygulanan özellikleri değiştirmek için kullanılır.

    • ** Küresel Dünyayı Kullanın< addAttributes > dataset'in global özelliklerini değiştirmek. ** ERDDAP™ Dataset'in kaynağından küresel özellikleri birleştirir (** kaynağıAttributes ) ve küresel addAttributes Hangisinde tanımlıyorsunuz datasets.xml (Hangi önceliği var) Küreselleşmek için BirleştirilmişAttributes ** İşte bu, ERDDAP™ Kullanıcılar görüyorlar. Böylece, kullanabilirsiniz addAttributes kaynağın değerlerini yeniden tanımlamak içinAttributes, yeni özellikler eklemek veya özellikleri kaldırmak.
    • Görün ki, ** < addAttributes > > > > Bilgi) (#addattributes) Bu, küresel ve değişken için geçerlidir < addAttributes > > > > ** .
    • FGDC ve ISO 19115-2/19139 Metadata – Normalde, ERDDAP™ otomatik olarak ISO 19115-2/19139 ve FGDC üretecektir. (FGDC-STD-001-1998) XML metadata dosyaları, veri setinin metadata'dan bilgi kullanarak. Yani, İyi dataset metadata iyi gidiyor ERDDAP - ISO 19115 ve FGDC metadata'yı yarattı. Lütfen veri setlerinizi geliştirmek için çok zaman ve çaba koymayı düşünün (Bu, her neyse yapılacak iyi bir şey) . ISO 19115 ve FGDC metadata'yı üretmek için kullanılan veri setlerinin çoğu ACD metadata standart Ve aşağıda belirtilmiştir.
    • Birçok küresel özellik bu konuda özeldir ERDDAP™ Onlara bakar ve çeşitli şekillerde kullanır. Örneğin, bir bağlantı infoUrl Web sayfaları veri kümeleri ve diğer yerler listeleriyle dahil edilir, böylece kullanıcılar veri setleri hakkında daha fazla bilgi bulabilirler.
    • Bir kullanıcı verilerin alt kümesini seçtiği zaman, küreselAttributes değişkenin uzun, enlem, yükseklik, yükseklik, yükseklik ile ilgili (veya derinlik) Ve zaman aralıkları (Örneğin, Güney most\_Northing, Northernest\_Northing, time\_coverage\_start, time\_coverage\_end) Otomatik olarak oluşturulur veya güncellenir.
    • Basit bir örnek global< addAttributes >
      <addAttributes> 
      <att name="Conventions">COARDS, CF-1.6, ACDD-1.3</att>
      <att name="infoUrl">https://coastwatch.pfeg.noaa.gov/infog/PH\\_ssta\\_las.html</att>
      <att name="institution">NOAA CoastWatch, West Coast Node</att>
      <att name="title">SST, Pathfinder Ver 5.0, Day and Night, Global</att>
      <att name="cwhdf\\_version" />
      </addAttributes>

Boş cwhdf\_vers özelliği kaynağı cwhdf\_vers özelliğine neden olur (Eğer herhangi bir) Son, bir dizi özellik listesinden kaldırıldı.

  • Bu bilgiyi tedarik etmek yardımcı olur ERDDAP™ Daha iyi bir iş yapın ve kullanıcıların veri setlerini anlamalarına yardımcı olur. İyi metadata bir veri kümesi kullanılabilir. Yetersiz metadata bir veri kümesi işe yaramaz hale getirir. Lütfen metadata özellikleri ile iyi bir iş yapmak için zaman ayırın.
Özel küresel özellikler ERDDAP™
Kabul
  • Kabul ve acknowledgment (Bundan sonra ACDDDD metadata standart) Destek sağlanan grubu veya grupları kabul etmenin bir RECOMMENDED yolu (Özellikle finansal olarak, finansal) Bu verileri yaratan proje için. Örneğin,
<att name="acknowledgment">AVISO</att>

ACD 1.0 ve 1.1'un "acknowledgment" yazımını kullandığını unutmayın. (ABD'de her zamanki büyü budur.) Ancak ACD 1.3 bunu "bilgi" olarak değiştirdi. (ABD'de her zamanki büyü budur.) . Benim anlayışım, değişimin aslında bir kaza olduğu ve kesinlikle değişimin Ramificationlerini tanımadıklarıdır. Ne bir karmaşa! Şimdi dünya çapında milyonlarca veri dosyası var, "bildirmek" ve "uygunluk" olan milyonlar var. Bu, standart olarak "basit" değişikliklerini vurgulamaktadır ve standartlarda istikrar ihtiyacını vurgulamaktadır. Çünkü ACD 1.3 (ACD'nin versiyonu budur ki, ERDDAP™ destek desteği destek desteği) “Bilgi” diyor, işte bu, ERDDAP™ (Özellikle GenrateDatasets X ml) teşvik eder.  

cdm\_altitude\_proxy
  • cdm\_altitude\_proxy Sadece EDDTable veri kümeleri için bir yükseklik veya derinlik değişkeni yoktur, ancak üst veya derinlik için bir proxy veya derinlik için bir değişken vardır. (Örneğin, baskı, sigma, şişeNumber) Bu özelliği bu değişkeni tanımlamak için kullanabilirsiniz. Örneğin,
<att name="cdm\\_altitude\\_proxy">pressure</att>  

Eğer cdm\_data\_type Profil veya TrajectoryProfile ve yükseklik değişkeni yoktur, cdm\_altitude\_proxy MUST tanımlanacaktır. cdm\_altitude\_proxy tanımlanırsa, ERDDAP™ Aşağıdaki metadata'yı değişkene ekleyecek: \_Coord AxisType=Height ve eksen =Z.  

cdm\_data\_type
<att name="cdm\\_data\\_type">Point</att>  

CDM hala gelişiyor ve tekrar değişebilir. ERDDAP™ İlgili ve daha ayrıntılı Discrete Sampling Geometries (DSG) Bölüm 1.Bölüm 1.6 metadata kongreleri (Daha önce CF Point Observation Conventions olarak adlandırılır) .

  • Ya veri kümesinin global kaynağıAttributes Ya da küresel< addAttributes > > > > MUST, cdm\_data\_type özelliği içerir. Birkaç veri kümesi türü (EDDTable gibi FromObis) Bunu otomatik olarak ayarlar.
  • For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For EDDGrid Veri setleri, cdm\_data\_type seçenekleri Grid (Varsayılan ve en yaygın türünden uzak EDDGrid datasets) , MovingGrid, Diğer, Point, Profil, RadialSweep, TimeSeries, TimeSeriesProfile, Swath, Trajectory ve TrajectoryProfile. Şu anda, EDDGrid Herhangi bir ilgili metadata'nın belirtilmesine gerek yok, ne de verilerin cdm\_data\_type ile eşleşmesini kontrol ediyor. Bu muhtemelen yakın gelecekte değişecektir.
  • EDDTable, CDm\_data\_type'yi titiz bir şekilde kullanıyor, CDM'den ziyade, bazı nedenlerden dolayı DSG ile tutarlı olarak güncellenmedi. Bir veri kümesinin metadatası uymazsa ERDDAP 's cdm\_data\_type's requirements (Aşağıdaki aşağıda bakınız) Ancak veri kümesi yükleyemez ve bir tane üretecektir hata mesajı . (Bu iyi bir şey, hata mesajının size neyin yanlış olduğunu söyleyeceği anlamında, bunu düzeltebileceğiniz için.) Ve eğer veri kümesinin verileri veri kümesinin metadata kurulumuyla eşleşmezse (e.g., belirli bir istasyon için zaman veri setinde bir enlem değeri varsa) Ancak, veriler için bazı talepler yanıtdaki yanlış verileri geri getirecektir. Bu hakkın hepsini aldığınızdan emin olun.

Tüm bu veri kümeleri için, Sözleşmelerde ve Metadata\_Conventions Global özellikler, lütfen CF-1.6'ya atıfta bulun (CF-1.0, 1.1, 1.2, 1.3, 1.4 veya 1.5 değil) CF-1.6, Discrete Sampling Geometry ile ilgili değişiklikleri içerecek ilk sürümdür. (DSG) Kongreler.

  • ** ERDDAP™ CF DSG'ye doğru olmayan bir ilişkisi var**
  • ERDDAP™ Geçerli bir DSG veri setini zaten geçerli bir DSG dosyasından yapabilirsiniz (s) , veya DSG için ayarlanmamış bir kaynak veri kümesi dışında, ancak metadatatata değişiklikleri aracılığıyla yapılabilir. (Bazıları hangisidir ERDDAP - DSG kurulumunu belirtmek için daha genel bir yaklaşım sağlamak için özel olarak) .
  • ERDDAP™ Bir veri kümesi yüklerken birçok geçerli test yapar. Eğer bir cdm\_data\_type olan veri seti varsa (veya featureType ) Özellikler başarıyla Yükler ERDDAP™ Sonra, ERDDAP™ Dataset'in DSG gereksinimleriyle buluştuğunu söylüyor (Aksi takdirde, ERDDAP™ bulduğu ilk sorunu açıklayan bir istisna atacaktır.) . WARNING: başarıyla yüklenmiş bir veri kümesi DSG gereksinimlerini karşılamak için görünüyor (Özelliklerin doğru kombinasyonuna sahiptir) Ancak hala yanlış ayarlanmış olabilir, yanlış sonuçlara yol açabilir .nc CF ve .nc CFMA yanıt dosyaları. (Yazılım, diğerlerinde bazı şekillerde akıllıdır.)
  • Dataset'in metadata'ya baktığınızda ERDDAP™ Ancak DSG veri setinde olduğu görülüyor ERDDAP 'In internal format (Bir dev, veritabanı benzeri masa) . DSG formatlarından birinde değil (E.g., boyutlar ve metadata doğru değil) Ancak veri kümesini bir DSG veri seti olarak tedavi etmek için gerekli olan bilgiler metadatata (Örneğin, cdm\_data\_type=TimeSeries and cdm\_time\_variables= ACsvListOfStationRelatedVarables Küresel metadata ve cf\_role=time Series\_id bazı değişken için) .
  • Bir kullanıcı veri kümesinin bir alt kümesini talep ederse .nc CF (Birbiri .nc DSG'nin Contigcious Ragged Dizi dosyası formatı) veya .nc CFMA dosyası (Birbiri .nc DSG'nin Çok boyutlu Dizi dosyası formatı) Ancak bu dosya geçerli bir CF DSG dosyası olacaktır. WARNING: Ancak, veri kümesi yanlış ayarlanmışsa (Bu yüzden metadata tarafından yapılan vaatler gerçek değil) Ardından yanıt dosyası teknik olarak geçerli olacak, ancak bir şekilde yanlış olacaktır.  
EDDTable cdm_data_types
  • EDDTable veri setleri için, cdm\_data\_type seçenekleri (ve ilgili gereksinimler ERDDAP ) Bunlardır
Point Point Point
  • Point Point Point - ilgili zamanlarda ve yerlerde alınan ölçümler için.
  • Tüm cdm\_data\_types other than Other, Point datasets MUST has longitude, latitude, and time variables.
Profil Profili
  • Profil Profili - bir anda alınan ölçümlerin bir setidir, tek bir latitude uzun bir yerde, ama bir derinlikten daha fazlası (veya yüksek irtifa veya) . Veri seti bu profillerin koleksiyonu olabilir, örneğin, farklı yerlerden 7 profil. Bu cdm\_data\_type, profillerin herhangi biri arasında herhangi bir mantıksal bağlantı anlamına gelmez.

  • Değişkenlerden biri (Örneğin, profil\_ Number) MUST'nin değişken özelliği cf\_role = profiller, profilleri eşsiz olarak tanımlayan değişkenleri tanımlamak için vardır.

    <att name="cf\\_role">profile\\_id</att>  

Başka bir değişken uygun değilse, zaman değişkenini kullanmayı düşünün.

cdm\_ Profil_variables
  • Dataset MUST, küreselAttribute'yi içeriyor cdm\_ Profil_variables Değerin her profil hakkında bilgi sahibi olan değişkenlerin bir komünite listesi olduğu yerde. Verilen bir profil için, bu değişkenlerin değerleri MUST sürekli. Örneğin,
    <att name="cdm\\_profile\\_variables">profile\\_number,time,latitude,longitude</att>

Liste MUST, cf\_role = profil\_id değişkeni ve profil hakkında bilgi ile diğer tüm değişkenler ve zaman, enlem ve uzunlık içerir. Liste asla yükseklik, derinlik veya herhangi bir gözlem değişkenlerini içerecektir.  

\[ Görüş: cdm\_data\_type=Profile nadiren kullanılmalıdır. Uygulamada, verilen bir veri kümesi genellikle aslında bir Zaman serisiProfile (Sabit bir pozisyonda profiller) veya bir TrajectoryProfile (Bir yörünge boyunca profiller) Ve bu yüzden böyle düzgün bir şekilde tanımlanmalıdır. \]

Zaman serisi
  • Zaman serisi - bir ölçüm dizisidir (E.g., deniz suyu sıcaklığı) Bir, sabit, entitude, uzunlık, derinlik (veya yüksek irtifa veya) Yer. (Bunu " istasyon" olarak düşünün.) Veri seti bu Zaman serisinin bir koleksiyonu olabilir, örneğin, her 3 farklı yerden bir dizi.
  • Değişkenlerden biri (Örneğin, istasyon\_id) MUST'nin değişken özelliği cf\_role=timese\_id'in istasyonları benzersiz olarak tanımlayan değişkenleri tespit etmesi.
    <att name="cf\\_role">timeseries\\_id</att>
cdm\_timese\_variables
  • Dataset MUST, küreselAttribute'yi içeriyor cdm\_timese\_variables Değerin her istasyon hakkında bilgi sahibi olan değişkenlerin bir komünite listesi olduğu yerde. Verilen bir istasyon için, bu değişkenlerin değerleri MUST sürekli. Örneğin,
    <att name="cdm\\_timeseries\\_variables">station\\_id,station\\_type,latitude,longitude</att>

Liste MUST, cf\_role =timese\_id değişkeni ve istasyon hakkında bilgi sahibi tüm diğer değişkenler içerir, ki neredeyse her zaman enlem ve uzunlık içerir. (ve yükseklik veya derinlik, eğer mevcutsa) . Liste asla zaman veya herhangi bir gözlem değişkenlerini içerecektir.

  • Bazı moored buoys için, bir veri setinin iki latitude ve uzunlık değişkenine sahip olabilir:
    1. Sürekli ve uzunlık değerlerin bir çift sürekli (i.e., mooring'in sabit yeri) . In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In ERDDAP™ Bu değişkenlere bu değişkenleri verin destinationName s of latitude and longitude, and include these variables in the list of cdm\_time Series\_variables.
    2. Her gözlem ile ilişkili enlem ve uzunlık değerleri. In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In ERDDAP™ Bu değişkenleri farklılaştırın destinationName s (e.g., kesinLat ve kesin Lon) Ve bu değişkenleri cdm\_time Series\_variables listesinde içermez. Bunun nedeni teorik bir bakış açısıyla, bir DSG Time serisi veri kümesi için, enlem ve uzunlık (ve yükseklik veya derinlik, eğer mevcutsa) İstasyonun yeri MUST sürekli.
Zaman serisiProfile
  • Zaman serisiProfile - tek, sabit, enlem uzunluğundaki bir yerde alınan profillerin bir dizisi içindir. Her profil birden fazla yükseklikte veya derinlikte alınan ölçümlerin bir setidir. Veri kümesi bu Zaman serisiProfiles koleksiyonu olabilir, örneğin 12 farklı yerde alınan profillerin bir dizi.
  • Değişkenlerden biri (Örneğin, istasyon\_id) MUST'nin değişken özelliği cf\_role=timese\_id'in istasyonları benzersiz olarak tanımlayan değişkenleri tespit etmesi.
    <att name="cf\\_role">timeseries\\_id</att>
  • Değişkenlerden biri (Örneğin, profil\_ Number) MUST'nin değişken özelliği cf\_role = profiller, profilleri eşsiz olarak tanımlayan değişkenleri tanımlamak için vardır.
    <att name="cf\\_role">profile\\_id</att>  
    (Verilen bir profil sadece belirli bir zaman serisi için benzersiz olmalıdır.) Başka bir değişken uygun değilse, zaman değişkenini kullanmayı düşünün.
  • Dataset MUST, globalAttribute cdm\_time Series\_variables'i içerir, değer her istasyon hakkında bilgi sahibi olan değişkenlerin bir komün listesidir. Verilen bir istasyon için, bu değişkenlerin değerleri MUST sürekli. Örneğin,
    <att name="cdm\\_timeseries\\_variables">station\\_id,station\\_type,latitude,longitude</att>

Liste MUST, cf\_role=timeme\_id değişkeni ve istasyon hakkında bilgi sahibi tüm diğer değişkenler içerir, ki neredeyse her zaman enlem ve uzunlık içerir. Liste asla zaman, yükseklik, derinlik veya herhangi bir gözlem değişkenlerini içerecektir.

  • Dataset MUST, globalAttribute cdm\_ profil\_variables'i içerir, değer her profil hakkında bilgi sahibi olan değişkenlerin bir komün listesidir. Verilen bir profil için, bu değişkenlerin değerleri MUST sürekli. Örneğin,
    <att name="cdm\\_profile\\_variables">profile\\_number,time</att>

Liste MUST, cf\_role = profil\_id değişkeni ve neredeyse her zaman zaman zaman kapsayan profil hakkında diğer tüm değişkenler içerir. Liste asla latitude, uzunlık, yükseklik, derinlik veya herhangi bir gözlem değişkenlerini içerecektir.

Trajectory
  • Trajectory - bir yörünge boyunca alınan ölçüm dizisidir (Uzay ve zaman boyunca bir yol) (E.g., deniz_water\_ sıcaklık, su yoluyla hareket ettiği gibi bir gemi tarafından alınır.) . Veri seti bu Trajektörlerin bir koleksiyonu olabilir, örneğin, her 4 farklı gemiden bir dizi.
  • Değişkenlerden biri (Örneğin, gemi\_id) MUST'nin özelliği cf\_role=trajectory\_id'in, trajektörleri eşsiz bir şekilde tanımlayan değişkenleri tespit etmesidir.
    <att name="cf\\_role">trajectory\\_id</att>
cdm\_trajectory\_variables
  • Dataset MUST, küreselAttribute'yi içeriyor cdm\_trajectory\_variables Değerin her yörünge hakkında bilgi sahibi olan değişkenlerin bir komünite listesi olduğu yerde. Verilen bir yörünge için, bu değişkenlerin değerleri MUST sürekli. Örneğin,
    <att name="cdm\\_trajectory\\_variables">ship\\_id,ship\\_type,ship\\_owner</att>

Liste MUST, cf\_role=trajectory\_id değişkenini ve diğer tüm değişkenleri yörünge hakkında bilgi ile içerir. Liste asla zaman, entitude, uzunlık veya herhangi bir gözlem değişkenlerini içerecektir.

TrajectoryProfile
  • TrajectoryProfile - bir yörünge boyunca alınan profillerin bir dizisidir. Veri kümesi bu TrajectoryProfiles koleksiyonu olabilir, örneğin, 14 farklı gemi tarafından alınan profillerin bir dizi.
  • Değişkenlerden biri (Örneğin, gemi\_id) MUST'nin değişken özelliklerine sahip cf\_role=trajectory\_id, trajektörleri benzersiz olarak tanımlayan değişkenleri tanımlamak için.
    <att name="cf\\_role">trajectory\\_id</att>
  • Değişkenlerden biri (Örneğin, profil\_ Number) MUST'nin değişken özelliği cf\_role = profiller, profilleri eşsiz olarak tanımlayan değişkenleri tanımlamak için vardır.
    <att name="cf\\_role">profile\\_id</att>  
    (Verilen bir profil sadece belirli bir yörünge için benzersiz olmalıdır.) Başka bir değişken uygun değilse, zaman değişkenini kullanmayı düşünün.
  • Dataset MUST, küreselAttribute cdm\_trajectory\_variables'ı içerir, değer her yörünge hakkında bilgi sahibi olan değişkenlerin bir listesidir. Verilen bir yörünge için, bu değişkenlerin değerleri MUST sürekli. Örneğin,
    <att name="cdm\\_trajectory\\_variables">ship\\_id,ship\\_type,ship\\_owner</att>

Liste MUST, cf\_role=trajectory\_id değişkenini ve diğer tüm değişkenleri yörünge hakkında bilgi ile içerir. Liste asla profille ilgili değişkenler, zaman, enlem, uzunlık veya herhangi bir gözlem değişkenlerini içerecektir.

  • Dataset MUST, globalAttribute cdm\_ profil\_variables'i içerir, değer her profil hakkında bilgi sahibi olan değişkenlerin bir komün listesidir. Verilen bir profil için, bu değişkenlerin değerleri MUST sürekli. Örneğin,
    <att name="cdm\\_profile\\_variables">profile\\_number,time,latitude,longitude</att>

Liste MUST, cf\_role = profil\_id değişkeni ve neredeyse her zaman zaman, entitude ve uzunlık içeren diğer tüm değişkenler içerir. Liste asla yükseklik, derinlik veya herhangi bir gözlem değişkenlerini içerecektir.

Diğer Diğer Diğer Diğer
  • Diğer Diğer Diğer Diğer - gereksinimlerini yoktur. Dataset diğer seçeneklerden birine sığmıyorsa, özellikle de, veri setinin enlem, uzun ve zaman değişkenleri içermediğini kullanın.  
  • Tüm EDDTable veri setleri bir cdm\_data\_type other than "Diğer" MUST have longitude, latitude, and time variables.
  • Profiller ile veri kümeleri MUST'nin bir yükseklik değişkeni, bir derinlik değişkeni veya bir derinlik değişkeni vardır. cdm\_altitude\_proxy değişken.
  • İdeal cdm\_data\_type için tüm gereksinimleri uygun bir veri kümesi yapamazsanız, "Point" kullanın. (Hangi birkaç gereksinimleri vardır) Ya da "Diğer" (Hangi gereksinimleri yoktur) Bunun yerine.
  • Bu bilgi tarafından kullanılır ERDDAP™ Çeşitli şekillerde, örneğin, ama çoğunlukla yapmak için .nc CF dosyaları ( .nc Dataset'in cdm\_data\_type ile ilişkili Contigcious Ragged Series Representations ile uyumlu dosyaları) ve .nc CFMA dosyaları ( .nc Dataset'in cdm\_data\_type ile ilişkilendirilen Multiboyut Representations ile uyumlu olan dosyalar) Tanımlandığı gibi Discrete Sampling Geometries (DSG) Bölüm CF Daha önce "CF Point Observation Conventions" olarak adlandırılan metadata kongreleri.
  • Hint: Bu veri setleri için, doğru ayar için subsetVariables Genellikle CDm\_'de listelenen tüm değişkenlerin kombinasyonudur...\_variables özellikleri. Örneğin, TimeSeriesProfile için, cdm\_time Series\_variables plus the cdm\_literables.
contributor\_name
  • ** contributor\_name ** (Bundan sonra ACDDDD metadata standart) Bu veri kümesine katkıda bulunan bir kişiyi, organizasyonunu veya projesi tanımlamanın bir yoludur. (Örneğin, verilerin orijinal yaratıcısı, bu veri kümesinin yaratıcısı tarafından yeniden işlemeden önce) . Örneğin,
    <att name="contributor\\_name">NOAA OceanWatch - Central Pacific</att>  

Eğer "kontributor" gerçekten bir veri kümesine uygulanmazsa, bu özelliği omit. Karşılaştırmalı creator\_name Ancak bu bazen finansman kaynağına daha odaklanmış durumda.

contributor\_role
    <att name="contributor\\_role">Source of Level 2b data</att>  

Eğer "kontributor" gerçekten bir veri kümesine uygulanmazsa, bu özelliği omit.

Sözleşmeler
  • Sözleşmeler (Bundan sonra CF metadata standart) STRONGLY RECOMMENDED. (Gelecekte REQUIRED olabilir.) Değer, bu veri kümesinin takip ettiği metadata standartlarının bir komünite listesidir. Örneğin:
<att name="Conventions">COARDS, CF-1.6, ACDD-1.3</att>  

Kullanılan ortak metadata kongreleri ERDDAP™ şunlardır:

  • COARDS Sözleşmeler CF'e öncüdür.
  • İklim ve Tahmin (CF) Sözleşmeler Tavsiye edilen ve gerekli özelliklerin birçoğunun kaynağıdır ERDDAP . CF'in mevcut versiyonu "CF-1.6" olarak tanımlanır.
  • The The The The The The The The NetCDF Dataset Discovery için Katkı (ACDDDD) Tavsiye edilen ve gerekli özelliklerin birçoğunun kaynağıdır ERDDAP . ACDDD'nin orijinal 1.0 versiyonu (Ethan Davis tarafından parlak bir çalışma parçası) , olarak tespit edildi Unidata Dataset Discovery v1.0 Şu anki mevcut (2015 yılında başlayarak) ACDD'nin 1.3 versiyonu olarak tanımlanır ACD-1.3 . Eğer veri setleriniz kullanılıyorsa Unidata Dataset Discovery v1.0, sizi teşvik ediyoruz ACD-1.3 kullanmak için veri setlerinizi değiştirin .

Veri setiniz bazı ek metadata standardını takip ederse, lütfen Sözleşmelerdeki CSV listesine adını ekleyin.

coverage\_content\_type
  • ** coverage\_content\_type ** (Bundan sonra ISO 19115 metadata standart) Ağlanmış verileri tanımlamak için RECOMMENDED yoldur (in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in EDDGrid datasets) . Örneğin,
<att name="coverage\\_content\\_type">modelResult</att>  

Tek izin verilen değerler yardımcı Bilgi, Görüntü, ModelResult, fiziksel Ölçme Değerlendirme (ISO 19115 metadata üretildiği varsayılan) kaliteBilgi, referans Bilgileri ve tematik sınıflandırma. (EDTable veri setleri için bu etiketi kullanmayın.)

creator\_name
  • ** creator\_name ** (Bundan sonra ACDDDD metadata standart) Kişiyi, organizasyonu veya projeyi tanımlamak için RECOMMENDED yoldur (Belirli bir kişi veya organizasyon değilse) En çok yaratılıştan sorumlu (veya en son yeniden işleme) Bu verilerin. Örneğin,
<att name="creator\\_name">NOAA NMFS SWFSC ERD</att>  

Veriler yaygın olarak yeniden işlendirilseydi (Örneğin, seviye 2 ila seviye 3 veya 4 seviyesindeki uydu verileri) Daha sonra genellikle reprocessor yaratıcı olarak listelenir ve orijinal yaratıcı listelenir contributor\_name . Karşılaştırmalı Proje projesi Bu daha esnektir, çünkü bir kişiyi, bir organizasyonu veya bir proje belirleyebilir.

creator\_email
  • ** creator\_email ** (Bundan sonra ACDDDD metadata standart) Bir e-posta adresi tanımlamak için RECOMMENDED yoldur (Doğru formatlı) Bu, yaratıcı ile iletişim kurmanın bir yolunu sağlar. Örneğin,
<att name="creator\\_email">erd.data@noaa.gov</att>  
creator\_url
  • ** creator\_url ** (Bundan sonra ACDDDD metadata standart) Veri setini veya yaratıcının bu veri kümesi hakkında bilgi sahibi olan bir URL'yi oluşturmak için RECOMMENDED yoludur. (Ama bu daha fazlası infoUrl ) . Örneğin,
<att name="creator\\_url">https://www.pfeg.noaa.gov</att>  
date\_created
  • ** date\_created ** (Bundan sonra ACDDDD metadata standart) Verinin ilk yaratılmış olduğu tarihi tanımlamak için RECOMMENDED yoldur (Örneğin, bu formda işlendi) ISO 8601 formatında. Örneğin,
<att name="date\\_created">2010-01-30</att>  

Veriler veri kümesine periyodik olarak eklenirse, bu orijinal verilerin mevcut olduğu ilk tarihtir.

date\_modified
  • ** date\_modified ** (Bundan sonra ACDDDD metadata standart) Verinin son değiştirildiği tarihi tanımlamak için RECOMMENDED yoldur (Örneğin, bir hata düzeltildiğinde veya en son veriler eklendiğinde) ISO 8601 formatında. Örneğin,
<att name="date\\_modified">2012-03-15</att>  
date\_issued
  • ** date\_issued ** (Bundan sonra ACDDDD metadata standart) Örneğin, 2012-03-15'te verilerin ilk olarak başkaları için mevcut olduğu tarihi tanımlamak için RECOMMENDED yoldur. Örneğin,
<att name="date\\_issued">2010-07-30</att>  

Örneğin, veri kümesi bir aya sahip olabilir date\_created 2010-01-30, ancak sadece 2010-07-30'da halka açık olarak yapıldı. date\_issued Daha az yaygın olarak daha az kullanılır date\_created ve date\_modified . If if if if if if if if if if if if if if if if if if if if if if if if if if if if if date\_issued Ölmüş, aynı olduğu varsayılır date\_created .

küresel küresel küresel küresel küresel küresel küresel drawLandMask
  • ** drawLandMask ** – Bu, tarafından kullanılan bir dışsal küresel özelliktir ERDDAP™ (ve metadata standartları yok) Bu, veri kümesinin A Graph formunu yaptığı "Draw Land Maske" seçeneği için varsayılan değeri belirtir. ( * datasetID * .graph) Ve bir URL'deki veland parametresi, verilerin bir haritasını talep ediyor. Örneğin,
<att name="drawLandMask">over</att>  

Görün bakalım, drawLandMask Genel bakış genel bakış .

featureType
  • ** featureType ** (Bundan sonra CF metadata standart) IGNORED ve / veya REPLACED. Eğer veri kümesinin cdm\_data\_type uygun, ERDDAP™ otomatik olarak onu oluşturmak için kullanır featureType Özellikler. Bu yüzden eklemek için ihtiyacınız yoktur.

Ancak, kullanıyorsanız, kullanıyorsanız EDDTable FromNcCFFiles Takip eden dosyalardan bir veri kümesi oluşturmak CF Discrete Sampling Geometries (DSG) standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart Ancak dosyaların kendileri olması gerekir featureType Doğru bir şekilde tanımlanabilir, bu yüzden ERDDAP™ dosyaları doğru şekilde okuyabilirsiniz. Bu, bu tür dosya için CF DSG gerekliliklerinin bir parçasıdır.  

Tarih tarihi
  • Tarih tarihi (Bundan sonra CF ve ACDDDD metadata standartları) Verinin geçtiği her işlem adım için bir çizgi ile bir RECOMMENDED multi-line String global özelliktir. Örneğin,
<att name="history">2011-08-05T08:55:02Z CMOR: Rewrote data to comply with CF standards.  
2012-04-08T08:34:58Z CMOR: Converted 'height' type from 'd' to 'f'.</att>
  • İdeal olarak, her çizgi bir ISO 8601:2004 (E) Formated date+timeZ (Örneğin, 2011-08-05T08:55:02Z) Süreç adımının bir açıklamasıyla takip edin.
  • ERDDAP™ Bunu zaten mevcut değilse yaratır.
  • Zaten varsa, ERDDAP™ Mevcut bilgilere yeni bilgiler getirecek.
  • Tarih önemlidir, çünkü müşterilerin verilerin orijinal kaynağına geri dönmesine izin verir.
infoUrl
  • ** infoUrl ** Bu dataset hakkında daha fazla bilgi ile bir web sayfasının URL ile bir REQUIRED global özelliktir. (Genellikle kaynak kurumun web sitesinde) . Örneğin,
<att name="infoUrl">http://www.globec.org/</att>
  • Ya veri kümesinin global kaynağıAttributes Ya da küresel< addAttributes > > > > MUST bu özelliği içerir.
  • infoUrl Önemlidir çünkü müşterilerin orijinal kaynaktan gelen veriler hakkında daha fazla bilgi edinmelerine izin verir.
  • ERDDAP™ Bir bağlantıyı gösterir infoUrl Dataset'in Data Access Form üzerinde ( * datasetID * .html) , Make A Graph web page ( * datasetID * .graph) , ve diğer web sayfaları.
  • URL'nin bir sorgu parçası varsa (Sonra "?") Ama bu MUST zaten Yüzde yüzde encoded . Sınırlarda özel karakterleri kodlamanız gerekir (İlk ‘&’ ve ana '=' Eğer herhangi bir şey varsa) %HHHH'ye göre HH, karakterin 2 sayısal hexadecimal değeridir. Genellikle, sadece birkaç punkuation karakter dönüştürmeniz gerekir:% 25, ve%26, "%22,<%2C, =% 34D, >% 2B, +%2B, | %7C'ye, \[ %5B'ye, \] %5D'ye göre, uzay% 20'ye dönüşür ve tüm karakterleri UTF-8 formlarına dönüştürür ve sonra UTF-8 formunun her birini %HH formatına kodlar. (Yardım için bir programcı sormak) . Örneğin, & stationID >="41004" A) stationID %2241004%22 Yüzde enkoding genellikle eriştiğiniz zaman gereklidir ERDDAP Bir tarayıcıdan başka bir yazılım aracılığıyla. Tarayıcılar genellikle sizin için yüzde encoding ile ilgilidir. Bazı durumlarda, tüm karakterleri A-Za-z0-9\_'dan başka bir yüzde kodlamaya ihtiyacınız var! ~ ‘ ‘ ‘ () \*, ama yine de ilk "&" veya ana '=' . Programlama dilleri bunu yapmak için araçları vardır (örneğin, bakınız Java " java.net.URLEncoder
    ve Java script'sencodeURIComponent()] (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/encodeURIComponent) ) ve orada vardır Yüzde encode/decode sizin için .
  • O zamandan beri datasets.xml XML dosyası, sen de &-encode ALL '&', '<URL'de "&", "<", ve ">" yüzde kodlamadan sonra.
  • infoUrl eşsizdir çünkü ERDDAP . Herhangi bir metadata standardından değil.
kurum kurumu
  • kurum kurumu (Bundan sonra CF ve ACDDDD metadata standartları) Bu verilerin kaynağı olan kurumun kısa versiyonu ile bir REQUIRED global özelliktir (genellikle bir acronym, genellikle bir acronym, genellikle bir acronym, genellikle<20 karakter). Örneğin,
<att name="institution">NASA GSFC</att>
  • Ya veri kümesinin global kaynağıAttributes Ya da küresel< addAttributes > > > > MUST bu özelliği içerir.
  • ERDDAP™ Kurumsal her zaman bir veri kümesi listesini gösterir. Bir kurumun adı 20 karakterden daha uzunsa, sadece ilk 20 karakter veri setlerinin listesinde görünür olacaktır. (Ancak tüm kurum, fare cursor'u bitişik " üzerine koyarak görülebilir mi?") .
  • Kurumu listeye eklerseniz< categoryAttributes > > > > in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in ERDDAP " Kurulum.xml Dosya, kullanıcılar aynı kurumdan veri kümelerini kolayca bulabilir ERDDAP " Kategori tarafından Datasets için ara" ev sayfasında.
Anahtar kelimeler anahtar kelimeler
  • Anahtar kelimeler anahtar kelimeler (Bundan sonra ACDDDD metadata standart) Bir RECOMMENDED comma-separated listesi ve kısa cümleler (Örneğin, GCMD Science Keywords ) Bu, veri kümesini genel bir şekilde tanımlar ve veri kümesinin diğer bilgilerini varsaymayın. (Örneğin, okyanusografik veriler için, okyanus dahil) . Örneğin,
<att name="keywords">ano, circulation, coastwatch, currents, derived, Earth Science &gt; Oceans &gt; Ocean Circulation &gt; Ocean Currents, eastward, eastward\\_sea\\_water\\_velocity, experimental, hf radio, meridional, noaa, northward, northward\\_sea\\_water\\_velocity, nuevo, ocean, oceans, radio, radio-derived, scan, sea, seawater, velocity, water, zonal</att>  

O zamandan beri datasets.xml XML belgesi, karakterler ve,<Ve > Anahtar kelimeler gibi bir özellikte (e.g., GCMD bilim anahtar kelimeler) &amp olarak kodlanmalıdır;<Ve ve sent; sırasıyla. Bir veri kümesi yüklenen zaman ERDDAP ,

  • "Dünya Bilimi > ", onu eksik olan herhangi bir GCMD anahtar kelimenin başlangıcına eklenmiştir.
  • GCMD anahtar kelimeler Title Case'e dönüştürülür (i.e., ilk mektuplar başkentleştirilmiştir) .
  • Anahtar kelimeler sıralanmış bir düzen haline getirilir ve yeni karakterler kaldırılır.  
keywords\_vocabulary
  • ** keywords\_vocabulary ** (Bundan sonra ACDDDD metadata standart) Bir RECOMMENDED özelliğidir: Anahtar kelimelerinizde kelimeler/phrases için bir kılavuz takip ederseniz (Örneğin, GCMD Science Keywords) Bu kılavuzun adını buraya koyun. Örneğin,
<att name="keywords\\_vocabulary">GCMD Science Keywords</att>  
Lisans lisansı
  • Lisans lisansı (Bundan sonra ACDDDD metadata standart) Lisans ve/veya kullanım kısıtlamaları ile STRONGLY RECOMMENDED global bir özelliktir. Örneğin,
<att name="license">\\[standard\\]</att>
  • "If "If" if " \[ standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart standart \] “Eşit değerde meydana gelir, standart tarafından değiştirilecektir. ERDDAP™ Lisanstan lisans<standartLicense> etiketi ERDDAP " \[ tomcat \] /webapps/erddap/WEB-INF/classes/gov/noaa/pfel/erddap/util/messajlar.xml dosyası.  
Metadata\_Conventions
  • ** Metadata\_Conventions ** Eski zamanlardan itibaren ACD 1.0 (Hangi tespit edildi Metadata\_Conventions " olarak" Unidata Dataset Discovery v1.0") metadata standardı. Karakter değeri, bu veri kümesi tarafından kullanılan metadata kongrelerinin bir komünite listesi idi. Bir veri kümesi ACD 1.0 kullanıyorsa, bu özellik STRONGLY RECOMMENDED'dir, örneğin,
<att name="Metadata\\_Conventions">COARDS, CF-1.6, Unidata Dataset Discovery v1.0</att>  

Ama ERDDAP™ Şimdi ACD-1.3 tavsiye eder. Eğer varsa ACD-1.3 kullanmak için veri setlerinizi değiştirdi , kullanımı Metadata\_Conventions STRONGLY DISCOURAGED: Sadece kullanın [<Sözleşmeler> (#conventions) Bunun yerine.

processing\_level
<att name="processing\\_level">3</att>  
Proje projesi
  • Proje projesi (Bundan sonra ACDDDD metadata standart) Veri setinin bir parçası olduğunu belirlemek için bir OPTIONAL özelliğidir. Örneğin,
<att name="project">GTSPP</att>  

Veri kümesi bir projenin bir parçası değilse, bu özelliği kullanmayın. Karşılaştırmalı creator\_name Ancak bu projeye odaklanmıştır (Bir kişi veya bir organizasyon değil, birden fazla projeye dahil edilebilir) .

publisher\_name
  • ** publisher\_name ** (Bundan sonra ACDDDD metadata standart) Bu veri kümesini yayınlayan kişi, organizasyon veya proje tanımlamak için RECOMMENDED yoldur. Örneğin,
<att name="publisher\\_name">JPL</att>  

Örneğin, başka bir kişi veya grup olursa yayıncısınız Oluşturulmuş yaratılmış yaratılmış yaratılmış yaratılmış Veri seti ve sadece onu yeniden gözlemliyorsunuz ERDDAP . Eğer " yayıncı" gerçekten bir veri kümesine uygulanmazsa, bu özellik omit. Karşılaştırmalı creator\_name Ancak yayıncı muhtemelen verileri önemli ölçüde değiştirmedi veya yeniden işlemedi; yayıncı yeni bir mekanda mevcut verileri yapıyor.

publisher\_email
  • ** publisher\_email ** (Bundan sonra ACDDDD metadata standart) Bir e-posta adresi tanımlamak için RECOMMENDED yoldur (Doğru formatlanmış, örneğin, john\_smith@ great.org) Bu, yayıncı ile iletişime geçmenin bir yolunu sağlar. Örneğin,
<att name="publisher\\_email">john\\_smith@great.org</att>  

Eğer " yayıncı" gerçekten bir veri kümesine uygulanmazsa, bu özellik omit.

publisher\_url
  • ** publisher\_url ** (Bundan sonra ACDDDD metadata standart) Veri setini veya yayıncının bu veri kümesi hakkında bilgi sahibi olan kuruluş için bir URL tanımlamanın bir yoludur. (Ama bu daha fazlası infoUrl ) . Örneğin,
<att name="publisher\\_url">https://podaac.jpl.nasa.gov</att>  

Eğer " yayıncı" gerçekten bir veri kümesine uygulanmazsa, bu özellik omit.

real\_time
  • ** real\_time ** Küresel bir String özelliği (Hiçbir standarttan değil) Bunun gerçek bir zaman veri kümesi olup olmadığını belirtmek. Örneğin,
<att name="real\\_time">true</att>  

Eğer bu yanlış (varsayılan varsayılan) , ERDDAP™ Tüm dosyanın daha önce oluşturulacağı dosya türleri için taleplere önbellek cevapları önleyecek ERDDAP™ Kullanıcıya cevabı göndermeye ve onları yaklaşık 15 dakikaya kadar yeniden kullanmaya başlayabilir. (E.g., .nc ,) . Eğer bu doğruya ayarlanmışsa, ERDDAP™ Yanıt dosyalarını asla önlemeyecek ve her zaman yeni oluşturulan dosyaları geri dönecektir.

sourceUrl Özellikler
  • ** sourceUrl ** Verilerin kaynağının URL ile küresel bir özelliktir. Örneğin,
<att name="sourceUrl">https://opendap.co-ops.nos.noaa.gov/ioos-dif-sos/SOS</att>  

(Ama hepsini tek bir çizgiye koyun)

  • ERDDAP™ Genellikle bu küresel özelliği otomatik olarak yaratır. İki istisna EDDTable From Hyrax Files and EDDTable FromThreddsFiles.
  • Eğer kaynak yerel dosyalar ve dosyalar kuruluş tarafından yaratıldıysa, kullanın
    <att name="sourceUrl">(local files)</att>
  • Kaynak yerel veritabanıdır ve veriler organizasyonunuz tarafından oluşturulduysa, kullanımı kullanın
    <att name="sourceUrl">(local database)</att>
  • sourceUrl Önemlidir çünkü müşterilerin verilerin orijinal kaynağına geri dönmesine izin verir.
  • sourceUrl eşsizdir çünkü ERDDAP . Herhangi bir metadata standardından değil.
standard\_name\_vocabulary
<att name="standard\\_name\\_vocabulary">CF Standard Name Table v77</att>  

77 versiyonu için CF standart isim masası .  

subsetVariables
  • ** subsetVariables ** (EDDTable veri setleri için sadece) Bir komiser listesi belirtmenize olanak sağlayan bir RECOMMENDED global özelliktir.< dataVariable >) (#datavariable) destinationName Sınırlı sayıda değere sahip değişkenleri tanımlamak için (Başka bir şekilde ifade etti: değerlerin her birinin birçok tekrarladığı değişken) . Örneğin,
    <att name="subsetVariables">station\\_id, longitude, latitude</att>  

Eğer bu özellik mevcutsa, veri setinin bir tane olacak * datasetID * .subset web sayfası (Ve her veri kümesi listesinde bir bağlantı) Kullanıcıların hızlı ve kolayca verilerin çeşitli alt kümelerini seçmelerini sağlar.

  • Her zaman bir veri kümesi yüklenir, ERDDAP Yükler ve depolar, tüm ayrı ayrı bir masaya () Alt başlangıç kombinasyonları Değişkenin değişken değerleri. ERDDAP™ Bunu okuyabilirsiniz subsetVariables Masa ve süreç çok hızlı (Özellikle birçok veri dosyayı okumak veya bir veritabanı veya diğer dış hizmetten veri almakla kıyaslanmak) .
  • Bu izin verir ERDDAP™ 3 şey yapmak:
    1. Bu izin verir ERDDAP™ Data Access Form üzerinde bir düşüş listesinde olası değerlerin listesini koymak için, A Graph web sayfasını yapın ve .subset web sayfaları yapın.
    2. Bu izin verir ERDDAP™ Bu veri kümesi için bir .subset web sitesi sunmak. Bu sayfa ilginçtir, çünkü bazı veri kümeleri ve bazı değişkenler için geçerli olan bu değişkenlerin değerlerini bulmak kolaydır. (neredeyse imkansız neredeyse imkansız) . Sonra, tüm kullanıcı farklı talepler için () Subset Değişken veriler çok hızlı olacaktır.
    3. Eğer bu değişkenlerin sadece bir alt kümesini ifade eden bir kullanıcı isteği varsa, ERDDAP™ Hızlı bir şekilde okuyabilirsiniz subsetVariables Masa ve isteke cevap verin. Bu, bir ton zaman ve çaba kurtarabilir ERDDAP .
  • Bunun emri destinationName s you specify the sort order on the * datasetID * .subset web sayfası, bu yüzden genellikle ilk önce en önemli değişkenleri belirteceksiniz, sonra en az önemli. Örneğin, birkaç istasyon için zaman serisi verileri ile veri kümeleri için, örneğin, kullanabilirsiniz.
        <att name="subsetVariables">station\\_id, longitude, latitude</att>  

Bu nedenle, değerler istasyonun_id tarafından şekillendirilir.

  • Açıkçası, hangi değişkenlerin dahil edileceği seçiminizdir subsetVariables Liste, ancak önerilen kullanım:

Genel olarak, istediğiniz değişkenler içerir ERDDAP™ Dataset'in Data Access Formunda seçeneklerin bir düşüş listesini görüntülemek için (.html) Ve Make-A-Graph (.graph) Web sayfaları.

Genel olarak, veri kümesinin özellikleri hakkında bilgi ile değişkenler içerir (İstasyonlar, profiller ve / veya trajektörler, özellikle de ondan cdm\_timese\_variables , cdm\_ Profil_variables , cdm\_trajectory\_variables ) . Bu değişkenler için sadece birkaç farklı değer var, böylece düşüş listeleriyle iyi çalışıyorlar.

Hiç bireysel gözlemlerle ilişkili herhangi bir veri değişkenini içermez (e.g., zaman, sıcaklık, salinity, mevcut hız) İçinde subsetVariables Liste. Bu değişkenler için çok fazla farklı değer var, bu yüzden bir düşüş listesi yüklenecek ve çalışmak zor olacak (Ya da çalışmıyor) .

  • Bu değişkenlerin farklı kombinasyonları yaklaşık 1.000.000'den daha büyükse, kısıtlamayı düşünmelisiniz. subsetVariables Bu, 1.000.000 altında farklı kombinasyon sayısını azaltmak için belirtebilirsiniz; aksi takdirde, aksi takdirde, * datasetID * .subset web sayfaları yavaş yavaş oluşturulabilir. Aşırı durumlarda, veri kümesi yüklemeyebilir ERDDAP™ Çünkü farklı kombinasyonların listesini oluşturmak çok fazla hafıza kullanır. Eğer öyleyse, bazı değişkenleri ondan çıkarırsınız subsetVariables Liste.
  • Herhangi bir alt kümesi değişkeninin farklı değerleri yaklaşık 20.000'den fazla ise, bu değişkeni listede dahil etmemelisiniz. subsetVariables Aksi halde, bu uzun bir zaman alır * datasetID * .subset, * datasetID * .graph ve * datasetID * .html web sayfaları. Ayrıca, bir Mac üzerinde, bir kaydırma barı eksikliği nedeniyle 500'den fazla ürünle seçim yapmak çok zor. Bir uzlaşmadır: Kullanıcıların bir düşüş listesinden değerleri seçmesi muhtemel olmadığı listeden değişkenleri ortadan kaldırmak.
  • Her veri kümesini görmek için test etmelisiniz subsetVariables ayar tamam. Kaynak veri sunucusu yavaşsa ve çok uzun sürer (veya başarısız) Verileri indirmek için, ya değişken sayısını azaltır veya kaldırır subsetVariables Küresel özellikler.
  • Subset Değişkenler çok kullanışlıdır. Yani veri setiniz uygunsa, lütfen bir şeyler yaratın subsetVariables Özellikler.
  • EDDTable From From SOS otomatik olarak ekliyorlar
        <att name="subsetVariables">station\\_id, longitude, latitude</att>  

Dataset oluşturulurken.

  • Olası uyarı: Eğer bir kullanıcı kullanarak * datasetID * .subset web sayfası, bir vagonReturn veya yeni karaktere sahip bir değer seçer, * datasetID * .subset başarısız olacak. ERDDAP™ Bu konuda bazı HTML ayrıntıları nedeniyle çalışamaz. Herhangi bir durumda, araçReturn ve verilerden yeni karakterler kaldırmak için neredeyse her zaman iyi bir fikirdir. Problemi düzeltmenize yardımcı olmak için, eğer EDDTable. subsetVariables DataTable yönteminde ERDDAP Soruna neden olacak veri değerlerini tespit eder, e-posta e-posta e-posta e-posta ile e-posta e-posta Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Her Şey Kurulumda belirtilen e-posta adresleri için.xml. Bu şekilde, neyin düzeltileceğini biliyorsunuz.
  • Pre-rated subset masaları. Normalde, ne zaman ERDDAP™ Bir veri kümesi yükler, farklı talep eder () Veri kaynağından alt değişken veri masası, sadece normal bir veri isteği ile. Bazı durumlarda, bu veriler veri kaynağından mevcut değildir veya veri kaynağından geri çekilmek veri kaynağı sunucusunda zor olabilir. Eğer öyleyse, bilgi ile bir masa temin edebilirsiniz .json veya .csv dosyası adı ile tomcat /content/erddap /subset / * datasetID * .json (veya) . Eğer mevcutsa, ERDDAP™ Veri setinin yüklendiği ve alt dizi verilerin kaynağı olarak kullanacağı bir kez okuyacak.
  • Okurken bir hata varsa, veri seti yükleyemez.
  • MUST tam olarak aynı sütun isimleri var (Örneğin, aynı durum) As as as as as as as as as as as as as as as as as as as as as as as as as as as< subsetVariables >, ama sütunlar herhangi bir sırayla olabilir.
  • Mayıs ayında ekstra sütunlar var (kaldırılacaklar ve yeni reddant sıraları kaldırılacaklar) .
  • Eksik değerler eksik değerler olmalıdır (Sahte sayılar gibi değil -99) .
  • .json dosyaları oluşturmak için biraz daha zor olabilir, ancak Unicode karakterleri ile iyi başa çıkabilir. .json dosyaları onları yaratırsanız oluşturmak kolaydır ERDDAP .
  • .csv dosyaları sadece ISO 8859-1 karakterleri için uygundur. .csv dosyaları MUST, sonraki satırlarda ilk sıra ve veriler üzerinde sütun isimlerine sahiptir.
  • Büyük veri kümeleri veya ne zaman< subsetVariables > yanlış yapılandırılır, değerlerin kombinasyonları çok fazla veri veya OutOfMemory hatalarına neden olmak için yeterince büyük olabilir. Çözüm, değişkenleri listeden çıkarmaktır< subsetVariables > Bu tablonun büyüklüğü makul olana kadar çok sayıda değer var veya değişkenleri kaldır. Hatanın ne olursa olsun, parçaların parçaları ERDDAP™ Bu kullanımı kullanır subsetVariables Sistem iyi çalışmıyor (e.g., web sayfaları çok yavaş yükler) Çok fazla sıra olduğunda (E.g., bir milyondan fazla) O masada.
  • subsetVariables Hangi değişken kullanıcıların kısıtlarda kullanabileceğini belirtmekle hiçbir ilgisi yok, yani kullanıcılar veri kümesinin alt setlerini nasıl isteyebilirler. ERDDAP™ Her zaman kısıtlamaların herhangi bir değişkene atıfta bulunmasına izin verir.
Zaman Birimleri

Zaman ve Zamanlar sütunlar ISO 8601:2004 olmalıdır (E) Formated date+time Z dizeleri (Örneğin, 1985-01-31T15:31:00Z) .  

Özet Özet Özet
  • Özet Özet Özet (Bundan sonra CF ve ACDDDD metadata standartları) Veri kümesinin uzun bir açıklaması ile bir REQUIRED global özelliktir (genellikle<500 karakter). Örneğin,
<att name="summary">VIIRSN Level-3 Standard Mapped Image, Global, 4km, Chlorophyll a, Daily. The Visible and Infrared Imager/Radiometer Suite (VIIRS) is a multi-disciplinary instrument that flies on the National Polar-orbiting Operational Environmental Satellite System (NPOESS) series of spacecraft, including the NPOESS Preparatory Project (NPP).</att>
  • Ya veri kümesinin global kaynağıAttributes Ya da küresel< addAttributes > > > > MUST bu özelliği içerir.
  • Özet çok önemlidir, çünkü müşterilerin başlıktan daha fazla bilgi sahibi olan veri setinin bir açıklamasını okumalarına izin verir ve böylece veri kümesinin ne olduğunu hızlıca anlar.
  • Tavsiye: Lütfen özet yazın, böylece sokakta veya bir meslektaşınızla tanıştığınız bazı rastgele kişiye veri setini tanımlamak için çalışır. Hatırlayın 5 W's and one H : Veri kümesini kim yarattı? Hangi bilgi toplanmıştı? Veriler toplandığında? Nerede toplandı? Neden toplandı? Nasıl toplandı?
  • ERDDAP™ Dataset'in Data Access Formunda Özeti Gösteriyor ( * datasetID * .html) , Make A Graph web page ( * datasetID * .graph) , ve diğer web sayfaları. ERDDAP™ FGDC ve ISO 19115 belgeleri oluştururken özet kullanır.
testOutOfDate
  • ** testOutOfDate ** (Bir Seçmeli ERDDAP - Belirli bir küresel metadata özelliği, herhangi bir standarttan değil) Açıklamalar, basit bir şekilde, yakın zamanlı bir veri kümesi için veriler güncel olarak kabul edilir, belirtildiği gibi belirtilmektedir. now- nUnits Örneğin, now- Zaman değerinden sonra genellikle 2448 saat görünen veriler için 2 gün. Tahmin verileri için, şimdi kullanın + + + + nUnits Örneğin, gelecekte en çok 8 gün olan tahmin verileri için şimdi +6 gün. (Görün bakalım, now- nUnits Kelimemi Açıklama .) Veri kümesi için en fazla zaman değeri belirtilen zamandan daha yeniyse, veri seti güncel olarak kabul edilir. Maksimum zaman değeri belirtilen zamandan daha eskiyse, veri seti güncel olarak kabul edilir. For out-of-date datasets, muhtemelen veri kaynağı ile bir sorun var, bu yüzden ERDDAP™ Daha yeni zaman noktalarından veriye erişemiyor.

The The The The The The The The testOutOfDate Değer bir sütun olarak gösterilir allDatasets Dataset Senin içinde ERDDAP . Ayrıca outOfDate indeksini hesaplamak için kullanılır, bu da başka bir sütundur. allDatasets dataset. Eğer indeks indeks ise<1, veri kümesi güncel olarak kabul edilir. Eğer indeks indeks ise<=1, veri kümesi güncel olarak kabul edilir. Eğer indeks indeks ise<=2, veri kümesi çok güncel olarak kabul edilir.

The The The The The The The The testOutOfDate değer aynı zamanda kullanılır ERDDAP™ Yaratmak içinhttps://yourDomain/erddap/outOfDateDatasets.htmlweb sayfası ( Örnek örnek örnek örnek örneği ) Hangi veri kümelerini gösterir ki< testOutOfDate > Etiketler, datasets ile onların ne kadar güncel olduklarını sıraladı. Dosya türü değiştirirseniz (.html .csv, .jsonlCSV , .nc , .tsv ...) Bu bilgiyi farklı dosya formatlarında alabilirsiniz.

Mümkün olduğunda, GenrateDatasetsX ml Add a add a add a ekliyor testOutOfDate Küresel Dünya'ya özgü özellikler addAttributes Bir veri kümesi. Bu değer, GenrateDatasetsX ml için mevcut olan bilgilere dayanan bir öneridir. Değer uygun değilse, değiştirin.

"Out-of-date" İşte bundan çok farklı<reload HerNMinutes> (#reload allnminutes) Bu, ne kadar güncel olanla ilgilidir ERDDAP “Veri kümesinin bilgisidir. The The The The The The The The< testOutOfDate > sistem varsayıyor ERDDAP "Veri setinin bilgisi güncel. Soru< testOutOfDate > Bununla ilgili anlaşmalar: verilerin kaynağı ile yanlış bir şey gibi görünüyor, daha yeni verilere erişilebilir olmadığı için ERDDAP ??

Başlık:
  • Başlık: (Bundan sonra CF ve ACDDDD metadata standartları) Veri kümesinin kısa açıklaması ile bir REQUIRED global özelliktir (genellikle<=95 karakter). Örneğin,
<att name="title">VIIRSN Level-3 Mapped, Global, 4km, Chlorophyll a, Daily</att>
  • Ya veri kümesinin global kaynağıAttributes Ya da küresel< addAttributes > > > > MUST bu özelliği içerir.
  • Başlık önemlidir, çünkü her veri kümesi listesi tarafından sunulan ERDDAP (arama sonuçlarından başka) Veri setlerini alfabetik sırayla listeler, başlık tarafından. Bu nedenle, veri setlerinin siparişini belirtmek istiyorsanız veya birlikte bazı veri setlerine sahip olun, bunu aklınızda bulundurmanız gerekir. Birçok veri kümesi listesi (Örneğin, bir kategori aramasına yanıt olarak) , tam listenin bir alt setini ve farklı bir sırayla gösterin. Bu yüzden her veri kümesinin adı kendi üzerinde durmalıdır.
  • Eğer başlık "DEPRECATED" kelimesini içeriyorsa (Tüm sermaye mektupları) Sonra veri kümesi aramalarda daha düşük bir sıralama elde edecektir.  
< axisVariable Vegt;
  • [ ** < axisVariable > > > > ** ] (#axisvariable) Bir boyut tarif etmek için kullanılır (Ayrıca "simetri" olarak da adlandırılır.) . For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For EDDGrid datasets, one or more axisVariable Etiketler REQUIRED ve hepsi dataVariable s Her zaman tüm eksen değişkenlerini paylaşır / kullanır. ( Neden? Ne yapmazlarsa? )
    Veri değişkenlerinin her boyutu için bir eksen değişkeni var. Axis değişkenleri MUST, veri değişkenlerinin onları kullandığı sırada belirtilmiştir. (EDDTable veri setleri kullanmayabilir< axisVariable > etiketler.) Bir etli örnek:

  <axisVariable>
      <sourceName\>MT</sourceName>
      <destinationName\>time</destinationName>
      <addAttributes>
        <att name="units">days since 1902-01-01T12:00:00Z</att>
      </addAttributes>
  </axisVariable>

< axisVariable > Aşağıdaki alttag'ları destekler:

< sourceName \>
  • [< sourceName \>] (#sourcenamename) - veri kaynağı değişken için adı. Bu, adın ERDDAP™ Verilerin veri kaynağından talep ettiğinde kullanılır. Bu, adın ERDDAP™ Veriler veri kaynağından geri döndüğü zaman arayacaktır. Bu durum hassastır. Bu REQUIRED.
< destinationName \>
  • [< destinationName \>] (#destinationname) Gösterilecek ve kullanılacak değişkenin adı ERDDAP™ Kullanıcılar.
    • Bu OPence. Aksi takdirde, sourceName kullanılır.
    • Bu kullanışlıdır çünkü bir şifre veya garip değiştirmenize izin verir sourceName .
    • destinationName Durum hassastır.
    • destinationName s MUST bir mektupla başlar (A-Z, a-z) Ve MUST 0 veya daha fazla karakter takip ediliyor (A-Z, a-z, 0-9 ve \_) . ('-' daha önce izin verildi ERDDAP™ 1.10.) Bu kısıtlama, eksen değişken isimlerinin aynı olmasını sağlar ERDDAP™ Yanıt dosyalarında ve tüm yazılımlarda, bu dosyaların programlama dilleri dahil olmak üzere kullanılacaktır. (Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Python , Matlab Ve Java Senaryo) değişken isimler üzerinde benzer kısıtlamalar vardır.
    • In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In EDDGrid veri kümeleri, Uzunlık, enlem, yükseklik, derinlik ve zaman eksen değişkenleri özeldir.  
axisVariable <addAttributes>
  • [< addAttributes >) (#variable-addattributes) Bir OPLOW dizi özelliklerini tanımlar ( isim adı = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = değer değeri değer değeri ) Bu, bir değişken için kaynak özelliklerine eklenmiştir, bir değişken için birleşik özellikleri yapmak. Eğer değişkenin kaynağıAttributes veya< addAttributes > include > include > scale\_factor ve/veya add\_offset Özellikleri, değerleri, istemciye dağıtımdan önce kaynaktan veri paketi için kullanılacaktır. (Sonuç Değer = kaynak = Değer \* scale\_factor + + + + add\_offset ) . Kapalı değişken aynı veri türünden olacaktır (Örneğin, yüz yüze) Sanki scale\_factor ve add\_offset değerler.  
< dataVariable Vegt;
  • [ ** < dataVariable > > > > ** ] (#datavariable) Bir REQUIRED (Neredeyse tüm veri kümeleri için) etiket içinde<Bir veri değişkenini tanımlamak için kullanılan dataset> etiketi. Bu etiketin 1 veya daha fazla örneği var. Bir etli örnek:

  <dataVariable>
      <sourceName\>waterTemperature</sourceName>
      <destinationName\>sea\_water\_temperature</destinationName>
      <dataType>float</dataType>
      <addAttributes>
        <att name="ioos\_category">Temperature</att>
        <att name="long\_name">Sea Water Temperature</att>
        <att name="standard\_name">sea\_water\_temperature</att>
        <att name="units">degree\_C</att>
      </addAttributes>
  </dataVariable>

< dataVariable > Aşağıdaki alttag'ları destekler:

< sourceName Vegt;
  • [< sourceName >) (#sourcenamename) - veri kaynağı değişken için adı. Bu, adın ERDDAP™ Verilerin veri kaynağından talep ettiğinde kullanılır. Bu, adın ERDDAP™ Veriler veri kaynağından geri döndüğü zaman arayacaktır. Bu durum hassastır. Bu REQUIRED.
Grup Grup Grupları

CF v1.8 ile gruplar için destek ekledi. Starting in ~2020, NetCDF Araçlar, değişkenleri gruplar halinde bir araya getirmek .nc Dosya. Uygulamada, bu sadece değişkenlerin grubu tanımlayan uzun bir isim olduğu anlamına gelir. (s) Ve değişken adı, örneğin, grup1a/grup2c/varName ). ERDDAP™ Değişkenin içindeki “ /”ları dönüştürmek için gruplar destekler< sourceName > "\_" değişkenin içinde< destinationName Örneğin, grup1a\_group2c\_varName . (Bunu gördüğünüzde, grupların bir sözel kongreden çok daha fazla olmadığını fark etmelisiniz.) Değişkenler listelendiğinde ERDDAP™ Bir gruptaki tüm değişkenler birlikte görünecek, alt grubu taklit edecek. \[ If if if if if if if if if if if if if if if if if if if if if if if if if if if if if ERDDAP™ Özellikle GenrateDatasets X ml, grupları olan kaynak dosyalarıyla da performans göstermez, lütfen Chris'e örnek bir dosya e-posta gönderin. John at noaa.gov. \]

EDDTable FromFiles datasets bazı özel kodlanmış, piç sourceName Yeni veri değişkenlerini tanımlamak için, e.g., veri değişkeni olmak için küresel bir özellik teşvik etmek. See See See See Bu belge .

HDF Yapılar

Starting with with ERDDAP™ v2.12, EDDGrid FromNcFiles and EDDGrid FromNcFiles Unpacked, veriyi "yapılardan" okuyabiliyor .nc 4 ve 4 .hdf 4 dosya. Bir yapıdan gelen bir değişkeni tanımlamak için,< sourceName > > > > Formatı kullanmalıdır: fullStructureName | ÜyeName Örneğin grup1/myStruct | Member .

Sabit Değer Kaynağı

Bir EDDTable veri kümesinde, değişken oluşturmak istiyorsanız (Tek, sabit bir değerle) Bu kaynak veri kümesinde değil, kullanın:

    <sourceName>=*fixedValue*</sourceName>  

İlk eşitler işareti diyor ERDDAP™ Bu bir sabit Değer takip edecektir.

  • sayısal değişkenler için, sabit değer tek bir sonlu değer veya NaN (Hassas, e.g., \=NaN) .
  • String değişkenleri için, sabit değer tek olmalıdır, JSON-style string (Özel karakterler 4.99 karakterleri ile kaçtı) , e.g., \="My 4.99"Özel " String" .
  • Bir keretamp değişkeni için, sabit değeri bir sayı olarak belirt "seconds since 1970-01-01T00:00:00Z" ve kullanın 1970-01-01T00:00Z .

Diğer etiketler için< dataVariable > Bunun normal bir değişken olduğu gibi çalışır. Örneğin, sabit bir değeri 0.0 ile verilen bir değişken oluşturmak için (yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz yüz) Kullanımı:

<sourceName>=0</sourceName>
<destinationName\>altitude</destinationName>
<dataType>float</dataType>

olağandışı durumlar için, hatta bir an belirtebilirsiniz actual\_range AddAttribute, hedefMin ve hedefMax'in beklenen değerlerini genişletecek (Bu, aksi takdirde sabit olana eşit olacaktır Değer Değer Değer Değer Değer Değer Değer Değer Değer Değer Değer Değer) .  

script SourceNames/Derived Değişkenler

Starting with with ERDDAP™ v2.10, bir anda EDDTable FromFiles , EDDTable FromDatabase Ya da EDDTable FromFileNames Dataset, the the the dataset, the the dataset, the the dataset, the the dataset, the the the dataset, the the the dataset, the the the dataset, the the the dataset, the dataset, the the the dataset, the the dataset, the the the the dataset, the the the dataset, the the the dataset, the the the the the dataset, the the the the dataset, the the the dataset, the dataset, the the dataset, the the the dataset, the dataset, the the dataset, the dataset, the dataset, the dataset, the dataset, the dataset, the dataset, the dataset, the dataset< sourceName > Bir ifade (Tek bir değere değer veren bir denklem) formatını kullanarak

    <sourceName>=*expression*</sourceName>  

veya bir senaryo (Tek bir değer döndürür bir dizi ifade) formatını kullanarak

    <sourceName>=*script*</sourceName>  

ERDDAP™ Kâfirlere güvenir Apache projesinin Java Expression Language (JEXL) (Lisans: Apache Apache ) Açıklamaları değerlendirmek ve senaryoları çalıştırmak. Belirli bir yeni değişken için hesaplama, tüm satırlar için defalarca sonuçlar bir sıra içinde yapılır. Açıklamalar ve senaryolar bir kullanır Java - ve Java Senaryo benzeri sözcüler ve herhangi birini kullanabilir JEXL'e inşa edilen operatörler ve yöntemler . Senaryolar da yöntemleri kullanabilir (işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri işlevleri) Bu derslerden:

  • Takvim2 Ancak bu, bazı statik, zaman ve takvimle ilgili yöntemlerin com.cohort.util.Calendar2 ( Lisans lisansı ) . Örneğin, Takvim2.parseToEpochİkincileri ( SourceTime, date ZamanFormat ) kaynağı değiştirecektir Zaman dizesi tarihTimeFormat dizesi ile ve bir dönüş "seconds since 1970-01-01T00:00:00Z" (Dönemİkincileri) Çift değer.
  • Matematik Bu, neredeyse tüm statik, matematikle ilgili yöntemler için bir sarmalayıcıdır. java.lang. Matematik . Örneğin, Math.atan2 ( x x ) dikdörtgen koordinatlarda gerektirir (x x) Ve kutup koordinatlarını döndürür (Çiftlerin bir dizi \[ r, theta \] ) .
  • Math2 Ancak bu, neredeyse tüm statik, matematikle ilgili yöntemlerin com.cohort.util için bir sarmalayıcıdır. Math2 ( Lisans lisansı ) . Örneğin, Math2.roundTo ( d, nPlaces ) d, belirtilen sayıda basamaktan sağına doğru yuvarlanacaktır.
  • String, size tüm statik, String ile ilgili yöntemlere erişim sağlar java.lang. String . String nesneler in ERDDAP™ Açıklamalar ve senaryolar, ilişkililerinin herhangi birini kullanabilir Java Yöntemler, java.lang'ta açıklandığı gibi. String belgeleri. Örneğin, String.valueOf (d) Çift değerini bir String'e dönüştürecek (Ayrıca ""+d kullanabilirsiniz) .
  • String2 Bununla birlikte, çoğu statik, String- ve dizi ile ilgili yöntemleri com.cohort.util.String2 ( Lisans lisansı ) . Örneğin, String2 .z eroPad ( Sayı, nDigits ) 0's to the left of the number String so that the total number of digits is nDigits (E.g., String2 .z eroPad ("6", 2) "06" geri dönecek) .
  • Sıra sıra sıra sıra Verilere mevcut kaynak veri tablosundaki çeşitli sütunlardan erişmek için estatik olmayan yöntemlere sahiptir. Örneğin, sıra.columnString ("yıl") Bir String olarak "yıl" sütunundan gelen değer, sıra.column Int ("yıl") "yıl" sütunundan tam olarak değer okur.

Güvenlik nedenleri için, ifadeler ve senaryolar diğer sınıfları bu 6. ERDDAP™ Bu sınırlamayı varsayılan bir kara liste yaratarak uygulayın (Hangi siyah listeleri) Ve sonra beyaz bir liste (Hangi özellikle yukarıda açıklanan 6 sınıfa izin verir) . Çalışmanızı yapmak için başka yöntemlere ve / veya diğer sınıflara ihtiyacınız varsa, lütfen Chris'e olan isteklerinizi e-postalayın. John at noaa.gov.

Verimlilik Verimliliği

EDDTable FromFiles datasets için, sadece çok az, çok az (Muhtemelen fark edilmez) Bu değişkenlerden gelen veriler için talepler için yavaşlayın. EDDTableFromDatabase için, bu değişkenler üzerinde kısıtlamalar içeren talepler için büyük bir hız cezası vardır (örneğin, 30&longitude0360>30&longitude036060<40) Çünkü kısıtlamalar veritabanına geçilemez, bu yüzden veritabanı çok daha fazla veri geri dönmek zorunda ERDDAP™ (Bu çok zaman alıcı) Bu yüzden ERDDAP™ Yeni değişken oluşturabilir ve kısıtlamayı uygulayabilir. En kötü davadan kaçınmak için (Veritabanına geçilen kısıtlamalar yoktur.) , ERDDAP™ Bir hata mesajı atar, böylece veritabanının masanın tüm içeriğini geri almak zorunda değildir. (Bunu atlamak istiyorsanız, her zaman doğru, e.g., &time olacak olmayan bir sütuna kısıtlama ekleyin.<3000-01-01.) Bu nedenle, EDDTableFromDatabase ile, muhtemelen veritabanında kullanımdan ziyade bir sütun oluşturmak daha iyidir. sourceName = ERDDAP .

Nasıl An Expression (Ya da Senaryo) Kullanılıyor:

Bir kullanıcının tabular verileri için isteğine yanıt olarak, ERDDAP™ Bir dizi kaynak dosyalarından veri alır. Her kaynak dosyası bir hamil masası oluşturacak (Doğrudan kaynaktan) Veriler. ERDDAP™ Daha sonra ham verilerin masasından geçecek ve her satır için bir kez ifade veya senaryoyu değerlendirecek, bu ifadeye veya senaryoya sahip olan yeni bir sütun oluşturmak için sourceName .

GenrateDatasetsX ml

GenerateDatasets Not that GenerateDatasets X ml, bir değişken oluşturmak için ihtiyaç olduğunda tamamen habersizdir< sourceName >= ifade ifadesi </ sourceName >. Değişkenleri oluşturmak zorundasınız datasets.xml el ile.

Expression Örnekleri:

İşte yeni bir veri sütunu oluşturmak için bir ifade kullanan bazı veri değişkenleri örnekleri. Bu örnekleri bekliyoruz (ve çeşitleri) Tüm ifade-derived kullanımının% 95'ini kapsayacak sourceName s.

Ayrı "tarih" ve "time" sütunlar birleşik bir zaman sütunu:
    <dataVariable>
<sourceName>=Calendar2.parseToEpochSeconds(row.columnString("date") + "T" +
row.columnString("time") + "Z", "yyyy-MM-dd'T'HH:mm:ss'Z'")</sourceName>
<destinationName>time</destinationName>
<dataType>double</dataType>
<addAttributes>
<att name="units">seconds since 1970-01-01</att>
</addAttributes>
</dataVariable>

İşte bu sourceName ifade yeni bir ifade yaratır "time" Tavşan değerlerini "tarih"den doldurarak sütun ( yyyy-MM-dd ) ve "time" (HH:mm:) Kaynak dosyasının her satırında sütunlar ve bu dizeyi bir araya getirerek "seconds since 1970-01-01" (Dönemİkincileri) Çift değer.

Ya da elbette, her veri kümesinin kaynağı tarihi ve zaman sütunlarında belirli formatla başa çıkmak için zaman biçimini özelleştirmeniz gerekecek, bakın the time format string to handle with the specific format in each dataset's source date and time columns, see the see the see the see the see the see the time format. Zaman birimleri belgeleri .

Teknik olarak, kullanmak zorunda değilsiniz Takvim2.parseToEpochİkincileri () Birleştirilmiş tarihi + zamanı ikincilere dönüştürmek. Sadece tarih+time String'yi geçebilirsiniz ERDDAP™ ve formatı belirt (e.g., yyyy-MM-dd 'T'HH:mm:s'Z') birimlerin özellikleri aracılığıyla. Ancak, ikinci çağlara dönüştürmenin önemli avantajları vardır - özellikle, EDDTable FromFiles her dosyadaki zaman değerlerinin aralıkını kolayca takip edebilir ve bu nedenle, zaman kısıtlamalarına cevap verirken verilen bir dosyaya bakmak için karar verin.

İlgili bir problem, ayrı bir yıl, ay, tarih, saat, dakika, ikinci bir kaynaktan birleşik bir tarih + zaman sütunu oluşturmak gerekir. Çözüm çok benzer, ancak çoğu zaman tarlaların çoğunu sıfır konuma ihtiyacınız olacak, bu yüzden, örneğin, ay (1 - 12) ve tarih (1 - 31) Her zaman 2 basamak vardır. İşte yıl, ay, tarih ile bir örnek:

    <sourceName>=Calendar2.parseToEpochSeconds(row.columnString("year") + 
String2.zeroPad(row.columnString("month"), 2) +
String2.zeroPad(row.columnString("date"), 2), "yyyyMMdd")</sourceName>

İlgili bir sorun, kaynak masasındaki verileri ayrı dereceler, dakikalar ve saniye sütunları ile birleştirerek birleşik bir latitude veya uzun bir sütun oluşturma ihtiyacıdır. Örneğin,

    <sourceName>=row.columnInt("deg") + row.columnInt("min")/60.0 + 
row.columnInt("sec")/3660.0</sourceName>
0'dan uzun bir değerle "lon" adında bir sütunu dönüştürmek - 360° - 180'ten gelen değerlerle "uzunluk" isimli bir sütuna - 180°
    <dataVariable>
<sourceName>=Math2.anglePM180(row.columnDouble("lon"))</sourceName>
<destinationName>longitude</destinationName>
<dataType>double</dataType>
<addAttributes>
<att name="units">degrees\\_east</att>
</addAttributes>
</dataVariable>

İşte bu sourceName ifade, kaynağın her sırasındaki "lon" sütunundan çift değerini dönüştürerek yeni bir "uzunluk" sütunu oluşturur. (Muhtemelen 0 ile 360 değer) Ve bunu bir -180'e 180 çift değere dönüştürerek.

Eğer bunun yerine kaynak uzunlık değerlerini dönüştürmek istiyorsanız -180 - 180° 0 - 360°, kullanım

    <sourceName>=Math2.angle0360(row.columnDouble("lon"))</sourceName>

İki Uzunlık Değişkenleri Naming: Veri setinin 2 uzun değişkeni varsa, kullanmayı öneriyoruz destinationName = 180 - 180° değişken ve destinationName =longitude0360 (and longName = 48"Uzunlık 0-360°") 0 için - 360° değişken. Bu önemlidir, çünkü kullanıcılar bazen belirli bir uzun süre içinde verileri aramak için Gelişmiş Arama kullanırlar. Bu arama, sürekli olarak sahip olup olmadığını daha iyi çalışacaktır -180 - tüm veri kümeleri için 180° değer. Ayrıca, veri kümesinin geospatial\_lon\_min, geospatial\_lon\_max, Westest\_Easting ve Easternest\_Eastings global nitelikleri daha sonra tutarlı bir şekilde ayarlanacaktır. (Uzunlık değerleri ile -180 ila 180°) ;

"tempF" isimli bir sütunu derecedeki sıcaklık değerleri ile dönüştürmek F into a column called "tempC" with sıcaklıklar in degree\_ C:
    <dataVariable>
<sourceName>=(row.columnFloat("tempF")-32)\\*5/9</sourceName>
<destinationName>tempC</destinationName>
<dataType>float</dataType>
<addAttributes>
<att name="units">degrees\\_C</att>
</addAttributes>
</dataVariable>

İşte bu sourceName ifade, yüz dereceye dönüştürerek yeni bir "tempC" sütununu yapar. Kaynak dosyasının her sırasındaki "tempF" sütunundan bir yüz dereceye kadar değer. C değeri.

Veri setinizin hem orijinal çekici hem de olabilir unutmayın F değişkeni ve yeni cazip C değişkeni başka bir değişkene sahip

    <sourceName>tempF</sourceName>
Rüzgarı "hız" ve "yön" sütunları u,v bileşenleri ile iki sütuna dönüştürür
  • U değişkeni yapmak için, kullanın
    <sourceName>=row.columnFloat("speed") \\* Math.cos(row.columnFloat("direction"))</sourceName>
  • Bir v değişken yapmak için, kullanın
    <sourceName>=row.columnFloat("speed") \\* Math.sin(row.columnFloat("direction"))</sourceName>

Ya da, u,v:

  • Bir hız değişkeni yapmak için, kullanın
    <sourceName>=Math.atan2(row.columnDouble("v"), row.columnDouble("u"))\\[0\\]</sourceName>
  • Bir yön değişkeni yapmak için, kullanın
    <sourceName>=Math.toDegrees(Math.atan2(row.columnDouble("v"), row.columnDouble("u"))\\[1\\])</sourceName>
Senaryo Örnek:

İşte bir senaryo kullanmak bir örnek, sadece bir ifade değil, bir ifade sourceName . Bu senaryoları, ifadelere karşı olduğu gibi, sık sık gerekli olmayacaktır. Bu durumda amaç,NaN eksik bir değer geri dönmektir (-99) Belirli bir aralığın dışındaki sıcaklık değerleri için. Senaryonun "="" sonrası kısım olduğunu unutmayın.

    <dataVariable>
<sourceName>=var tc=row.columnFloat("tempC"); return tc&gt;35 || tc&lt;-5? -99.0f : tc\\*9/5+32;</sourceName>
<destinationName>tempF</destinationName>
<dataType>float</dataType>
<addAttributes>
<att name="units">degrees\\_F</att>
</addAttributes>
</dataVariable>
Hard Flag

Eğer ifade veya senaryoyu değiştirirseniz, sourceName Ama sen bir set vermelisin sert bayrak Dataset için bu yüzden ERDDAP™ Tüm önbellekli bilgileri veri kümesi için silir ve her veri dosyasını yeniden okur (Yeni ifade veya senaryo kullanarak) Bir dahaki sefere veri kümesini yükler. Alternatif olarak, kullanabilirsiniz DasDds Bu, sert bir bayrak oluşturmak için eşdeğerdir.

Percent Encode

Bu sadece nadiren geçerlidir: Çünkü ifadeler ve senaryolar yazılır datasets.xml Ancak bu bir XML belgesidir, yüzde 100 kodlamanız gerekir<, \> ve ifadelerde ve senaryolarda karakterler<Vegt; ve &

Ortak Sorunlar

Ortak bir problem, değişken yaratmaktır sourceName = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = ifade ifadesi Ancak verilerin ortaya çıkan sütunu sadece eksik değerlere sahiptir. Alternatif olarak, yeni sütunun bazı sıraları eksik değerlere sahiptir ve yapmamaları gerektiğini düşünüyorsunuz. Temel problem, ifade ve ifade ile yanlış olan bir şeydir. ERDDAP Bu hatayı eksik bir değere dönüştürmektir. Problemi çözmek için,

  • Problemin ne olabileceğini görmek için ifadeye bakın.
  • Bak, Giriş.txt Bu, her yeni sütunun yaratılması sırasında yaratılan ilk hata mesajını gösterecektir.

Ortak nedenler şunlardır:

  • Yanlış davayı kullandın. İfadeler ve senaryolar hassas durumda.
  • Sınıfın adını verdin. Örneğin, Math.abs kullanmanız gerekir () Ama sadece absürt değil () .
  • Tür dönüşümleri yapmadınız. Örneğin, bir parametre değeri veri türü String ve çift değere sahipseniz, ""+d aracılığıyla bir çift dönüştürmeniz gerekir.
  • Açıklamadaki sütun adı, dosyadaki sütun ismini tam olarak eşleştirmez (veya isim bazı dosyalarda farklı olabilir) .
  • ifadede bir sözel hata var (E.g., eksik ya da ekstra ‘) ").

Sıkıştıysanız veya yardıma ihtiyacınız varsa, Lütfen ayrıntıları ekleyin ve dikkatimizi görün Bölüm almak için ek destek .

< destinationName Vegt;
  • [< destinationName >) (#destinationname) - Gösterilecek değişkenin adı ve kullanılacak ERDDAP™ Kullanıcılar.
    • Bu OPence. Aksi takdirde, sourceName kullanılır.
    • Bu kullanışlıdır çünkü bir şifre veya garip değiştirmenize izin verir sourceName .
    • destinationName Durum hassastır.
    • destinationName s MUST bir mektupla başlar (A-Z, a-z) Ve MUST 0 veya daha fazla karakter takip ediliyor (A-Z, a-z, 0-9 ve \_) . ('-' daha önce izin verildi ERDDAP™ 1.10.) Bu kısıtlama, veri değişken isimlerinin aynı olmasını sağlar ERDDAP™ Yanıt dosyalarında ve tüm yazılımlarda, bu dosyaların programlama dilleri dahil olmak üzere kullanılacaktır. (Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Python , Matlab Ve Java Senaryo) değişken isimler üzerinde benzer kısıtlamalar vardır.
    • EDDTable veri setleri, Uzunlık, enlem, yükseklik (veya derinlik) Ve zaman Veri değişkenleri özeldir.  
<Data data data data data data Tip>
  • [<dataType>] (#datatype) - kaynaktan gelen veri türünü belirtir. (Bazı durumlarda, örneğin, ASCII dosyalarından verileri okuduğunuzda, kaynaktan gelen verilerin nasıl saklandığını belirtir.)
    • Bu, bazı dataset türleri ve diğerleriyle IGNORED tarafından şifreleniyor. Dataset türleri bunu kendi için gerektirir dataVariable s are: EDDGrid XxxFiles, EDDTable FromXxxFiles, EDDTable FromM WFS EDDTable FromNOS, EDDTable FromNOS, EDDTable FromNOS, EDDTable SOS . Diğer veri setleri bu etiketi görmezden gelir çünkü bilgi kaynağından alırlar.  
    • Geçerli değerler standart değerlerden biridir. ERDDAP™ veri türleri artı boolean (Aşağıdaki aşağıda bakınız) . Veri Türü isimleri vakaya duyarlıdır.  
boolean data
  • "boolean" Özel bir durumdur.
  • İçsel olarak, ERDDAP™ Bir boolean tipini desteklemez çünkü booleans eksik değerleri depolayamaz ve çoğu dosya türü booleansları desteklemez. Ayrıca, DAP booleans'ı desteklemez, bu yüzden boolean değişkenlerini sorgulamak için standart bir yol olmazdı.
  • Veriler için "boolean"ı açın Type in Type in Type datasets.xml boolean değerlerinin depolanması ve Bytes olarak temsil edilmesine neden olacaktır: 0=false, 1 = true, 127= missing\_value .
  • Kullanıcılar sayısal değerleri kullanarak kısıtlamaları belirtebilir (Örneğin, "isAlive=1") .
  • ERDDAP™ Yöneticiler bazen "boolean" verileri kullanmalıdır Type in Type in Type datasets.xml Söylemek için ERDDAP™ Veri kaynağı ile nasıl etkileşime girilir (e.g., bir ilişkisel veritabanından boolean değerlerini okumak ve onları 0, 1 veya 127'ye dönüştürmek.) .  
  • Kaynak dosyalarındaki veri Türünden bir veri değişkenini değiştirmek istiyorsanız (Örneğin, kısa) Bazı diğer verilere Verilerdeki Type (Örneğin, int) , kullanmayın<DataType> ne istediğinizi belirtmek için. (Bazı veri kümeleri türleri için çalışır, ancak diğerleri değil.) Bunun yerine:
    • Use Use Use Use Use<DataType> dosyalarında ne olduğunu belirtmek için (Örneğin, kısa) .
    • İçinde< addAttributes > değişken için, bir ekleyin scale\_factor Yeni verilerle özellik Tipi Tipi Tipi Tipi (Örneğin, int) Ve 1 değeri, örneğin,
            <att name="scale\\_factor" type="int">1</att>  
dataVariable <addAttributes>
  • [< addAttributes >) (#variable-addattributes) - Bir dizi özellik tanımlar ( isim adı = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = değer değeri değer değeri ) Bu, bir değişken için kaynak özelliklerine eklenmiştir, bir değişken için birleşik özellikleri yapmak. Bu OPence. Eğer değişkenin kaynağıAttributes veya< addAttributes > include > include > scale\_factor ve/veya add\_offset Özellikleri, değerleri istemciye dağıtımdan önce kaynaktan veri paketi için kullanılacaktır. Kapalı değişken aynı veri türünden olacaktır (Örneğin, yüz yüze) Sanki scale\_factor ve add\_offset değerler.
Değişken Değişken Değişken Değişken<addAttributes>
  • [ ** Değişken Attributes / Değişken< addAttributes > > > > ** ] (#variable-addattributes) –< addAttributes > Bir OPLOW etiketi içinde< axisVariable > veya< dataVariable değişkenin özelliklerini değiştirmek için kullanılan etiket.

    • ** Bir değişkenin kullanımını kullanın< addAttributes > değişkenin özelliklerini değiştirmek için. ** ERDDAP™ Veri kümesinin kaynağından bir değişkenin özelliklerini birleştirir (** kaynağıAttributes ) ve değişkenin addAttributes Hangisinde tanımlıyorsunuz datasets.xml (Hangi önceliği var) Değişkenin " BirleştirilmişAttributes ** ", hangisidir ERDDAP™ Kullanıcılar görüyorlar. Böylece, kullanabilirsiniz addAttributes kaynağın değerlerini yeniden tanımlamak içinAttributes, yeni özellikler eklemek veya özellikleri kaldırmak.
    • Görün ki, ** < addAttributes > > > > Bilgi) (#addattributes) Bu, küresel ve değişken için geçerlidir < addAttributes > > > > ** .
    • ERDDAP™ Bu özelliklerin çoğunu çeşitli şekillerde arar ve kullanır. Örneğin, renkBar değerleri mevcut bir değişken yapmak için gereklidir WMS Bu yüzden haritalar tutarlı renkliBars ile yapılabilir.
    • Uzunlık, enlem, yükseklik (veya derinlik) Ve zaman değişkenleri Çok sayıda uygun metadata otomatik olarak alın (Örneğin, Birim birimleri ) .
    • Bir örnek< addAttributes > Bir veri değişkeni için:

        <addAttributes>
              <att name="actual\_range" type="doubleList">10.34 23.91</att>
              <att name="colorBarMinimum" type="double">0</att>
              <att name="colorBarMaximum" type="double">32</att>
              <att name="ioos\_category">Temperature</att>
              <att name="long\_name">Sea Surface Temperature</att>
              <att name="numberOfObservations" />
              <att name="units">degree\_C</att>
        </addAttributes>

Boş sayıdaOfObservasyon özelliği kaynak numarasına neden oluyorOfObservations özelliği (Eğer herhangi bir) Son, bir dizi özellik listesinden kaldırıldı.

  • Bu bilgiyi tedarik etmek yardımcı olur ERDDAP™ Daha iyi bir iş yapın ve kullanıcıların veri setlerini anlamalarına yardımcı olur. İyi metadata bir veri kümesi kullanılabilir. Yetersiz metadata bir veri kümesi işe yaramaz hale getirir. Lütfen metadata özellikleri ile iyi bir iş yapmak için zaman ayırın.
Özel olan değişken özellikler hakkında yorumlar ERDDAP :
actual\_range

<att name="actual\_range" type="floatList"\>0.17 23.58</att>

  • Bu özelliktendir. CDC COARDS ve CF 1.7++ metadata standartları.
  • Eğer mevcutsa, aynı veri tipinin hedef veri türü olarak iki değeri bir dizi olabilir, gerçek olarak gerçekleştirilebilir. (Teorik veya izin verilenler değil) Bu değişken için verilerin minimum ve maksimum değerleri.
  • Veriler paketleniyorsa scale\_factor ve/veya add\_offset , actual\_range Paketsiz değerlere sahip olmalı ve paketlenmiş değerler olarak aynı veri türü olmalıdır.
  • Bazı veri kaynakları için (Örneğin, tüm EDDTable From... Dosyalar datasets) , ERDDAP™ Tanımlamayı belirler actual\_range Her değişkenin ve ayarlar actual\_range Özellikler. Diğer veri kaynakları ile (Örneğin, ilişkisel veritabanı, Cassandra, DAP PER, Hyrax ) Ancak, aralığı hesaplamak için kaynak için zahmetli veya yüklenebilir, bu yüzden ERDDAP™ İstemiyor. Bu durumda, ayarlarsanız en iyisidir actual\_range (Özellikle uzun, enlem, yükseklik, derinlik ve zaman değişkenleri için) Yemin ederim, actual\_range Her değişkenin özellikleri [< addAttributes >) (#addattributes) Bu veri kümesi için datasets.xml Örneğin,

<att name="actual\_range" type="doubleList"\>-180 180</att>

  • numeric Zaman ve zamantamp değişkenleri , belirtilen değerler ilgili kaynak olmalıdır (Hedef değil) sayısal değerler. Örneğin, kaynak zaman değerleri 1985-01-01-01'ten beri "günde" olarak depolanırsa, o zaman kaynak zaman değerleri "19-01'ten beri" depolanırsa, o zaman actual\_range 1985-01-01-01'den beri "günde" belirtilmelidir. Ve eğer düzenli olarak güncellenen gerçek zamanlı veriler için ikinci değer olarak, NaN'i kullanmanız gerekir. Örneğin, bir veri aralığı 1985-01-17'yi şimdiye kadar belirtmek için, kullanın

<att name="actual\_range" type="doubleList"\>16 NaN</att>

Color Bar Attributes

Açık bir bar için önerilen varsayılan özellikleri gösteren birkaç OPLY değişken özelliği vardır. (Data değerlerini görüntüler üzerinde renklere dönüştürmek için kullanılır) Bu değişken için.

  • Eğer mevcutsa, bu bilgi griddap ve tabledap Bir renk çubuğu kullanan bir görüntü istediğinizde.

  • Örneğin, latitude-longitude gridded verileri bir haritada bir kapsama olarak arsalandığında, renkli bar veri değerlerinin renklere nasıl dönüştürüldüğüne işaret eder.

  • Bu değerlere sahip olmak izin verir ERDDAP™ Farklı isteklerde tutarlı bir renk çubuğu kullanan görüntüler oluşturmak için, zaman veya diğer boyut değerleri değişirken bile.

  • Bu özellikler isimleri kullanımda kullanılmak için yaratıldı ERDDAP . Bir metadata standardından değiller.

  • Renk barı ile ilgili özellikler şunlardır:

    • ** colorBarMinimum ** RenkBar'daki minimum değeri belirtir. Örneğin,

    <att name="colorBarMinimum" type="double"\>-5</att>

    • Veriler paketleniyorsa scale\_factor ve/veya add\_offset , belirt colorBarMinimum Unpacked değeri olarak.
    • Veri değerleri daha düşük colorBarMinimum Aynı renkte temsil edilmektedir colorBarMinimum değerler.
    • Karakterin olması gerekir type="double" Veri değişkeninin türünden bağımsız olarak.
    • Değer genellikle güzel bir yuvarlak sayıdır.
    • En iyi uygulamalar: Minimum veri değerinden biraz daha yüksek bir değer öneriyoruz.
    • Varsayılan değer yoktur.
  • ** colorBarMaximum ** RenkBar üzerinde en yüksek değeri belirtir. Örneğin,

<att name="colorBarMaximum" type="double"\>5</att>

  • Veriler paketleniyorsa scale\_factor ve/veya add\_offset , belirt colorBarMinimum Unpacked değeri olarak.
  • Veri değerleri daha yüksek colorBarMaximum Aynı renkte temsil edilmektedir colorBarMaximum değerler.
  • Karakterin olması gerekir type="double" Veri değişkeninin türünden bağımsız olarak.
  • Değer genellikle güzel bir yuvarlak sayıdır.
  • En iyi uygulamalar: Maksimum veri değerinden biraz daha düşük bir değer öneriyoruz.
  • Varsayılan değer yoktur.
  • Renk rengi renk rengi BarPalette RenkBar için paleti belirtir. Örneğin,
        <att name="colorBarPalette">WhiteRedBlack</att>
  • Bütün Hepsi ERDDAP™ Kurulumlar bu standart paletleri destekliyor: Black BlueWhite, BlackRed White, BlackWhite, Blue White Red, LightRainbow, Ocean, OceanDepth, Rainbow, RedWhite Blue, TersRainbow, Topography, TopographyDepth, Topography, Topography \[ v1.74'te eklendi \] Beyaz Siyah, Beyaz Mavi Siyah ve Beyaz Kırmızı.
  • Eğer kurulduysanız Ek paletler Onlardan birine başvurabilirsiniz.
  • Bu özellik mevcut değilse, varsayılan BlueWhiteRed eğer \-1\* colorBarMinimum = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = colorBarMaximum Aksi takdirde varsayılan Rainbow.
  • RenkBarScale RenkBar için ölçeği belirtir. Örneğin,
        <att name="colorBarScale">Log</att>
  • Geçerli değerler Linear ve Log.
  • Değer Log ise, colorBarMinimum 0'dan daha büyük olmalıdır.
  • Bu özellik mevcut değilse, varsayılan linear.
  • Renk rengi renk rengi BarContinuous RenkBar'ın sürekli bir renk paleti olup olmadığını veya renkliBar'ın birkaç ayrı renklere sahip olup olmadığını belirtir. Örneğin,
        <att name="colorBarContinuous">false</att>
  • Geçerli değerler gerçek ve yanlış.
  • Bu özellik mevcut değilse, varsayılan doğrudur.
  • RenkBarNSections RenkBar'daki varsayılan bölümler sayısını belirtir. Örneğin,
        <att name="colorBarNSections" type="int">6</att>
  • Geçerli değerler pozitif tamsayılardır.
  • Eğer bu özellik mevcut değilse, varsayılan \-1'dir, bu da söylüyor ERDDAP™ RenkBar aralığına dayanan bölüm sayısını seçmek.
WMS

Bir değişkenin üzerinden erişilebilir olması için ana gereksinimleri ERDDAP " WMS sunucu:

  • Veri kümesi bir an olmalıdır EDDGrid ... dataset.
  • Veri değişkeni MUST bir ızgara değişkendir.
  • Veriler değişken MUST uzun ve entitude eksen değişkenleri vardır. (Diğer eksen değişkenleri OPENT'dir.)
  • -180 ve 180 arasında bazı uzunlık değerler var.
  • The The The The The The The The colorBarMinimum ve colorBarMaximum Özellikleri MUST belirtilebilir. (Diğer renk bar özellikleri OPENT'dir.)
data\_min ve data\_max

<att name="data\_min" type="float"\>0.17</att>
<att name="data\_max" type="float"\>23.58</att>

  • Kullandığınızı tavsiye ederiz actual\_range Bunun yerine, data\_min ve data\_max Çünkü actual\_range Artık CF spesifikasyonu tarafından tanımlanır.
  • Eğer mevcutsa, değişkenin hedef veri türü olarak aynı veri türünden olmalı ve gerçek olarak belirtmelidir. (Teorik veya izin verilenler değil) Bu değişken için verilerin minimum ve maksimum değerleri.
  • Veriler paketleniyorsa scale\_factor ve/veya add\_offset , data\_min ve data\_max Kapalı olmayan veri türü kullanarak paketlenmemiş değerler olmalıdır.  
değişken değişken değişken değişken değişken drawLandMask
  • ** drawLandMask ** – Bu, tarafından kullanılan bir OKT değişken özelliğidir ERDDAP™ (ve metadata standartları yok) Bu, veri kümesinin A Graph formunu yaptığı "Draw Land Maske" seçeneği için varsayılan değeri belirtir. ( * datasetID * .graph) Ve bir URL'deki veland parametresi, verilerin bir haritasını talep ediyor. Örneğin,
    <att name="drawLandMask">under</att>  

Görün bakalım, drawLandMask Genel bakış genel bakış .

Encoding
  • \_Encoding
  • Bu özellik sadece String değişkenleri ile kullanılabilir.
  • Bu özellik şiddetle tavsiye edilir.
  • Bu özelliktendir. NetCDF Kullanıcı Kılavuzu (NUG) .
  • İçsel olarak içeride ERDDAP™ , Strings, kullanan 2bay karakterin bir dizisidir Unicode UCS-2 karakter seti .
  • Birçok dosya türü sadece Strings'teki 1-bayt karakterleri destekler ve bu nedenle ilişkili bir tanımlamaya ihtiyaç duyar Karset (AKA kodu sayfası sayfası) Bu, 256 olası değerleri UCS-2 karakter seti ve / veya encoding sistemi, e.g.'den çekilen 256 karakterin bir setine nasıl haritalayacağımızı tanımlar. UTF-8 (Bu, karakter başına 1 ile 4 arasında gerektirir) .
  • \_Encoding için değerler vakaya duyarlıdır.
  • Teoride, ERDDAP™ \_Encoding tanımlayıcıları destekleyebilir Bu IANA listesi Ama pratikte, ERDDAP™ Şu anda sadece destekleniyor
    • ISO-8859-1 (Not that it has dashes, not underdices) Bu, Unicode'un ilk 256 karakterine aynı olduğu avantaja sahiptir ve
    • UTF-8.
  • Kaynak dosyalarını okuduğunuzda, varsayılan değer ISO-8859-1, netcdf-4 dosyaları hariç, varsayılan UTF-8'dir.
  • Bu devam eden bir sorun çünkü birçok kaynak dosyaları ISO-8859-1'den farklı olan karsetleri veya kodlamaları kullanır, ancak karset veya encoding tanımlamaz. Örneğin, birçok kaynak veri dosyaları, Microsoft Word'den Windows'a kopyalanmış ve geçmişlenmiş ve böylece ASCII hyphens ve apostrophes yerine bir Windows tabanlı karsetten ve apostrophes'den fanteziler var. Bu karakterler daha sonra garip karakterler veya ‘?’ olarak ortaya çıkıyor. ERDDAP .  
fileAccessBaseUrl
  • ** fileAccessBaseUrl Dosya AccessSuffix** Herhangi bir standarttan olmayan çok nadiren kullanılan özelliklerdir. Eğer bir EDDTable sütunu web erişilebilir dosyalarının dosyalarına sahiptir (e.g., görüntü, video veya ses dosyaları) , ekleyebilirsiniz
    <att name="fileAccessBaseUrl">*someBaseURL*</a>  

Temel URL'yi belirtmek için (Sonunda /) Dosya isimlerinin tam URL'lere yapılması gerekiyordu. olağandışı durumlarda, bir sütunun .txt dosyalarına atıfta bulunduğunda, ancak değerler ".txt" eksikliğinden yoksundur, ekleyebilirsiniz.

    <att name="fileAccessSuffix">*someSuffix*</a>  

(Örneğin,<Adı="fileAccessSuffix">.txt</a>) Dosya isimlerinin tam URL'lere dönüştürülmesi için eklenecek bir ek belirtmek için. Sonra için .htmlTable Cevaplar, ERDDAP™ Dosya adını tam URL'ye bir bağlantı olarak gösterecektir (Temel Url artı dosya adı artı ek) .

Eğer istiyorsan ERDDAP™ İlgili dosyaları hizmet etmek için, ayrı ayrı bir dosya yapmak EDDTable FromFileNames Bu dosyalar için veri kümesi (Özel bir veri kümesi olabilir) .

Dosya Url
  • Dosya Url Herhangi bir standarttan olmayan çok nadiren kullanılan bir özelliktir. Eğer bir EDDTable sütunu web erişilebilir dosyalarının dosyalarına sahiptir (e.g., görüntü, video veya ses dosyaları) Hangi bir arşiv aracılığıyla erişilebilir (E.g., .zip Dosya dosyası) Bir URL aracılığıyla erişilebilir, kullanın<Adı="fileAccessArchiveUrl"> Freddy </att> URL'yi arşiv için belirtmek.

Eğer istiyorsan ERDDAP™ Arşiv dosyasına hizmet etmek, ayrı ayrı bir hale getirmek EDDTable FromFileNames Bu dosya için veri kümesi (Özel bir veri kümesi olabilir) .

ioos\_category
  • ** ioos\_category ** – Bu, bir REQUIRED değişken özelliğiyse<DeğişkenlerMust HaveIoosCategory> gerçekliğe ayarlanmıştır (varsayılan varsayılan) in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in Kurulum.xml Aksi halde, OPENT. Örneğin,<Adı: ioos\_category ">Salinity</t> kategorilerden biridir NOAA "Tümleşik Ocean Observing System (IOOS) .

  • (Bunu yazmak için) Bu isimlerin resmi tanımlarının farkında değiliz.

  • Temel isimler Zdenka Willis'den .ppt "Integrated Ocean Observing System (IOOS) NOAA "Bir İlk İşletim Becerisi İnşa Etmek İçin Yaklaşım" ve ABD IOOS Blueprint (Sayfa 1-5) .

  • Bu listenin gelecekte revize edileceği olasıdır. İstekleriniz varsa lütfen e-posta Chris. John at noaa.gov.

  • ERDDAP™ IOOS'tan daha büyük bir kategori listesini destekler çünkü Bob Simons ek isimleri ekledi (Çoğunlukla bilimsel alanların isimlerine dayanarak, örneğin, Biyoloji, Ekoloji, Meteoroloji, İstatistikler, Taxonomy) Diğer veri türleri için.

  • Mevcut geçerli değerler içinde ERDDAP™ Bathymetry, Biology, Bottom Character, CO2, Colored Dis çözülmemiş Organik Madde, Contaminants, Currents, Çözülmüş Nutrients, Çözücü O2, Ecology, Fish Abundance, Fish Türler, Heat Flux, Hydrology, Ice Dağıtım, Identifier, Location, Meteoroloji, Ocean Color, Optik Özellikler, Diğer, Patojenler, Phytoplankton Türleri, Baskı, Verimlilik, Kalite, Salinity, Sea Level, Statistics, Flow, Surface Waves, Taxonomy, Identifier, Total Suspended

  • Farklı terimler arasında bazı çakışma ve belirsizlik var - en iyisini yapın.

  • eklerseniz ioos\_category listeye< categoryAttributes > > > > in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in ERDDAP " Kurulum.xml Dosya, kullanıcılar veri kümelerini benzer verilerle kolayca bulabilir ERDDAP " Kategori tarafından Datasets için ara" ev sayfasında. kullanmaya çalışın ioos\_category Fasets of interest aramak için.

  • Orada vardı Bir tartışma hakkında ERDDAP™ ve ioos\_category İçinde ERDDAP™ Google Group.

Set kurmak cazip olabilir<DeğişkenlerMust HaveIoosCategory> yanlış için, bu özellik gerekli değildir. ("Pfft! Benim için ne var?”) Bunu bırakmak için bazı sebepler gerçek olarak (varsayılan varsayılan) ve kullanın ioos\_category şunlardır:

  • Eğer kurulum.xml's<DeğişkenlerMust HaveIoosCategory> Gerçek olarak ayarlanır, GenrateDatasetsX ml Her zaman yaratır/suggests an ioos\_category Her yeni veri kümesindeki her değişken için özellikler. Peki neden sadece onu terk etmiyor?
  • ERDDAP™ Kullanıcıların kategori tarafından ilgi alanları için aramalarını sağlar. ioos\_category Çok kullanışlı bir arama kategorisi çünkü ioos\_categories (Örneğin, Sıcaklık) oldukça geniş. Bu yapar ioos\_category Bu amaç için çok daha iyi, örneğin, çok incelenmiş CF standard\name s (Bu amaç için bu kadar iyi değil çünkü tüm sinonyms ve hafif varyasyonlar, örneğin, deniz_surface\ temperature karşı Sea\water\ temperature) . (Using ioos\_category Bu amaç için kontrol edilir< categoryAttributes > Kurulumunuzda.xml dosyasında.) kullanmaya çalışın ioos\_category Fasets of interest aramak için.
  • Bu kategoriler bu kategorilerden biridir NOAA "Tümleşik Ocean Observing System (IOOS) . Bu kategoriler IOOS'un IOOS'un misyonunun açıklaması için temeldir. Eğer içindeyseniz NOAA , destek ioos\_category İyi bir şeydir One- One- One- NOAA Yapılacak şeyler. (Bunu izleyin Bir Biri NOAA video video video Ve ilham alın!) Başka bir ABD veya uluslararası ajanstaysanız veya hükümet kurumları ile çalışmak veya başka bir Ocean Observing System ile çalışmak, ABD IOOS ofisiyle işbirliği yapmak için iyi bir fikir değil mi?
  • Er ya da geç, başka bir şey isteyebilirsiniz ERDDAP™ Datasets ile bağlantı kurmak EDDGrid FromErddap ve EDDTable FromErddap . Diğeri ise ERDDAP™ Gereklilik gerektirir ioos\_category Ancak veri setlerinizin olması gerekir ioos\_category sırayla EDDGrid Erddap ve EDDTable FromErddap to work.
  • dahil olmak psikolojik olarak çok daha kolaydır ioos\_category Dataset yaratırken (Bu sadece başka bir şey ERDDAP™ Dataset eklemek gerekir ERDDAP ) Ama bunu gerçeklerden sonra eklemekten (Eğer bunu gelecekte kullanmaya karar verirseniz) .  
long\_name
    <att name="long\\_name">Eastward Sea Water Velocity</att>
  • ERDDAP™ Kullanımı kullanır long\_name Grafiklerdeki axes etiketlemek için.
  • En iyi uygulamalar: Kelimeleri Sermayelendirmek long\_name Sanki bir başlık olsaydı (İlk kelimeyi ve tüm kağıt olmayan kelimeler) . Birimleri dahil etme long\_name . Uzun isim çok uzun olmamalıdır (genellikle<20 karakter), ancak daha açıklayıcı olmalıdır destinationName Bu genellikle çok koncise.
  • "If "If" if " long\_name " değişkenin tanımlanmıyor" kaynağıAttributes veya< addAttributes > >, ERDDAP™ Onu temizleyerek üretecektir standard\_name (Eğer mevcutsa) Ya da destinationName .  
missing\_value
  • ** missing\_value ** ve \_Fill Değer Değer Değer Değer Değer Değer Değer Değer Değer Değer Değer Değer ( COARDS ve CF ) Bir sayı tarif eden değişken özellikler (Örneğin, -999999) Bu eksik bir değeri temsil etmek için kullanılır. Örneğin,

<att name="missing\_value" type="double"\>-9999</att>

String değişkenleri için, her ikisi için varsayılan "" (Boş dize) . sayısal değişkenler için, her ikisi için varsayılan NaN.

  • ERDDAP™ Her ikisini de destekler missing\_value Ve \_FillValue, bazı veri kaynakları onlara biraz farklı anlamlar koydu.
  • Eğer mevcutsa, değişken olarak aynı veri türünden olmalıdır.
  • Veriler paketleniyorsa scale\_factor ve/veya add\_offset , missing\_value Ve \_FillValue değerleri de paketlenmiş olmalıdır. Benzer şekilde, String date/time values ile bir sütun için, yerel bir kullanır time\_zone , missing\_value ve \_FillValue değerleri yerel zaman bölgesini kullanmalıdır.
  • Bir değişken bu özel değerleri kullanırsa, missing\_value ve / veya \_FillValue özellikleri REQUIRED'dir.
  • For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For For Zaman ve zamantamp değişkenleri (kaynağın dizeleri veya sayısal olup olmadığını) , missing\_value s ve \_FillValues "" olarak görünüyor (Boş dize) Zaman bir String olarak yazılırken ve NaN olarak zaman çift olarak yazılır. Kaynak değerleri için missing\_value Ve \_FillValue değişkenin metadatasında görünmeyecektir.
  • String değişkenleri için, ERDDAP™ Her zaman herhangi bir şeyi döndürür missing\_value s veya \_FillValue data values into "" (Boş dize) . Kaynak değerleri için missing\_value Ve \_FillValue değişkenin metadatasında görünmeyecektir.
  • sayısal değişkenler için: The The The The The The The The missing\_value Ve \_FillValue değişkenin metadatasında görünecek. Bazı çıktı veri biçimleri için, ERDDAP™ Bu özel sayıları sağlam, e.g., göreceksiniz -9999. Diğer çıkış veri biçimleri için (Özellikle .csv ve benzeri formatlar .htmlTable ) , ERDDAP™ Bu özel sayıları NaN veya " ile değiştirecektir."
  • Bazı veri türleri, açık olarak açık olarak tespit edilmeye gerek olmayan doğal eksik değer işaretleri vardır missing\_value veya \_FillValue özellikleri: yüz ve çift değişkenleri NaN (Bir Sayı Değil) , String değerleri boş dizeyi kullanır ve kar değerleri karaktere sahiptir \uffff (Karakter #65535, Unicode'un bir Karakter için değeri) . Integer veri türleri doğal eksik değer işaretleyicileri yoktur.
  • Bir tam değişkenin eksik bir değeri varsa (Örneğin, bir .csv dosyasında boş bir pozisyon) , ERDDAP™ Tanımlanan olarak değeri yorumlayacak missing\_value veya bu değişken için \_FillValue. Eğer hiçbir şey tanımlanamazsa, ERDDAP™ Bu veri türü için varsayılan eksik değer olarak değerini yorumlayacak, bu veri türü tarafından yapılabilecek maksimum değer her zaman: Değişkenler için 127, 32767 kısa, 92233720368547758 Uzun süre, 255 ubay için 65535, Uint için 4294967295 ve 18446744073701615 ulong için.
ADD \_FillValue ATTRIBUTES ??
  • ADD \_FillValue ATTRIBUTES ??
    Her seferinde ERDDAP™ Bir veri kümesi yükler, tam anlamıyla kaynak veri türleriyle değişkenlerin tanımlı bir veri türüne sahip olup olmadığını kontrol eder missing\_value veya \_FillValue özelliği. Bir değişken değilse, o zaman ERDDAP™ Giriş dosyasına bir mesaj yazdırın ("Add \_FillValue Attribute?") Bunu tavsiye etmek ERDDAP™ yönetici bir \_Fill ekle Bu değişken için değer özellikleri datasets.xml . Her değişken için bir \_FillValue veya missing\_value Çünkü eksik değerler her zaman mümkündür, e.g., bir veri kümesinde verilen bir dosya belirli bir değişkene sahip değilse, ERDDAP™ Bu değişkeni bu değişken için eksik tüm değerlere sahip olarak sunmak gerekir. Bir değişkene karar verirseniz bir \_FillValue özelliğine sahip olmamalıdır, ekleyebilirsiniz <İsimler="\_FillValue">null</t> Bunun yerine, bu mesajı bunun için bastıracaktır datasetID Gelecekte değiştirilebilir kombinasyon.

Her seferinde ERDDAP™ Başlıyor, tüm bu önerileri günlük dosyaya yazılmış bir mesaja toplar. ("Başlangıç" ile başlayın ADD \_FillValue ATTRIBUTES ?") , e-posta ile ERDDAP™ yönetici ve bir CSV veri dosyasına yaz \[ Büyük Parent Yönetmeny \] /loglar / dizi. İsterseniz, GenrateDatasetsX ml programını kullanabilirsiniz (ve AddFillValueAttributes seçeneği) CSV dosyasındaki tüm önerileri uygulamak için datasets.xml Dosya. Herhangi biri için datasetID Bu dosyadaki / değişken kombinasyonlar, atfedilmeye gerek olmadığını karar verirseniz, özelliği değiştirebilirsiniz<İsimler="\_FillValue">null</att> bunun için tavsiyeyi bastırmak datasetID Gelecekte değiştirilebilir kombinasyon.

Bu önemlidir! Bob sık sık söylediği gibi: kötü olurdu (Ve utanç verici ve utanç verici) Küresel ısınmanın kanıtlarının bir kısmı veride tanımlanmamış eksik değerlerin nedeniyse (e.g., 99 veya 127 derecenin sıcaklık değerleri C bu eksik değerler olarak işaretlenmeli ve böylece anlamı ve / veya medya istatistikleri daha yüksek istatistiklere eklenmelidir) .

scale\_factor
  • ** scale\_factor ** (varsayılan = 1) ve ** add\_offset ** (varsayılan = 0 = 0) ( COARDS ve CF ) Basit bir dönüşümle daha basit bir veri türünde toplanan verileri tanımlayan OPLY değişken özelliklerdir.
  • Eğer mevcutsa, veri türü kaynak veri türünden farklıdır ve hedef değerlerin veri türünü açıklar. Örneğin, bir veri kaynağı, bir decimal digit ile yüz veri değerlerini kısa ints olarak paketlenmiş olabilir. (Int16) , kullanarak scale\_factor = 0.1 ve add\_offset = 0. Örneğin,

<att name="scale\_factor" type="float"\>0.1</att>
<att name="add\_offset" type="float"\>0</att>

Bu örnekte, ERDDAP™ Verileri paketlemeyecek ve bunu yüz veri değerleri olarak kullanıcıya sunacaktır.

standard\_name
    <att name="standard\\_name">eastward\\_sea\\_water\\_velocity</att>
  • eklerseniz standard\_name değişkenlerin özellikleri ve eklemek standard\_name listeye< categoryAttributes > > > > in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in in ERDDAP " Kurulum.xml Dosya, kullanıcılar veri kümelerini benzer verilerle kolayca bulabilir ERDDAP " Kategori tarafından Datasets için ara" ev sayfasında.
  • Bir CF belirtseniz standard\_name Bir değişken için, değişkenin özellikleri, CF Standard Name masasında standart isim için belirtilen Canonical Birimlere aynı olmak zorunda değildir, ancak MUST birimleri Canonical Birimlere dönüştürülemez. Örneğin, tüm sıcaklıkla ilgili CF standard\_name s have "K" (Kelvin Kelvin) Canonical Birimler olarak. Yani sıcaklıkla ilgili bir değişken standard\_name MUST, K, derece\_C, derece\_F veya bu isimlerin bazı UDUnits varyantları var, çünkü hepsi iç içe-konvertible.
  • En iyi uygulamalar: İktidarın bir parçası kontrollü vocabularies Listedeki terimleri kullanarak gelir. Bu yüzden kontrollü kelimede tanımlanan terimlere uymayı tavsiye ederiz ve listedeki uygun bir tane değilse bir terim oluşturmaya karşı tavsiye ederiz. Ek şartlara ihtiyacınız varsa, standartlar komitesi onları kontrollü sözlüğe ekleyecek.
  • standard\_name değerler, hassas olan tek CF özellikleri değerleridir. Her zaman daha düşük. Başlangıç ERDDAP™ v1.82, GenerateDatasets, üst kat mektupları daha düşük harflere dönüştürecektir. Ve bir veri kümesi yüklendiği zaman ERDDAP Ancak üst harf mektupları daha düşük mektuplar için sessizce değiştirilir.  
time\_precision
  • time\_precision tarafından kullanılan bir OPENT özelliğidir ERDDAP™ (ve metadata standartları yok) Çünkü Zaman ve zamantamp değişkenleri Ancak bu, ağlanmış veri kümeleri veya tabular veri setleri ve içinde olabilir. axisVariable s veya dataVariable s. Örneğin,
    <att name="time\\_precision">1970-01-01</att>  

time\_precision Her zaman kullanılan hassaslığı belirtir ERDDAP™ Bu değişkenden web sayfalarında dizeler olarak zaman değerleri, dahil olmak üzere .htmlTable Cevaplar. Dosya formatlarında nerede ERDDAP™ Zamanlar dizeler olarak (Örneğin, .csv ve .json ) , ERDDAP™ Sadece sadece kullanır time\_precision -specified format eğer kesik saniyeler içeriyorsa; aksi takdirde, ERDDAP™ 1970-01T00:00:00 Z formatı.

  • Geçerli değerler 1970-01, 1970-01-01, 1970-01-01T00Z, 1970-01T00:00Z, 1970-01T00:00Z, 1970-01T00:00Z (varsayılan varsayılan) 1970-01-01T00:00.0Z, 1970-01-01T00:00:00Z, 1970-01T00:00:00.000Z. \[ 1970 bir seçenek değil çünkü tek bir sayıdır, bu yüzden ERDDAP™ Bir formatlı zaman dizesi olup olmadığını bilemez (Bir yıl) Ya da 1970-01T00:00Z'den bu yana birkaç saniyedir. \]
  • If if if if if if if if if if if if if if if if if if if if if if if if if if if if if time\_precision Belirtilen değil veya değer eşleşmez, varsayılan değer kullanılacaktır.
  • İşte, diğer bölümlerde olduğu gibi ERDDAP™ Ancak görüntülenmemiş olan herhangi bir zaman alanı minimum değeri olduğu varsayılır. Örneğin, 1985-07, 1985-07-01, 1985-07-01T00Z, 1985-07-01T00:00Z ve 1985-07-01T00:00:00:00 Z hepsi eşdeğer kabul edilir, ancak farklı hassas ima düzeyleri ile. Bu, bu maçlar ISO 8601:2004 "extended" Zaman Biçimi Doğrulaması .
  • WARNING: Sadece sınırlı bir şekilde kullanmalısınız time\_precision if if if if if if if if if if Bütün hepsi Değişkenler için veri değerlerinin yalnızca saklı olan tüm alanlarda minimum değeri vardır.
  • Örneğin, bir kullanabilirsiniz time\_precision 1970-01-01 - Tüm veri değerlerinin saat=0, dakika=0 ve ikinci=0 olması durumunda (Örneğin 2005-03-04T00:00Z ve 2005-03-05T00:00Z) .
  • Örneğin, kullanma time\_precision 1970-01-01-01 Eğer bir saat, dakika veya saniye değerleri varsa, (Örneğin 2005-03-05T12:00Z) Çünkü non-default saat değeri gösterilmezdi. Aksi takdirde, bir kullanıcı zaman ile tüm verileri sorarsa =2005-03-05, istek beklenmedik bir şekilde başarısız olacaktır.  
time\_zone
  • ** time\_zone **
  • time\_zone tarafından kullanılan bir OPENT özelliğidir ERDDAP™ (ve metadata standartları yok) Çünkü Zaman ve zamantamp değişkenleri Ancak bu, şebekeli veri kümelerinde veya tabular veri setlerinde olabilir.
  • Varsayılan "The default" Zulu " " "" (Bu, GMT'nin modern zaman bölgesi versiyonudur) .
  • Plan bilgisi: "zaman dengeleri" (e.g., Pacific Standard Time, -08:00, GMT-8) Sabit, özel, göreceli olarak dengelemek Zulu (GMT GMT) . Buna karşılık, "zaman bölgeleri", Daylight Saving tarafından etkilenen çok daha karmaşık şeylerdir (E.g., "US/Pacific") Farklı zamanlarda farklı yerlerde farklı kurallar vardı. Zaman bölgeleri her zaman basit bir dengeleme değeri değeri ile özetlenebilir olduklarından beri isimleri vardır. (masada masadaki "TZ veritabanı isimleri" sütununu gör https://en.wikipedia.org/wiki/List\_of\_tz\_database\_time\_zones ) . ERDDAP " time\_zone Özellikler, bazı zaman bölgesinden yerel zaman verileri ile başa çıkmanıza yardımcı olur (e.g., 1987-03-25T17:32:05 Pasifik Pasifik Pasifik Zaman Zamanı) . Bir dize veya sayısal zaman veriniz varsa, (sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit sabit) Zaman dengelemesi, verileri basitçe ayarlamanız gerekir Zulu (hangisidir? ERDDAP™ istiyor olmak istiyor) Birimlerde farklı bir temel zamanı belirterek, (e.g., "1970-01T08:00Z"'den bu yana saatler, T08'yi zaman dengeleme süresini belirlemek için not edin.) , ve her zaman istediğiniz sonuçları elde etmenizi sağlamak için sonuçları kontrol edin.
  • Strings'ten kaynak verileri ile zaman damga değişkenleri için, bu özellik, yol açan bir zaman bölgesini belirtmenizi sağlar ERDDAP™ Yerel-zaman-bölge kaynak zamanlarını dönüştürmek (Standart zamanda, Gün ışığında Bazı Zaman Tasarruf Zamanları) içine Zulu Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman Zaman (Bu her zaman Standart zamanında) . Geçerli zaman alan isimlerinin listesi muhtemelen TZ sütununda liste ile aynıdır https://en.wikipedia.org/wiki/List\_of\_tz\_database\_time\_zones . Ortak ABD zaman bölgeleri şunlardır: ABD/Hawaii, ABD/Alaska, ABD/Pacific, ABD/Mountain, ABD/Arizona, ABD/Central, ABD/Eastern.
  • Zamanlayıcı kaynak verileri ile değişkenler için, "You can specify the " time\_zone “İsviçre, ama değer “ Zulu " veya "UTC". Başka zaman bölgeleri için desteğe ihtiyacınız varsa lütfen e-posta Chris. John at noaa.gov.  
mirası_time_adjust
  • mirası_time_adjust Başlangıç ERDDAP™ 2.29.0, zaman değişkenleri biraz farklı çalışır. Nadir durumlarda, çoğu muhtemelen kullanırken günden beri günler 1582'den bir yıl önce (Bu yüzden 0000-01-01-01 günden beri günler veya 1-1-1 00:00'dan beri günler:0.0 ) Tarih değişkenine bir ayarlama için belirtmeniz gerekecek. Bunun nedeni budur. ERDDAP™ Tarihleri içsel olarak yönetmek için java.time library kullanır. Eski GregorianCalendar kütüphanesini doğru tarihlere kullanmak isteyen bazı veri setleri var.
<axisVariable>
<sourceName>time</sourceName>
<destinationName>time</destinationName>
<!-- sourceAttributes>
... removed several lines ...
<att name="units">days since 1-1-1 00:00:0.0</att>
</sourceAttributes -->
<addAttributes>
... removed several lines ...
<att name="legacy_time_adjust">true</att>
</addAttributes>
</axisVariable>
Birim birimleri
    <att name="units">degree\\_C</att>

Birim birimleri Herhangi biri olabilir:

    ms, msec, msecs, millis, millisec, millisecs, millisecond, milliseconds,  
s, sec, secs, second, seconds, m, min, mins, minute, minutes, h, hr, hrs, hour, hours,
d, day, days, week, weeks, mon, mons, month, months, yr, yrs, year, or years.

Teknik olarak, ERDDAP™ Takip etmeyin UDUNITS standard when dönüştürme "years since" ve "months since" Zaman değerleri zaman değerleri "seconds since" . The The The The The The The The UDUNITS Standart bir yıl sabit, tek bir değer olarak tanımlamaktadır: 3.15569259747e7 saniye. Ve UDUNITS Bir ay yıl/12 olarak tanımlamaktadır. Ne yazık ki, bu kullanımı gördüğümüz tüm veri kümeleri "years since" veya "months since" Açıkça, değerlerin takvim yılı veya takvim ayları olması niyetindedir. Örneğin, 3 "months since 1970-01-01" Genellikle 1970'-04-01 demek için tasarlanmıştır. Yani, ERDDAP™ yorumlar "years since" ve "months since" takvim yılı ve aylar olarak ve kesinlikle takip etmiyor UDUNITS standart.

The The The The The The The The BaseTime ISO 8601:2004 (E) Formated date time string ( yyyy-MM-dd 'T'HH:mm:sZ, örneğin, 1970-01T00:00Z) , ya da bunun bir varyasyonu (Örneğin, sonunda eksik parçalarla) . ERDDAP™ Bu ideal formatın çeşitli varyasyonları ile çalışmaya çalışır, örneğin, "1970-1-1 0:0:0" desteklenmiştir. Zaman bölgesi bilgisi eksikse, olduğu varsayılır. Zulu Zaman bölgesi (AKA GMT) . Başka bir zaman dengesi belirtilmiş olsa bile, ERDDAP™ Asla Daylight Tasarruf Zamanını kullanmaz. Eğer tabanTime başka bir format kullanırsa, kullanmanız gerekir< addAttributes > ISO 8601'in bir varyasyonunu kullanan yeni bir birim dizesini belirtmek için:2004 (E) format (e.g., Jan 1, 1985'ten bu yana günler değişir.

Test edebilirsiniz ERDDAP Belirli bir şeyle başa çıkma yeteneği Birim birimleri O zamandan beri o zamandan beri BaseTime ile birlikte ERDDAP " Time Converter . Umarım, bir numaraya takabilirsiniz (Veri kaynağından ilk kez değer?) ve bir birim dizesi, dönüştürmeye tıklayın ve ERDDAP™ Bunu ISO 8601'e dönüştürebilecek:2004 (E) Formated date time string. dönüştürücü, birimlerin dizesinin tanınamaması durumunda bir hata mesajı döndürür.

Zaman Birimleri

ISO 8601'in varyasyonları olan yaygın kullanılan zaman biçimleri için:2004 (E) standart format (Örneğin, 2018-01-02T00:00Z) , varyasyonlarını belirtebilirsiniz yyyy-MM-dd 'T'HH:mm:sZ, örneğin, kullanımı yyyy-MM-dd Eğer dize zamanı sadece bir tarih varsa. yy-M ile başlayan herhangi bir format için, ERDDAP formatta küçük varyasyonların çok bağışlayıcısı olan özel bir parser kullanır. The, "UTC", "GMT", ±XX:XX, ±XXXX ve ±XX formatlarında zaman bölgeleri idare edebilir. Tarih zamanın kısımları belirtilmez (Örneğin, dakika ve saniye) , ERDDAP™ Bu alan için en düşük değeri varsayıyor (e.g., saniyeler belirtilmese, saniye=0 varsayılır) .

Diğer tüm dize zaman formatları için, tam olarak bir DateTimeFormatter- uyumlu zaman biçimini belirtmeniz gerekir. Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like Like yyyy-MM-dd 'T'HH:mm:sZ, bu format dizeleri, zaman dizesinden belirli bir tür bilgiyi tanımlayan karakterlerden inşa edilmiştir, e.g., m dakika-of-hour. Format karakteri birkaç kez tekrar ederseniz, anlamı daha da rafine eder, e.g., m değerin herhangi bir sayı tarafından belirtilmesi anlamına gelir, mm değerin 2 basamak tarafından belirtilmesi gerektiği anlamına gelir. The The The The The The The The Java DateTimeFormatter için belgeler ham bir bakıştır ve bu ayrıntıları net yapmaz. Yani burada format karakter varyasyonları ve onların anlamının bir listesi ERDDAP™ (Bu bazen biraz farklı Java 's DateTimeFormatter) :

KarakterlerÖrneklerAnlam
u, y, Y\-4712, 0, 1, 10, 100, 2018Bir yıl sayısı, herhangi bir rakam. ERDDAP™ y muamele et (year-of-era) ve Y (hafta temelli yıl, çünkü bu genellikle yegane olarak yegane yerine kullanılır) u olarak, astronomik yıl sayısı . astronomik yıllar, BCE'yi kullanmayan pozitif veya negatif tam sayılardır. (BC BC BC) veya CE veya CE (AD AD AD) Dönem tasarımcular: 2018=2018CE, ..., 2=2CE, 1=1CE, 0=1BCE, -1=2BCE, -2=3BCE, ...
uuuu, yy, YYYYYYYY\-4712, 0000, 0001, 0010, 0100, 20184 sayısal astronomik yıl sayısı (Herhangi bir önceki ‘-’ görmezden gelin)
M1, 01, 12Bir ay numarası, herhangi bir sayı basamak (1 = Ocak)
MM01, 122 digit (Zero pedded) ay sayısı
MMMJan, jan, JAN3 harf İngilizce bir ay adı, hassas durumda
MMMMJan, jan, JAN, Ocak, january, JANUARY3 harf veya tam bir İngilizce ay adı, hassas durumda
d1, 01, 31Bir gün aylık sayı, herhangi bir sayı
dd01, 312 digit (Zero pedded) Gün-ay. İlk 'digit' bir uzay olabilir.
D D D1, 001, 366Gün boyu, herhangi bir sayı, 001=Jan 1
DDDD001, 366Gün boyu, 3 basamak, 001=Jan 1
EEETHU, Thu3 harf günü-hafta, değer parsing yaparken göz ardı edilir
EEEETHU, Thu, thursday, THURSDAY, Perşembe3 mektup veya tam İngilizce günü-of-week, case in sensitive, değer parsing
H0, 00, 23H hour-of-day (0-23) Herhangi bir sayıda basamak
HH00, 23HH saat-of-day (00-23) 2 basamak. İlk 'digit' bir uzay olabilir.
BirbiriBen, AM, PMAM veya PM, case-in sensitive
h12, 1, 01, 11Saat - Saat - (12, 1, 2, ... 11) Herhangi bir sayıda basamak
hh12, 01, 11Saat - Saat - (12, 1, 2, ... 11) 2 basamak. İlk 'digit' bir uzay olabilir.
K0, 1, 11Saat: (0, 1, ...11) Herhangi bir sayıda basamak
KK00, 01, 11Saat: 2 basamak
m m m m0, 00, 59minute-of-hour, any number of digits
mm mm mm mm00, 59minute-of-hour, 2 basamak
s0, 00, 59İkinci dakika, herhangi bir sayı basamak
s00, 59İkinci dakika, 2 basamak
S0, 000, 9, 999Yarı saniye, bir decimal noktası takip ederken, herhangi bir sayıda basamak
SS SS SS00, 99İkinci yüz, 2 basamak
yak000, 999Binlerce ikinci, 3 basamak
A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A A0, 0000, 86399999milisan-of-day, herhangi bir sayı
AAAAAAAAAA00000000, 86399999milisan-of-day, 8 basamak
N N0, 00000000000000, 86399999999999999999nanosaniye-gün, herhangi bir rakam. In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In ERDDAP™ Ama bu nMillis'e karşı savaşıyor.
NNNNNN00000000000000, 86399999999999999999nanosaniye-gün, 14 basamak. In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In ERDDAP™ Bu, nMillis'e verildi.
n n n0, 000000, 59999999999999999nanosaniye-ikinci, herhangi bir sayıda basamak. In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In ERDDAP™ Bu, nMillis'e verildi.
nnnnnnnnnnnnnn00000000000, 59999999999999Nanosaniye-ikinci, 11 basamak. In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In In ERDDAP™ Bu, nMillis'e verildi.
XXX, ZZZZ, -08:00, +01:00"Z" veya ± (2 sayısal saat dengeleme) : (2 sayısal dakika dengeleme) . Bu muamele Uzay uzay alanı + (Standart olmayan olmayanlar) . ZZZ ‘Z’ standart değildir, ancak ortak bir kullanıcı hatasıyla ilgilenir.
XX, ZZZ -0800, +0100"Z" veya ± (2 sayısal saat dengeleme) : (2 sayısal dakika dengeleme) . Bu muamele Uzay uzay alanı + (Standart olmayan olmayanlar) . ZZ ‘Z’ standart değildir, ancak ortak bir kullanıcı hatasıyla ilgilenir.
X, ZZ, -08, +01"Z" veya ± (2 sayısal saat dengeleme) : (2 sayısal dakika dengeleme) . Bu muamele Uzay uzay alanı + (Standart olmayan olmayanlar) . Z ‘Z' standart değildir, ancak ortak bir kullanıcı hatasıyla ilgilenir.
xxx\-08:00, +01:00formatla bir zaman bölgesi ± (2 sayısal saat dengeleme) : (2 sayısal dakika dengeleme) . Bu muamele Uzay uzay alanı + (Standart olmayan olmayanlar) .
xx\-0800, +0100formatla bir zaman bölgesi ± (2 sayısal saat dengeleme) (2 sayısal dakika dengeleme) . Bu muamele Uzay uzay alanı + (Standart olmayan olmayanlar) .
x x x x\-08, +01formatla bir zaman bölgesi ± (2 sayısal saat dengeleme) . Bu muamele Uzay uzay alanı + (Standart olmayan olmayanlar) .
‘ ‘ ‘'T', 'Z', 'GMT'Bir dizi gerçek karakterin başlangıcı ve sonu
‘ ‘ ‘ ‘ ‘ ‘ (İki tek alıntı)‘ ‘ ‘ ‘ ‘ ‘İki tek alıntı, gerçek bir tek alıntı gösteriyor
\[ \]\[ \]Başlangıç (" " "" \[ " " "") Ve sonunda (" " "" \] " " "") Seçmeli bir bölüm. Bu notasyon sadece gerçek karakterler için ve format dizesinin sonunda desteklenir.
#, { }#, { }Gelecekteki kullanım için ayrılmış
G,L,Q,e,c,V,z,O,pBu formatlama karakterleri tarafından destekleniyor Java TarihTimeFormatter, ancak şu anda desteklenmedi ERDDAP . Onlar için desteğe ihtiyacınız varsa, e-posta Chris. John at noaa.gov.

Notlar:

  • Noktalama ile bir tarihte, sayısal değerler değişken sayıda basamak olabilir (e.g., ABD'de "1/2/1985", ay ve tarih 1 veya 2 basamak olabilir) Bu nedenle, format 1letter jetonları, e.g., M/d/yy, ay ve tarih için herhangi bir sayı kabul eden.
  • Bir öğe için sayı sayısı sabit ise, e.g., 01/02/1985, o zaman formattaki sayı sayısını belirt, e.g., MM/dd/yy2digit ay için, 2 dijital tarih ve 4 digit yıl.
  • Bu formatlar çalışmak zor. Verilen bir format çoğu için çalışabilir, ancak hepsi, belirli bir değişken için zaman dizeleri. Her zaman belirteceğiniz biçimin beklendiği gibi çalıştığını kontrol edin. ERDDAP Tüm değişkenin zaman dizeleri için.
  • Mümkün olduğunda, GenerateDatasetX ml zaman format dizeleri önerecektir.
  • Bir format dize oluşturmak için yardıma ihtiyacınız varsa lütfen e-posta Chris. John at noaa.gov.

Ana zaman veri değişkeni (Tellar için datasets) Ve ana zaman eksen değişkeni (gridded datasets için) Yeminler olsun, destinationName Zaman. Birimleri metadata, sayısal zaman değerleri için UDUnits-compatible birimleri dizesi olmalı, e.g., "1970-01'den beri" (Tellar veya ızgaralar için) Ya da dize süreleri için uygun birimler E.g., "M/d/yyyy" (Tellar için datasets) .

Farklı Zaman Birimleri Farklı .nc dosyalar - Bir ızgara koleksiyonuna sahipseniz .nc Zaman değişkeni için, dosyaların bir alt kümesi, dosyaların bir veya daha diğer alt setlerinden farklı zaman birimleri kullanır, kullanabilirsiniz EDDGrid FromNcFilesUnpacked . Zaman değerlerinin zaman değerlerini değiştirir "seconds since 1970-01-01T00:00:00Z" Daha düşük bir seviyede, böylece farklılıkları gizleyin, böylece heterojen dosyalar koleksiyonundan bir veri kümesi yapabilirsiniz.

TimeStamp Değişkenleri

TimeStamp Değişkenleri – Diğer herhangi bir değişken ( axisVariable veya dataVariable , EDDGrid veya EDDTable dataset) Bir zamanStamp değişkeni olabilir. Timestamp değişkenleri zamanla ilgili birimleri ve zaman verileri olan değişkenlerdir, ancak bir tane var< destinationName > Zamandan başka. TimeStamp değişkenleri, kaynağın zaman formatını kaynağın zaman biçimini dönüştürmeleri için ana zaman değişkeni gibi davranır "seconds since 1970-01-01T00:00:00Z" ve / veya ISO 8601:2004 (E) format). ERDDAP™ Zamanları tanır Stamp değişkenleri zamanlarıyla ilgili " Birim birimleri " metadata, bu düzenli ifadeyi eşleştirmeli " \[ a-zA-Z \] + + + \[ 0-9 \] .+" (numeric tarihi Örneğin Times, "seconds since 1970-01-01T00:00:00Z" ) Ya da bir tarih olsun "uuuu", "yyyyyy" veya "YYYYYYYY" içeren zaman biçimi dizesi (Örneğin, " yyyy-MM-dd "T'HH:mm:sZ") . Ama lütfen hala kullanın destinationName "time" ana tarih için Zaman değişkeni.

Her zaman işinizi kontrol edin, zaman verilerinin içinde gösterdiğinden emin olun. ERDDAP™ Doğru zaman verileridir. Zaman verileri ile çalışmak her zaman zor ve hata eğilimlidir.

See See See See Zaman değişkenleri hakkında daha fazla bilgi . ERDDAP™ Bir yararı var Numeric Zaman / Bir Yay Zamandan . See See See See Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl Nasıl ERDDAP™ Zamanlarla Anlaşmalar .  

valid\_range

<att name="valid\_range" type="floatList"\>0.0 40.0</att>

veya

<att name="valid\_min" type="float"\>0.0</att>
<att name="valid\_max" type="float"\>40.0</att>

  • Eğer mevcutsa, değişken olarak aynı veri türünden olmalıdır ve bu değişken için verilerin geçerli minimum ve maksimum değerlerini belirtmelidir. Kullanıcılar bu aralığın dışındaki değerleri geçersiz saymalıdır.
  • ERDDAP™ Uygulamaz valid\_range . Başka bir yol söyle: ERDDAP™ Veriler değerleri dışlamaz valid\_range \_Fill Değer veya Değer missing\_value . ERDDAP™ Sadece bu metadata'da geçer ve uygulamanızı size bırakır. Neden? Bu metadata'nın için olduğu şey budur. Veri sağlayıcı istediyse, veri sağlayıcısı veri değerlerinin dışında dönüştürülebilir. valid\_range \_FillValues olmak. ERDDAP™ İkinci tahmin veri sağlayıcısı. Bu yaklaşım daha güvenli: Daha sonra gösterilseydi, valid\_range Çok dar veya başka bir şekilde yanlıştı, ERDDAP™ Verileri göz ardı etmeyecektir.
  • Veriler paketleniyorsa scale\_factor ve/veya add\_offset , valid\_range , valid\_min ve valid\_max paketlenmiş veri türü ve değerleri olmalıdır. O zamandan beri ERDDAP™ Uygulanan geçerlilik geçerlidir scale\_factor ve add\_offset Veri kümesini yüklerken, ERDDAP™ Unpack the the valid\_range , valid\_min ve valid\max Değerler böylece hedef metadata (Kullanıcılara gösterildi) Kapalı olmayan veri türü ve aralığı gösterecektir. Ya da, if an unpacked\ valid\_range Özellikler mevcut, yeniden adlandırılacak valid\_range Ne zaman zaman ne zaman zaman zaman ne zaman zaman zaman ne zaman zaman zaman ne zaman zaman zaman ne zaman zaman zaman ne zaman ne zaman zaman zaman ne zaman ne zaman zaman zaman zaman ne zaman zaman zaman ne zaman zaman ne zaman ne zaman ne zaman? ERDDAP™ Veri kümesini yükler.
<KaldırMVRows>
  • [ ** <KaldırMVRows> ** ] (#removemvrows) Bir etiket içinde bir OPence etiketi datasets.xml EDDTable FromFiles (Tüm alt sınıflar da dahil) datasets, ancak sadece EDDTable'tenMultidimNcFiles için kullanılır. Gerçek veya yanlış bir değere sahip olabilir. Örneğin, gerçek Bu, tüm değerlerin olduğu bir grubun sonunda herhangi bir satır bloğu kaldırır. missing\_value , \_FillValue veya CoHort ...Array yerli eksik değer (Ya da kar = #32 CharArrays için) . Bu, CF DSG Multi boyutlu Dizi dosya türü ve benzer dosyalar içindir. Eğer doğruysa, bu doğru test yapar ve bu yüzden her zaman max dim değişkenlerini yükler, bu yüzden ekstra zaman alabilir. Varsayılan değer sahtedir. Öneri - Veri setiniz için mümkün olsaydı,MVRows'ı yanlış ayarlamanızı öneririz. Set removeMVRows'ı gerçek olarak yavaşlatabilir, ancak bazı veri setleri için gerekli olabilir.