Paggawang kasama ng mga kapatiddatasets.xmlLarawan
\[Ang pahinang web na ito ay magiging kawili - wili lamang saERDDAP™Mga administrador.\]
Pagkatapos mong sundan angERDDAP™ maglagay ng mga tagubilin, kailangan mong ayusin angdatasets.xmltalaksan sa loob tomcat /content/erddap/ upang ilarawan ang mga dataset na iyong binigayERDDAP™Iluluklok ang instalasyon.
Makikita mo ang isang halimbawadatasets.xmltungkol sa GitHub.
Introduksiyon
Kailangan ang Isang Asamblea
Paglalagay ng datasetERDDAP™ay hindi lamang tumutukoy sa directory o URL ng dataset. Kailangan mong sumulat ng isang tipak ng XML para sadatasets.xmlna naglalarawan sa dataset.
- Para sa mga nakatiklop na dataset, upang makaayon ang datasetERDDAP'''s data structure para sa grided data, kailangan mong matukoy ang isang subset ng mga variable ng dataset na may parehong dimensiyon. (Bakit? Paano?)
- Ang kasalukuyang metadata ng dataset ay kusang inaangkat. Subalit kung nais mong baguhin ang metadata o idagdag ang iba pang metadata, kailangan mong tiyakin itodatasets.xml. AtERDDAP™kailangan ang iba pang metadata, pati na angPangglobong mga katangian (gaya nginfoUrl, institusyon,sourceUrl, buod, at pamagat) atIba't ibang katangian (gaya nglong\_nameat mga yunit) . Kung paanong ang metadata na kasalukuyang nasa dataset ay nagdaragdag ng naglalarawang impormasyon sa dataset, ang metadata na hinihiling ngERDDAP™ay nagdaragdag ng naglalarawang impormasyon sa dataset. Ang karagdagang metadata ay isang mabuting karagdagan sa iyong dataset at tumutulongERDDAP™gumawa ng mas mabuting gawain na iharap ang iyong impormasyon sa mga gumagamit na hindi pamilyar dito.
- ERDDAP™Kailangan mong gawin ang pantanging mga bagay sa mgalonghitud, latitud, altitud (o lalim) , at iba't iba ang oras.
Kung bibilhin mo ang mga ideyang ito at gagamitin mo ang pagsisikap upang likhain ang XML para sadatasets.xml, nakukuha mo ang lahat ng mga bentaha ngERDDAP™, pati na:
- Buong tekstong naghahanap ng mga datos
- Hanapin ang mga dataset ayon sa kategorya
- Mga Anyo ng Data ( datasetID .html) kaya maaari kang humiling ng isang subset ng datos sa maraming iba't ibang format ng talaksan
- Mga bansag na hihiling ng mga grap at mapa ( datasetID .grap)
- Paglilingkod sa Web Mapa (WMS) para sa nakatiklop na mga datos
- RESTfulBasahin ang iyong datos
Paggawa ngdatasets.xmlay nangangailangan ng malaking pagsisikap para sa unang ilang datasets, subalit nagiging mas madali ito . Pagkatapos ng unang dataset, madalas na maaari mong gamitin muli ang marami sa iyong gawa para sa susunod na dataset. Mabuti na lamang,ERDDAP™sa dalawaMga Kasangkapanupang tulungan kang lumikha ng XML para sa bawat datasetdatasets.xml. Kung maipit ka, tingnan ang amingsa pagkuha ng karagdagang suporta.
Tagapaglaan ng mga Data Anyo
Kapag lumapit sa iyo ang isang data provider sa pag - asang magdagdag ng ilang impormasyon sa iyoERDDAP, maaari itong maging mahirap at nakauubos ng panahon upang tipunin ang lahat ng metadata (tungkol sa dataset) Kailangang idagdag ang datasetERDDAP. Maraming pinagmulang datos (Halimbawa, .csv files, Mga excel file, database) walang panloob na metadata, kayaERDDAP™ay may Data Provider Form na nagtitipon ng metadata mula sa data provider at nagbibigay sa tagapaglaan ng impormasyon ng iba pang patnubay, pati na ang malawak na patnubay para saTalaan ng mga Nilalaman. Ang impormasyon na isinumite ay ginagawang angdatasets.xmlformat at pagkatapos ay emailERDDAP™Tagapangasiwa (ikaw) at isinulat (Iniapela) hanggang sa Malaking Direktoryo /logs/data ProviderForm.log . Kaya, ang anyong semi-automates ang proseso ng pagkuha ng datasetERDDAP, ngunit angERDDAP™Kailangan pa ring tapusin ng administrador angdatasets.xmlAyusin at pakitunguhan ang pagkuha ng data file (s) mula sa tagapaglaan o nagdurugtong sa database.
Ang pagsusumite ng mga aktuwal na data files mula sa mga panlabas na pinagmulan ay isang malaking panganib sa seguridad, kayaERDDAP™ay hindi tumatalakay niyan. Kailangan mong alamin ang solusyon na makatutulong sa iyo at sa data provider, halimbawa, sa email (para sa maliliit na file) , Hugot mula sa ulap (Halimbawa, Drive ng DropBox o Google) , isang sftp site (na may mga password) , o palihim Net (isang USB hinlalaki drive o panlabas na hard drive) . Malamang na tanggapin mo lamang ang mga file mula sa mga taong kilala mo. Kailangan mong suriin ang mga salansan ng mga virus at gumawa ng iba pang mga pag - iingat sa seguridad.
Walang linkERDDAP™sa Puri ng Data (halimbawa, saERDDAP™pantahanang pahina) . Sa halip, kapag may nagsabi sa iyo na nais nilang ang kanilang impormasyon ay isilbi sa iyoERDDAP, maaari mo silang padalhan ng email na nagsasabi ng gaya ng: Oo, maaari nating makuha ang iyong datosERDDAP. Upang magsimula, pakisuyong punan ang porma https://yourUrl/erddap/dataProviderForm.html (ohttp://kung gayonhttps://ay hindi magawa) . Pagtapos mo, makikipag - ugnayan ako sa iyo para malaman ang mga detalye. Kung nais mo lamang tingnan ang anyo (nang hindi ito pinupuno) , makikita mo ang anyo saERD'ERDDAP:Introduksiyon,Bahagi 1,Bahagi 2,Bahagi 3, atBahagi 4. Ang mga kawing na ito saERD ERDDAP™magpadala ng impormasyon sa akin, hindi sa inyo, kaya huwag kayong magpadala ng impormasyon sa kanila malibang talagang nais ninyong dagdagan ng datos ang mga itoERD ERDDAP.
Kung nais mong alisin ang Data Provider Form sa iyong FormERDDAP™, sabihin
<dataProviderFormActive>false</dataProviderFormActive>
sa inyong setup.xml file.
Ang nagpasigla rito ayNOAA' s 2014Resulta ng Pangmadlang Pag - aaral (HANDA) Tagubilin, na nangangailangan ng lahatNOAAAng mga impormasyong pangkapaligiran na tinutustusan sa pamamagitan ng pagbabayad ng buwis ay makukuha sa pamamagitan ng isang serbisyo ng datos (hindi lamang ang mga file) Sa loob ng 12 buwan ng paglalang. Kaya lumalaki ang interes sa paggamitERDDAP™upang makagawa ng mga dataset na magagamit sa pamamagitan ng isang service ASAP. Kailangan namin ang mas mahusay na paraan ng pakikitungo sa maraming tagapaglaan ng impormasyon.
Pagpapakain/Ingles? Bago ang anyong ito, kaya pakisuyong mag - emailerd dot data at noaa dot govkung mayroon kang anumang impormasyon o mga mungkahi upang mapasulong ito.
Mga Kasangkapan
ERDDAP™ay may dalawang programa ng command line na mga kasangkapan upang tulungan kang lumikha ng XML para sa bawat dataset na nais moERDDAP™upang maglingkod. Minsang naitayo mo naERDDAP™at patakbuhin ito (Minsan) , makikita at magagamit mo ang mga programang ito sa tomcat /webapps/erddap/WEB-INF directory. Mayroong mga sulatang Linux/Unix (na may karugtong na .sh) at mga iskrip sa Windows (na may karugtong na .bat) para sa bawat programa.\[Sa Linux, patakbuhin ang mga kasangkapang ito na katulad ng sa gumagamit nito (tomcat?) na tatakbo sa Tomcat.\]Kapag pinapatakbo mo ang bawat programa, tatanungin ka nito. Para sa bawat tanong, mag-uri ng tugon, pagkatapos ay pindutin ang Enter. O pindutin ang ^C upang lumabas sa isang programa anumang oras.
Hindi tatakbo ang programa?
- Kung magkaroon ka ng di - kilalang programa (o kahawig) maling mensahe, ang problema ay marahil hindi masumpungan ng operating systemJava. Kailangan mong malaman kung saanJavaay nasa iyong computer, pagkatapos ay ayusin ang pagtukoy sa java sa .bat o .sh file na sinisikap mong gamitin.
- Kung makakuha ka ng talaksang garapon na hindi nakita o hindi nakita ng klase ang mensahe ng pagkakamali, kung gayon ayJavaay hindi mahanap ang isa sa mga klase na nakatala sa .bat o .sh file na sinusubukan mong gamitin. Ang solusyon ay alamin kung nasaan ang talaksang .jar na iyon, at ayusin ang pagtukoy dito ng java sa .bat o .sh.
- Kung gumagamit ka ng bersiyon ngJavana napakatanda na para sa isang programa, ang programa ay hindi tatakbo at makikita mo ang maling mensahe na gaya ng
Maliban sa sinulid na "main" juva.lang.Un supportedClassVersionError:
mga/class/pangalan : Hindi suportadong pangunahing bersiyon. sabi ng iba
Ang solusyon ay i - update ang pinakabagong bersiyon ngJavaat tiyakin ang .sh o .bat file para sa programa ay ginagamit ito.
Ang mga kasangkapan ay naglilimbag ng iba't ibang mensahe ng pagsusuri:
- Ang salitang "ERROR" ay ginagamit kapag ang isang bagay na labis na mali ay hindi natapos ang pamamaraan. Bagaman nakayayamot na magkamali, ang pagkakamali ang pumipilit sa iyo na harapin ang problema.
- Ginagamit ang salitang "WARNING" kapag may nangyaring mali, ngunit natapos ang pamamaraan. Bihirang - bihira ang mga ito.
- Anumang bagay ay isa lamang nakapagtuturong mensahe. Maaari mong idagdag ang \-verbose saGenerateDatasetsXmloMga Dasdmag - utos na kumuha ng karagdagang nakapagtuturong mga mensahe, na kung minsan ay tumutulong sa paglutas ng mga problema.
Malaking tulong ang dalawang kasangkapang ito, pero dapat mo pa ring basahing mabuti ang lahat ng tagubiling ito sa pahinang ito at gumawa ng mahahalagang desisyon.
GenerateDatasetsXml
- GenerateDatasetsXml ay isang programa ng command line na maaaring lumikha ng isang magaspang na draft ng dataset XML para sa halos anumang uri ng dataset.
NATATAGUMPAYAN namin NA gumamit kayo ng GenerateDatasets Xml sa halip na lumikha ng mga tipak ngdatasets.xmlsa pamamagitan ng kamay sapagkat:
- Mga GenerateDataset Ang Xml ay gumagana sa mga segundo. Ang paggawa nito sa pamamagitan ng kamay ay di - kukulangin sa isang oras na trabaho, kahit na alam mo kung ano ang ginagawa mo.
- Mga GenerateDataset Mas mahusay ang trabaho ni Xml. Ang paggawa nito sa pamamagitan ng kamay ay nangangailangan ng malawak na kaalaman kung paanoERDDAP™ay mabisa. Malamang na hindi ka makagagawa ng mas mabuting trabaho sa pamamagitan ng kamay. (Si Bob Simons ay laging gumagamit ng GenerateDatasets Xml para sa unang draft, at siya ay sumulatERDDAP.)
- Mga GenerateDataset Ang Xml ay laging gumagawa ng mabisang tipak ng tubigdatasets.xml. Anumang Bahagidatasets.xmlna isinusulat mo ay malamang na may ilang pagkakamali na humahadlangERDDAP™mula sa pagkarga ng dataset. Kadalasang gumugugol ng mga oras ang mga tao upang masuri ang mga problemang ito. Huwag sayangin ang iyong panahon. Hayaang Maging Walang Asawa Mga Data Xml gawin ang mahirap na gawain. Kung gayon maaari mong dalisayin ang .xml sa pamamagitan ng kamay kung nais mo.
Kapag ginagamit mo ang GenerateDatasets programang Xml:
- Sa Windows, ang unang pagkakataon na tumakbo ka ng GenerateDatasetsXml, kailangan mong ayusin ang GenerateDatasetsXml.bat file na may text editor upang baguhin ang landas patungo sa java. Exe file upang makahanap ng WindowsJava.
- Mga GenerateDataset Unang hiniling sa iyo ni Xml na tiyakin ang EDDType (Sikat na Dap Dapset Uri) ng dataset. Tingnan angTalaan ng mga Uri ng Dataset (sa dokumentong ito) upang malaman kung alin ang tipo na angkop sa dataset na ginagawa mo. Bukod sa regular na EDDTypes, mayroon ding ilanPantangi/Pseudo Dataset Types (e.g., isa na gumagapang sa katalogo ng THEDDS upang lumikha ng isang tipak ng mga katalogodatasets.xmlsa bawat datos sa katalogo) .
- Mga GenerateDataset Xml ang isang serye ng mga tanong na espisipiko sa EDDType na iyon. Ang mga tanong ay nagtitipon ng impormasyon na kailangan para saERDDAP™upang makuha ang pinagmulan ng dataset. Upang maunawaan kung anoERDDAP™ay humihingi, tingnan ang dokumentasyon para sa EDDType na tinukoy mo sa pamamagitan ng pagpindot sa katulad na dataset na tipo sa larawanTalaan ng mga Uri ng Dataset.
Kung kailangan mong pumasok sa isang strando na may pantanging mga karakter (e.g., mga karakter na unggulado sa simula o dulo, mga karakter na non-ASCII) , pumasok sastring ng JSON-style (na may pantanging mga karakter na nakaligtas na may \ karakter) . Halimbawa, upang makapasok lamang sa isang tab karakter, ipasok ang "\t" (kasama ang nakapaligid na dobleng mga sinipi, na nagsasabiERDDAP™na ito ay isang strandong JSON-style.
- Kadalasan, ang isa sa iyong mga sagot ay hindi ang kailangan ng GenerateDatasetsXml. Pagkatapos ay maaari mong subukang muli, taglay ang nirebisang mga sagot sa mga tanong, hanggang sa GenerateDatasets Ang Xml ay matagumpay na mahahanap at mauunawaan ang pinagkunang datos.
- Kung tama ang sagot mo sa mga tanong (o sapat nang tama) , GenerateDatasets Ang Xml ay mag-uugnay sa pinagmulan ng dataset at magtitipon ng saligang impormasyon (Halimbawa, iba't ibang pangalan at metadata) . Para sa mga datos na mula sa lokalNetCDF .ncat kaugnay na mga file, GenerateDatasets Ang Xml ay kadalasang maglilimbag ng ncdump-tulad na istruktura ng file matapos nitong unang basahin ang file. Ito ay maaaring magbigay sa iyo ng impormasyon upang mas masagot ang mga tanong sa isang kasunod na silo sa pamamagitan ng GenerateDatasetsXml.
- Mga GenerateDataset Pagkatapos ay lilikha ang Xml ng isang magaspang na draft ng dataset na XML para sa dataset na iyon.
- Ang impormasyong diagnostic at ang magaspang na draft ng dataset na XML ay isusulat sa Malaking Direktoryo /logs/GenerateDatasetsXml.log .
- Ang magaspang na draft ng dataset na XML ay isusulat sa Malaking Direktoryo /logs/GenerateDatasetsXml.out .
"0 files" Error sa pagbasa ng Mensahe
Kung ikaw ay nagpapatakbo ng GenerateDatasets Xml oMga Dasd, o kung papasanin moEDDGridMula sa... Sawi ang pagbasa ng datosERDDAP™, at nakakuha ka ng "0 files" error message na nagpapahiwatig naERDDAP™nakakita ng 0 katugmang files sa directory (kung inaakala mong may katugmang mga file sa directory na iyon) :
-
Tingnan kung natukoy mo na ang buong pangalan ng directory. At kung itsek mo ang pangalan ng sampol, tiyaking tama ang buong pangalan ng file, pati na ang buong directory.
-
Tingnan kung talagang nasa directoryng iyon ang mga file.
-
Tingnan ang baybay ng pangalang directory.
-
Tingnan ang fileNameRegex. Sa totoo lang, talagang madaling magkamali gamit ang regexes. Para sa mga layuning pangsubok, subukan ang regex .\* na dapat tumugma sa lahat ng mga pangalan. (Tingnan itodokumentasyon ng regexatregex tutorial.)
-
Tiyakin na ang gumagamit na nagpapatakbo ng programa (e.g., gumagamit ng=tomcat (?) para sa Tomcat/ERDDAP) ay may pahintulot ng 'read' para sa mga file na iyon.
-
Sa ilang operating system (Halimbawa, ang SCORINux) at depende sa system settings, ang gumagamit na nagpapatakbo ng programa ay dapat na may 'read' na pahintulot para sa buong kadena ng mga directories na humahantong sa directory na may mga files.
-
Kung may mga problema kang hindi mo malutas,humingi ng tulongsa pinakamaraming impormasyon hangga't maaari. Sa katulad na paraan, kung ito'y waring angkop na EDDType para sa isang ibinigay na dataset ay hindi gumagana sa dataset na iyon, o kung walang angkop na EDDType, pakisuyong magharap ng isang filetungkol sa GitHubsa mga detalye (at isang sampol na talaksan kung mahalaga) .
Kailangan mong baguhin ang output mula sa GenerateDatasets Xml upang mapabuti ito.
-
DISKLAIMER: ANG KUKTO NGdatasets.xmlMADE BE GenerateDatasets Xml ISN'T PERFECT. TANGGAPIN MO ANG PAGBABASA AT PAGTANGGAP SA PUBLICERDDAP. Mga GenerateDataset Xml RELIES SA ISANG LOT NG RULES-OF-THUMB AN LEN'T ALLS CORRECT. NAG - AABULOY KA UPANG MAGPAPAKITA NG KARAPATAN NG DUGOERDDAP'Sdatasets.xmlMAKINIG.
(Magandang Katotohanan: Hindi ako sumisigaw. Sa makasaysayang legal na mga kadahilanan, ang mga di - nagdiriwang ay dapat na isulat sa lahat ng dako.)
Ang output ng GenerateDatasetsXml ay isang magaspang na draft. Halos lagi mo itong kakailanganin. Kami ay gumawa at patuloy na gumawa ng malaking pagsisikap upang gawin ang output bilang handa-to-go hangga't maaari, ngunit may mga limitasyon. Kadalasan, ang kinakailangang impormasyon ay talagang hindi makukuha mula sa pinagkunang metadata.
Ang isang mahalagang problema ay na kami'y humihingi ng isang programa sa computer (GenerateDatasetsXml) upang gawin ang isang atas kung saan, kung bibigyan mo ng gayunding atas ang 100 katao, magkakaroon ka ng 100 iba't ibang resulta. Walang kahit isang "tamang" sagot. Maliwanag, ang programa ay pinakamalapit sa pagbabasa ng isip ni Bob (hindi iyo) , ngunit gayon pa man, ito ay hindi isang programang pang-unawang AI, isang kumpol lamang ng mga huristiko na pinagsama-sama upang gawin ang isang AI-tulad na gawain. (Ang araw na iyon ng programang pang-unawa ng AI ay maaaring dumating, ngunit hindi pa ito dumarating. Kung/kapag nagkagayon, tayong mga tao ay maaaring magkaroon ng mas malalaking problema. Ingatan kung ano ang gusto mo.)
-
Para sa mga layuning pang-edukasyon, ang output ay nagpapakita ng global source Attributes at variable source Attributes bilang mga komento.ERDDAP™Pinagsasama ang mga pinagkunang Attributes ataddAttributes (na nauuna) upang pagsamahin Attributes na ipinapakita sa gumagamit. (At ang iba pang mga katangian ay kusang idinaragdag sa longhitud, latitud, altitud, lalim, at iba't ibang panahon kapag ang panahon ay nagbabagoERDDAP™sa katunayan ay ginagawa ang dataset) .
-
Kung hindi mo gusto ang isang source Attribute, isulat ito sa pamamagitan ng pagdaragdag ng isang admixtribute na may parehong pangalan ngunit ibang halaga (o walang halaga, kung nais mong alisin ito) .
-
Lahat ng itoaddAttributesang mga mungkahi ng computer-generated. Baguhin sila! Kung ayaw mo ng isang admixtribute, palitan ito.
-
Kung nais mong magdagdagaddAttributes, idagdag.
-
Kung gusto mong magbagodestinationName, palitan ito. Subalit huwag kang magbagosourceNames.
-
Maaari mong baguhin ang kaayusandataVariables o tanggalin ang alinman sa mga ito.
- Pagkatapos ay magagamit moMga Dasd (Tingnan ang ibaba) upang paulit - ulit na suriin ang XML para sa dataset na iyon upang tiyakin na ang resultang dataset ay lumilitaw gaya ng nais mong gawin nitoERDDAP.
- Malayang magbagodatasets.xmlHalimbawa, ang mga tipak ng yelo na ginawa ay nagbibigay ng mas mabuting resultainfoUrl, buod, o titulo.
Huwag Magdagdag ng mga StandardName
Kung isasama mo ang `-do Not Address StandardNames bilang command line parameter kapag ikaw ay tumakbo na lumilikha Mga Data Xml, lumikha Mga Data Xml ay hindi magdadagdagstandard\_namesaaddAttributespara sa anumang mga variables maliban sa mga variable na pinangalanang latitud, longhitud, altitud, lalim o panahon (na maliwanagstandard\_names) . Ito'y maaaring maging kapaki - pakinabang kung ginagamit mo ang output mula sa produksiyon Mga Data Diretso sa XmlERDDAP™nang hindi inaayos ang output, sapagkat lumilikha Mga Data Ang Xml ay kadalasang humuhulastandard\_nameay mali. (Pansinin na lagi naming inirerekomenda na ayusin ninyo ang output bago gamitin itoERDDAP.) Ang paggamit sa parameter na ito ay magkakaroon ng iba pang maliliit na kaugnay na mga epekto dahil sa hulastandard\_nameay kadalasang ginagamit para sa ibang gamit, e.g., upang lumikha ng isang bagonglong\_name, at upang lumikha ng colorBar settings.
Paglalarawan
Bilang isang mapagpipilian sa pagsagot sa mga tanong nang interaktibo sa keyboard at pagsilo upang lumikha ng karagdagang mga dataset, maaari kang magbigay ng mga argumentong command line upang sagutin ang lahat ng mga tanong upang lumikha ng isang dataset. Mga GenerateDataset Xml ang mga parameter na iyon, isusulat ang output sa output file, at lalabas sa programa.
Upang maitatag ito, gamitin muna ang programa sa interaktibong paraan at isulat ang iyong mga sagot. Narito ang isang maliit na halimbawa: Sabihin nating ikaw ang nagpapatakbo ng iskrip: ./GenerateDatasetsXml.sh. Pagkatapos ay pumasok: EDDTable FromAsciiFiles Pagkatapos ay ipasok: /u00/data/ Pagkatapos ay pumasok: .\*\______) Pagkatapos ay ipasok: /u00/data/sampleFile.ascc Pagkatapos ay pumasok: ISO-8859-1
Upang mapatakbo ito sa paraang hindi-interactive, gamitin ang command line na ito: ./GenerateDatasetsXml.sh EDDTable FromAsciiFiles /u00/data/ .\*\.asc /u00/data/sampleFile.asc ISO-8859-1 Kaya karaniwan nang itinatala mo lamang ang lahat ng sagot sa command line. Ito ay dapat kapakipakinabang sa datasets na madalas magbago sa paraang nangangailangan ng re-running GenerateDatasets Xml (Partikular naEDDGridMula sa ThreddsCatalog) .
Mga Detalye:
- Kung ang isang parametro ay naglalaman ng isang espasyo o isang pantanging karakter, pagkatapos ay i-record ang parameter bilang isangstring ng JSON-style, e.g., "ang aking parameter na may espasyo at dalawang espasyo\nmga linya".
- Kung nais mong magtakda ng isang walang laman na pisi bilang isang parameter, gamitin: walang anumang bagay
- Kung nais mong tiyakin ang default na halaga ng isang parameter, gamitin: default
- Mga GenerateDataset Sinusuportahan ng Xml ang a -i datos XmlName # " tagName " command line parameter na ipinapasok ang output sa espesipikongdatasets.xmltalaksan (ang default ay tomcat /content/erddap/datasets.xml) . Mga GenerateDataset Xml ay naghahanap ng dalawang linya sa datasets XmlName:
<!-- Begin GenerateDatasetsXml #*tagName someDatetime* -->
at
<!-- End GenerateDatasetsXml #*tagName someDatetime* -->
at pinapalitan ang lahat ng bagay sa pagitan ng mga linyang iyon ng bagong nilalaman, at binabago ang panahon ng aleDate.
- Ang -i switch ay pinoproseso lamang (at nagbabagodatasets.xmlay ginawa lamang) kung ikaw ay tatakbo ng GenerateDatasets Xml na may mga argumentong command line na nagsasaad ng lahat ng mga sagot sa lahat ng mga tanong para sa isang loop ng programa. (Tingnan ang 'Scripting' sa itaas.) (Ang kaisipan ay: Ang parameter na ito ay para gamitin sa mga script. Kung gagamitin mo ang programa sa interactive na paraan (Pagmamakinilya ng info sa teklado) , malamang na lumikha ka ng ilang maling tipak ng XML bago mo likhain ang isa na nais mo.)
- Kung ang mga linya ng Pasimula at Wakas ay hindi matagpuan, kung gayon ang mga guhit na iyon at ang bagong nilalaman ay isinisingit sa mismong sandali bago</erddapDatasets>.
- Mayroon ding -I (kabisera i) Palitan ang mga layunin sa pagsubok na gumagana na katulad ng -i, ngunit lumilikha ng talaksang tinatawag nadatasets.xml Petsa at hindi gumagawa ng mga pagbabagodatasets.xml.
- Huwag patakbuhin ang GenerateDatasets Xml na may -i sa dalawang proseso nang sabay. May pagkakataon na isang set lamang ng mga pagbabago ang iingatan. Maaaring magkaroon ng malubhang problema (halimbawa, sirang talaksan) .
Kung gagamit ka ng "GenerateDatasetsXml -verbose", maglilimbag ito ng mas maraming diagnostikong mensahe kaysa karaniwan.
Pantangi/Pseudo Dataset Types
Sa pangkalahatan, ang mga opsyon ng EDDType sa GenerateDatasets Xml posporo ng mga tipo ng EDD na inilarawan sa dokumentong ito (tingnan angTalaan ng mga Uri ng Dataset) at lumikha ng isadatasets.xmlLumikha ng isang dataset mula sa isang espesipikong impormasyon. May ilang eksepsiyon at pantanging mga kaso:
EDDGridMula sa Erddap
Ang EDDType na ito ang gumagawa ng lahat ngdatasets.xmlMga tipak na kailangang gawinEDDGridMula sa Erddapdatos mula sa lahatEDDGriddatos sa malayoERDDAP. Mapipili mong panatilihin ang orihinaldatasetIDs (na maaaring gayahin ang ilandatasetIDnasa loob na ninyoERDDAP) o gumagawa ng bagong mga pangalan na magiging natatangi (ngunit karaniwang hindi bilang tao-basahin) .
Mapagkakatiwalaang Mula sarddap
Ang EDDType na ito ang gumagawa ng lahat ngdatasets.xmlMga tipak na kailangang gawinMapagkakatiwalaang Mula sarddapmga datos mula sa lahat ng EDDTable datasets sa isang remoteERDDAP. Mapipili mong panatilihin ang orihinaldatasetIDs (na maaaring gayahin ang ilandatasetIDnasa loob na ninyoERDDAP) o gumagawa ng bagong mga pangalan na magiging natatangi (ngunit karaniwang hindi bilang tao-basahin) .
EDDGridMula sa ThreddsCatalog
Ang EDDType na ito ang gumagawa ng lahat ngdatasets.xmlMga tipak na kailangan para sa lahatEDDGridMula sa Dapmga datos na masusumpungan nito sa pamamagitan ng paggapang na pabalik - balik sa pamamagitan ng THEDDS (Ilalim) katalogo. Maraming uri ng katalogo ng THEDDS na URL. Ang option na ito REQURE ISANG THREDS .xml URL na may /catalog/ dito, halimbawa,
https://oceanwatch.pfeg.noaa.gov/thredds/catalog/catalog.xml o
https://oceanwatch.pfeg.noaa.gov/thredds/catalog/Satellite/aggregsatMH/chla/catalog.xml
(Ang isang kaugnay na .html katalogo ay nasa
https://oceanwatch.pfeg.noaa.gov/thredds/Satellite/aggregsatMH/chla/catalog.html , na hindi katanggap-tanggap saEDDGridMula sa ThreddsCatalog).
Kung may problema kaEDDGridMga Mula sa Thredd Catalog:
- Tiyakin ang URL na ginagamit mo ay tama, kasama ang /catalog/, at nagtatapos sa /catalog.xml .
- Hangga't maaari, gumamit ng adres na pampubliko (Halimbawa, https://oceanwatch.pfeg.noaa.gov ) sa URL, hindi isang lokal na direksiyon ng numero (Halimbawa, https://12.34.56.78 ) . Kung ang THEDDS ay mararating lamang sa pamamagitan ng lokal na numerong IP address, magagamit mo [<kumbinasyon sa PubliSourceUrl>] (#convertto Publicsourceurl) gayo'yERDDAP™nakikita ng mga gumagamit ang pahayag pangmadla, bagamanERDDAP™ay kumukuha ng impormasyon mula sa lokal na direksiyon ng numero.
- Kung may mga problema kang hindi mo malutas,Tingnan ang problema sa pagpapaputok ng mga tip.
- Ang mababang antas na kodigo para rito ngayon ay gumagamit ng kodigoUnidata" netcdf-java katalogo " na kodigong gumagapang (th. uri ng katalogo) upang pangasiwaan nito ang lahat ng katalogo ng THEDS (na maaaring maging nakagugulat at masalimuot) SalamatUnidatapara sa kodigong iyan.
EDDGridLonPM180 Mula sa UpdapCatalog
Ang EDDType na ito ang lumilikha ngdatasets.xmlupang makagawaEDDGridLonPM180datos mula sa lahatEDDGridmga datos sa loob ng isangERDDAPna may anumang halaga ng longhitud na higit pa sa 180.
- Hangga't maaari, gumamit ng adres na pampubliko (Halimbawa, https://oceanwatch.pfeg.noaa.gov ) sa URL, hindi isang lokal na direksiyon ng numero (Halimbawa, https://12.34.56.78 ) . Kung gayonERDDAP™ay makukuha lamang sa pamamagitan ng lokal na numerong direksiyon ng IP, magagamit ninyo [<kumbinasyon sa PubliSourceUrl>] (#convertto Publicsourceurl) gayo'yERDDAP™nakikita ng mga gumagamit ang pahayag pangmadla, bagamanERDDAP™ay kumukuha ng impormasyon mula sa lokal na direksiyon ng numero.
EDDGridLon0360 MulaErddapCatalog
Ang EDDType na ito ang lumilikha ngdatasets.xmlupang makagawaEDDGridLon0360datos mula sa lahatEDDGridmga datos sa loob ng isangERDDAPna may anumang halaga ng longhitud na wala pang 0.
- Hangga't maaari, gumamit ng adres na pampubliko (Halimbawa, https://oceanwatch.pfeg.noaa.gov ) sa URL, hindi isang lokal na direksiyon ng numero (Halimbawa, https://12.34.56.78 ) . Kung gayonERDDAP™ay makukuha lamang sa pamamagitan ng lokal na numerong direksiyon ng IP, magagamit ninyo [<kumbinasyon sa PubliSourceUrl>] (#convertto Publicsourceurl) gayo'yERDDAP™nakikita ng mga gumagamit ang pahayag pangmadla, bagamanERDDAP™ay kumukuha ng impormasyon mula sa lokal na direksiyon ng numero.
Mga EDD Mula sa mga Bakod
Nagbibigay ng panimulang directory, ito ay tumatawid sa directory at sa lahat ng subdirectories at nagsisikap na lumikha ng isang dataset para sa bawat pangkat ng mga data file na nasusumpungan nito.
- Ito ay nagpapalagay na kapag ang isang dataset ay natagpuan, ang dataset ay kinabibilangan ng lahat ng mga subdirectories.
- Kung masumpungan ang isang dataset, ang katulad na mga direktoryo ng kapatid ay pakikitunguhan bilang magkahiwalay na mga dataset (Halimbawa, ang mga directories para sa 1990's, ang 2000's, ang 2010's, ay lilikha ng hiwalay na datasets) . Ang mga ito ay dapat madaling pagsamahin sa pamamagitan ng kamay -- palitan lamang ang unang dataset's<fileDir> sa magulang na directory at i-delete ang lahat ng susunod na kapatid datasets.
- Susubukan lamang nitong lumikha ng isang tipak ng yelodatasets.xmlpara sa pinakakaraniwang uri ng extension ng talaksan sa isang directory (hindi kabilang ang .md5, na hindi pinapansin) . Kaya, binigyan ng isang directory na may 10.ncmga talaksan at 5 .txt file, isang dataset ang gagawin para sa.ncmga talaksan lamang.
- Ito ay nagpapalagay na ang lahat ng mga file sa isang directory na may parehong extension ay kabilang sa parehong dataset. Kung ang isang directory ay may ilan.ncmga talaksan na may SST data at ilan.ncmga talaksan na may data ng chlorophyll, isa lamang sampol.ncAng talaksan ay babasahin (SST? chlorophyll?) at isa lamang dataset ang lilikhain para sa uring iyon ng talaksan. Ang dataset na iyon ay malamang na hindi magkarga dahil sa mga komplikasyon sa pagsisikap na magkarga ng dalawang uri ng files sa parehong dataset.
- Kung wala pang 4 na files na may pinakakaraniwang extension sa isang directory, ito ay nagpapalagay na ang mga ito ay hindi data files at nilalampasan lamang ang directory.
- Kung may 4 o higit pang mga file sa isang directory, subalit hindi ito maaaring lumikha ng isang tipak ng talaksandatasets.xmlpara sa mga file (halimbawa, isang hindi suportadong uri ng talaksan) , ito ay lilikha ngMapagkakatiwalaan Mula sa mga Bilibinidatos para sa mga file.
- Sa dulo ng mga pagsusuri na ito ay sumusulat sa log file, bago ang pagsusuridatasets.xmlMga tipak, ito ay maglilimbag ng isang mesa na may sumaryo ng impormasyon na natipon sa pamamagitan ng pagtawid sa lahat ng subdirectories. Ang mesa ay magtatala ng bawat subdirectory at magpahiwatig ng pinaka-karaniwang uri ng extension ng file, ang kabuuang bilang ng mga file, at kung aling uri ng dataset ang nilikha para sa mga file na ito (kung mayroon) . Kung ikaw ay nakaharap sa isang masalimuot, malalim na kayarian ng talaksan, isaalang - alang ang pagpapatakbo ng GenerateDatasets Xml na may EDDType=EDDs FromFiles upang malikha lamang ang impormasyong ito,
- Ang opsiyon na ito ay maaaring hindi malaking gawain na hulaan ang pinakamahusay na EDDType para sa isang ibinigay na grupo ng mga data file, ngunit ito ay mabilis, madali, at sulit sa isang pagsubok. Kung ang source files ay angkop, ito ay gumaganang mahusay at isang mahusay na unang hakbang sa paglikha ngdatasets.xmlpara sa sistema ng talaksan na may maraming subdirectories, bawat isa ay may mga data file mula sa iba't ibang datasets.
EDDTTable MulaEML at EDDTable MulaEMLBatch
Ang pantanging EDDType na ito ang lumilikha sadatasets.xmlupang makagawa ng isangMapagkakatiwalaan Buhat sa mga AsiciiFiledatos mula sa bawat talahanayan na inilarawan sa isangEkolohikal na Wikang MetadataXML file. Ang "Batch" variant ay gumagana sa lahat ng mga file ng EML sa isang lokal o malayong directory. Pakisuyong tingnan ang hiwalayDokumento para sa EDDTTable Mula sa EML.
Mapagkakatiwalaan Mula sa InPort
Ang pantanging EDDType na ito ang lumilikha sadatasets.xmlupang makagawa ng isangMapagkakatiwalaan Buhat sa mga AsiciiFiledatos mula sa impormasyon sa isanginport-xmltalaksan. Kung magagamit mo ang source data file (ang inport-xml file ay dapat may mga clue kung saan ito matatagpuan) , maaari kang gumawa ng working dataset saERDDAP.
Ang sumusunod na mga hakbang ay bumabalangkas kung paano gagamitin ang mga GenerateDataset Xml na may inport-xml file upang makakuha ng working datasetERDDAP.
- Minsang ma-access mo ang inport-xml file (alinman sa bilang isang URL o isang lokal na file) : patakbuhin ang GenerateDatasets Xml, Espesipikong EDDType=EDDTable FromInPort, magtakda ng inport-xml URL o buong pangalan, magtakda kung aling CAR=0, at magtakda ng isa pang hiniling na impormasyon (kung alam) . (Sa puntong ito, hindi mo na kailangan pang magkaroon ng source data file o magtakda ng pangalan nito.) Ang tagpong ito ay nagsasabi sa GenerateDatasets Xml para isulat ang impormasyon lahat ng<entity-atribute-impormasyon><entity>' sa inport-xml file (kung mayroon man) . Naglilimbag din ito ng buod ng impormasyong pang-edukasyon, kasama na ang lahat ng download-url's na nakatala sa inport-xml file.
- Suriin ang lahat ng impormasyong iyan (pati na ang impormasyon sa likuran na nakuha ng GenerateDatasets Xml prints) at puntahan ang download-url (s) upang hanapin ang pinagmulang data file (s) . Kung masusumpungan mo ito (sila) , i-download ito (sila) sa isang directory na madaling puntahanERDDAP. (Kung wala kang makita na anumang source data files, walang dahilan upang magpatuloy.)
- Kagyat na Tatakbo Mga Data Xml muli. Kung ang source data file ay katumbas ng isa sa inport-xml file'<entity-atribute-impormasyon><entity>'s, Itinakda kung aling Anak= Ang Number ng Ententity (e.g., 1, 2, 3, ...) .ERDDAP™ay sisikaping itugma ang mga pangalan ng kolum sa source data file sa mga pangalan sa entity information, at mag-udyok na tanggapin/reject/fix ang anumang mga direksyon. O, kung ang inport-xml file ay walang kahit anong<entity-atribute-impormasyon><entity>'s, magtakda kung aling Anak=0.
- Sa Isipan ngdatasets.xmlna ginawa ng GenerateDatasets Xml, baguhin ang [global]<addAttributes>] (#Global-attributes) kung kinakailangan/nais.
- Sa Isipan ngdatasets.xmlna ginawa ng GenerateDatasetsXml, idagdag/revise ang [<dataVariable>] (Nakatatawa) impormasyon ayon sa kinakailangan/nais na ilarawan ang bawat isa sa mga variables. Tiyaking tama ang pagkakatukoy mo sa bawat variable' [<sourceName>] (#sourcename) (gaya ng makikita sa pinagkunan) , [<destinationName>] (#Shinationname) (na may higit na limitasyon sa pinahihintulutang mga karakter kaysasourceName) , [<mga yunit>] (Mga #unit) (lalo na kung ito ay isangiba't ibang oras o timestampkung saan kailangang tiyakin ng mga yunit ang format) , at [<missing\value>] (#Pagkulang sa Halaga ng) ,
- Kapag malapit ka nang matapos, paulit - ulit na gamitin angMga Dasdupang mabilis na makita kung ang paglalarawan ng dataset ay mabisa at kung ang dataset ay lilitawERDDAP™kung ano ang nais mong gawin nito.
Magiging dakila kung gagamitin din ng mga grupong gumagamit ng InPort upang i-record ang kanilang mga datasetsERDDAP™upang makuha ang aktuwal na datos:
- ERDDAP™ay isang solusyon na magagamit ngayon para matupadNOAA'Resulta ng Pangmadlang Pag - aaral (HANDA) mga kahilinganNgayon mismo, hindi sa malabong panahon sa hinaharap.
- ERDDAP™ang aktuwal na impormasyong makukuha ng mga gumagamit nito, hindi lamang ang metadata. (Anong kabutihan ang metadata na walang datos?)
- ERDDAP™metadata (Partikular na ang mga yunit ng mga variable) , hindi tulad ng ibang data server software na isinasaalang-alang. (Anong kabutihan ang data kung walang metadata?) Ang paggamit ng software na hindi sumusuporta sa metadata ay ang pag-imbita ng datos na maling maunawaan at maling ginagamit.
- ERDDAP™ay malaya at bukas-oras na software di tulad ng ibang software na isinasaalang-alang. Patuloy na paglakiERDDAP™ay binabayaran na. TulongERDDAP™libre ang mga gumagamit.
- ERDDAP'Ang hitsura ay maaaring madaling baguhin upang pag - isipan at itampok ang iyong grupo (hindiERDoERDDAP) .
- ERDDAP™ay nag-aalok ng hindi pabagu-bagong paraan upang makuha ang lahat ng datasets.
- ERDDAP™ay maaaring magbasa ng datos mula sa maraming uri ng data files at mula sa mga kaugnay na database.
- ERDDAP™ay maaaring makitungo sa malalaking datasets, kabilang ang mga dataset kung saan ang source data ay nasa maraming data file.
- ERDDAP™ay makapagsusulat ng datos sa maraming uri ng data files, sa kahilingan ng gumagamit, kabilang na ang mga siyentipikong data file na tulad ng netCDF, ESRI .csv, at ESRI .ODV .txt.
- ERDDAP™ay maaaring gumawa ng mga grap ng kaugalian at mapa ng mga subset ng datos, batay sa mga detalye ng gumagamit.
- ERDDAP™ay maaaring makitungo sa mga hindi-data datasets tulad ng koleksiyon ng imahe, video, o audio files.
- ERDDAP™ay ikinabit at ginamit samahigit na 60 institusyon sa buong daigdig.
- ERDDAP™ay nakatala bilang isa sa mga data server na inirerekomenda para gamitin sa loobNOAAsa loobNOAAMga Access ng Data Access Procedual Directive, hindi tulad ng ibang software na isinasaalang-alang.
- ERDDAP™ay produkto ngNMFS/NOAA, kaya gamitin ito sa loobNMFSatNOAAdapat na maging dahilan ng pagmamapuriNMFSatNOAA.
Pakisuyong magbigayERDDAP™subukan. Kung kailangan mo ng tulong, pakisuyong magpaskil ng mensahe saERDDAP™Google group.
Idagdag angFillValue Attributes
Ang espesyal na option na ito ng EDDType ay hindi isang dataset type. Isa itong kasangkapan na maaaring magdagdag ng \_FillValue na katangian sa ilang mga variable sa ilang mga dataset. TingnanIdagdag angFillValue Attributes.
mahanap Panahon
Ang espesyal na option na ito ng EDDType ay hindi isang dataset type. Sa halip, sinasabi nito sa GenerateDatasets Xml upang maghanap sa pamamagitan ng isang koleksiyon ng mga gridd.nc (at nauugnay) ang mga files upang mahanap at i-print ang isang listahan ng mga file na may nadobleng halaga ng oras. Kapag tiningnan nito ang mga pamantayan sa panahon, binabago nito ang mga ito mula sa orihinal na mga yunit tungo sa"seconds since 1970-01-01"sa kaso ang iba't ibang file ay gumagamit ng iba't ibang unit strando. Kailangan mong maglaan ng panimulang directory (mayroon man o wala ng pasikut - sikot) , ang pangalan ng talaksan ay regular (e.g., .\\\.nc ) , at ang pangalan ng time variable sa mga files.
umere
Ang espesyal na option na ito ng EDDType ay hindi isang dataset type. Sa halip, sinasabi nito sa GenerateDatasets Xml upang maglimbag ng isangumere\-tulad ng printout ng isang.nc,.ncml, o.hdftalaksan. Sa katunayan ay ginagamit nito ang netcdf-java'sNCdump, na isang mas limitadong kasangkapan kaysa sa C na bersyon ng NCdump. Kung gagamitin mo ang opsyong ito, hihilingin sa iyo ni GenerateDatasetsXml na gamitin ang isa sa mga opsyon: "-h" (header) , "-c" (coordinate vars) , "-vall" (default) , "-v var1;var2", "-v var1 (0,0:10,0:20) ". Ito'y kapaki - pakinabang sapagkat, kung walang ncdump mahirap malaman kung ano ang nasa loob nito.nc,.ncml, o.hdftalaksan at sa gayon kung aling EDDType ang dapat mong itakda para sa GenerateDatasets Xml. Para sa Isang.ncBilaw na talaksan, ililimbag nito ang nicdump output para sa resulta ng.ncMga pagbabago ng talaksang ml na inilagay sa ilalim.nco.hdftalaksan.
Mga Dasd
- Mga Dasd ay isang programa ng command line na magagamit mo pagkatapos mong makagawa ng unang pagtatangka sa XML para sa isang bagong datasetdatasets.xml. Sa mga DasDd, maaari mong paulit - ulit na subukin at dalisayin ang XML. Kapag ginagamit mo ang programang DasDds:
- Sa Windows, sa unang pagkakataon na tumakbo ka ng DasDds, kailangan mong ayusin ang DasDds. Ang talaksan ng paniki na may editor ng teksto upang baguhin ang landas patungo sa java. Exe file upang makahanap ng WindowsJava.
- Hinihiling sa iyo ng mga DasDd angdatasetIDpara sa dataset na ginagawa mo.
- Sinisikap ng mga DasDd na lumikha ng dataset sa pamamagitan niyandatasetID.
- Ang mga DasDd ay laging naglilimbag ng maraming diagnostikong mensahe. Kung gagamit ka ng "DasDds -verbose", maglilimbag ang DasDds ng mas maraming diagnostikong mensahe kaysa sa karaniwan.
- Para sa kaligtasan, laging inaalis ng mga DasDd ang lahat ng impormasyon na nasa loob ng imbakan ng dataset (mga talaksan) para sa dataset bago subukang likhain ang dataset. Katumbas ito ng pagtatakda ng isangmatigas na watawatKaya para sa aggregated datasets, baka nais mong baguhin ang fileNameRegex nang pansamantala upang limitahan ang bilang ng mga files na natuklasan ng data constructionor.
- Kung hindi maikarga ang dataset (sa anumang dahilan) , DasDds ay hihinto at ipakita sa iyo ang maling mensahe para sa unang pagkakamali na matatagpuan nito.
Huwag mong hulaan kung ano kaya ang problema. Basahing mabuti ang mensaheng EROR.
Kung kinakailangan, basahin ang naunang mga mensahe ng pagsusuri upang makasumpong din ng higit pang mga himaton at impormasyon. - Palitan ang XML ng dataset upang lutasin ang problemang iyan
at hayaang subukan ng mga DasDd na muling likhain ang dataset. - Kung paulit - ulit mong lulutasin ang bawat problema, sa wakas ay malulutas mo ang lahat ng problema
at ang dataset ay magkakarga.
- Lahat ng DasDd ay may output (Mga pagsusuri at mga resulta) ay isinusulat sa iskrin at sa Malaking Direktoryo /logs/DasDds.log .
- Kung magagawa ng mga DasDd ang dataset, ipakikita sa iyo ng mga DasDd kung gayon.das (Pag - iingat ng Dataset Attribute) ,.ds (Deskriptor ng Data Pag - iingat) , at.timeGaps (puwang sa oras) para sa dataset sa iyong screen at isulat ito Malaking Direktoryo /logs/DasDds.out .
- Kadalasan, nanaisin mong gumawa ng kaunting pagbabago sa XML ng dataset upang linisin ang metadata ng dataset at muling i-run DasDds.
Bonus Ikatlong-Party Kasangkapan:ERDDAP-lint
ERDDAP-lint ay isang programa mula sa Rob Fuller at Adam Leader na mas mabuti sa Irish Marine Institute na magagamit mo upang pagbutihin ang metadata ng iyong katawanERDDAP™mga datos.ERDDAP-lint "mga tuntunin at isang simpleng static web application para sa pagtakbo ng ilang pagsubok laban sa iyong beripikasyonERDDAP™server. Lahat ng mga pagsubok ay pinapatakbo sa web browser." Tulad ngWalangix/Linux na lint tool, maaari mong baguhin ang umiiral na mga tuntunin o magdagdag ng bagong mga tuntunin. TingnanERDDAP-lintpara sa higit pang impormasyon.
Ang kasangkapang ito ay lalo nang kapaki-pakinabang sa mga dataset na nilikha mo mga ilang panahon na ang nakaraan at ngayon ay nais na i-up-to-date na may iyong kasalukuyang metadata na mga kagustuhan. Halimbawa, ang unang mga bersiyon ng GenerateDatasets Hindi nagsikap si Xml na lumikha ng buong mundocreator\_name,creator\_email, manlilikha\_type, ocreator\_urlmetadata. Puwede mong gamitinERDDAP-lint upang matukoy ang mga dataset na wala ng mga katangiang metadata na iyon.
Salamat kina Rob at Adam sa paglikha ng kasangkapang ito at sa pagpapagamit nitoERDDAP™pamayanan.
Ang Pangunahing Katatagan ngdatasets.xmlLarawan
Ang kinakailangan at opsyonal na mga tag na ipinahihintulot sa loob ng isangdatasets.xmltalaksan (at kung ilang beses silang lilitaw) ay ipinakikita sa ibaba. Sa gawa, ang iyong gawaindatasets.xmlmagkakaroon ng maraming<dataset>'s tags at gamitin lamang ang ibang tag sa loob<ErddapDatasets> kung kinakailangan.
<?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>
Posible na ang ibang mga ekwasyon ay pahihintulutan sa hinaharap, ngunit sa ngayon, tanging ang ISO-8859-1 ang inirerekomenda.
XInclude
Bago sa bersyon 2.25 ay suporta para sa XInclude. Kailangan mong gamitin ang SAX parser<gumagamit ng SaxParser> Totoo</usesaxParser> sa iyong setup.xml. Magpapahintulot ito sa iyo na isulat ang bawat dataset sa sarili nitong file, pagkatapos ay isama ang lahat ng ito sa pangunahing datasetdatasets.xml, muling gamitin ang mga bahagi ng dataset depinisyon, o pareho. Kung gusto mong makakita ng halimbawa,EDDTestDataset.javaay gumagawa ng XInclude upang muling gamitin ang iba't ibang kahulugan.
Mga Noble
Paggawang kasama ng mga kapatiddatasets.xmlAng talaksan ay isang proyektong hindi-trivial. Pakisuyong basahing mabuti ang lahat ng mga notang ito. Pagkatapos mong pumilianyong datos, pakisuyong basahin nang maingat ang detalyadong paglalarawan nito.
Pagpili ng Uri ng Dataset
Sa karamihan ng mga kaso, mayroon lamang iisaERDDAP™dataset type na angkop sa isang ibinigay na pinagmulan ng datos. Sa ilang kaso (e.g.,.ncmga talaksan) , may ilang posibilidad, subalit karaniwan nang isa sa mga ito ang tiyak na pinakamabuti. Ang una at pinakamalaking pasiya na dapat mong gawin ay: angkop ba na ituring ang dataset bilang isang grupo ng multidimensional na mga hanay (kung gayon ay tingnan mo angEDDGridmga uri ng datos) o bilang isang database-tulad na mesa ng datos (kung gayon ay tingnan mo angEDDTable dataset types) .
Paglilingkod sa Data Gaya ng Dati
Karaniwan na, hindi kailangang baguhin ang pinagmulan ng datos (e.g., ikumberte ang mga file sa ibang uri ng file) upangERDDAP™ay maaaring magsilbi nito. Isa sa mga palagay ngERDDAP™ay na ang pinagmulan ng datos ay gagamitin na gaya ng ay. Karaniwan nang ito'y mahusay. Ang ilang eksepsiyon ay:
- Mga Relyonal na Databas at Cassandra --ERDDAP™ay maaaring magsilbi ng datos nang direkta mula sa mga kaugnay na database at Cassandra. Subalit para sa seguridad, pagbabalanse, at mga isyu sa pagsasagawa, maaari mong piliing magtatag ng isa pang database na may gayunding impormasyon o itabi ang impormasyon saNetCDFv3.ncat mayroonERDDAP™sertuhin ang datos mula sa bagong source ng datos. TingnanEDDTable Mula sa DidabasaatEDDTable Mula saCassandra.
- Hindi suportadong mga Pinagmulan ng Data --ERDDAP™ay maaaring sumuporta sa isang malaking bilang ng mga uri ng mapagkukunan ng datos, ngunit ang mundo ay puno ng 1000's (milyun - milyon?) ng iba't ibang pinagmumulan ng impormasyon (Partikular, ang data file structures) . KungERDDAP™ay hindi sumusuporta sa iyong pinagmulang datos:
- Kung ang pinagmulang datos ayNetCDF .ncmga talaksan, magagamit moNcMLupang baguhin ang data files sa-the-fly, o gamitinNCOsa permanenteng pagbabago ng mga data file.
- Maaari mong isulat ang impormasyon sa isang source type ng datos naERDDAP™ay umaalalay.NetCDF-3.ncAng mga file ay mabuti, pangkalahatang rekomendasyon dahil ang mga ito ay binary files naERDDAP™ay madaling basahin. Para sa impormasyong taskular, isaalang - alang ang pag - iimbak ng impormasyon sa koleksiyon ng mga ito.ncmga talaksan na gumagamit ngCF Mga Sampling Geometriya (DSG) Kontiguous Ragged Array data istruktura kaya't maaaring hawakan gamit angERDDAP'Mga EDDTable Mula sa mga Latian). Kung sila ay makatuwirang organisado (bawat isa ay may datos para sa isang tipak ng espasyo at panahon) ,ERDDAP™ay madaling makakuha ng impormasyon mula sa mga ito.
- Maaari kang humiling ng suporta para sa mapagkukunang iyon ng impormasyonERDDAP™sa pamamagitan ng emailing si Chris. John sa noaa.gov.
- Maaari kang magdagdag ng suporta para sa impormasyong iyon sa pamamagitan ng pagsulat ng kodigo upang pangasiwaan ito mismo. TingnanangERDDAP™Patnubay ng Programmer
- Bilis --ERDDAP™ay mas mabilis na makabasa ng impormasyon mula sa ilang pinagmumulan ng impormasyon kaysa sa iba. Halimbawa, ang pagbabasaNetCDFv3.ncang mga file ay mabilis at ang pagbasa ng mga talaksang ASCII ay mas mabagal. At kung may malaki (>1000) o napakalaki (>10,000) ng pinagmulang mga data file,ERDDAP™ang ilang kahilingan ng datos nang dahan - dahan. Karaniwan, ang pagkakaiba ay hindi napapansin ng mga tao. Gayunman, kung sa palagay moERDDAP™ay mabagal para sa isang ibinigay na dataset, maaari mong piliing lutasin ang problema sa pamamagitan ng pagsulat ng impormasyon sa mas mahusay na setup (karaniwang: iilan, maayos,NetCDFv3.ncmga talaksan) . Para sa datos ng taskular, tingnanang payong ito.
Mungkahi
Kadalasang mas madaling likhain ang XML para sa isang dataset sa pamamagitan ng paggawa ng isang kopya ng gumaganang dataset na paglalarawan sa dataset.xml at pagkatapos ay baguhin ito.
Pag - uugnay sa Pantanging mga Katangian
Mula Noondatasets.xmlay isang XML file, ikaw MUST&-encode"Bi", "<", at ">" sa anumang nilalaman bilang "bamp;", "<", at "&". Mali:<pamagat> Oras & Tides</title> Kanan:<pamagat> Oras; Tides</title>
Hindi kinukunsinti ng XML ang mga pagkakamali sa pag - inom
Pagkatapos mong ayusin ang dataset.xml file, isang mabuting ideya na tiyakin na ang resultamaayos na XMLsa pamamagitan ng paglalagay ng XML na teksto sa isang XML checker na gaya ng XMLPaglaganap ng xmlvalid.
Problema sa Pagputok ng Tip
- Iba Pang Paraan Upang Suriin ang mga Problema sa mga Daket
Bukod sa dalawang pangunahing aklatMga Kasangkapan, - log.txtay log file na lahat ayERDDAP'Ang diagnostikong mga mensahe.
- AngPang - araw - araw na Reportay may higit na impormasyon kaysa sa status page, kabilang na ang listahan ng mga dataset na hindi nagkarga at ang mga eksepsiyon (error) ang sabi nila.
- AngKatayuan Pahinaay isang mabilis na paraan ng pagsusuriERDDAP' status mula sa anumang web browser. Kasama rito ang listahan ng mga dataset na hindi nakakarga (bagaman hindi ang kaugnay na mga eksepsiyon) at subukang basahin ang mga estadistika (nagpapakita ng pagsulong ngEDDGridKopyaatMapagkakatiwalaang Komponiyamga datos at anumangEDDGridMula sa mga LabioMapagkakatiwalaan Mula sa mga Bakoddatos na gumagamit ngHache Mula sa Url (ngunit hindi cache SizeGB) ) .
- Kung maipit ka, tingnan ang amingsa pagkuha ng karagdagang suporta.
Pantanging mga Pagbabago
- Ang longhitud, latitud, altitud (o lalim) , at panahon (LLAT) Iba - iba destinationNameespesyal ang mga s.
- Sa pangkalahatan:
- Ipinaaalam ang mga pagkakaiba - iba ng LLATERDDAP™kung ang axis variable' (para saEDDGriddatos) o mga data variable' (para sa EDDTable datasets) destinationNameay "mahahabang bahagi", "pundamental", "katangian", "depth", o "depth""time".
- Hinihimok ka namin na gamitin ang pamantayang mga pangalang ito sa mga pagbabagong ito kailanma't maaari. Wala sa mga ito ang hinihiling. Kung hindi mo gagamitin ang pantanging iba't ibang pangalang ito,ERDDAP™ang kahulugan nito. Halimbawa, ang mga variable ng LLAT ay pantanging ginagamot ng Make A Graph ( datasetID .grap) : Kung ang X Axis variable ay "mahahaba" at ang Y Axis variable ay "latude", makakakuha ka ng mapa (gumagamit ng pamantayang projection, at may maskarang panlupa, mga hangganang pampolitika, atbp.) sa halip ng graph.
- ERDDAP™awtomatikong magdaragdag ng maraming metadata sa LLAT variables (halimbawa, "ioos\_category", "mga yunit", at ilang mga pamantayan-relatibong mga katangian tulad ng "\_CoordinateAxisType".) .
- ERDDAP™ay awtomatikong magdadagdag ng maraming global metadata na nauugnay sa mga halaga ng LLAT ng napiling subset ng datos (Halimbawa, "geospatial\_lon\_min".) .
- Ang mga Client na sumusuporta sa mga pamantayang metadata na ito ay maaaring samantalahin ang karagdagang metadata upang ilagay ang data sa panahon at espasyo.
- Ang mga Client ay madadaling makalikha ng mga queries na kinabibilangan ng LLAT variables dahil ang mga pangalan ng variable ay pareho sa lahat ng mga kaugnay na dataset.
- Para sa "habahan" na variable at ang "latitude" na variable:
- Gamitin angdestinationNames "matagal" at "palatandaan" tangi lamang kung angmga yunitay mga digri\_east at digris\_north, ayon sa pagkakasunod. Kung ang iyong datos ay hindi angkop sa mga kahilingang ito, gumamit ng iba't ibang pangalan (Halimbawa, x, y, lonRadians, latRadians) .
- Kung mayroon kang longitude at latitud na impormasyon na ipinahahayag sa iba't ibang yunit at sa gayo'y may iba't ibang impormasyondestinationNameHalimbawa, ang mga lonRadian at mga latRadian, Make A Graph ( datasetID .grap) ay gagawa ng mga graph (Halimbawa, mga seryeng time) sa halip na mga mapa.
- Para sa "altitude" variable at ang "depth" variable:
- Gamitin angdestinationName"altitude" upang matukoy ang layo ng datos sa ibabaw ng antas ng dagat (positive="up" mga pagpapahalaga) . Sa optionly, maaaring gamitin mo ang "altitude" para sa mga distansiyang mas mababa sa antas ng dagat kung ang mga halaga ay negatibo sa ibaba ng dagat (o kung ginagamit mo, halimbawa, [<pangalan="scale\_factor" type=" (sa Ingles)>- 1</att>] (#scale_factor) upang gawing mga pamantayan sa altitud ang lalim.
- Gamitin angdestinationName"depth" upang matukoy ang layo ng datos sa ibaba ng antas ng dagat (positive="down" mga pagpapahalaga) .
- Ang isang dataset ay maaaring walang parehong "altitude" at "depth" variables.
- Para sa iba't ibang pangalang ito, angmga yunitdapat ay "m", "meter", o "meters". Kung ang mga yunit ay naiiba (Halimbawa, mga dipa) , magagamit mo [<pangalan="scale\_factor"> ilan Halaga </att>] (#scale_factor) at [<pangalan= "units">meters</att>] (Mga #unit) upang gawing metro ang mga yunit.
- Kung ang iyong data ay hindi angkop sa mga kahilingang ito, gumamit ng ibang impormasyondestinationName (Halimbawa, sa itaas ngGround, distansiya Tobotom) .
- Kung alam mo ang vertical CRS pakisuyong i-dety ito sa metadata, e.g., "EPSG:5829". (Biglang taas sa ibabaw ng antas ng dagat) , "EPSG:5831" (Biglang lalim sa ilalim ng antas ng dagat) , o "EPSG:5703". (Ang taas ng NAVD88) .
- Para sa"time"Iba't iba:
- Gamitin angdestinationName "time"para lamang sa mga variable na kinabibilangan ng buong petsa+time (o petsa, kung iyan lamang ang mayroon) . Halimbawa, kung may magkahiwalay na mga tudling para sa petsa at timeOfDay, huwag mong gamitin ang iba't ibang pangalan"time".
- Tingnanmga yunitpara sa higit pang impormasyon tungkol sa mga yunit na ipinalalagay na sa loob ng panahon at timeStamp variables.
- Ang panahon ay iba - iba at nauugnaypanahon Iba't Ibang Uri ng Selyoay natatangi sa bagay na lagi nilang binabago ang mga halaga ng impormasyon mula sa format ng source (anuman ito) sa halagang numero (mga segundo simula 1970-01-01T00:00:00Z) o ang halagang String (ISO 8601:2004 (E) format) , depende sa kalagayan.
- Kapag ang gumagamit ay humihiling ng time data, maaari nilang hilingin ito sa pamamagitan ng pagtatakda sa panahon bilang isang halaga ng numero (mga segundo simula 1970-01-01T00:00:00Z) o ang halagang String (ISO 8601:2004 (E) format) .
- ERDDAP™may gamit saPagkumberte sa Isang Numerikano Panahon na Upang/mula sa Pabagu - bagong Panahon.
- TingnanPaanoERDDAPPakikitungo sa Panahon.
Bakit mayroon lamang dalawang pangunahing data structure?
- Yamang mahirap para sa mga kliyenteng tao at mga kliyente ng computer na pakitunguhan ang isang masalimuot na set ng posibleng mga dataset istruktura,ERDDAP™ay gumagamit lamang ng dalawang pangunahing istruktura ng datos:
- aNakatiklop na istruktura ng datos (Halimbawa, para sa satellite data at model data) at
- astrakular data structure (Halimbawa, para sa in-situ boya, station, at trajectory data) .
- Tiyak, hindi lahat ng impormasyon ay maaaring ipahayag sa mga kayariang ito, subalit ang karamihan nito ay maaari. Ang mga kopya, lalo na, ay lubhang nababaluktot na mga data structures (Tingnan ang tagumpay ng mga programa ng connectional database) .
- Ginagawa nitong mas madaling itayo ang mga data queries.
- Ito ang gumagawa sa mga pagtugon ng datos na may payak na kayarian, na gumagawa ritong mas madaling isilbi ang datos sa mas malawak na iba't ibang pamantayang uri ng talaksan (na kadalasang sumusuporta lamang sa simpleng mga data structure) . Ito ang pangunahing dahilan kung bakit kami nagtayoERDDAP™Dito.
- Kaya naman napakadali para sa atin (o sinuman) upang magsulat ng client software na gumagana sa lahatERDDAP™mga datos.
- Ginagawa nitong mas madali na ihambing ang impormasyon mula sa iba't ibang pinagmumulan.
- Alam na alam namin na kung ikaw ay sanay na sa paggawa ng mga datos sa iba pang data istruktura maaaring sa simula ay isipin mo na ang pamamaraang ito ay simple o hindi sapat. Subalit ang lahat ng mga data istruktura ay may tradeoff. Walang sakdal. Kahit na ang mga do-it-all na istruktura ay may kani-kanilang downside: ang paggawang kasama nila ay masalimuot at ang mga file ay maaari lamang isulat o basahin gamit ang mga espesyal na software na aklatan. Kung tatanggapin moERDDAP' sapat na paraan upang sikaping makipagtulungan dito, maaaring masumpungan mo na ito ay may mga bentaha (Partikular na ang suporta para sa maramihang uri ng talaksan na maaaring magtaglay ng mga pagtugon ng datos) . AngERDDAP™slide show (lalo na angslide ng data istruktura) tungkol sa mga isyung ito.
- At kahit na kung ang paraang ito ay waring kakatwa sa iyo, ang karamihan ay kakaiba sa iyoERDDAP™Hinding - hindi mapapansin ng mga kliyente - makikita lamang nila na ang lahat ng datasets ay may magandang payak na kayarian at sila'y pasasalamatan na makakakuha sila ng datos mula sa iba't ibang pinagmulan na ibinalik sa isang malawak na iba't ibang format ng talaksan.
Dimensiyon
- Paano kung ang grid variable sa source dataset ay hindi magkapareho ng axis?
Sa loobEDDGriddatasets, lahat ng data variables MUST gamitin (makibahagi) lahat ng axis ay iba't iba. Kaya kung ang isang source dataset ay may ilang mga variable na may isang set ng mga dimensiyon, at iba pang mga variable na may ibang set ng dimensiyon, kailangan mong gumawa ng dalawang datasets saERDDAP. Halimbawa, maaari kang gumawa ng isa nitoERDDAP™datos na pinamagatang "Ilang Titulo (nasa ibabaw) " upang magkaroon ng iba't ibang bagay na ginagamit lamang\[panahon\]\[latitud\]\[longhitud\]Mga sukat at iba pang sukatERDDAP™datos na pinamagatang "Ilang Titulo (sa kalaliman) " upang panatilihin ang iba't ibang bagay na ginagamit\[panahon\]\[altitud\]\[latitud\]\[longhitud\]. O marahil ay mababago mo ang pinagmulan ng datos upang dagdagan ang dimensiyon na may iisang halaga (Halimbawa, altitud=0) upang gawing hindi pabagu - bago ang mga variable.
ERDDAP™hindi humahawak ng mas komplikadong datos (Halimbawa, mga modelo na gumagamit ng isang mesh ng mga tatsulok) Mabuti. Maaari mong ihain ang mga dataset na ito saERDDAP™sa pamamagitan ng paglikha ng dalawa o higit pang datasets saERDDAP™ (upang ang lahat ng mga data variable sa bawat bagong dataset ay maghati sa iisang set ng axis variables) , ngunit hindi iyan ang gusto ng mga gumagamit. Para sa ilang datasets, maaari mong isaalang - alang ang paggawa ng regular na nakalinyang bersiyon ng dataset at pag - aalok na karagdagan sa orihinal na impormasyon. Ang ilang kliente software ay maaari lamang makitungo sa isang regular na grid, kaya sa paggawa nito, nakararating ka sa karagdagang mga kliyente.
Niliwanag na mga Data
Ang ilang detalyadong impormasyon ay may masalimuot na kayarian. Halimbawa, ang antas ng satelayt 2 ("mahabang track") ang datos ay hindi gumagamit ng payak na projection. Mga Modelo (at ang iba pa) ay kadalasang gumagana sa mga grid data sa iba't ibang non-cylindrical projections (Halimbawa, conic, polar stereographic, tripolar) o sa mga grid na hindi pa naiaayos (mas masalimuot na data structure) . Nais ng ilang gumagamit ng dulo ang impormasyong ito, kaya't walang nawawalang impormasyon. Para sa mga kliyenteng iyon,ERDDAP™ay maaaring magsilbi sa impormasyon, gaya ng, tangi lamang kung angERDDAP™Hinahati ng administrador ang orihinal na dataset sa ilang datasets, na ang bawat bahagi ay kinabibilangan ng mga variable na may parehong axis variables. Oo, iyan ay waring kakatwa sa mga taong nasasangkot at ito ay naiiba sa karamihanOPeNDAPMga server. SubalitERDDAP™Idiniriin na ang impormasyon ay makukuha sa maraming format. Posible iyan dahilERDDAP™gumamit/requires ng mas pare-parehong data structure. Bagaman medyo asiwa (I.e., naiiba kaysa inaasahan) ,ERDDAP™ay maaaring mamahagi ng inaasahang impormasyon.
\[Oo,ERDDAP™ay maaaring magkaroon ng mas maluwag na mga kahilingan para sa data structure, subalit panatilihin ang mga kahilingan para sa output formats. Subalit iyan ay hahantong sa kalituhan sa gitna ng maraming gumagamit, lalo na sa mga baguhan, yamang maraming waring makatuwirang mga kahilingan para sa impormasyon na may iba't ibang kayarian ay magiging walang bisa sapagkat ang impormasyon ay hindi magiging angkop sa uri ng talaksan. Patuloy tayong bumabalik sa disenyo ng kasalukuyang sistema.\]
Ang ilang mga dulong gumagamit ay nagnanais ng datos sa isang lat unclaide projection tulad ng Equirectanguilar / plate carrée o Mercator) para sa free-of-use sa iba't ibang sitwasyon. Para sa mga situwasyong ito, pinasisigla natin angERDDAP™Tagapangasiwa na gumamit ng iba pang software (NCO?Matlab? R? IDV? ...?) upang i-reproject ang data sa isang heograpiko (Equirectanguular projection / plate carrée) o iba pang hugis - guhit na kalkulasyon at nagsisilbi sa anyong iyon ng impormasyon saERDDAP™bilang ibang dataset. Katulad ito ng ginagawa ng mga tao kapag binabago nila ang satellite level 2 data sa antas 3 data. Ang isa sa gayong kasangkapan ayNCOna nagbibigay ng karagdagang mapagpipilian para sa muling paglalagay ng impormasyon.
GSIS at Reproktibong Data
Yamang ang daigdig ng GIS ay kadalasang mahilig sa mapa, ang mga programa ng GSIS ay karaniwang nagbibigay ng suporta para sa muling pagpapasok ng impormasyon, i.e., pinag - iisipan ang impormasyon sa isang mapa na may ibang tantiya.
Sa kasalukuyan,ERDDAP™ay walang mga kasangkapan upang i-project ang datos. Sa halip, inirerekomenda namin na gumamit kayo ng isang panlabas na kasangkapan upang gumawa ng iba't ibang dataset, kung saan ang impormasyon ay muling ini - project mula sa orihinal na anyo nito tungo sa parihaba (longhitud) angkop para saERDDAP.
Sa aming palagay, ang CF/DAPAng daigdig ay medyo naiiba kaysa daigdig ng GSIS at gumagana sa mas mababang antas.ERDDAP™ang ganiyan. Sa pangkalahatan,ERDDAP™ay dinisenyo upang magtrabaho pangunahin na sa pamamagitan ng datos (hindi mga mapa) at ayaw magbago (e.g., reproject) na datos. SapagkatERDDAP™, grided data ay madalas/karaniwan/maituturing na nauugnay sa mga halaga ng lat lon at isang platform projection, at hindi ang ilang produksyon ng x,y mga halaga. Anuman ang kalagayan,ERDDAP™ay hindi gumagawa ng anumang bagay sa pagtaya ng impormasyon; ipinapasa lamang nito ang impormasyon sa, gaya ng, sa kasalukuyang tantiya nito, sa teoriya na ang isang reprojection ay isang malaking pagbabago sa impormasyon atERDDAP™ay ayaw masangkot sa malalaking pagbabago. Gayundin, maaaring walang kamalay - malay na uliting muli ng mga sumunod na gumagamit ang impormasyon, na hindi magiging kasingbuti ng paggawa lamang ng isang reprojection. (Kaya, kung angERDDAP™Nais ng administrador na mag - alok ng impormasyon sa ibang tantiya, multa; baguhin lamang ang data offline at mag - alok na bilang ibang dataset saERDDAP. Maraming satelayt-based datasets ang iniaalok bilang kung ano ang tinatawag ng NASA na Level 2 (Bahagi) at Bilang Level 3 (Equirectanguular projection) bersyon.) KailanERDDAP™gumagawa ng mga mapa (Tuwiran o sa pamamagitanWMSo KML) ,ERDDAP™Sa kasalukuyan ay nag - aalok lamang ng mga mapa sa Equirectanguilar / plate carrée projection na, mabuti na lamang, tinatanggap ng karamihan ng mga programa sa paggawa ng mapa.
Nakapagpapatibay - loobERDDAP™Mga administrador na gagamit ng iba pang software (NCO?Matlab? R? IDV? ...?) upang i-reproject ang data sa isang heograpiko (Equirectanguular projection / plate carrée) o iba pang hugis - guhit na kalkulasyon at nagsisilbi sa anyong iyon ng impormasyon saERDDAP™bilang ibang dataset. Katulad ito ng ginagawa ng mga tao kapag binabago nila ang satellite level 2 data sa antas 3 data. Ang isa sa gayong kasangkapan ayNCOna nagbibigay ng karagdagang mapagpipilian para sa muling paglalagay ng impormasyon.
Umaasa kami naERDDAP™ay makakagawa ng mga kasangkapang-in upang mag-alok ng mga mapa na may iba pang mga produksyon sa hinaharap. Umaasa rin kami na magkakaroon ng mas mabuting kaugnayan sa daigdig ng GIS sa hinaharap (maliban sa agosWMSpaglilingkod) . Kakila-kilabot na sa "modernong" daigdig na ito, ang mga kawing sa pagitan ng CF/DAPNapakahina pa rin ng daigdig at ng daigdig ng GIS. Ang dalawang bagay na iyon ay nasa listahang To Do. (Kung nais mong tumulong, lalo na kung may kaugnayanERDDAP™sa MapFER, pakisuyong email Chris. Juan sa noaa.gov .)
Mga Uri ng Data
ERDDAP™sumusuporta sa mga sumusunod na uri ng datos (ang mga pangalan ay sensitibo;'u'Ang unlapi ay kumakatawan sa "unsigned"; ang bilang ng mga pangalan sa ibang sistema ay ang bilang ng mga bits) :
byte
- byte ay lumagda ng mga integridad na may lawak na -128 hanggang 127. Sa ibang mga sistema, ito kung minsan ay tinatawag na int8. Ito ay tinatawag na "tinyin" ng SQL at Cassandra. ERDDAP™mga kumberteEkstasimula sa ilang pinagmumulan (e.g., SQL at Cassandra) papasok saERDDAP™na may halagang 0= false, 1=tunay, at 127=missing\_value.
umbyte
- umbyte ay may di-pirmadong integrasyon na may saklaw na 0 hanggang 255. Sa ibang mga sistema, ito kung minsan ay tinatawag na uint8.
maikli
- maikli ay lumagda ng integridad na may lawak na -32768 hanggang 32767. Sa ibang mga sistema, ito kung minsan ay tinatawag na int16. Ito ay tinatawag na "maliit" ng SQL at Cassandra.
umikli
- umikli ay may unsigned integer na halaga na 0 hanggang 65535. Sa ibang sistema, ito kung minsan ay tinatawag na uint16.
int
- int ay lumagda ng integridad na may lawak na -2147483648 hanggang 2147483647. Sa ibang mga sistema, ito kung minsan ay tinatawag na int32. Ito ay tinatawag na "integer|numeriko (?) "Sa pamamagitan ng SQL at "int" ni Cassandra.
uint
- uint ay nag-unsign ng integrations na may saklaw na 0 hanggang 4294967295. Sa ibang mga sistema, ito kung minsan ay tinatawag na uint32.
mahaba
- mahaba ay lumagda ng integrations na may lawak na -9223372036854775808 hanggang 9223372036854775807. Sa ibang mga sistema, ito kung minsan ay tinatawag na int64. Ito ay tinatawag na "bigint|numeriko (?) "Sa pamamagitan ng SQL at "bigint" ni Cassandra. Dahil sa maraming uri ng file ay hindi sumusuporta sa mahabang datos, ang paggamit nito ay hindi hinihimok. Kung maaari, gumamit ng doble sa halip na (Tingnan ang ibaba) .
Umabot
- Umabot ay may di-signed integer na halaga na 0 hanggang 184467473709551615 Sa ibang mga sistema, ito kung minsan ay tinatawag na uint64. Dahil maraming uri ng file ay hindi sumusuporta sa ulong data, ang paggamit nito ay hindi hinihimok. Kung maaari, gumamit ng doble sa halip na (Tingnan ang ibaba) .
Palutang
- Palutang ay isang IEE 754 na lumulutang na may saklaw na humigit-kumulang +/- 3.402823466e+38. Sa ibang mga sistema, ito kung minsan ay tinatawag na boat32. Ito ay tinatawag na "tunay|Palutang (?) |MUNGKAHI (?) |numeriko (?) "Sa pamamagitan ng SQL at "float" ni Cassandra. Ang espesyal na halaga na NaN ay nangangahulugang Not-a-Number. ERDDAP™Komberte ng positibo at negatibong infinity values kay NaN.
doble
- doble ay isang IEE 754 na doble ang agwat sa humigit - kumulang +/- 1.7976931348623157E+308. Sa ibang mga sistema, ito kung minsan ay tinatawag na float64. Ito ay tinatawag na "dobleng prekwensiya|Palutang (?) |MUNGKAHI (?) |numeriko (?) "Sa pamamagitan ng SQL at "doble" ni Cassandra. Ang espesyal na halaga na NaN ay nangangahulugang Not-a-Number. ERDDAP™Komberte ng positibo at negatibong infinity values kay NaN.
char
- char ay isang single, 2-byte (16-bit) Unicode UCS-2 karaktermula sa\u0000 (#0) sa pamamagitan ng\uffff (#65535) . \uffff'Ang kahulugan ay Not-a-Character, analogous sa dobleng halaga ng NaN. Hindi hinihimok ang paggamit ng char dahil maraming uri ng file ang alinman sa hindi sumusuporta sa mga char o sumusuporta lamang sa 1-byte chars (Tingnan ang ibaba) . Isaalang - alang sa halip ang paggamit ng String. Ang mga user ay maaaring gumamit ng mga char variable upang gumawa ng mga graph.ERDDAP™ang mga karakter sa kanilang Unicode code point number, na maaaring gamitin bilang numeric data.
Pagpiga
- Pagpiga ay isang pagkakasunod-sunod ng 0 o higit pa, 2-byte (16-bit) Unicode UCS-2 karakter. ERDDAP™gumamit ng/interpretes ang isang 0-habang strando bilang nawawalang halaga.ERDDAP™ang isang tunay na null string. Ang teoretikal na sukdulang haba ng kuwerdas ay 2147483647 karakter, ngunit malamang ay may iba't ibang problema sa iba't ibang lugar kahit na may medyo mas maikling Strings. GamitinERDDAP'S String for SQL's character, varchar, character iba-iba, binary, varbinary, interval, array, multiset, xml, at anumang ibang database data type na hindi lapat nang malinis sa anumang iba pang iba pang mga uri ng datosERDDAP™tipo ng datos. GamitinERDDAP'S String for Cassandra's "text" at anumang iba pang uri ng datos na Cassandra na hindi angkop ng malinis sa iba pang ibaERDDAP™tipo ng datos.
BagoERDDAP™v2.10,ERDDAP™ay hindi sumusuporta sa mga di-signed integer types internasyunal at nag-aalok ng limitadong suporta sa mga mambabasa at manunulat nito ng datos.
Type na mga Kahinaan ng Data
Maiisip moERDDAP™bilang isang sistema na may birtwal na datasets, at gumagana sa pamamagitan ng pagbabasa ng datos mula sa isang dataset's source sa isang panloob na modelo ng datos at pagsulat ng datos sa iba't ibang mga serbisyo (e.g.,(OPeN)DAP,WMS) at mga uri ng file bilang tugon sa mga kahilingan ng gumagamit.
- Ang bawat input na mambabasa ay sumusuporta sa isang subset ng mga uri ng datos naERDDAP™ay umaalalay. Kaya basahin ang datosERDDAP'di problema ang panloob na data structures.
- Ang bawat manunulat ng output ay sumusuporta rin sa isang subset ng mga uri ng datos. Problema iyan dahilERDDAPay kailangang magsiksik, halimbawa, ng mahabang datos sa mga uri ng talaksan na hindi sumusuporta sa mahabang datos.
Nasa ibaba ang mga paliwanag tungkol sa mga limitasyon (o wala) ng iba't ibang manunulat ng output at kung paanoERDDAP™ang mga problema. Ang gayong mga komplikasyon ay likas na bahagi ngERDDAP'Ang tunguhin na gawing interoperable ang mga sistema ng disparate.
ASI
- ASI (.csv,.tsv, atbp.) teksto -
-
Ang lahat ng mga numerikong datos ay nakasulat sa pamamagitan ng representasyon nitong String (na may nawawalang data values na lumilitaw na 0-habang mga strando) .
-
BagamanERDDAP™sumulat ng mahaba at mahabang halaga nang wasto sa mga pakete ng teksto sa ASCII, maraming mambabasa (e.g., kumalat na mga programa) ay hindi wastong mapakitunguhan ang mahaba at mahabang halaga at sa halip ay makukumberte ang mga ito sa dobleng mga pamantayan (na hindi eksakto sa ilang kaso) .
-
Char at String data ay nakasulat sa pamamagitan ng JSON Strings, na humahawak sa lahat ng mga karakter ng Unicode (Partikular, ang mga "unuswal" na karakter na lampas sa ASCII #127, e.g., ang Euro character ay lumilitaw bilang "\u20ac".) .
-
JON
- JON (.json,.jsonlCSV, atbp.) teksto -
- Ang lahat ng mga numerikong datos ay nakasulat sa pamamagitan ng representasyon nitong String.
- Char at String data ay isinusulat bilang JSON Strings, na humahawak sa lahat ng mga karakter ng Unicode (Partikular, ang mga "unuswal" na karakter na lampas sa ASCII #127, e.g., ang Euro character ay lumilitaw bilang "\u20ac".) .
- Ang nawawalang mga halaga para sa lahat ng mga uring numerikong datos ay lumilitaw bilang null.
.nc3 files
- .nc3 files ay hindi katutubong suportado ang anumang mga hindi-signed integer data types. Bago ang CF v1.9, ang CF ay hindi sumusuporta sa mga di-signed integer types. Upang maharap ito,ERDDAP™Ang 2.10+ ay sumusunod sa pamantayang NUG at palaging nagdaragdag ng isang "\_Unsigned" na attribute na may halagang "tunay" o "mali" upang ipahiwatig kung ang datos ay mula sa isang hindi nakasulat o nakalagdang variable. Ang lahat ng di - magagandang katangian ay isinulat bilang mga katangiang pirmado (e.g., byte) na may nilagdaang mga pamantayan (hal.g., isang ubyteactual\_rangeIbilang sa mga halagang 0 hanggang 255, ay lumilitaw bilang isang byte attribute na may mga halagang 0 hanggang -1 (ang inverse ng complemental na halaga ng out-of-range na halaga). Walang madaling paraan upang malaman kung aling (signed) integrasyong mga katangian ang dapat basahin bilang mga katangiang hindi pa nailalathala.ERDDAP™ay sumusuporta sa "\_Unsigned" attribute kapag ito ay nagbabasa.nc3 files.
- .nc3 files ay hindi sumusuporta sa mahaba o ulong data types.ERDDAP™ang bagay na ito sa pamamagitan ng pansamantalang pagkumberte sa kanila upang maging dobleng variables. Ang mga doble ay maaaring eksaktong kumatawan sa lahat ng mga halaga hanggang +/- 9,007,199,254,740,992 na 2^53. Ito ay isang di - sakdal na solusyon.UnidataHuwag gumawa ng maliit na upgrade.nc3 upang harapin ito at ang kaugnay na mga problema, na binabanggit.nc4 (malaking pagbabago) bilang lunas.
- Ang Kahulugan ng CF (bago ang v1.9) ang sabi nito na sumusuporta sa isang uri ng char data ngunit hindi malinaw kung ang char ay nilayon lamang bilang mga building block ng mga char array, na epektibong Strings. Ang mga tanong sa kanilang talaan sa koreo ay naglalaman lamang ng nakalilitong mga kasagutan. Dahil sa mga komplikasyong ito, pinakamabuting iwasan ang mga char variableERDDAP™at gamitin ang String variables kailanma't maaari.
- Karaniwan na,.nc3 files suportadong strando lamang na may ASCII-encoded (7-bit, #0 - #127) mga tauhan. NIUG (atERDDAP) palawigin iyan (simula ~2017) sa pamamagitan ng paglalakip ng katangiang "\_Encoding" na may halagang "ISO-8859-1". (karugtong ng ASCII na nagbibigay kahulugan sa lahat ng 256 na halaga ng bawat 8-bit na karakter) o "UTF-8" upang ipahiwatig kung paanong ang data ng String ay naka-install. Ang iba pang mga pag - apela ay maaaring legal ngunit nasisiraan ng loob.
.nc4 na talaksan
- .nc4 files sumusuporta sa lahatERDDAP'mga data type.
Mga talaksang NCCSV
Ang NCCSV 1.0 files ay hindi sumusuporta sa anumang hindi nakasigned integer data types. NCCSV 1.1+ filesay sumusuporta sa lahat ng mga hindi naka-signed integer data types.
DAP
- (OPeN)DAP (.das, .dds, .asc ASCII files, at .dods binary files) -
- (OPeN)DAPHawak nang maikli, maikli, int, uint, palutang at dobleng halaga nang tama.
- (OPeN)DAPay may "byte" na data type na binibigyang kahulugan nito bilang di-signed, samantalang makasaysayan, THEDDS atERDDAP™ay gumampan ng "byte" gaya ng nilagdaan sa kanilang(OPeN)DAPmga serbisyo. Upang maharap ito nang mas mabuti,ERDDAP™Ang 2.10+ ay sumusunod sa pamantayang NUG at palaging nagdaragdag ng "\_Unsigned" na attribute na may halagang "tunay" o "mali" upang ipahiwatig kung ang datos ay kung ano angERDDAP™byte o ubyte. Ang lahat ng mga katangiang byte at ubyte ay isinusulat bilang "byte" na mga katangiang may lagdang mga halaga (e.g., isang ubyteactual\_rangeIbilang sa mga halagang 0 hanggang 255, ay lumilitaw bilang isang byte attribute na may mga halagang 0 hanggang -1 (ang inverse ng complemental na halaga ng out-of-range na halaga). Walang madaling paraan upang malaman kung aling "byte" na mga katangian ang dapat basahin bilang mga katangiang ubyte.
- (OPeN)DAPay hindi sumusuporta sa nilagdaan o hindi nilagdaang mahahabang taon.ERDDAP™ang bagay na ito sa pamamagitan ng pansamantalang pagkumberte sa kanila upang maging dobleng mga bagay at mga katangian. Ang mga doble ay maaaring eksaktong kumatawan sa lahat ng halaga hanggang sa 9,007,199,254,740,992 na 2^53. Ito ay isang di - sakdal na solusyon.OPeNDAP (ang organisasyon) Huwag gumawa ng maliit na upgradeDAP2.0 upang harapin ito at ang kaugnay na mga problema, binabanggitDAP4 (malaking pagbabago) bilang lunas.
- Sapagkat(OPeN)DAPwalang hiwalay na uri ng char data at teknikal na sumusuporta lamang sa 1-byte ASCII karakter (#0 - #127) sa Strings, char data variables lilitaw bilang 1-character-long Strings sa(OPeN)DAP.das, .dds, at .dods mga tugon.
- Sa teknikal na paraan, ang(OPeN)DAPAng detalye ay sumusuporta lamang sa mga strandong may mga karakter na ASCII-encoded (#0 - #127) . NIUG (atERDDAP) palawigin iyan (simula ~2017) sa pamamagitan ng paglalakip ng katangiang "\_Encoding" na may halagang "ISO-8859-1". (karugtong ng ASCII na nagbibigay kahulugan sa lahat ng 256 na halaga ng bawat 8-bit na karakter) o "UTF-8" upang ipahiwatig kung paanong ang data ng String ay naka-install. Ang iba pang mga pag - apela ay maaaring legal ngunit nasisiraan ng loob.
Uri ng Komento ng Data
- Dahil sa mahinang suporta sa mahaba, ulong, at char data sa maraming uri ng file, hindi namin hinihimok ang paggamit ng mga uring ito ng datos saERDDAP. Kung maaari, gumamit ng doble sa halip ng mahaba at ulong, at gamitin ang String sa halip na char.
- Metadata - Dahil sa(OPeN)DAP'Ang mga tugong .da at .dds ay hindi sumusuporta sa mga mahahaba o ulong attribute o mga uri ng datos (at sa halip ipakita ang mga ito bilang doble) , sa halip ay baka gusto mong gamitinERDDAP's tabular representasyon ng metadata gaya ng makikita sahttp.../erddap/ Pagkain / datasetID .html web page (Halimbawa, https://coastwatch.pfeg.noaa.gov/erddap/info/cwwcNDBCMet/index.html ) (na makukuha mo rin sa ibang uri ng talaksan, e.g., .csv,.htmlTable,.itx,.json,.jsonlCSV1,.jsonlCSV,.jsonlKVP,.mat,.nc,.nccsv,.tsv,.xhtml) o ang.nccsvAng tugon ng Metadata (Halimbawa, https://coastwatch.pfeg.noaa.gov/erddap/tabledap/cwwcNDBCMet.nccsvMetadata bagaman.nccsvAng metadata ay makukuha lamang para sa tabular datasets) , parehong sumusuporta sa lahat ng uri ng datos (Partikular, ang mahaba, ulong, at char) .
Ang Media Files
Hindi lahat ng datos ay mga hanay ng bilang o teksto. Ang ilang mga dataset ay binubuo o kinabibilangan ng mga file ng media, tulad ng imahe, audio at video files.ERDDAP™ay may ilang pantanging katangian upang gawing mas madali para sa mga gumagamit na ma-access ang mga file ng media. Dalawang hakbang:
- Gawing madaling marating ang bawat file sa pamamagitan ng sarili nitong URL, sa pamamagitan ng isang sistema na sumusuporta sa mga kahilingan ng range. Ang pinakamadaling paraan upang gawin ito ay ilagay ang mga salansan sa isang directory naERDDAP™ay magagamit. (Kung ang mga ito ay nasa isang lalagyan na parang isang lalagyan.zipwalang laman ang talaksan, bagaman baka gusto mong ialok ang mga ito.zipsa mga gumagamit din.) Pagkatapos, gumawa ng isangMapagkakatiwalaan Mula sa mga Bilibinidatos na magagamit sa pamamagitan ngERDDAP™, lalo na sa pamamagitan ngERDDAP'"files"sistema.
Lahat ng file ay nakarating sa EDDTable FromFileNames atERDDAP'"files"suporta ng sistemamga kahilingan ng byte range. Karaniwan na, kapag ang isang kliyente (e.g., isang browser) ay humihiling sa isang URL, makukuha nito ang buong file bilang tugon. Subalit sa pamamagitan ng isang byte range request, binabanggit ng kahilingan ang isang hanay ng mga byte mula sa file, at ibinabalik lamang ng server ang mga byte na iyon. Mahalaga ito dito sapagkat ang mga audio at video player sa mga browser ay nagtatrabaho lamang kung ang file ay magagamit sa pamamagitan ng byte range requests.
Mapagpipilian: Kung mayroon kang mahigit sa isang dataset na may kaugnay na mga file ng media, makagagawa ka lamang ng isang EDDTable FromFileNames na may subfolder para sa bawat grupo ng mga file. Ang bentaha ay na kapag nais mong magdagdag ng bagong mga file ng media para sa isang bagong dataset, ang kailangan mo lamang gawin ay lumikha ng isang bagong folder at ilagay ang mga file sa folder na iyon. Ang folder at files ay awtomatikong idaragdag sa EDDTable FromFileNames dataset.
- Mapagpipilian: Kung mayroon kang dataset na may mga reperensiya sa media file, idagdag itoERDDAP. Halimbawa, maaaring mayroon kang isang .csv file na may hanay sa tuwing may nakakakita ng isang balyena at isang kolum na kinabibilangan ng pangalan ng isang talaksan ng imahe na may kaugnayan sa pagtanaw na iyon. Kung ang pangalan ng talaksang larawan ay pangalan lamang ng pangalan, e.g., Img20141024T192403Z, hindi isang buong URL, kung gayon kailangan mong magdagdagbabyse ng talaksan Url at/o fileAccessSuffixMga katangian ng metadata dahil diyandataVariablena bumabanggit sa baseURL at hulapi para sa mga pangalan na iyon. Kung gagawin mong madaling makuha ang mga file sa pamamagitan ng EDDTable FromFileNames, ang URL ay magiging nasa anyong base Url /erddap/files/ datasetID / Halimbawa,
<att name="fileAccessBaseUrl">*someBaseURL*</a>
<att name="fileAccessSuffix">.png</a>
Kung mayroon.zipo iba pang file ng container na may lahat ng media files na may kaugnayan sa isang data variable, inirerekomenda namin na gamitin din ninyo ang file na iyon sa mga gumagamit (tingnan ang hakbang 1 sa itaas) at pagkatapos ay iiugnay ito sa isangTagas ng talaksan UrlSabihin pa.
\[PasimulaERDDAP™v1.82\]Kung gagawin mo ang unang hakbang sa itaas (o dalawang hakbang) , kung gayon kapag minamalas ng gumagamit angERDDAP™ "files"sistema para sa dataset na iyon (o humiling na makita ang isang subset ng dataset sa pamamagitan ng isang.htmlTablehilingin, kung ginawa mo ang ikalawang hakbang) ,ERDDAP™ay magpapakita ng isang imaheng '?' sa kaliwa ng pangalan. Kung ang gumagamit ay aali - aligid sa ibabaw ng imaheng iyon, makikita nila ang isang popup na nagpapakita ng larawan, o isang audio player, o isang video player. Sinusuporta lamang ng mga Browser ang limitadong bilang ng mga uri ng
- Larawan (karaniwang .gif, .jpg, at .png) ,
- audio (karaniwang .mp3, .gg, at .wav) , at
- mga talaksang video (karaniwang .mp4, .ogv, at . webm) .
Ang suporta ay nag-iiba-iba sa iba't ibang bersyon ng iba't ibang browser sa iba't ibang operating system. Kaya kung may mapagpipilian ka kung aling uri ng talaksan ang ihahandog, makabubuting ialok ang mga uring ito.
O, kung ang gumagamit ay kumukumpas sa pangalan na ipinakikita sa isang pangalanERDDAP™web page, ipakikita ng kanilang browser ang imahe, audio o video file bilang hiwalay na web page. Ito ay karamihang kapaki-pakinabang upang makita ang isang napakalaking imahe o video na umabot sa buong screen, sa halip na sa isang pop-up.
Paggawang Kasama ng AWS S3 Files
Paglilingkod sa Web ng Amazon (MGA AW) ay isang nagbebenta ngpagpupuslit ng ulapmga serbisyo.S3ay isang bagay na nakaimbak na sistema na iniaalok ng AWS. Sa halip ng sistemang herarkiya ng mga direktoryo at mga salansan ng isang tradisyunal na sistema ng talaksan (tulad ng isang hard drive sa iyong PC) , ang S3 ay nag-aalok lamang ng "buckets" na may hawak na "mga bagay". (Tatawagin natin"files") .
Para sa mga talaksang ASCII (e.g., .csv) ,ERDDAP™ay maaaring gumawa sa mga salansan sa mga timba nang tuwiran. Ang tanging bagay na kailangan mong gawin ay magtakda ng<fileDir> para sa dataset gamit ang espesipikong format para sa AWS bucket, e.g., https://bucketName.s3.aws-region.amazonaws.com/subdirectory/ . Hindi mo dapat gamitin<Hache Mula sa Url> . Tingnan ang ibaba para sa mga detalye.
Subalit para sa binary files (e.g.,.nc, .grib, .bufr, at.hdfmga talaksan) , kailangan mong gamitin ang<cache FromUrl> system na inilarawan sa ibaba.ERDDAP, netcdf-java (alinERDDAP™gamit sa pagbasa ng datos mula sa mga talaksang ito) , at ang iba pang siyentipikong data software ay dinisenyo upang gumana sa pamamagitan ng mga file sa isang tradisyonal na file systemantas ng blokepagkuha ng talaksan (na nagpapahintulot sa pagbasa ng mga tipak ng talaksan) , ngunit S3 lamang ang nag-aalokantas ng talaksan (bagay) pagkuha ng talaksan (na nagpapahintulot lamang na mabasa ang buong talaksan) . Nag-aalok ang AWS ng alternatibo sa S3,Elastic Block Store (EBS) ), na sumusuporta sa pag-access ng block level sa mga file ngunit ito ay mas mahal kaysa sa S3, kaya ito ay bihirang gamitin para sa maramihang pag-iimbak ng maraming data files. (Kaya kapag sinasabi ng mga tao na nag - iimbak ng impormasyon sa ulap (S3) ay mura, ito ay karaniwang isang mansanas sa mga kahel na paghahambing.)
S3 Buckets
Mga Nilalaman ng isang Bucket. Mga susi. Mga bagay na walang halaga.
Sa teknikal na paraan, ang S3 timba ay hindi organisado sa isang istruktura ng talaksan na gaya ng isang file system sa isang computer. Sa halip, ang mga timba ay naglalaman lamang ng "mga bagay" (mga talaksan) , bawat isa ay may "key" (isang pangalan) . Isang halimbawa ng isang susi sa baldeng noa-goes17
ABI-L1b-RadC/2019/235/22/OR\\_ABI-L1b-RadC-M6C01\\_G17\\_s20192352201196\\_e20192352203569\\_c20192352204013.nc
Ang katumbas na URl para sa bagay na iyon ay
Sinusuportahan ng AWS ang kaunting pagkakaiba sa kung paano ginagawa ang URL na iyon, subalitERDDAP™kailangan ang isang espesipikong format:
https://bucketName.s3.region.amazonaws.com/key
Karaniwan na, gaya ng halimbawang ito, na gawing parang trahektoriko ang mga pangunahing pangalan at pangalan ng talaksan, subalit sa teknikal na paraan ay hindi gayon. Yamang ito ay karaniwan at kapaki - pakinabang,ERDDAP™ang mga susi na may /'s na para bang ang mga ito ay isang landas ng herarkiya at pangalan ng talaksan, at ang mga ito ay tatawaging gayon ng dokumentong ito. Kung ang mga susi ng timba ay hindi gumagamit ng /'s (e.g., isang susing katulad ng
ABI-Lib.2018.052.22.OR\_ABI-L1b-RadM2-M3C10\_G16\_s2018052275), pagkatapos,ERDDAP™ang buong susi bilang isang mahabang pangalan ng talaksan.
Lihim na mga Bucket -- Ang administrador ng baldeng S3 ay maaaring gumawa ng timba at ang laman nito ay publiko o pribado. Kung publiko, ang anumang file sa balde ay maaaring download ng sinumang gumagamit ng URL para sa file. May AmazonBukás na Dataprograma na kinaroroonan ng mga datos ng publiko (kasama ang datos mula saNOAA, NASA, at USGS) para sa libre at walang bayad para sa sinuman na mag-download ng mga file mula sa mga baldeng iyon. Kung ang timba ay pribado, ang mga file sa timba ay makukuha lamang ng awtorisadong mga gumagamit at ang AWS ay may bayad (karaniwang binabayaran ng may - ari ng timba) para sa pag-download ng files sa isang non-AWS S3 computer.ERDDAP™ay maaaring gumana sa pamamagitan ng datos sa mga pampubliko at pribadong timba.
Mga Kredential ng AWS
Upang gawin ito na gayonERDDAP™ay maaaring bumasa ng laman ng pribadong mga timba, kailangan mo ang mga kredensiyal ng AWS at kailangan mong mag - imbak ng isang talaksan ng kredensiyal sa pamantayang dako kaya't kailangan mong mag - imbak ng isang rekordERDDAP™ay makasusumpong ng impormasyon. Tingnan ang AWS SDK para saJavaDokumento ng 2.x:Magtakda ng default na kredensiyal. (Ang mapagpipiliang mag - imbak ng mga pamantayan bilangJavamga command line parameter sa\[tomcat\]/bin/setenv.sh ay maaaring mabuting opsyon.)
AWS /files/
- / Mgafile/ sistema -- AngERDDAP™ / Mgafile/ sistemaPinahihintulutan ng mga gumagamit na i-download ang mga source file para sa isang dataset. Iminumungkahi namin na buksan ninyo ito para sa lahat ng datasets na may source files sapagkat nais ng maraming gumagamit na i - download ang orihinal na source files.
- Kung ang mga file ay nasa isang pribadong S3 back, ang kahilingan ng gumagamit na download ang isang file ay pangangasiwaan ngERDDAP™, na siyang babasa ng impormasyon mula sa talaksan at pagkatapos ay maghahatid nito sa gumagamit, sa gayo'y dinaragdagan ang pasan sa iyong katawanERDDAP™, ginagamit ang dumarating at palakaibigang bandwidth, at ginagawa ka (angERDDAP™Tagapangasiwa) Bayaran ang bayad ng data egress sa AWS.
- Kung ang mga file ay nasa isang pampublikong S3 bucket, ang kahilingan ng gumagamit na mag-download ng isang file ay iredirect sa AWS S3 URL para sa file na iyon, kaya ang data ay hindi dadaloyERDDAP™, sa gayo'y binabawasan ang pasanERDDAP. At kung ang mga file ay nasa isang Open Data ng Amazon (malaya) pampublikong timba, pagkatapos ay ikaw (angERDDAP™Tagapangasiwa) Hindi na kakailanganing magbayad ng anumang bayad sa data egress sa AWS. Sa gayon, may malaking bentaha ang pagbibigay ng impormasyon mula sa publiko (hindi pribado) Mga baldeng S3, at malaking bentaha sa pag - aalaga ng impormasyon mula sa Amazon Open Data (malaya) mga timba.
ERDDAP™at WAS S3 Buckets
ERDDAP™at WAS S3 Buckets
Mabuti na lamang, pagkatapos ng maraming pagsisikap,ERDDAP™ay may ilang katangian na nagpapahintulot dito na harapin ang likas na mga problema ng paglutas sa antas ng bloke ng S3 sa makatuwirang mahusay na paraan:
- \[Tagatanggi: Ang paggawa sa pamamagitan ng AWS S3 backs ay isang malaking ekstrang trabaho. Ang AWS ay isang malaking ekosistema ng mga serbisyo at katangian. Maraming dapat matutuhan. Nangangailangan ito ng panahon at pagsisikap, ngunit do-able ito. Maging matiyaga at magtatrabaho ka. Humingi ng tulong
(Dokumento ng AWS, website tulad ngPag - apaw ng Siksik, at ang regular
ERDDAP™opsyon ng suporta) kung/kapag naipit ka.\]
- Maaari pa ngang mahirap malaman ang kayarian ng directory at mga pangalan ng salansan sa isang timba na S3.ERDDAP™ay may lunas sa problemang ito: Ang EDDTable FromFileNames ay may pantanging lunas\\\* mula sa On theFlyMapagpipilian na nagpapahintulot sa iyo na gumawa ng isang EDDTable FromFileNames dataset na nagpapangyari sa mga gumagamit na suriin ang nilalaman ng isang timba na S3 (at mag-download ng mga file) sa pamamagitan ng datos"files"Pumili. Meronhalimbawa nito sa ibaba.
- ERDDAP™ay makababasa ng datos mula sapanlabas na siksik na mga data file, kaya mainam kung ang mga files sa S3 ay naka-imbak bilang.gz,.gzip,.bz2, .Z, o iba pang uri ng panlabas na siksik na mga data file, na maaaring lubhang makagulat (2 - 20X) ay bumaba sa halaga ng pag - iimbak ng talaksan. Kadalasan ay walang parusang panahon sa paggamit ng panlabas na mga talaksang siniksik, yamang ang panahong natitipid sa pamamagitan ng paglilipat ng mas maliit na salansan mula sa S3 tungo saERDDAPHalos balansehin ang ekstrang panahon na kinakailangan para saERDDAP™upang i-decompress ang file. Upang magamit ang bahaging ito, kailangan mo lamang tiyakin na ang dataset's<fileNameRegex> pinapayagan ang siksik na uri ng talaksan (e.g., sa pamamagitan ng pagdaragdag (|.gz) sa dulo ng regex) .
- Para sa pinakakaraniwang kaso, kung saan mayroon kangERDDAP™naka-install sa iyong PC para sa test/pagpapaunlad at kung saan ang dataset ay may binary data files na nakaimbak bilang mga bagay sa isang S3 back, isang paraan upang makuha ang datasetERDDAP™ay:
-
Gumawa ng isang directory sa iyong PC upang magdaos ng ilang test data files.
-
I - download ang dalawang data file mula sa pinagmulan patungo sa directory na kalilikha mo lamang.
-
GamitinGenerateDatasetsXmlupang lumikha ng malaking bahagi ngdatasets.xmlpara sa dataset batay sa dalawang lokal na data file.
-
Suriin na ang dataset ay gumagana ayon sa naisMga Dasdat/o ang inyong lugarERDDAP.
Ang sumusunod na mga hakbang ay gumagawa ng kopya ng dataset na iyon (na makakakuha ng impormasyon mula sa timba ng S3) sa publikoERDDAP.
-
Kopyahin ang Pitak ngdatasets.xmlpara sa datosdatasets.xmlsa publikoERDDAP™na magsisilbi sa impormasyon.
-
Gumawa ng isang directory sa publikoERDDAP'Ang lokal na hard drive upang maghawak ng isang cache ng mga temporary files. Ang directory ay hindi gagamit ng maraming disk space (tingnan ang cacheSizeGB sa ibaba) .
-
Palitan ang halaga ng dataset'<tag ng talaksangDir> upang ituro nito ang directory na kalikha mo lamang (kahit na walang laman ang directory) .
-
Magdagdag ng aHache Mula sa Urltag na nagsasaad sa pangalan ng timba ng dataset at opsyonal na unlapi (I.e., directory) sa espesipikongHaws S3 URL Format naERDDAP™kailangan.
-
Magdagdag ng [<cachesizeGB>] (#cache simulaurl) tag sa xml ng dataset (e.g., 10 ay mahusay na halaga para sa karamihan ng datasets) upang magsumbongERDDAP™upang limitahan ang laki ng lokal na cache (I.e., huwag subuking ibalot ang lahat ng remote files) .
-
Tingnan kung mabisa iyan sa publikoERDDAP. Pansinin na sa unang pagkakataonERDDAP™ang dataset, mangangailangan ng mahabang panahon upang magkarga, sapagkatERDDAP™Kailangang i-download at basahin ang lahat ng data files.
-
Kung ang dataset ay isang pagkalaki - laking koleksiyon ng mga talaksan ng impormasyon na nakatiklop, mangangailangan ito ng napakahabang panahon at hindi praktikal. Sa ilang mga kaso, para sa mga nakatiklop na data file,ERDDAP™ay makakakuha ng kinakailangang impormasyon (e.g., ang time point para sa datos sa isang naka-link na talaksan ng datos) mula sa pangalan ng talaksan at iwasan ang problemang ito. TingnanPag - aalsa Mga Pangalan ng File.
- Mapagpipilian (ngunit lalo na sa EDDTable FromFiles datasets) , maaari kang magdagdagMga "nThread "tag sa dataset na sasabihinERDDAPupang gamitin ang mahigit na 1 sinulid kapag tumutugon sa kahilingan ng gumagamit ng impormasyon. Binabawasan nito ang mga epekto ng pagkaantala na nangyayari kapagERDDAP™ng datos mula sa (malayo) AWS S3 backs sa lokal na cache at (marahil) Pagpapahina sa kanila.
WAWS S3 Open Data
Bilang bahagi ngNOAA'Programa ng Malalaking Data,NOAAay may mga pakikipagsosyo sa limang organisasyon, kabilang ang AWS, "upang galugarin ang potensiyal na mga benepisyo ng pag-iimbak ng mga kopya ng mga pangunahing obserbasyon at modelong output sa Cloud upang payagan ang direktang pag-computing sa data nang hindi nangangailangan ng karagdagang pamamahagi". Ang AWS ay kinabibilangan ng mga datos na nakukuha nito mula saNOAAbilang bahagi ng programa nito na mag - alok ng pampublikong access sa isang malaking koleksiyon ngBukás na Data sa AWS S3mula sa anumang computer, ito man ay isang pangyayari sa Amazon (isang inupahang computer) sa AWS network o sa iyong sariling PC sa anumang network. Ang halimbawa sa ibaba ay nagpapalagay na ikaw ay nagtatrabaho sa isang pampublikong dataset.
Pagkakuha ng mga Filyon sa Isang AWS S3 Bucket
Para sa isang pribadong kahon ng datos na S3, ang may - ari ng timba ay dapat na magbigay sa iyo ng daan patungo sa timba. (Tingnan ang AWS dokumentasyon.)
Sa lahat ng kaso, kakailanganin mo ang isang ulat ng WAS sapagkat ang WAS SDK para saJava (alinERDDAP™para makuha ang impormasyon tungkol sa laman ng timba) ay nangangailangan ng mga kredensiyal sa kuwenta ng AWS. (sa ibaba)
ERDDAP™magagamit lamang ang AWS S3 balde kung itatakda mo ang [<Hache Mula sa Url>] (#cache simulaurl) (o<fileDir>) sa isang espesipikong format:
https://bucketName.s3.aws-region.amazonaws.com/prefix/
kung saan
- Ang baldeName ay ang maikling anyo ng pangalan ng timba, e.g. noaa-goes17 .
- Ang aws-region, e.g., we-east-1, ay mula sa "Region" column sa isa sa mga mesa ngNagwakas ang Paglingkurang WOSkung saan aktuwal na matatagpuan ang timba.
- Ang unlapi ay opsyonal. Kung sa kasalukuyan, dapat itong matapos sa'/'.
Halimbawa, https://noaa-goes17.s3.us-east-1.amazonaws.com/ABI-L1b-RadC/
Ang URL format na ito ay isa sa mga rekomendasyon ng WAS S3: tingnan angPagkakuha ng Bucketatang paglalarawang ito ng mga unlapi.ERDDAP™Kailangan mong pagsamahin ang timba na URL at ang opsyonal na panlapi sa isang URL upang matiyak ang<Oches Mula sa Url> (o<fileDir>) kung saan matatagpuan ang mga files.
Subukin ang mga AWS S3 Bucket
Para sa pampublikong mga timba, maaari at dapat mong subukin ang timba na URL ng WAS S3 directory sa iyong browser, e.g., https://noaa-goes17.s3.us-east-1.amazonaws.com Kung ang timba ay tama at angkop para saERDDAP, ibabalik nito ang isang dokumentong XML na mayroon na (bahagi) Itinala ang laman ng timba. Nakalulungkot, ang buong URL (I.e., timba URL plus panlapi) yaon pangERDDAP™ang kagustuhan para sa isang ibinigay na dataset ay hindi gumagana sa isang browser. Ang AWS ay hindi nag - aalok ng isang sistema upang mabilis na manginain ng herarkiya ng isang timba sa iyong browser. (Kung mali iyan, pakisuyong email Chris. John sa noaa.gov. Kung hindi, ang Amazon, pakisuyong magdagdag ng suporta rito!)
Pagtingin sa mga Nilalaman
Ang mga timba na S3 ay kadalasang naglalaman ng dalawang kategorya ng mga salansan, sa dalawang pseudo subdirectories, na maaaring maging dalawa sa mga itoERDDAP™mga datos. Upang makagawa ngERDDAP™mga dataset, kailangan mong malaman ang panimulang directory para sa<Oches Mula sa Url> (o<fileDir>) at ang format ng mga pangalan ng talaksan na nagpapakilala sa subset na iyon ng mga file. Kung titingnan mo ang buong laman ng timba sa isang browser, ipakikita lamang sa iyo ng S3 ang unang 1000 file, na hindi sapat. Sa kasalukuyan, ang pinakamabuting paraan upang makita mo ang lahat ng laman ng timba ay ang gumawa ng isang timbaMapagkakatiwalaan Mula sa mga Bilibinidatos (sa iyong PCERDDAP™at/o sa publikoERDDAP) , na nagbibigay rin sa iyo ng madaling paraan upang browse ang istraktura ng directory at mag-download ng mga file. Ang<fileDir> para diyan ang URL na ginawa mo sa itaas, e.g. https://noaa-goes17.s3.us-east-1.amazonaws.com .\[Bakit ang AWS S3 ay hindi nag-aalok ng mabilis at madaling paraan para sa sinuman na gawin ito nang walang salaysay ng AWS?\]Pansinin na kapag ginagawa ko ito sa aking PC sa isang non-Amazon network, lumilitaw na ang Amazon ay nagpapabagal sa pagtugon sa isang patak (mga 100 (?) mga talaksan sa bawat tipak) pagkatapos ng unang ilang tipak (ng 1000 talaksan sa bawat tipak) ay downloaded. Yamang ang mga timba ay maaaring maraming salansan (Ang noaa-goes17 ay may 26 milyon) , ang pagkuha ng lahat ng laman ng isang timba ay maaaring kumuha ng EDDTable FromFileNames ng ilang oras (e.g., 12!) upang matapos.\[Amazon, tama ba iyan?\]
Paggawang Mapagkakatiwalaan Mula sa FaileNames Dataset na may AWS S3 Bucket
Kung may pangalan ka nang timba, subalit wala ka nang listahan ng mga file sa timba ng S3 o ang unlapi na nagpapakilala sa kinaroroonan ng kaugnay na mga file sa timba, gamitin ang mga instruksiyon sa ibaba upang gumawa ng EDDTable FromFileNames dataset upang makita mo ang pamunuan ng directory ng timba na S3ERDDAP'"files"sistema.
- Buksan ang Ulat ng IWS ERDDAP™gamitin angSDK NG WASJavaupang makakuha ng impormasyon sa timba mula sa AWS, kaya kailangan mong kumuhalumikha at mag - udyok ng isang ulat ng WAS. Iyan ay isang malaking trabaho, na maraming bagay na dapat matutuhan.
- Ilagay ang Iyong AWS Credentials kung saanERDDAP™ay maaaring masumpungan ang mga ito. Sundin ang mga tagubilinMagtatag ng AWS Credentials and Region for Developmentgayo'yERDDAP™ (Espesipiko, ang AWS SDK para saJava) ay mahahanap at magagamit ang iyong mga kredensiyal ng AWS. KungERDDAP™Hindi mo makita ang mga kredensiyal, makakakita ka ng isang java.lang. Ilegal na ArgumentException: ang talaksang profile ay hindi maaaring maging null error saERDDAP's log.txt file.
Mungkahi para sa Linux at Mac OS: ang talaksan ng kredensiyal ay dapat na nasa home directory ng gumagamit na nagpapatakbo sa Tomcat (atERDDAP) (para sa parapong ito, iaakala natin ang gumagamit na=tomcat) sa isang file na tinatawag na ~/.aws/credentials . Huwag ipalagay na ang ~ ay /home/tomcat -- aktuwal na gumamit ng cd ~ upang malaman kung saan ang operating system ay nag-iisip ng ~ para sa gumagamit na=tomat ay. Gumawa ng directory kung hindi ito umiiral. Gayundin, pagkatapos ninyong ilagay ang talaksang kredensiyal, tiyakin ang tagagamit at grupo para sa file ay tomcat at pagkatapos ay gumamit ng chmod 400 kredensiyal upang matiyak na ang file ay basahin-lamang para sa user=tomcat.
- Gawing URL ang timbaformatin naERDDAP™kailangan, e.g., https://noaa-goes17.s3.us-east-1.amazonaws.com , at (para sa pampublikong timba) Subukin ito sa isang browser upang matiyak na ito'y babalik sa isang dokumento ng XML na may bahagyang talaan ng nilalaman ng timba na iyon.
- GamitinGenerateDatasetsXmlupang lumikha ng isangMapagkakatiwalaan Mula sa mga Bilibinidatos:
-
Para sa Begint directory, gamitin ang total na ito: \\\ Mula sa Paalam, iyongBucketUrl* Halimbawa, \\\* mula sa On theFly, https://noaa-goes17.s3.us-east-1.amazonaws.com/
-
Pangalan ng talaksan na regex? .\*
-
Muling Pag - opera? totoo
-
Muling pagkarga Bawat UNMinute? 10080
-
institusyon?NOAA
-
sumaryo? wala (ERDDAP™ay kusang lilikha ng isang disenteng sumaryo.)
-
ang pangalan? wala (ERDDAP™ay kusang lilikha ng isang disenteng titulo.) Gaya ng dati, dapat mong isaayos ang resultang XML upang matiyak ang pagiging tama at gumawa ng mga pagsulong bago ang mga dataset na gumagamit nitodatasets.xml.
-
- Kung susundin mo ang mga tagubilin sa itaas at ikarga ang datasetERDDAP, lumikha ka ng isang EDDTable FromFiles dataset. Bilang isang halimbawa, at upang gawing mas madali para sa sinuman na mag - browse at mag - download ng mga file mula sa mga timba ng AWS Open Data, nilikha namin ang EDDTable FromFileNames datasets (tingnan ang talaan sa
https://upwell.pfeg.noaa.gov/erddap/search/index.html?searchFor=awsS3Files\_ ) para sa halos lahat ngBuksan ng AWS S3 ang mga balde ng Data.
\[Ang ilang timba na hindi namin isinama ay may maraming file sa root directory (higit pa sa maaaring i - download sa makatuwirang haba ng panahon) , o huwag hayaang makapasok ang publiko (Hindi ba silang lahat ay dapat na maging hayagan?) , o kaya'y humihiling ng mga timba (e.g., Sentinel) .\]
Kung i - click mo ito"files"link para sa isa sa mga datasets na ito, maaari mong browse ang directory tree at files sa bucket na iyon ng S3. Dahil sa daan\\\* from On TheFly EDDTable FromFiles works, ang mga talaang ito ng directory ay laging ganap na up-to-date dahilERDDAP™makuha ang mga ito on-the-fly. Kung itunugan mo ang puno ng directory sa aktuwal na pangalan ng talaksan at i- click ang pangalan ng talaksan,ERDDAP™ang iyong kahilingan sa AWS S3 upang mai - download mo ang file nang tuwiran mula sa AWS. Pagkatapos ay maaari mong suriin ang salansan na iyon.
Suliranin? Kung ang iyong EDDTTable FromFiles ay hindi magkakargaERDDAP™ (o Mga DasDd) , Tingnan sa log.txt file para sa maling mensahe. Kung may makita ka java.lang. Ilegal na ArgumentException: hindi maaaring maging pagkakamali ang talaksang profile, ang problema ay na ang AWS SDK para sa AWSJava (ginamit niERDDAP) ay hindi nahahanap ang talaksan ng kredensiyal. Tingnan ang kredensiyal na mga tagubilin sa itaas.
Nakalulungkot na ang AWS ay hindi lamang nagpapahintulot sa mga tao na gumamit ng browser upang tingnan ang nilalaman ng isang pampublikong timba.
Kung gayon maaari kang gumawaERDDAP™mga dataset na nagbibigay sa mga gumagamit ng access sa data sa mga files.
Tingnan ang mga tagubilinERDDAP™at S3 Buckets (sa itaas) .
Para sa sampol na EDDTable FromFileNames dataset na ginawa mo sa itaas, kung lalagyan mo ng kaunting pangalan ang directory at file sa directory tree, nagiging maliwanag na ang itaas na mga pangalan ng directory (e.g., ABI-L1b-RadC) katumbas ngERDDAP™ay tatawag ng hiwalay na mga dataset. Ang timba na ginagamit mo ay maaaring katulad nito. Pagkatapos ay maaari mong ipagpatuloy ang paglikha ng hiwalay na mga datasetsERDDAP™para sa bawat isa sa mga dataset na iyon, gamit ang e.g.,
https://noaa-goes17.s3.us-east-1.amazonaws.com/ABI-L1b-RadC/
bilang ang<Hache Mula sa Url>. Sa kasamaang palad, para sa partikular na halimbawang ito, ang mga dataset sa timba ay pawang waring may antas na 1 o may antas na 2 datasets, na siyang bumubuo sa 2 datasetsERDDAP™ ay hindi gaanong mabuti, dahil ang dataset ay isang mas komplikadong kalipunan ng mga variable na gumagamit ng iba't ibang dimensiyon.
Mga talaksang NcML
Ang NcML files ay magpapahintulot sa iyo na magtakda ng mga pagbabago sa-the-fly tungo sa isa o higit pang orihinal na pinagmulanNetCDF (v3 o v4) .nc, .grib, .bufr, o.hdf (v4 o v5) at pagkatapos ay mayroonERDDAP™gamutin.ncAng mga talaksang ml ang pinagmulang mga file.ERDDAP™Tatanggapin ng datasets.ncMga talaksang ml kailanma't isa.ncinaasahan ang mga file. Ang NcML files MUST ay may karugtong.ncml. Tingnan angUnidataDokumento ng NcML. Ang NcML ay kapaki - pakinabang sapagkat magagawa mo ang ilang bagay rito (Halimbawa, gumagawa ng iba't ibang pagbabago sa iba't ibang salansan sa isang koleksiyon, pati na ang pagdaragdag ng dimensiyon na may espesipikong halaga sa isang file) , na hindi mo magagawaERDDAP'datasets.xml.
- Mga Pagbabago sa Isang.ncAng huling takdang oras ng talaksang ml ay magpapangyari na muling maikarga ang talaksan kailanma't muling ikarga ang dataset, subalit magbabago sa ilalim.ncang mga data file ay hindi tuwirang mapapansin.
- Mungkahi: NcML\*ang mismong\*sensitibo sa pagkakasunud-sunod ng ilang mga bagay sa talaksang NcML. Isipin ang NcML na nagtatakda ng isang serye ng mga instruksiyon ayon sa pagkakasunud - sunod, na may layuning baguhin ang mga source file (ang estado sa simula/itaas ng talaksang NcML) sa mga file ng destinasyon (ang estado sa dulo/botom ng talaksang NcML) .
Ang isang mapagpipilian sa NcML ay angNetCDFMga Operator (NCO) . Ang malaking pagkakaiba ay na ang NcML ay isang sistema para sa paggawa ng mga pagbabago sa-the-fly (kaya ang mga talaksan ng pinagmulan ay hindi binago) , samantalangNCOay magagamit upang gumawa ng mga pagbabago (o mga bagong bersiyon ng) ang mga files. KapuwaNCOat ang NcML ay masyadong madaling makibagay at hinahayaan kang gumawa ng halos anumang pagbabago na maiisip mo sa mga file. Para sa inyong dalawa, maaaring maging hamon kung paano eksaktong gagawin ang gusto ninyong gawin -- tingnan ang web para sa mga katulad na halimbawa. Kapuwa ito kapaki - pakinabang na mga kasangkapan sa paghahanda ng netCDF atHDFmga file na gagamitinERDDAP, lalo na, upang gumawa ng mga pagbabago na higit pa sa anoERDDAP'May magagawa ang sistemang manipulasyon.
Halimbawa #1: Pagdaragdag ng Panahon na May Iisang Halaga Narito ang isang.ncAng talaksang ml na lumilikha ng bagong panlabas na dimensiyon (panahon, na may 1 halaga: 1041379200) at idinagdag pa na ang dimensiyon sa pic variable sa file na may pangalang A2003001.L3m\_EPIC\_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>
Halimbawa #2: Pagbabago sa Kasalukuyang Halaga ng Panahon Kung minsan ang pinagmumulan.ncAng talaksan ay mayroon nang sukat ng panahon at halaga ng panahon, subalit ang halaga ay mali (para sa iyong mga layunin) . Ito.ncAng talaksang ml ay nagsasabi: para sa talaksang datos na pinangalanang "198108252,30030-NCEI...", para sa dimensiyong variable"time", itakda ang mga yunit na attribute na 'seconds mula 1970-01-01T00:00:00Z' at itinakda ang halaga ng oras na 367588800.
<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>
NetCDFMga Operator (NCO)
"Ang mga Operator ng netCDF (NCO) Binubuo ng isang dosenang standalone, command-line programs na kumukuha ng netCDF\[v3 o v4\],HDF \[v4 o v5\],\[.grib, .bufr,\]at/oDAPbilang input, pagkatapos ay magpatakbo (e.g., kumuha ng bagong datos, compute statistics, maglimbag, hyperslab, magmanipula ng metadata) at output Ang resulta sa screen o files sa teksto, binary, o netCDF formats.NCOay tumutulong sa pagsusuri ng magkakaugnay na siyentipikong impormasyon. Ang shell-utos na estilo ngNCOay nagpapahintulot sa mga gumagamit na kontrolin at suriin ang mga file interactively, o sa pamamagitan ng mga depressing scripts na iniiwasan ang ilang itaas ng mga mas mataas na-level programming kapaligiran." (mula saNCOPagguho ng tahanan) .
Isang mapagpipilianNCOayNcML. Ang malaking pagkakaiba ay na ang NcML ay isang sistema para sa paggawa ng mga pagbabago sa-the-fly (kaya ang mga talaksan ng pinagmulan ay hindi binago) , samantalangNCOay magagamit upang gumawa ng mga pagbabago (o mga bagong bersiyon ng) ang mga files. KapuwaNCOat ang NcML ay masyadong madaling makibagay at hinahayaan kang gumawa ng halos anumang pagbabago na maiisip mo sa mga file. Para sa inyong dalawa, maaaring maging hamon kung paano eksaktong gagawin ang gusto ninyong gawin -- tingnan ang web para sa mga katulad na halimbawa. Kapuwa ito kapaki - pakinabang na mga kasangkapan sa paghahanda ng netCDF atHDFmga file na gagamitinERDDAP, lalo na, upang gumawa ng mga pagbabago na higit pa sa anoERDDAP'May magagawa ang sistemang manipulasyon.
Halimbawa, magagamit moNCOupang gawin ang mga yunit ng panahon na pabagu - bago sa isang pangkat ng mga file kung saan ang mga ito ay hindi pabagu - bago sa orihinal. O, maaari mong gamitinNCOupang ikapitscale\_factoratadd\_offsetsa isang grupo ng mga file kung saanscale\_factoratadd\_offsetay may iba't ibang halaga sa iba't ibang source file. (O, maaari mo na ngayong harapin ang mga problemang iyonERDDAP™gagamitinEDDGridMula sa mga Liwasang Hindi Nabuklat, na iba't ibaEDDGridMula sa NNcFiles na nag-i-upload ng datos at nagreresulta sa mga halaga ng oras sa mababang antas upang harapin ang mga talaksang pang-koleksiyon na may iba't ibang antasscale\_factormga s atadd\_offset, o iba't ibang yunit ng oras.)
NCOay Malaya at Open Software na gumagamit ngGPL 3.0lisensiya.
Halimbawa #1: Ginagawang Hindi Pabagu - bago ang mga Unit
EDDGridMula sa mga Latian at Uso Iginiit ng From Files na ang mga yunit para sa isang ibinigay na variable ay magkatulad sa lahat ng mga files. Kung ang ilan sa mga file ay maliit lamang (hindi sa gamit) Naiiba sa iba (hal.g., yunit ng oras
"Mga segundo mula noong 1970-01-01 00:00:00 UTC" versus
"seconds since 1970-01-01T00:00:00Z", magagamit moNCO'n. upang baguhin ang mga yunit sa lahat ng mga file upang maging magkatulad sa mga files
nco/ncled -a units,time,o,c,'seconds mula 1970-01-01T00:00:00Z' \*.nc
\[Para sa maraming problemang gaya nito sa EDDTable From... Mga file dataset, magagamit mo na ngayonMaging limitado Anoupang magsumbongERDDAPupang gawing pamantayan ang mga source file habang ito ay binabasaERDDAP.\]
Mga Hangganan sa Laki ng Isang Daktura
Makikita mo ang maraming pagtukoy sa "2 bilyon" sa ibaba. Mas tumpak, iyan ay tumutukoy sa 2,147,483,647 (2^31-1) , na siyang sukdulang halaga ng isang 32-bit na nilagdaang integer. Halimbawa, sa ilang wika sa computerJava (alinERDDAP™ay isinusulat sa) , iyan ang pinakamalaking uri ng datos na magagamit para sa maraming data istruktura (Halimbawa, ang laki ng isang hanay) .
Sa Pag - aayos ng mga Pamantayan (Halimbawa, para sa iba't ibang pangalan, mga pangalan ng attribute, String attribute values, at String data values) , ang pinakamaraming bilang ng mga karakter sa bawat StringERDDAP™ay ~2 bilyon. Subalit sa halos lahat ng kaso, magkakaroon ng maliliit o malalaking problema kung ang isang String ay lumampas sa makatuwirang laki (e.g., 80 karakter para sa iba't ibang pangalan at pangalan ng attribute, at 255 karakter para sa karamihan ng String attribute values at data values) . Halimbawa, ang mga web page na nagpapakita ng mahahabang variable na mga pangalan ay makaaasiwang malawak at mahabang iba't ibang mga pangalan ay irereregula kung ang mga ito ay lumampas sa limitasyon ng response file type.
Para sa nakatiklop na mga datos:
- Ang pinakamaraming bilangaxisVariableang ~2 bilyon. Ang pinakamaraming bilangdataVariableang ~2 bilyon. Subalit kung ang isang dataset ay may >100 variables, mahirap itong gamitin ng mga gumagamit. At kung ang isang dataset ay may >1 milyong variables, ang iyong server ay mangangailangan ng maraming pisikal na memorya at magkakaroon ng iba pang problema.
- Ang pinakamataas na sukat ng bawat dimensiyon (axisVariable) ay ~2 bilyong halaga.
- Sa palagay ko ang pinakamaraming kabuuang bilang ng mga selula (produkto ng lahat ng dimensiyon) ay walang hangganan, ngunit maaaring ~9e18.
Para sa mga tabular datasets:
- Ang pinakamaraming bilangdataVariableang ~2 bilyon. Subalit kung ang isang dataset ay may >100 variables, mahirap itong gamitin ng mga gumagamit. At kung ang isang dataset ay may >1 milyong variables, ang iyong server ay mangangailangan ng maraming pisikal na memorya at magkakaroon ng iba pang problema.
- Ang pinakamaraming mapagkukunan (halimbawa, mga files) na maaaring igregated ay ~2 bilyon.
- Sa ilang kaso, ang pinakamaraming hanay mula sa indibiduwal na pinagmulan (Halimbawa, ang talaksan, ngunit hindi ang database) ay ~2 bilyong hanay.
- Sa palagay ko'y wala nang iba pang limitasyon.
Para sa kapuwa grid at tabular datasets, may ilang panloob na limitasyon sa laki ng subset na maaaring hilingin ng isang gumagamit sa isang kahilingan (ay kadalasang nauugnay sa >2 bilyon ng isang bagay o ~9e18 ng isang bagay) , ngunit mas malamang na ang isang gumagamit ay tumama sa mga limitasyong file-type-specific.
- NetCDFbersyon 3.ncAng mga file ay limitado sa 2GB byte. (Kung talagang problema ito sa isang tao, sabihin mo sa akin: Maaari akong magdagdag ng suporta para saNetCDFbersyon 3.nc64-bit na karugtong oNetCDFBersiyong 4, na lubhang magpapalawak sa limitasyon, subalit hindi naman lubusan.)
- Ang mga browser ay bumabagsak pagkatapos lamang ng ~500MB ng datos, kayaERDDAP™takdaan ang pagtugon.htmlTableay humihiling ng ~400MB ng datos.
- Maraming programa sa pagsusuri ng datos ang may gayunding limitasyon (Halimbawa, ang pinakamalaking sukat ng isang dimensiyon ay kadalasang ~2 bilyong halaga) , kaya't walang dahilan upang magpagal upang malibot ang mga limitasyong file-type-specific.
- Ang mga limitasyong file-type-specific ay kapakipakinabang sa bagay na ang mga ito ay pumipigil sa mga walang muwang na kahilingan para sa tunay na napakalaking halaga ng datos (Halimbawa, "ibigay mo sa akin ang lahat ng dataset na ito" kapag ang dataset ay may 20TB ng datos) , na gugugol ng mga linggo o buwan upang mag-download. Mientras mas mahaba ang download, mas malamang na ito'y mabigo sa iba't ibang kadahilanan.
- Ang mga limitasyong file-type-specific ay kapakipakinabang sa bagay na pinipilit nila ang gumagamit na makitungo sa mga subset na may random-sized (Halimbawa, sa pamamagitan ng mga file na may data mula sa isang time point, may kinalaman sa isang malaking dataset na naka - grid) .
Hudyatan ang ACDD-1.3
Kami (Partikular naGenerateDatasetsXml) kasalukuyang inirerekomendabersyon ng ACDD 1.3, na pinagtibay noong unang bahagi ng 2015 at tinutukoy bilang "ACDD-1.3" sa global Conventions attribute. BagoERDDAP™bersyon 1.62 (inilabas noong Hunyo 2015) ,ERDDAP™ginamit/recommented ang orihinal, bersyon 1.0, ngNetCDFAttribute Convention for Dataset Discoveryna tinukoy na "UnidataDataset Discovery v1.0" sa mga global Conventions atMetadata\_Conventionsmga katangian.
Kung ang mga dataset mo ay gumagamit ng mga naunang bersyon ng ACDD, RECOMMEND na ipinapalit mo sa ACD-1.3. Hindi ito mahirap. Ang ACDD-1.3 ay labis na paatras na tumutugma sa bersyon 1.0. Upang magpalit, para sa lahat ng datasets (malibanEDDGridMula sa Erddap at Mapagkakatiwalaan Mula sa mga datos ng Erddap) :
- Alisin ang bagong - tatag na globoMetadata\_ConventionsMakipagkaibigan sa pamamagitan ng pagdaragdag (o sa pamamagitan ng pagbabago sa umiiralMetadata\_Conventionsattribute)
<att name="Metadata\\_Conventions">null</att>
sa buong mundo ng dataset<addAttributes>. 2. Kung ang dataset ay may katangiang Kombensiyon sa buong daigdig<addAttributes>, baguhin ang lahat "UnidataDataset Discovery v1.0" Mga pagtukoy sa "ACDD-1.3". Kung ang dataset ay walang isang kombensiyon na kabilang sa buong daigdig<addAttributes>, saka idagdag ang isa na tumutukoy sa ACDD-1.3. Halimbawa,
<att name="Conventions">COARDS, CF-1.6, ACDD-1.3</att>
3. Kung ang dataset ay may pangglobong datasetstandard\_name\_vocabularyHalimbawa, ipagpalagay nang baguhin ninyo ang format ng halaga
<att name="standard\\_name\\_vocabulary">CF Standard Name Table v65</att>
Kung ang tinutukoy ay isang mas matandang bersiyon ngPamantayang talaan ng pangalan ng CF. marahil isang mabuting ideya na bumaling sa kasalukuyang bersiyon (65, habang isinusulat namin ito) , dahil ang mga bagong pamantayang pangalan ay idinagdag sa mesang iyon na may kasunod na mga bersyon, ngunit ang mga lumang pamantayang pangalan ay bihirang alisin at hindi kailanman alisin. 4. Bagaman kabilang sa ACDD-1.0 ang mga katangiang global para sa ACDD-1.0creator\_name,creator\_email,creator\_url,GenerateDatasetsXmlay hindi awtomatikong idinagdag ito hanggang sa ilang panahonERDDAP™v1.50. Mahalagang impormasyon ito:
- creator\_nameIpinaaalam sa mga gumagamit/pag-ibig ang manlilikha ng dataset.
- creator\_emailay nagsasabi sa mga gumagamit ng mas gustong adres ng email para sa pakikipag-ugnayan sa maylikha ng dataset, halimbawa kung sila ay may mga tanong tungkol sa dataset.
- creator\_urlay nagbibigay sa mga gumagamit ng paraan upang malaman ang higit pa tungkol sa maylikha.
- ERDDAP™ay gumagamit ng lahat ng impormasyong ito kapag gumagawa ng FGDC at ISO 19115-2/19139 na mga dokumentong metadata para sa bawat dataset. Ang mga dokumentong iyon ay kadalasang ginagamit ng panlabas na mga serbisyo sa paghahanap.
Pakisuyong idagdag ang mga katangiang ito sa pangglobong dataset<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>
Iyon ang sagot. Sana hindi naman ito napakahirap.
Kumandante
Bilang ng bersyon 2.25ERDDAP™ay marunong bumasa ng lokal Mga talaksang pangkalakal na ginagamitMapagkakatiwalaan Mula sa mga LatianatEDDGridMula sa mga Uso.
(Noong Agosto 2019) Madali tayong magkamali, pero hindi pa tayo kumbinsido naKumandante, o katulad na mga sistema na nahahati ang mga data file sa mas maliliit na tipak, ay malaking lunas sa problema ngERDDAP™nagbabasa ng impormasyong nakaimbak sa mga serbisyo ng ulap gaya ng Amazon AWS S3. Ang Zar ay isang malaking teknolohiya na nagpakita ng gamit nito sa iba't ibang kalagayan, hindi natin tiyak naERDDAP+S3 ang magiging isa sa mga sitwasyong iyon. Karaniwan nang sinasabi natin: bago tayo magmadaling gumawa ng pagsisikap na itago ang lahat ng ating impormasyon sa Zarr, gumawa tayo ng ilang pagsubok upang alamin kung ito nga ay mas mabuting solusyon.
Ang mga problema sa pagkuha ng impormasyon sa ulap ay hindi mabuti (ang lag upang makakuha muna ng datos) at akses ng talaksang-level (sa halip ng block-level access) . Nalulutas ni Zar ang problemang file-level access, ngunit walang ginagawa tungkol sa latency. Kumpara sa pag-download lamang ng file (upang ito ay mabasa bilang isang lokal na file na may block-level access) , maaari pa ngang palalain ni Zarr ang problema ng pagiging huli dahil, sa pagbasa ng isang file ngayon ay kasangkot ang serye ng ilang tawag upang basahin ang iba't ibang bahagi ng file (bawat isa na may sariling lag) . Ang problemang latency ay maaaring malutas sa pamamagitan ng pagpapantay-pantay ng mga kahilingan, ngunit iyan ay isang mas mataas na-level solution, hindi umaasa sa Zarr.
At kasama si Zar (na may kaugnay na mga database) , nawawala natin ang ginhawa ng pagkakaroon ng isang data file ay simple, nag-iisang file na madali mong matiyak ang integridad ng, o gumawa/download ng isang kopya.
ERDDAP™ (ng v2) ay may sistema para sa pagpapanatili ng isang lokal na imbakan ng mga file mula sa isang pinagmumulan ng URL (e.g., S3) ( Tingnan ang [<Hache Mula sa Url> at<cacheMaxGB>] (#cache simulaurl) ). At ang bago [<[nThreads>] (Mga #nthread) dapat na bawasan ang problema ng pagiging huli sa pamamagitan ng paghahambing sa impormasyong nakukuha sa mataas na antas.<Ang cache FromUrl> ay waring mabisa para sa maraming senaryo. (Hindi namin tiyak kung gaano kapaki - pakinabang<Ang cThreads> ay walang mga karagdagang pagsubok.) Inaamin namin na hindi kami nakagawa ng mga pagsubok sa panahon sa isang AWS na may mabuting koneksiyon sa network, subalit matagumpay naming nasubok ang iba't ibang liblib na pinagmumulan ng talaksan sa URL. AtERDDAP'<Ang cache FromUrl> ay gumagana sa anumang uri ng data file (e.g.,.nc,.hdf, .csv,.jsonlCSV) , kahit na kung panlabas na siksik (e.g.,.gz) , walang anumang pagbabago sa mga files (e.g., muling isulat ang mga ito bilang koleksiyon ni Zarr) .
Malamang na iba't ibang senaryo ang pabor sa iba't ibang solusyon, e.g., at minsan lamang ay kailangang basahin ang bahagi ng isang file (Magtatagumpay si Zar) , mga v. Kailangang basahin nang minsanan ang lahat ng isang file, vs. kailangan basahin nang paulit-ulit ang bahagi o lahat ng isang file (lahat ng isang file<Ang cache FromUrl> ay mananalo).
Karaniwan nang sinasabi natin: bago tayo magmadaling gumawa ng pagsisikap na itago ang lahat ng ating impormasyon sa Zarr, gumawa tayo ng ilang pagsubok upang alamin kung ito nga ay mas mabuting solusyon.
Talaan ng mga Uri ng Data
Kung kailangan mo ng tulong sa pagpili ng tamang uri ng dataset, tingnan angPagpili ng Uri ng Dataset.
Ang mga uri ng datasets ay nahahati sa dalawang kategorya. (Bakit?)
EDDGrid
- EDDGrid Ang mga datasets ay humahawak ng mga naka-link na datos.
- Sa loobEDDGriddatasets, data variables ang multi-dimensional na hanay ng datos.
- MAY isang axis na iba - iba para sa bawat dimensiyon. Axis variables MUST ay itukoy ayon sa pagkakasunud-sunod na ang mga data variables ay gumagamit nito.
- Sa loobEDDGriddatasets, lahat ng data variables MUST gamitin (makibahagi) lahat ng axis ay iba't iba. (Bakit? Paano kung hindi nila gawin iyon?)
- Pinag - uriang Pamantayan - LahatEDDGridmga dataset, ang bawat dimensiyong MUST ay maaaring uriin (Pag - akyat o pagbaba) . Ang bawat isa ay maaaring maging iregular ang layo. Walang mga ugnayan. Ito ay isang kahilingan saPamantayang CF metadata. Kung ang mga halaga ng anumang dimensiyon ay hindi ayon sa pagkakasunud - sunod, ang dataset ay hindi ididiskarga at ang dataset ay hindi ididiskargaERDDAP™ay matutukoy ang unang di-nababababang halaga sa log file, Malaking Direktoryo /log/log.txt .
Ang ilang subclass ay may karagdagang mga pagbabawal (marahil,EDDGridAng AggregateExisting Dimension ay humihiling na ang panlabas (pinakakaliwa, una) na dimensiyon ay umakyat.
Ang mga hindi natukoy na dimensiyonal na halaga ay halos palaging nagpapahiwatig ng problema sa source dataset. Ito ay pinaka karaniwang nangyayari kapag ang isang mali ang pangalan o hindi angkop na talaksan ay kabilang sa agregasyon, na humahantong sa isang hindi natukoy na dimensiyon ng oras. Upang malutas ang problemang ito, tingnan ang maling mensahe saERDDAP™log.txt file upang mahanap ang hindi magandang halaga ng oras. Pagkatapos ay tingnan ang pinagkunang mga file upang hanapin ang katumbas na talaksan (o isa bago o isa pa) na hindi kabilang sa agregasyon.
- Tingnan ang mas kumpletong paglalarawan saEDDGridmodelo ng datos.
- AngEDDGridAng mga uring datos ay:
- EDDGridMula sa AudioFilesAng aggregates data mula sa isang grupo ng mga lokal na audio files.
- EDDGridMula sa Daphumahawak ng nakatiklop na impormasyon mula saDAPMga server.
- EDDGridMapagkakatiwalaanHayaan mong gawing grided dataset ang isang tabular dataset.
- EDDGridMula sa Erddaphumahawak ng nakatiklop na impormasyon mula sa isang malayong lugarERDDAP.
- EDDGridMula sa Estopohawakan lamang ang naka-host na datos ng topograpiya.
- EDDGridMula sa mga Labiay superclass sa lahatEDDGridMula sa...Files classs.
- EDDGridMula sa mga GamergeIRFileAng aggregates data mula sa isang grupo ng lokal na MergeIR.gzmga file.
- EDDGridMula sa mga UsoAng mga datos mula sa isang grupo ng mga tagaroonNetCDF (v3 o v4) .ncat kaugnay na mga file.
- EDDGridMula sa mga Liwasang Hindi Nabuklatnaiiba kungEDDGridMula sa mga taga-NcFile na nagkokodigo rin ng mga datos mula sa isang grupo ng lokalNetCDF (v3 o v4) .ncat kaugnay na mga file, naERDDAP™ay nakabuklat sa mababang antas.
- EDDGridLonPM180ang longhitud ng isang bataEDDGridupang sila ay nasa range-180 hanggang 180.
- EDDGridLon0360ang longhitud ng isang bataEDDGridupang ang mga ito ay nasa range 0 hanggang 360.
- EDDGridSide Side SideNaghihiwalay ng dalawa o higit paEDDGridmagkatabing datos.
- EDDGridPagdidisiplinaNaghihiwalay ng dalawa o higit paEDDGridang mga dataset, na ang bawat isa ay may iba't ibang mga halaga para sa unang dimensiyon, ngunit magkatulad na mga halaga para sa iba pang dimensiyon.
- EDDGridKopyaay makagagawa ng isang lokal na kopya ng isa pang kopyaEDDGrid'Ang datos at nagsisilbi ng datos mula sa lokal na kopya.
- LahatEDDGridSinusuporta ng mga dataset ang setting ng nThreads, na nagsasabiERDDAP™kung gaano karaming sinulid ang gagamitin kapag tumutugon sa isang kahilingan. Tingnan angMga "nThread "Mga dokumento para sa mga detalye.
Mapagkakatiwalaan
- Mapagkakatiwalaan Ang datasets ay humahawak ng tabular data.
- Ang mga tabular data ay maaaring katawanin bilang isang database-tulad na mesa na may mga hanay at kolumna. Bawat kolum (iba't iba ang datos) ay may pangalan, kalipunan ng mga katangian, at nag - iimbak ng isa lamang uri ng impormasyon. Ang bawat hanay ay may obserbasyon (o grupo ng kaugnay na mga pamantayan) . Ang pinagkunan ng datos ay maaaring magkaroon ng datos sa ibang estruktura ng datos, mas komplikadong estruktura ng datos, at/o maramihang data files, ngunitERDDAP™Kailangang ma-secure ang source data sa isang database-tulad na mesa upang maiharap ang datos bilang tabular dataset sa mga gumagamit ng database-tulad ng tableERDDAP.
- Tingnan ang mas kumpletong paglalarawan saEDDTable na modelong datos.
- Ang mga uri ng EDDTable dataset ay:
-
Mapagkakatiwalaan Buhat sa AllDatasetsay isang higher-level dataset na may impormasyon tungkol sa lahat ng iba pang datasets sa inyongERDDAP.
-
Mapagkakatiwalaan Buhat sa mga AsiciiFileAng aggregates data mula sa mga comma-, tab-, semikolon-, o space-expressed tabular ASCII data files.
-
Mapagkakatiwalaan Mula sa AsiciiServiceang superclass ng lahat ng EDDTable FromAsciiService... klase.
-
MAHIRAP SA MGA ASciiServiceNOhumahawak ng datos mula sa ilanNOAAMga web service ng NOS.
-
Mga EDDTable Mula sa AudioFileAng aggregates data mula sa isang grupo ng mga lokal na audio files.
-
Maaasahan Mula sa Mga HawsXmlFileAng mga datos mula sa set ng Automatic Weather Station (MGA AW) XML files.
-
EDDTable Mula saCassandrahumawak ng tabular data mula sa isang mesa ng Cassandra.
-
Kawili - wili Mula sa mga Labi ngColumnarAsciiAng aggregates data mula sa tabular ASCII data files na may nakapirmeng-width data column.
-
Mapagkakatiwalaan Mula sa Pagiging Mapagkakatiwalaanhumahawak ng mga impormasyong taskular mula saDAPMga server ng pagkakasunud-sunod.
-
EDDTable Mula sa Didabasahumahawak ng taskular na datos mula sa isang mesa ng database.
-
Maaasahan Mula saEDDGridPinalilikha mo ang isang EDDTable dataset mula sa isangEDDGriddatos.
-
Mapagkakatiwalaang Mula sarddaphumahawak ng mga impormasyon mula sa isang malayong lugarERDDAP.
-
Mapagkakatiwalaan Mula sa mga BilibiniLumilikha ng dataset mula sa impormasyon tungkol sa isang grupo ng mga file sa sistemang server's file, ngunit hindi ito nagsisilbi ng datos mula sa loob ng mga file.
-
Mapagkakatiwalaan Mula sa mga Bakodang superclass ng lahat ng EDDTable From...Files classs.
-
NABAUTISAN NG EDDTTEGOayERDDAP'Ang tanging sistema para sa pag-angkat ng datos gayundin ang pagluwas ng datos.
-
Maaasahan Mula saHyraxMga Bunton (PINAHAHALAGAHAN) Ang aggregates data mula sa mga files na may ilang variables na may kabahaging dimensiyon na pinaglilingkuran ng isangHyrax OPeNDAPserver.
-
Mapagkakatiwalaan Mula sa mga Di - pangkaraniwang CRAFileInaalam ang mga impormasyon mula saNetCDF (v3 o v4) .ncmga talaksan na gumagamit ng espesipiko, hindi tanggap, at iba't ibang uri ng CF DSG Contiguous Ragged Array (CRA) mga file. BagamanERDDAP™ay sumusuporta sa uring ito ng talaksan, ito ay isang hindi tanggap na uri ng talaksan na hindi dapat simulan ng sinuman na gamitin. Ang mga grupo na kasalukuyang gumagamit ng uring ito ng talaksan ay lubhang hinihimok na gamitinERDDAP™upang lumikha ng mga tanggap na talaksang CF DSG CRA at tumigil sa paggamit ng mga file na ito.
-
EDDTable Mula saJsonlCSVFilesInaalam ang mga impormasyon mula saJON Mga file ng Lines CSV.
-
Mga EDDTable Mula sa mga MultidimNcFileInaalam ang mga impormasyon mula saNetCDF (v3 o v4) .ncang mga talaksan na may ilang mga variable na may kabahaging dimensiyon.
-
Mapagkakatiwalaan Mula sa mga LatianInaalam ang mga impormasyon mula saNetCDF (v3 o v4) .ncang mga talaksan na may ilang mga variable na may kabahaging dimensiyon. Mainam na ipagpatuloy ang paggamit ng dataset type na ito para sa umiiral na datasets, ngunit para sa mga bagong datasets inirerekomenda namin gamit ang EDDTable FromMultimNcFiles sa halip.
-
Mga EDDTable Mula sa mga LatianInaalam ang mga impormasyon mula saNetCDF (v3 o v4) .ncmga talaksan na gumagamit ng isa sa mga format ng talaksan na itinakda ngCF Mga Sampling Geometriya (DSG) Mga kombensiyon. Subalit para sa mga file na gumagamit ng isa sa mga multidimensional na CF DSG variant, gamitinMga EDDTable Mula sa mga MultidimNcFilesa halip.
-
Nakasusuyang mga LatianInaalam ang mga impormasyon mula saNCSVASCII .csv files.
-
MAHIRAP SA MGA DOTO (PINAHAHALAGAHAN) humawak ng tabular data mula sa NOS XML servers.
-
MAHABANG MGA ULOBIShumawak ng tabular data mula sa OBIS servers.
-
Mapagkakatiwalaan Mula sa mga ParquetFilehumahawak ng datos mula saParating.
-
Maaasahan Mula saSOShumahawak ng mga impormasyong taskular mula saSOSMga server.
-
Mapagkakatiwalaang mga Talento (PINAHAHALAGAHAN) Ang aggregates data mula sa mga files na may ilang variables na may kabahaging dimensiyon na pinaglilingkuran ng isangMGA THEDDOPeNDAPserver.
-
Maaasahan Mula saWFSMga Bunton (PINAHAHALAGAHAN) ay gumagawa ng lokal na kopya ng lahat ng impormasyon mula sa isang kopyaArcGISMapserWFSserver upang ang data ay agad na mai-serveERDDAP™gumagamit.
-
EDDTableAggregateRowsay maaaring gumawa ng isang EDDTable dataset mula sa isang grupo ng EDDTable datasets.
-
Mapagkakatiwalaang Komponiyaay maaaring gumawa ng isang lokal na kopya ng maraming mga uri ng EDDTable datasets at pagkatapos ay muling-serserve ang data agad mula sa lokal na kopya.
-
Detalyadong Paglalarawan sa mga Uri ng Dataset
EDDGridMula sa Dap
EDDGridMula sa Dap humahawak ng iba't ibang uri ng gridDAPMga server.
- Mahigpit naming inirerekomenda ang paggamit ngMga GenerateDataset Xml programaupang gumawa ng isang magaspang na burador ngdatasets.xmlPara sa dataset na ito. Puwede mong tipunin ang impormasyong kailangan mo para makagawa ng XML para sa isang XMLEDDGridMula sa datos ng Dap sa pamamagitan ng pagtingin sa mga file ng source dataset na DDS at DAS sa iyong browser (sa pagdaragdag ng .das at .dds sasourceUrl, halimbawa, https://thredds1.pfeg.noaa.gov/thredds/dodsC/satellite/BA/ssta/5day.dds ) .
- EDDGridMakakakuha ng datos ang FromDap mula sa anumang multi-dimensional variable mula sa isang multi-dimensional na variableDAPserver ng datos. (Dati,EDDGridAng FromDap ay limitado sa mga variable na itinalaga bilang "grid"'s, ngunit hindi na ito isang kahilingan.)
- Pinag - uriang Pamantayan - Ang mga pamantayan para sa bawat dimensiyong MUST ay maaaring uriin ayon sa pagkakasunud - sunod (Pag - akyat o pagbaba) . Ang mga halaga ay maaaring maging iregular ang layo. Walang mga ugnayan. Ito ay isang kahilingan saPamantayang CF metadata. Kung ang mga halaga ng anumang dimensiyon ay hindi ayon sa pagkakasunud - sunod, ang dataset ay hindi ididiskarga at ang dataset ay hindi ididiskargaERDDAP™ay matutukoy ang unang di-nababababang halaga sa log file, Malaking Direktoryo /log/log.txt .
Ang mga hindi natukoy na dimensiyonal na halaga ay halos palaging nagpapahiwatig ng problema sa source dataset. Ito ay pinaka karaniwang nangyayari kapag ang isang mali ang pangalan o hindi angkop na talaksan ay kabilang sa agregasyon, na humahantong sa isang hindi natukoy na dimensiyon ng oras. Upang malutas ang problemang ito, tingnan ang maling mensahe saERDDAP™log.txt file upang mahanap ang hindi magandang halaga ng oras. Pagkatapos ay tingnan ang pinagkunang mga file upang hanapin ang katumbas na talaksan (o isa bago o isa pa) na hindi kabilang sa agregasyon.
EDDGridMula sa kalansay ng Dap 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>
EDDGridMapagkakatiwalaan
EDDGridMapagkakatiwalaan Pinahihintulutan mo ang isang EDDTable taskular dataset na maging isangEDDGridIdiin ang mga dataset. Tandaan naERDDAP™ang mga dataset bilang alinmanNakatiklop na mga dataset (Mga subklase ngEDDGrid) o tabular datasets (Mga subklase ng EDDTable) .
- Karaniwan na, kung mayroon kang nakatiklop na impormasyon, basta gumagawa ka ng isang bagayEDDGridtuwirang datos. Halimbawa, kung minsan ay hindi ito posible kung ilalagay mo ang impormasyong nakaimbak sa isang kaugnay na databaseERDDAP™Makapapasok lamang sa pamamagitan ng EDDTable FromDatabase.EDDGridMula sa mapagkakatiwalaang klase ay hinahayaan kang lunasan ang kalagayang iyan.
- Maliwanag, ang impormasyon sa saligang EDDTable dataset ay dapat na (pangunahin nang) Idiin ang mga impormasyon, subalit sa anyong taskular. Halimbawa, ang EDDTable dataset ay maaaring may CTD data: mga sukat ng pasilangan at pahilagang agos, sa ilang kalaliman, nang ilang beses. Yamang pareho ang lalim sa bawat pagkakataon,EDDGridMula saEDDTable ay maaaring lumikha ng isang grided dataset na may isang panahon at isang lalim na dimensiyon na nag-access sa data sa pamamagitan ng saligang EDDTable dataset.
- Mga GenerateDataset Xml -- Mahigpit naming inirerekomenda ang paggamit ngMga GenerateDataset Xml programaupang gumawa ng isang magaspang na burador ngdatasets.xmlPara sa dataset na ito. Maaari mong tipunin ang impormasyon na kailangan mo upang mapabuti ang mahirap na burador.
- Source Attributes -- Katulad ng lahat ng iba pang uri ng datos,EDDGridMula sa TNT ay may ideya na may pangglobong pinagmulang Attributes atpanggloboaddAttributes (Itinakdadatasets.xml) , na pinagsama upang pagsamahin ang globo Attributes, na siyang nakikita ng mga gumagamit. Para sa mga pinagmumulan ng impormasyon,EDDGridMula sa mapagkakatiwalaang paggamit ang pinagsama - samang globo Attributes ng nakapailalim na EDDTable dataset. (Kung pag - iisipan mo ito nang sandali, makatuwiran ito.)
Gayundin naman, para sa bawat isaaxisVariable' at 'dataVariable'addAttributes,EDDGridMula saEDDTable ay ginagamit ang pinagsamang variable Attributes mula sa saligang EDDTable dataset bilang angEDDGridMula saEDDTable variable's source Attributes. (Kung pag - iisipan mo ito nang sandali, makatuwiran ito.)
Bunga nito, kung ang EDDTable ay may mabuting metadata, ang EDDTableEDDGridKadalasan nang walang gaanong kailangan ang mga may - kabatiranaddAttributesmetadata - mangilan-ngilang tinggil lamang dito at doon.
-
dataVariables labanaxisVariable- Ang ilalim na EDDTable ay mayroon lamangdataVariables. IsaEDDGridMula saEDDTable dataset ay magkakaroon ng ilanaxisVariables (Nilikha mula sa ilan sa EDDTabledataVariables) at ang ilandataVariables (Nilikha mula sa natitirang EDDTabledataVariables) .GenerateDatasetsXmlay gagawa ng paghula kung aling EDDTabledataVariabledapat maging sEDDGridMapagkakatiwalaanaxisVariable, ngunit ito ay isang hula lamang. Kailangan mong baguhin ang output ng GenerateDatasetsXml upang matiyak kung alin angdataVariablemagiging saxisVariables, at kung saan ang pagkakasunud - sunod.
-
axisValues -- Walang masasabi tungkol sa nasa likod na EDDTableEDDGridAlamin ang posibleng mga pamantayan ngaxisVariablesa nakatiklop na bersiyon ng dataset, kaya ibinibigay ninyo ang impormasyong iyan sa bawat isaaxisVariablesa pamamagitan ng isa sa mga katangiang ito:
- axisValues - kaya mong magtakda ng listahan ng mga pamantayan. Halimbawa, <Pangalang= "axisValues"type="DoubleList"\>2, 2.5, 3, 3.5, 4</att> Pansinin ang paggamit ng isanguri ng datosAt ang salitang List. Gayundin, ang uri ng talaan (Halimbawa, doble) , TANGGAPin ang impormasyon Uri ng Pabagu - bago sa EDDTable atEDDGridMula saEDDETable datasets.
- axisValuesStartStride - pinahihintulutan kang magtakda ng sunud - sunod na regular na mga pamantayan sa pamamagitan ng pagtatakda sa pasimula, hakbang, at paghinto sa mga pamantayan. Narito ang isang halimbawa na katumbas ng axisValues na halimbawa sa itaas: <Pangalang= "axisValuesStartStride Stop"type="DoubleList"\>2, 0.5, 4</att> Muli, pansinin ang paggamit ng listahan ng mga uri ng datos. Gayundin, ang uri ng talaan (Halimbawa, doble) , TANGGAPin ang impormasyon Uri ng Pabagu - bago sa EDDTable atEDDGridMula saEDDETable datasets.
Mga Update -- Kung paanong walang daan para saEDDGridMula saEDDTable upang alamin ang axisValues mula sa EDDTable sa simula, wala ring maaasahang paraan para saEDDGridMula saEDDTable upang tiyakin mula sa EDDTable kapag ang axisValues ay nagbago (Lalo na, kapag may bagong mga pamantayan para sa panahon na iba - iba) . Sa kasalukuyan, ang tanging solusyon ay baguhin ang axisValues na nasadatasets.xmlat muling ikarga ang dataset. Halimbawa, maaari kang sumulat sa
- Paghahanapdatasets.xmlpara sa datasetID=" ANGDatasetID " kaya ginagawa ninyo ang tamang dataset.
- Paghahanapdatasets.xmlsa susunod na pangyayari
AngVariablesSourceName
kaya ikaw ay gumagawa ng tamang variable. - Paghahanapdatasets.xmlsa susunod na pangyayari
<att name="axisValuesStartStrideStop" type="doubleList">
kaya alam mo ang simulang posisyon ng tag. 4. Paghahanapdatasets.xmlsa susunod na pangyayari
</att>
Kaya alam mo ang posisyon ng axis. 5. Palitan ang dating pasimula, hakbang, ihinto ang mga pagpapahalaga ng bagong mga pamantayan. 6. Makipag - ugnayanURL ng watawatpara sa datos na sasabihinERDDAP™upang muling maikarga ang dataset.
Hindi ito huwaran, subalit mabisa ito.
- Oras -- KailanEDDGridMula sa naka-EDDTable na mga tugon sa kahilingan ng gumagamit para sa datos, ito ay naglilipat ng isang hanay ng datos mula sa EDDTable reaction table sa loob ng informationEDDGridsagot ng grid. Upang magawa ito, kailangan nitong malaman kung ang mga "axis" na halaga sa isang ibinigay na hanay sa mesa ay tumutugma sa ilang kombinasyon ng mga halaga ng axis sa grid. Para sa mga integer data type, madaling malaman kung ang dalawang halaga ay magkatumbas. Subalit para sa mga lumulutang at doble, ibinabangon nito ang nakatatakot na problema ng lumulutang na mga bilang ng puntoshindi eksaktong katumbas. (Halimbawa, 0.2 laban sa 0.1999999996) . Patungo sa (subukan) may kinalaman dito,EDDGridMula't - sapol ay maaari kang magtakda ng isang tiyak na katangian para sa alinman sa mga itoaxisVariables, na tumutukoy sa kabuuang bilang ng mga numerong yari sa numero ng numero na magkatulad.
- Halimbawa,<Hinango pangalan="precision" type="int">5</att>
- Para sa iba't ibang uri ng data variables, may iba't ibang default presensyang halaga. Ang mga default ay karaniwang angkop. Kung hindi, kailangan mong magtakda ng iba't ibang pamantayan.
- SapagkataxisVariablemga katangianpanahon o panahon Iba't Ibang Uri ng Selyo, ang default ay ganap ang prekwensiya (eksaktong posporo) .
- SapagkataxisVariables na lumulutang, ang default presence ay 5.
- SapagkataxisVariables na mga doble, ang default presence ay 9.
- SapagkataxisVariablemga uri ng integer data,EDDGridMula saEDDTable ay ipagwalang - bahala ang prepekturang attribute at laging gumagamit ng buong prekwensiya (eksaktong posporo) .
- BABALA! Kapag ginagawa ang isang piraso ng taskular data sa isang piraso ng nakatiklop na impormasyon, kung gayonEDDGridMula saEDDTable ay hindi makatugma ng isang EDDTable "axis" na halaga sa isa sa inaasahanEDDGridMahalagang axis,EDDGridMapagkakatiwalaan Nang Tahimik (walang error) Itapon ang datos mula sa hanay na iyon ng mesa. Halimbawa, maaaring may ibang datos (hindi sa grid) sa EDDTable dataset. (At kung Hakbang > 1, hindi ito halataEDDGridMula sa TNT kung aling mga pagpapahalaga sa axis ang ninanais na mga pamantayan at alin ang dapat ihinto ng isa dahil sa hakbang.) Kaya, kung ang prekwensiyang mga halaga ay napakataas, makikita ng gumagamit ang nawawalang mga halaga sa pagtugon ng datos kapag ang mga tanggap na mga halaga ng datos ay aktuwal na umiiral.
Sa kabaligtaran, kung ang prekwensiyang mga halaga ay itinakda nang napakababa, EDDTable "axis" mga halaga na hindi dapat tumugmaEDDGridAng mga pamantayan ng axis na maaaring makuha ay makaaapekto sa (Maling Paggamit) makatugma.
Ang potensiyal na mga problemang ito ay kakila - kilabot, sapagkat nakukuha ng gumagamit ang maling impormasyon (o nawawalang mga pamantayan) kung kailan dapat nilang makuha ang tamang datos (o kaya'y maling mensahe) . Hindi ito isang kapintasanEDDGridPosible.EDDGridHindi malutas ng MulaTable ang problemang ito. Ang problema ay likas sa pagbabago ng mga impormasyong tabular tungo sa nakatiklop na impormasyon (Kung hindi magagawa ang ibang palagay, ngunit hindi maaaring gawin dito) . Nasa iyo, ang nasaERDDAP™administrador, sa subukin ang iyongEDDGridLubusang Mapagkakatiwalaan upang matiyak na ang eksaktong mga pamantayan ay itinakda upang maiwasan ang potensiyal na mga problemang ito.
Hawak ng mga gapThres
- Hawak ng mga gapThres-- Ito ay isang napaka kakaibang uri ng dataset. Yamang ang mga uri ng queries na maaaring gawin (pinangangasiwaan ng) isang taonEDDGriddatos (kaugnay ng mga hanay at mga pagsulong ngaxisVariables) ay ibang - iba sa uri ng mgaquery na maaaring gawin (pinangangasiwaan ng) isang mapagkakatiwalaang dataset (may kaugnayan sa mga hanay ng iba't ibang bagay) , ang pagganap ngEDDGridMula saEDDTable datasets ay mag-iiba-iba depende sa eksaktong kahilingan na ginagawa at ang bilis ng saligang EDDTable dataset. Para sa mga kahilingan na may kaunting halaga > 1,EDDGridMula saEDDTable ay maaaring magtanong sa saligang EDDTable para sa isang malaking bahagi ng impormasyon (na para bang ikaw ay may hakbang na=1) at pagkatapos ay salain ang mga resulta, pinananatili ang impormasyon mula sa ilang hanay at itinatapon ang impormasyon mula sa iba. Kung kailangan nitong salain ang maraming impormasyon upang makuha ang impormasyon na kailangan nito, ang kahilingan ay mas matagal na pupunan.
KungEDDGridMula saEDDTable ay makapagsasabi na magkakaroon ng malalaking puwang (na may mga hanay ng hindi naiibigang impormasyon) sa pagitan ng mga hanay na may ninanais na datos,EDDGridMula saEDDTable ay maaaring pumili na gumawa ng ilang mga subrequest tungo sa saligang EDDTable sa halip na isang malaking kahilingan, sa gayo'y nilalampasan ang hindi naiibigang hanay ng mga impormasyon sa malaking agwat. Ang sensitivity sa desisyong ito ay kinokontrol ng agwatThreshold na halaga gaya ng tinukoy sa<Malawak na tag ng> (default=1000 hanay ng source data) . Ang pagtatakda ng dipThreshold sa mas maliit na numero ay hahantong sa paggawa ng dataset (pangkalahatan) higit pang mga subrequest. Ang pagtatakda ng mga puwang na para sa isang mas malaking bilang ay hahantong sa paggawa ng dataset (pangkalahatan) Mas kaunting mga subrequest.
Kung ang gapThreshold ay masyadong maliit,EDDGridAng galing sa EDDTable ay tatakbo ng mas mabagal dahil ang ibabaw ng multiple requests ay magiging mas malaki kaysa sa oras na natipid sa pamamagitan ng pagkuha ng ilang sobrang datos. Kung masyadong malaki ang agwat ng sukat,EDDGridMula sa EDDTable ay tatakbo ng mas mabagal dahil ang napakaraming sobrang datos ay makukuha mula sa EDDTable, upang itapon lamang. (Gaya ng natuklasan ng Goldilocks, ang gitna ay "tama lamang".) Ang itaas para sa iba't ibang uri ng EDDTable datasets ay lubhang nagkakaiba - iba, kaya ang tanging paraan upang malaman ang aktuwal na pinakamabuting tagpo para sa iyong dataset ay sa pamamagitan ng pag - eeksperimento. Subalit hindi ka magkakamali sa pananatili sa default.
Ang isang simpleng halimbawa ay: Gunigunihin ang isang taoEDDGridMula sa isa lamangaxisVariable (panahon, na may sukat na 100000) , isadataVariable (temperatura) , at ang default gapThreshold ng 1000.
- Kung ang gumagamit ay humihiling ng temperatura\[0💯5000\], ang hakbang ay 100 kaya ang agwat na sukat ay 99, na mas mababa sa agwat na TThreshold. KayaEDDGridMula saTable ay gagawa ng isa lamang kahilingan sa EDDTable para sa lahat ng impormasyon na kinakailangan para sa kahilingan (katumbas ng temperatura\[0:5000\]) at itapon ang lahat ng hanay ng datos na hindi naman kailangan.
- Kung ang gumagamit ay humihiling ng temperatura\[0:2500:5000\], ang hakbang na iyon ay 2500 kaya ang sukat ng puwang ay 2499, na mas malaki kaysa sa gapThreshold. KayaEDDGridMula sa TNT ay gagawa ng hiwalay na mga kahilingan sa EDDTable na katumbas ng temperatura\[0\], temperatura\[2500\], temperatura\[5000\].
Ang pagkalkula sa sukat ng puwang ay mas masalimuot kapag maraming palakol.
Sa bawat kahilingan ng gumagamit,EDDGridMula sa madaling - makuhang mga prints ay sinusuri ang mga mensahe na nauugnay rito salog.txttalaksan.
- Kung [<logLevel>] (#loglevel) sa loobdatasets.xmlay naglalagay ng info, inililimbag nito ang isang mensaheng gaya ng \* n=1 ng 4 nOuterRequests=22 Kung ang nOuterAxes=0, gapThreshold ay hindi nalampasan at isa lamang ang hihilingin sa EDDTable. Kung ang mga nOuterAxes>0, ang gapThreshold ay nalagpasan at ang mga nOuterRequest ay gagawin sa EDDTable, katumbas ng bawat hiniling na kombinasyon ng pinakakaliwang nOuterAxes. Halimbawa, kung ang dataset ay may 4axisVariablemga s atdataVariabletulad ng pasilangan\[panahon\]\[latitud\]\[longhitud\]\[lalim\], ang pinakakaliwa (una) Ang axis variable ay panahon.
- Kung<logLevel> sa loobdatasets.xmlay nakatakda sa lahat, karagdagang impormasyon ang nakasulat sa log.txt file.
EDDGridMula sa mukhang - butong kalansay 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* Mula saERDDAP
EDDGridMula sa Erddap humahawak ng nakatiklop na impormasyon mula sa isang malayong lugarERDDAP™server. Mapagkakatiwalaang Mula sarddap humahawak ng mga impormasyon mula sa isang malayong lugarERDDAP™server.
- EDDGridMula sa Erddap at EDDTable MulaErddap ay nag-aasal na magkaiba mula sa lahat ng iba pang mga uri ng datasets saERDDAP.
- Tulad ng ibang uri ng datasets, ang mga dataset na ito ay kumukuha ng impormasyon tungkol sa dataset mula sa pinagmulan at iniingatan ito sa memorya.
- Tulad ng ibang uri ng datos, kapagERDDAP™naghahanap ng mga dataset, nagtatanghal ng Data Access Form ( datasetID .html) , o pagtatanghal ng anyong Make A Graph ( datasetID .grap) ,ERDDAP™gamitin ang impormasyon tungkol sa dataset na nasa memorya.
- EDDGridMula sa Erddap at Mapagkakatiwalaan Mula sa Erddap ang saliganMga grid/clusters/federationsngERDDAPs, na mahusay na namamahagi ng paggamit ng CPU (karamihan ay para sa paggawa ng mga mapa) , paggamit ng memory, dataset storage, at bandwidth gamit ng isang malaking data center.
Pagreredirect
- Hindi tulad ng ibang uri ng datos, kapagERDDAP™tatanggap ng kahilingan para sa datos o mga larawan mula sa mga dataset na ito,ERDDAP Mga Direksiyonsa malayoERDDAP™server. Ang resulta ay:
- Napakahusay nito (CPU, memorya, at bandwidth) , sapagkat kung hindi gayon
- Ang kabuuang elementoERDDAP™ay kailangang ipadala ang kahilingan sa isaERDDAP™ (na nangangailangan ng panahon) .
- Ang isa paERDDAP™kailangang kunin ang impormasyon, baguhin ito, at ihatid ang impormasyon sa elementoERDDAP.
- Ang kabuuang elementoERDDAP™kailangang tumanggap ng datos (gumagamit ng bandwidth) , repormahan ito (paggamit ng CPU at memorya) , at ihatid ang impormasyon sa gumagamit (gumagamit ng bandwidth) . Sa pamamagitan ng pagtutuwid sa kahilingan at pagpapahintulot sa isa paERDDAP™upang tuwirang ipadala ang tugon sa gumagamit, ang elementoERDDAP™ay gumugugol ng halos walang CPU panahon, memorya, o bandwidth sa kahilingan.
- Ang paglilihis ay nakikita ng gumagamit anuman ang klienteng software (browser o iba pang software o command line tool) .
- Napakahusay nito (CPU, memorya, at bandwidth) , sapagkat kung hindi gayon
- Masasabi moERDDAP™huwag iwasto ang anumang kahilingan ng gumagamit sa pamamagitan ng pagtatakda<Ituwid ang> Mali</redirect>, subalit inaalis nito ang karamihan ng mga bentaha ng ... FromErddap dataset type (Lalo na, ang pagkakalat ng pasan sa dulo sa unahanERDDAP™sa malayong/likodERDDAP) .
Mga Suskripsiyon
Karaniwan na, kapag isangEDDGridMula sa Erddap at Mapagkakatiwalaan Mula sa Erddap ay (muli) Isakay ang iyong pasanERDDAP, sinisikap nilang magdagdag ng isang suskripsiyon sa remote dataset sa pamamagitan ng remoteERDDAP'ang email/URL subscription system. Sa gayong paraan, kailanma't nagbabago ang remote dataset, ang remoteERDDAP™makipag - ugnayanset URL ng Bandilasa iyongERDDAP™Kung kaya't ang lokal na dataset ay muling ikarga sa ASAP at kaya ang lokal na dataset ay palaging perpektong up-to-date at ginagaya ang remote dataset. Kaya, sa unang pagkakataon na mangyari ito, dapat kang kumuha ng email na humihiling na patunayan mo ang suskrisyon. Gayunman, kung ang lokalERDDAP™hindi makapagpadala ng email o kung malayoERDDAP' s email/URL subscription system ay hindi aktibo, dapat i-mail mo ang remoteERDDAP™administrador at humiling na s/siya ay manu-manong magdagdag [<onChange>] (Pagpapalit ng #on) ...</onChange> tag sa lahat ng kaugnay na datasets upang tawagin ang iyong dataset'sset Mga URL ng Bandila. Tingnan moERDDAP™araw - araw na ulat para sa listahan ng setydaset Mga Flag URL, subalit basta ipadala ang mga itoEDDGridMula sa Erddap at EDDTable FromErddap datasets hanggang sa malayoERDDAP™Tagapangasiwa.
Hindi ba ito gumagana? Ang iyo bang lokal na mga dataset ay hindi nananatili na kasabay ng remote datasets? Ilang mga bagay ang kailangang gumana nang maayos para gumana ang sistemang ito upang ang iyong mga datasets ay manatili up-to-date. Isa - isahin ang mga bagay na ito:
- Ang iyong sariliERDDAP™ay kailangang makapagpadala ng mga email. Tingnan ang email settings sa iyong setup.xml.
- Sa pangkalahatan (ngunit hindi laging) , ang iyongERDDAP'<base Url> at<Walang port number ang baseHtpsUrl> (e.g., :8080, :8443) . Kung gayon, gumamit ng isangproxypasupang alisin ang daungan mula sa Url.
- Sa iyong setup.xml,<Ang kripto na TERemoteErddapDataset> ay dapat na i-develop.
- Kapag ang inyong lokal na EDD... Mula sa Erddap dataset ay muling ikarga, ito ay dapat magpadala ng kahilingan sa remoteERDDAP™sa remote dataset. Tingnan sa log.txt upang makita kung ito ay nangyayari.
- Dapat kang kumuha ng email na humihiling sa iyo na patunayan ang kahilingan ng suskripsiyon.
- Dapat mong i - click ang link ng email na iyon para patunayan ang kahilingan ng suskripsiyon.
- Ang liblibERDDAP™dapat sabihin na ang bisa ay matagumpay. Anuman ang oras, maaari kang humiling ng email mula sa malayoERDDAP™na may listahan ng iyong mga suskripsiyon. Tingnan ang anyo sa remoteErddapBase Url /erddap/subscriptions/list.html .
- Kapag nagbago ang remote dataset (e.g., kumuha ng karagdagang datos) , ang liblibERDDAP™Dapat mong sikaping makipag - ugnayan sa flagURLERDDAP. Hindi mo ito matiyak, subalit maaari mong itanong sa administrador ng liblib na lugarERDDAP™upang suriin ito.
- Ang iyong sariliERDDAP™dapat tumanggap ng kahilingan na ilagay ang flagURL na iyon. Tingnan sa inyong log.txt para sa "setDatasetFlag.txt?" request (s) at tingnan kung may maling mensahe na nauugnay sa mga kahilingan.
- Ang iyong sariliERDDAP™Pagkatapos ay sikaping muling ikarga ang dataset (Marahil ay hindi kaagad, subalit ASAP) .
Up-to-date max (panahon) ?
EDDGrid/Table FromErddap datasets Ang kanilang nakaimbak na impormasyon tungkol sa bawat source dataset kapag ang source dataset"nakakarga"edat ang ilang piraso ng pagbabago ng metadata (e.g., iba't ibang orasactual\_range) , sa gayo'y lumilikha ng isang patalastas sa suskripsiyon. Kung ang source dataset ay may datos na madalas magbago (halimbawa, bagong datos sa bawat segundo) at gamitin ang"Supdate"sistema upang mapansin ang madalas na mga pagbabago sa saligang impormasyon, angEDDGridAng /Table FromErddap ay hindi mapabatiran tungkol sa mga madalas na pagbabagong ito hanggang sa susunod na dataset na "reload", kaya't ang susunod na dataset "reload"EDDGridAng /Table FromErddap ay hindi ganap na up-to-date. Maaari mong bawasan ang problemang ito sa pamamagitan ng pagbabago ng source dataset's<Muling ikarga ang EveryNMinutes> sa mas maliit na halaga (60? 15?) upang magkaroon ng higit pang mga nota sa suskripsiyon upang sabihin saEDDGrid/Table FromErddap upang i-update ang impormasyon nito tungkol sa source dataset.
O, kung nalalaman ng iyong sistema ng pangangasiwa ng data kung kailan ang source dataset ay may bagong datos (e.g., sa pamamagitan ng isang iskrip na kumokopya sa isang talaksan ng datos na ilalagay) , at kung hindi naman masyadong madalas (e.g., tuwing 5 minuto, o mas madalang) , mayroong mas mabuting solusyon:
- Huwag gamitin<update EveryNMillis> upang panatilihin ang source dataset up-to-date.
- Itakda ang source dataset's<Muling ikarga ang EveryNMinutes> sa mas malaking bilang (1440?) .
- Ipa - contact ang source dataset'sURL ng watawatPagkatapos nito ay kinokopya ang isang bagong data file upang ilagay.
Iyan ay hahantong sa source dataset na ganap na up-to-date at ito ay magiging sanhi upang lumikha ng isang conscription notification, na ipadadala saEDDGrid/Table FromErddap dataset. Pangungunahan niyan angEDDGrid/Table FromErddap dataset upang maging ganap up-to-date (mabuti, sa loob ng 5 segundo ng bagong impormasyon na idinaragdag) . At lahat ng magagawa nang mahusay (walang kinakailangang dataset reload) .
HindiaddAttributes,axisVariable, odataVariable
Hindi tulad ng ibang uri ng datossets, EDDTable FromErddap atEDDGridMula saErddap datasets ay hindi pinapayagan ang global<addAttributes>,<axisVariable; o.<dataVariablemga seksiyon sadatasets.xmlpara sa dataset na iyon. Ang problema ay na ang pagpapahintulot sa mga iyon ay hahantong sa mga pagkakasalungatan:
- Sabihin natin na ito ay pinahintulutan at ikaw ay nagdagdag ng isang bagong pangglobong katangian.
- Kapag tinanong ka ng isang gumagamitERDDAP™para sa pangglobong mga katangian, lilitaw ang bagong katangian.
- Subalit kapag tinanong ka ng isang gumagamitERDDAP™para sa talaksang datos, ang inyongERDDAP™Itutungo ang kahilingan sa pinagmumulanERDDAP. IyanERDDAP™ay walang kaalam - alam sa bagong katangian. Kaya kung ito ay lumilikha ng data file na may metadata, e.g., a.ncfile, ang metadata ay hindi magkakaroon ng bagong attribute.
May dalawang work-round:
- Kumbinsiya sa admin ng pinagmulanERDDAP™upang gawin ang mga pagbabago na nais mo sa metadata.
- Sa halip ng EDDTable FromErddap, gamitinMapagkakatiwalaan Mula sa Pagiging Mapagkakatiwalaan. O sa halip naEDDGridMula saErddap, gamitinEDDGridMula sa Dap. Ang mga uring iyon ng EDD ay nagpapangyari sa iyo na mabisang maiugnay sa isang dataset sa isang malayong lugarERDDAP™ (ngunit hindi inireredirect ang mga kahilingan ng datos) at hinahayaan nila na isama mo ang pangglobo<addAttributes>,<axisVariable; o.<dataVariablemga seksiyon sadatasets.xml. Ang isa pang pagkakaiba: kakailanganin mong manu - manong isumite ang remote dataset, upang ang dataset sa iyong datasetERDDAP™ay ipagbibigay - alam (sa pamamagitan ngURL ng watawat) kapag may mga pagbabago sa remote dataset. Kaya, lumilikha ka ng isang bagong dataset, sa halip na mag - ugnay sa isang malayong dataset.
Iba pang nota
- Sa mga kadahilanang panseguridad,EDDGridMula sa Erddap at Mapagkakatiwalaan Mula saErddap ay huwag suportahan ang [<Makarating sa>] (Ang #accessible) tag at hindi maaaring gamitin sa pamamagitan ng mga remote datasets na nangangailangan ng pagtotroso (dahil ginagamit nila [<Makarating sa>] (Ang #accessible) ). TingnanERDDAP'sistemang panseguridaddahil sa paghihigpit sa ilang datasets sa ilang gumagamit nito.
- Pasimula saERDDAP™v2.10,EDDGridSinusuportahan ng MulaErddap at EDDTable FromErddap ang [<Madaling puntahan [[Talaksan] (Mgafile ng #accessiblevia) tag. Hindi tulad ng ibang uri ng datasets, ang default ay totoo, ngunit ang mga file ng dataset ay magiging madaling makuhangViaFiles lamang kung ang source dataset ay mayroon ding source dataset<Ang availableViaFiles> ay natupad.
- Magagamit mo angMga GenerateDataset Xml programaupang gawin angdatasets.xmlPara sa ganitong uri ng dataset. Subalit madali mong magagawa ang mga uring ito ng dataset sa pamamagitan ng kamay.
EDDGridMula sa kalansay ngErddap XML
- EDDGridMula sa kalansay ngErddap Ang XML dataset ay napakasimple, sapagkat ang layon ay gayahin lamang ang malayong dataset na angkop na gamitinERDDAP:
<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>
Malambot Mula sa Erddap na kalansay XML
- Ang kalansay na XML para sa isang EDDTable FromErddap dataset ay napakasimple, sapagkat ang layon ay gayahin lamang ang malayong dataset, na angkop nang gamitinERDDAP:
<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>
EDDGridMula sa Estopo
EDDGridMula sa Estopo Isilbi lamang angETOPO1 Global 1-Minute Gridded Delection Data Set (Ice Surface, grid rehistrado, binaryo, 2byte int: etopo1\_ice\_g\_i2.zip) na ipinamamahagiERDDAP.
- Dalawa lamangdatasetIDsuportado ang mga symbolic linkEDDGridMulaEtopo, upang makuha mo ang impormasyon na may longhitudng mga pamantayan -180 hanggang 180, o longhitúd na mga halaga 0 hanggang 360.
- Walang anumang sub tag, yamang ang impormasyon ay inilarawan na sa loobERDDAP.
- Kaya ang dalawang opsyonEDDGridMula sa Etopo datasets ay (literal) :
<!-- 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" />
EDDGridMula sa mga Labi
EDDGridMula sa mga Labi ay superclass sa lahatEDDGridMula sa...Files classs. Hindi mo magagamitEDDGridMula sa mgaFile ay direkta. Sa halip, gumamit ng subclass ofEDDGridMula sa mga tulay upang pangasiwaan ang espisipikong uri ng talaksan:
- EDDGridMula sa mga GamergeIRFilehumahawak ng mga impormasyon mula sa mga gridMALUNGKOT.gzmga file.
- EDDGridMula sa AudioFilesAng aggregates data mula sa isang grupo ng mga lokal na audio files.
- EDDGridMula sa mga Usohumahawak ng mga impormasyon mula sa mga gridGRIB .grbmga talaksan,HDF (v4 o v5) .hdfmga talaksan,.ncmlmga talaksan, atNetCDF (v3 o v4) .ncmga file. Maaaring gumana ito sa iba pang uri ng talaksan (Halimbawa, BUFR) , basta hindi namin sinubukan -- pakisuyong padalhan kami ng ilang sampol na file kung interesado kayo.
- EDDGridMula sa mga Liwasang Hindi Nabuklatay iba't ibaEDDGridMga Mula sa NNcFile na humahawak ng mga impormasyon mula sa pagkakawing - kawingNetCDF (v3 o v4) .ncat kaugnay na mga file, naERDDAP™ay nakabuklat sa mababang antas.
Sa kasalukuyan, walang ibang uri ng talaksan ang suportado. Subalit karaniwan nang madaling magdagdag ng suporta para sa ibang uri ng talaksan. Makipag - ugnayan sa amin kung mayroon kang kahilingan. O, kung ang iyong data ay nasa isang lumang file format na nais mong alisin, inirerekomenda namin na ikumberte ang mga fileNetCDFv3.ncmga file.NetCDFay isang malawak na suportado, binary format, nagpapahintulot ng mabilis na pag-akses sa datos, at suportado na ngERDDAP.
Mula sa mga Detalye
Ang sumusunod na impormasyon ay kumakapit sa lahat ng mga subklase ngEDDGridMula sa mgaFile.
Ang Pagpapalaganap ng Umiiral na Dimensiyon
Lahat ng pagkakaiba - ibaEDDGridMula saFiles ay maaaring i-gregate ang datos mula sa mga lokal na file, kung saan ang bawat file ay may 1 (o higit pa) iba't ibang pamantayan para sa kaliwa (una) sukat, karaniwan\[panahon\], na magiging agregado. Halimbawa, maaaring ang sukat ay\[panahon\]\[altitud\]\[latitud\]\[longhitud\], at ang mga file ay maaaring may datos para sa isa (o ilan) time value (s) bawat file. Ang resultang dataset ay lumilitaw na para bang ang lahat ng data ng file ay pinagsama. Ang malalaking bentaha ng aggregasyon ay:
- Ang laki ng aggregated data set ay maaaring mas malaki pa sa isang file ay maaaring maging maginhawa (~2GB) .
- Para sa halos-real-time data, madaling idagdag ang bagong file sa pinakabagong score ng datos. Hindi mo na kailangang isulat muli ang buong dataset.
Ang mga kahilingan para sa agregasyon ay:
- Ang lokal na mga file ay hindi kailangang magkaroon ng parehodataVariables (na itinakda sa dataset'sdatasets.xml) . Ang dataset ay magkakaroon ngdataVariablekahulugan sadatasets.xml. Kung ang ibinigay na talaksan ay walang ibinigaydataVariable,ERDDAP™ay magdaragdag ng nawawalang mga pamantayan kung kinakailangan.
- Lahat ng itodataVariableGumamit din ngaxisVariableMga s/dimension (na itinakda sa dataset'sdatasets.xml) . Ang mga file ay magiging aggregated batay sa una (kaliwa-karamihan) Ang dimensiyon, na inuuri ayon sa pagkakasunud - sunod.
- Ang bawat file ay maaaring may datos para sa isa o higit pang halaga ng unang dimensiyon, ngunit hindi maaaring magkaroon ng anumang pagsasanib sa pagitan ng mga file. Kung ang isang file ay may higit sa isang halaga para sa unang dimensiyon, ang mga halaga MUST ay ibukud-tangi ayon sa pagkakasunud-sunod, na walang mga ugnayan.
- Ang lahat ng mga files MUST ay may eksaktong parehong halaga para sa lahat ng iba pang dimensiyon. Ang prekwensiya ng pagsubok ay tinitiyak ngmga palito sa posporo.
- Ang lahat ng talaksang MUST ay pare - pareho ang damimga yunitmetadata para sa lahataxisVariablemga s atdataVariables. Kung ito ay isang problema, maaari mong gamitinNcMLoNCOupang lutasin ang problema.
Agregasyon sa Pamamagitan ng File Names o Pangglobong Metadata
Lahat ng pagkakaiba - ibaEDDGridMaaari ring i-gregate ng mga taga-File ang isang grupo ng mga file sa pamamagitan ng pagdaragdag ng bagong kaliwa (una) Ang dimensiyon, karaniwan na ang oras, batay sa halaga na nakukuha mula sa bawat file o sa halaga ng isang global attribute na nasa bawat file. Halimbawa, maaaring isama sa file ang time value para sa data sa file.ERDDAP™Pagkatapos ay lilikha ng isang bagong sukat ng panahon.
Hindi tulad ng katulad na katangian sa THEDDS,ERDDAP™laging lumilikha ng isangaxisVariablena may mga pamantayang numero (na hinihiling ng CF) , huwag kailanman mag - iwan ng mga pamantayan (na hindi pinahihintulutan ng CF) . Gayundin,ERDDAP™ang mga file sa aggregation batay sa numeroaxisVariableAng halaga na inilalagay sa bawat file, upang ang axis variable ay laging magbukud - bukod ng mga halaga gaya ng kinakailangan ng CF. Ang THEDDS na paraan ng paggawa ng isang uri ng lexicographic batay sa mga pangalan ng file ay humahantong sa mga agregasyon kung saan ang mga pagpapahalaga sa axis ay hindi inuuri (na hindi pinahihintulutan ng CF) kapag ang pangalan ng talaksan ay iba - iba ang pagkakasunud - sunod kaysa hinangoaxisVariablemga pamantayan.
Upang magtatag ng isa sa mga agregasyong itoERDDAP™, bibigyan mo ng kahulugan ang isang bagong kaliwa (una) axisVariablena may espesyal, huwad<sourceName>, na nagsasabiERDDAP™kung saan at paano hahanapin ang halaga para sa bagong dimensiyon mula sa bawat file.
- Ang format para sa huwadsourceNamena nakukuha ang halaga mula sa pangalan (pangalan lamang.) ay \\\ fileName, datos Uri , regex ng katas , bihag na GroupNumber*
- Ang format para sa huwadsourceNamena nakukuha ang halaga mula sa absolutong pangalan ng path ng talaksan \\\ PathName, datos Uri , regex ng katas , bihag na GroupNumber* \[Para rito, ang pangalan ng landas ay laging ginagamit'/'bilang directory separator character, hindi kailanman ''.\]
- Ang format para sa huwadsourceNamena nakukuha ang halaga mula sa isang pangglobong katangian \\\ pangglobo: attribute Pangalan , datos Uri , regex ng katas , bihag na GroupNumber*
- Ito'y huwadsourceNameAng opsyon ay naiiba sa iba: sa halip na lumikha ng isang bagong kaliwa (una) axisVariable, ito ang pumapalit sa halaga ng agosaxisVariablena may halagang hinango mula sa pangalan (pangalan lamang.) . Ang format ay \\\ Palitan Mula saFileName, datos Uri , regex ng katas , bihag na GroupNumber*
Ang paglalarawan sa mga bahaging kailangan mong ibigay ay:
- attribute Pangalan - pangalan ng global attribute na nasa bawat file at naglalaman ng dimensiyong halaga.
- datos Uri -- Binabanggit nito ang uri ng datos na gagamitin upang itago ang mga halaga. Tingnan ang listahan ng mga pamantayandatos Mga Uriyaon pangERDDAP™mga suporta, maliban na lamang sa ang String ay hindi pinapayagan dito mula noong ang axis variables inERDDAP™ay hindi maaaring String variables.
May karagdagang pseudo dataType, timeFormat= string Panahon ng Pagpapaliban - liban , na nagsasabiERDDAP™na ang halaga ay isang String timestampmga pisi. Kadalasan, ang stripTimFormat na kailangan mo ay ang iba't ibang format nito:
- yyyy-MM-dd'T'H:mm:s.SSSZ -- na ISO 8601:2004 (E) format ng oras ng petsa. Baka kailanganin mo ang pinaikling bersiyon nito, e.g.,yyyy-MM-dd'T'H:mm:ss oyyyy-MM-dd.
- yyyyMddHHHmms.SS- na siyang siksik na bersyon ng ISO 8601 date time formation. Maaaring kailanganin mo ang pinaikling bersyon nito, e.g., yyyMdHHHms o yyyyMd.
- M/d/yay H:mm:s.S -- na siyang pinaikling format ng petsa sa Estados Unidos. Maaaring kailanganin mo ang pinaikling bersyon nito, e.g., M/d/yyy .
- yyyyDDHHmsS - na taon din bukod sa zero-padded na araw ng taon (e.g, 001 = Jan 1, 365 = Dis 31 sa isang non-leap year; ito kung minsan ay may kamaliang tinatawag na Julian date) . Maaaring kailanganin mo ang pinaikling bersyon nito, e.g., yyyDDDD .
Kung gagamitin mo ang pseudo dataType na ito, idagdag ito sa bagong variable's<addAttributes>:
<att name="units">seconds since 1970-01-01T00:00:00Z</att>
Kung nais mong baguhin ang lahat ng halaga ng panahon, baguhin ang halaga ng panahon sa mga yunit, e.g., 1970-01-01T12:00:00Z.
- regex ng katas -- Ito angPalagiang pagpapahayag (pagtuturo) na kinabibilangan ng grupong binibihag (sa mga panaklong) na naglalarawan kung paano kukunin ang halaga mula sa pangalan o pangglobong halaga ng attribute. Halimbawa, bigyan ng pangalan tulad ng S19980011998031.L3b\_MO\_CHL.nc, hulihin ang grupo #1, "\dpagtuturo", sa regular na pananalitang S (\dpagtuturo) \dpagtuturo\.L3b.\* kukunin ang unang 7 digit pagkatapos ng 'S': 1998001.
- Binibihag na "GroupNumber " -- Ito ang bilang ng grupong binibihag (sa loob ng isang pares ng panaklong) sa regular na pananalita na naglalaman ng impormasyon ng interes. Ito ay karaniwang 1, ang unang pangkat na nakahuli. Kung minsan ay kailangan mong gamitin ang mga grupong bumibihag para sa ibang gamit sa regex, kaya kung gayon ang mahalagang numero ng grupo na paghuli ay 2 (ikalawang grupo na nahuli) o 3 (ikatlo) , atbp.
Isang buong halimbawa ng isangaxisVariablena gumagawa ng aggregated dataset na may bagong axis na kumukuha ng mga halaga ng panahon mula sa talaksan ng bawat file
<axisVariable>
<sourceName>\\*\\*\\*fileName,timeFormat=yyyyDDD,S(\\d{7})\\.L3m.\\*,1</sourceName>
<destinationName>time</destinationName>
</axisVariable>
Kapag ginagamit mo ang "time Format=" pseudo data Uri,ERDDAP™2 katangian saaxisVariableNa ano pa't sila'y nagsisilitaw na mula sa bukal:
<att name="standard\\_name">time</att>
<att name="units">seconds since 1970-01-01T00:00:00Z</att>
Kaya sa kasong ito,ERDDAP™lilikha ng bagong axis na pinanganlang"time"may dobleng pamantayan (mga segundo simula 1970-01-01T00:00:00Z) Sa pamamagitan ng pagkuha ng 7 digits pagkatapos ng 'S' at bago ng ".L3m" sa distribution at pagpapakahulugan sa mga ito bilang time values form ay tinipi bilang yyyDDD.
Maaari mong daigin ang default base time (1970-01-01T00:00:00Z) sa pamamagitan ng pagdaragdag ngidagdag ang Attributena nagsasabi ng iba't ibang yunit na may iba't ibang panahon. Ang karaniwang kalagayan ay: may mga grupo ng data file, na bawat isa'y may 1 araw na kalipunan ng satellite dataset, kung saan nais mong ang halaga ng panahon ay maging tanghali ng araw na binanggit sa talaan ng impormasyon (sentro ng bawat araw) at nais ng variablelong\_nameupang maging "Centered Time". Ang isang halimbawa nito ay:
<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>
Note hours=12 in the base time, na nagdaragdag ng 12 oras na may kaugnayan sa orihinal na base time ng 1970-01-01T00:00:00Z.
Isang buong halimbawa ng isangaxisVariablena gumagawa sa isang aggregated dataset na may bagong "run" axis (ng mga pamantayan) na nakukuha ang run values mula sa "runID" na global attribute sa bawat file (na may mga pamantayang gaya ng "r17\_global", kung saan 17 ang tumatakbong numero) ay
<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>
Pansinin ang paggamit ng grupong bihag bilang 2 upang makuha ang mga digit na nangyayari pagkatapos ng 'r' o 's', at bago ang "\_global". Ipinakikita rin ng halimbawang ito kung paano magdaragdag ng karagdagang mga katangian (e.g.,ioos\_categoryat mga yunit) sa axis ay iba - iba.
Mga Bulaang Hindi Pa Nabubulok
-
Mga datos na mga subset ngEDDGridMula sa mga Latian at Uso Mula saFiles ay maaaring magsilbi ng datos nang tuwiran mula sa panlabas na siksik na mga data file, pati na.tgz,.tar.gz,.tar.gzip,.gz,.gzip,.zip,.bz2, at .Z files.
-
Nakapagtataka na ito'y mabisa!
Sa karamihan ng mga kaso, ang mabagal na pagbabaybay na may kaugnayan sa decompressing maliit at medium-sized data files ay menor de edad. Kung kailangan mong ingatan ang disk space, hinihimok namin ang paggamit ng bahaging ito, lalo na para sa mas lumang mga file na bihirang makita. -
Mag - ipon ng pera!
Ito ang isa sa iilang bahagi saERDDAP™na nagbibigay sa iyo ng pagkakataon na makapag - ipon ng maraming pera (bagaman sa halaga ng bahagyang nabawasang paggawa) . Kung ang proporsiyon ng compression ay e.g., 6:1 (Kung minsan ay mas mataas pa ito) , pagkatapos ang dataset's data files ay mangangailangan lamang ng 1/6 ang disk space. Kung gayon marahil ay makadaraan ka na may 1 RAID (ng isang takdang laki) sa halip na 6 RAIDS (ng gayunding laki) . Napakalaking halaga nito. Sana, ang kakayahang i - compress ang ilang file sa koleksiyon (ang mga nakatatanda?) at hindi kompisuhin ang iba (ang mas bago?) , at baguhin iyan sa anumang oras, bawasan natin ang ilalim ng salansan sa pagsisiksik ng ilan sa mga files (mas mabagal na daanan) . At kung ang pagpipilian ay sa pagitan ng pag - iimbak ng mga file sa tape (at makukuha lamang kung hihilingin, pagkatapos ng pagkaantala) Ang mga v na nag - iimbak ng mga ito ay siksik sa RAID (at mararating sa pamamagitan ngERDDAP) , kung gayon ay may malaking bentaha sa paggamit ng compression upang ang mga gumagamit nito ay maging interactive at (relatibo) Madaling makuha ang datos. At kung maililigtas ka nito sa pagbili ng karagdagang RAID, ang bahaging ito ay makapagliligtas sa iyo ng halos $30,000. -
Para sa lahatEDDGridMula sa mga subclass ngFile, kung ang mga data file ay may extension na nagpapahiwatig na ang mga ito ay panlabas na siksik na mga file (kasalukuyang:.tgz,.tar.gz,.tar.gzip,.gz,.gzip,.zip,.bz2, o .Z) ,ERDDAP™ang mga file sa cache directory ng dataset kapag binasa ito (kung wala pa sila sa cache) . Totoo rin ito sa talaksang binary (e.g.,.nc) Mga subklase ng EDDTable FromFiles.
-
Para sa EDDTable FromFiles subclass para sa mga non-binary files (e.g., .csv) , data files na may extension na nagpapakitang ang mga ito ay panlabas na compressed files ay i-compressed sa-the-fly habang ang file ay binabasa.
-
PAGTANGGAP: Kung ang uri ng panlabas na siksik na talaksan ay ginamit (e.g.,.tgzo.zip) ang higit sa 1 file sa loob ng compressed file, ang compressed file ay dapat maglaman lamang ng 1 file.
-
REQUREMENT: Ipinapalagay ng bahaging ito na ang nilalaman ng panlabas na mga talaksang siniksik ay hindi nagbabago, upang magamit muli ang isang naka - cached decompressed file. Kung ang ilan o lahat ng dataset's data files ay binabago kung minsan, huwag i - compress ang mga file na iyon. Kasuwato ito ng karaniwang gamit, yamang ang mga tao ay hindi normal na naglalagay ng compress file na kung minsan ay kailangan nilang baguhin.
-
<fileNameRegex> Upang magawa ang gawaing ito, ang dataset's<Ang fileNameRegex> ay dapat na tumugma sa mga linked files' na pangalan. Maliwanag, ang mga regexes tulad ng .\ang lahat ng pangalan ng talaksan. Kung bibigyan mo ng espesipikong uri ng talaksan, e.g., .\\.nc, kung gayon ay kailangan mong baguhin ang regex upang isama rin ang extension extension, e.g., .\ \.nc\.gz(kung lahat ng files ay magiging bagay na*.nc.gzmga talaksan) .
-
Mainam kung ang inyong dataset ay may halong siksik at hindi siksik na mga file. Maaaring kapaki - pakinabang ito kung naniniwala kang may ilang file (e.g., mas lumang talaksan) ay hindi gaanong gagamitin at samakatuwid ay magagamit upang makatipid ng disk space sa pamamagitan ng pagsisiksik sa mga ito. Upang magawa ito, ang<Ang talaksang NanameRegex> ay dapat tumugma sa siksik at hindi siksik na mga pangalan ng talaksan, e.g., .\o .\\.nc (|\.gz) ( Kung saan ang grupong bihag sa dulo ng panahong iyan ay nagsasabi na.gzay opsyonal.
-
Mainam kung iipit mo o i - decompress ang espesipikong mga file sa koleksiyon anumang oras. Kung ang dataset ay hindi gumagamit [<update EveryNMillis>] (Mga #update offenmilli) , itakda ang dataset'sbandilaupang magsumbongERDDAP™upang muling maikarga ang dataset at sa gayo'y mapansin ang mga pagbabago. Kapansin - pansin, maaari kang gumamit ng iba't ibang algorithm sa compression at setting para sa iba't ibang file sa iisang dataset (e.g.,.bz2para sa mga talaksang bihirang gamitin,.gzsapagkat hindi madalas gamitin ang mga file, at walang compression para sa madalas gamiting files) , tiyakin lamang na ang regex ay sumusuporta sa lahat ng mga extension ng talaksan na ginagamit, e.g., .\*\=\.nc (|\.gz|\.bz2) .
-
Mangyari pa, ang mga tumbasan at tulin ng iba't ibang algorithm sa compression ay iba - iba sa source file at setting (e.g., antas ng compression) . Kung nais mong gawin ang sistemang ito para sa iyong mga salansan, subukin ang iba't ibang paraan ng compression sa pamamagitan ng iyong mga file at ng iba't ibang compression setting. Kung nais mo ng tiyak na kabutihan (hindi laging ang pinakamabuti) setup, irirekomenda namin nang bahagyagzip (.gz) .gziphindi ginagawa ang pinakamaliit na siksik na talaksan (Makatuwirang malapit) , ngunit napakabilis nitong i - compress ang file at (mas mahalaga para saERDDAP™gumagamit) ay napakabilis na iniangat ang salansan. Bukod dito,gzipAng software ay may pamantayan sa bawat pag-install ng Linux at Mac OS at madaling makukuha para sa Windows sa pamamagitan ng mga libreng kagamitan tulad ng 7Zip at Linux add-ons tulad ng Git Bash. Halimbawa, i - compress ang source file sa source file.gzbersyon ng talaksan (gayunding pangalan, subalit may.gzIniapela) , gamitin (sa Linux, Mac OS, at Git Bash)
gzip sourceName
Pagpapababa sa Isang?.gzilagay pabalik sa orihinal, gamitin gunzip sourceName.gz
Upang masiksik ang bawat talaksan ng pinagmulan sa directory at ang mga subdirectories nito, muling gamitin, gzip-r direktor na Naname
Pagpapababa sa bawat isa sa.gzang mga files sa directory at ang subdirectories nito , revisively, gamitin gunzip -r direktor na Naname
-
BABALA: Huwag kang mag - compress (gzip) mga talaksan na siksik na sa loob! Maraming files na ang nag-siksik ng datos sa loob. Kung ikawgzipAng mga file na ito, ang mga resultang files ay hindi magiging mas maliit (<5%) atERDDAP™ay mag - aaksaya ng panahon sa pag - aaksaya sa kanila kapag kailangan nitong basahin ang mga ito. Halimbawa:
-
talaksang datos: e.g.,.nc4, at.hdf5 talaksan: Ang ilang file ay gumagamit ng internal compression; ang ilan ay hindi. Kung paano sasabihin: Ang mga siksik na variable ay may mga katangiang "\_Chunks". Gayundin, kung isang grupo ng mga griddd.nco.hdfAng mga talaksan ay iba't iba ang laki, ang mga ito ay malamang na siksik sa loob. Kung ang mga ito ay pare - pareho ang laki, ang mga ito ay hindi panloob na siksik.
-
Mga talaksan ng larawan: e.g., .gif, .jpg, at .png
-
Mga audio file: e.g., .mp3, at .g.
-
Mga talaksang video: e.g., .mp4, .ogv, at .webm.
-
Isang kapus - palad na pambihirang kaso: .wav audio files ay napakalaki at hindi panloob na siksik. Magandang ipunin (gzip) ang mga ito, subalit karaniwan nang hindi mo dapat gawin ito sapagkat kung gagawin mo ito, hindi matutugtog ng mga gumagamit nito ang siksik na mga file sa kanilang browser.
-
Kaso ng Pagsubok: Pagsiksik (kasamagzip) isang dataset na may 1523 grid.ncmga file.
- Ang datos sa mga source file ay kakaunti (maraming nawawalang pamantayan) .
- Kabuuang disk space ay mula 57 GB bago ang compression sa 7 GB pagkatapos.
- Ang kahilingan para sa maraming impormasyon mula sa 1 time point ay<1 s bago at pagkatapos ng compression.
- Paghingi ng 1 puntos ng datos para sa 365 time points (pinakamalubhang kalagayan) ay mula 4 s hanggang 71 s.
Para sa akin iyan ay isang random na trade-off para sa anumang dataset, at tiyak para sa datos na bihirang gamitin.
-
Internasyunal na Kompusyon -- Kung ihahambing sa panloob na file compression na iniaalok ng.nc4 at.hdf5 files,ERDDAPAng pamamaraan para sa panlabas na siksik na mga file ay may mga bentaha at disbentaha. Ang disbentaha ay: minsang mabasa ang maliit na bahagi ng isang file, ang panloob na compression ay mas mabuti sapagkatEDDGridAng mga FromFile ay nangangailangan lamang ng kaunting decompress (s) ng file, hindi ang buong file. SubalitERDDAPAng pamamaraan ay may ilang bentaha:
- ERDDAP™ay sumusuporta sa lahat ng uri ng data file (binaryo at di-binaryo, e.g.,.nc3 at .csv) hindi lamang.nc4 at.hdf4.
- Kung ang kalakhang bahagi ng isang file ay kailangang basahin nang mahigit sa isang beses sa loob ng maikling panahon, kung gayon ay nakatitipid ito ng panahon upang i - decompress ang salansan nang minsan at basahin ito nang maraming ulit. Nangyayari itoERDDAP™kapag ang isang gumagamit ay gumagamit ng Make-A-Graph para sa dataset at gumagawa ng isang serye ng maliliit na pagbabago sa grap.
- Ang kakayahan na magkaroon ng siksik na mga file at hindi siksik na mga file sa iisang koleksiyon, ay nagpapangyari sa iyo na magkaroon ng higit na kontrol kung aling mga file ang siksik at alin ang hindi. At ang karagdagang kontrol na ito ay hindi talaga binabago ang source file (yamang maaari mong i - compress ang isang file sa e.g.,.gzat pagkatapos ay i - decompress ito upang makuha ang orihinal na talaksan) .
- Ang kakayahang magbago anumang oras kung ang ibinigay na file ay siksik at kung paano ito siksik (iba't ibang algorithm at setting) ay nagbibigay sa iyo ng higit na kontrol sa pagsasagawa ng sistema. At madali mong makukuhang muli ang orihinal na talaksang hindi nakokompressed anumang oras.
Bagaman ang alinman sa mga pamamaraan ay hindi isang tagumpay sa lahat ng kalagayan, maliwanag naERDDAPDahil sa kakayahan nitong i - serialize ang impormasyon mula sa panlabas na mga file, ang panlabas na compression ay nagiging makatuwirang alternatibo sa internal compression na iniaalok ng outer compression.nc4 at.hdf5. Kapansin - pansin iyan dahil ang internal compression ang isa sa pangunahing dahilan kung bakit pinipiling gamitin ng mga tao.nc4 at.hdf5.
Dumaranas ng Panlulumo
ERDDAP™gumagawa ng decompressed na bersiyon ng anumang siksik na binary (e.g.,.nc) data file kapag kailangan basahin ang file. Ang mga decompressed file ay nakatago sa directory ng dataset sa loob Malaking Direktoryo /decompressed/ . Ang mga decompressed file na hindi pa nagamit kamakailan ay aalisin sa espasyo kapag ang bolyum ng talaksan ay >10GB. Maaari mo itong baguhin sa pamamagitan ng pagtatakda<decompressedCachemaxGB> (default=10) sa mga datos Xml.xml, e.g.,
<decompressedCacheMaxGB>40</decompressedCacheMaxGB>
Gayundin, ang mga decompressed file na hindi ginamit sa huling 15 minuto ay aalisin sa simula ng bawat malaking dataset reload. Maaari mo itong baguhin sa pamamagitan ng pagtatakda<decompressedCachumaxMinutes Lumang> (default=15) sa mga datos Xml.xml, e.g.,
<decompressedCacheMaxMinutesOld>60</decompressedCacheMaxMinutesOld>
Mas maraming numero ang maganda, subalit ang pinagsama - samang laki ng mga decompressed file ay maaaring maging sanhi ng Malaking Direktoryo na maubusan ng disk space, na nagiging sanhi ng malulubhang problema.
- Sapagkat ang decompressing ng isang file ay maaaring kumuha ng malaking panahon (0.1 hanggang 10 segundo) , ang mga dataset na may mga talaksang siksik ay maaaring makinabang sa pagtatakda ng mga dataset's [<[nThreads>] (Mga #nthread) pagtatakda sa mas mataas na bilang (2? 3? 4?) . Ang mga disbentaha sa mas mataas na bilang (e.g., 5? 6? 7?) ang umuunting mga pakinabang at na ang kahilingan ng isang gumagamit ay maaaring gumamit ng mataas na porsiyento ng yaman ng sistema, sa gayo'y lubhang nagpapabagal sa pagpoproseso ng mga kahilingan ng ibang gumagamit. Kaya, walang huwarang setting ng nThreads, iba't ibang mga resulta lamang sa iba't ibang mga sitwasyon na may iba't ibang mga setting.
May Iba't Ibang Pamantayan
Ang mga pamantayan para sa bawat dimensiyong MUST ay maaaring uriin ayon sa pagkakasunud - sunod (Pag - akyat o pagbaba, maliban sa una (kaliwa-karamihan) sukat na kailangang umakyat) . Ang mga halaga ay maaaring maging iregular ang layo. Walang anumang ugnayan. Ito ay isang kahilingan saPamantayang CF metadata. Kung ang mga halaga ng anumang dimensiyon ay hindi ayon sa pagkakasunud - sunod, ang dataset ay hindi ididiskarga at ang dataset ay hindi ididiskargaERDDAP™ay matutukoy ang unang di-nababababang halaga sa log file, Malaking Direktoryo /log/log.txt .
Ang mga hindi natukoy na dimensiyonal na halaga ay halos palaging nagpapahiwatig ng problema sa source dataset. Ito ay pinaka karaniwang nangyayari kapag ang isang mali ang pangalan o hindi angkop na talaksan ay kabilang sa agregasyon, na humahantong sa isang hindi natukoy na dimensiyon ng oras. Upang malutas ang problemang ito, tingnan ang maling mensahe saERDDAP™log.txt file upang mahanap ang hindi magandang halaga ng oras. Pagkatapos ay tingnan ang pinagkunang mga file upang hanapin ang katumbas na talaksan (o isa bago o isa pa) na hindi kabilang sa agregasyon.
Mga Direktor
Ang mga file ay maaaring nasa isang directory, o nasa directory at mga subdirectory nito (Paulit - ulit) . Kung maraming files (Halimbawa, >1,000) , ang operating system (at sa gayonEDDGridMula sa mga Labi) mas mahusay na tatakbo kung iimbak mo ang mga file sa isang serye ng mga subdirectory (sa bawat taon, o isa sa bawat buwan para sa mga dataset na may napakadalas na mga file) , kung kaya't hindi nagkaroon ng napakaraming files sa isang ibinigay na directory.
<Hache Mula sa Url>
LahatEDDGridAng mga FromFile at lahat ng EDDTable FromFiles datasets ay sumusuporta sa isang set ng mga tag na nagsasabi ngERDDAP™upang makuha at mapanatili ang isang kopya ng lahat ng remote dataset's files, o isang cache ng ilang file (nadownload kung kinakailangan) . Ito'y totoong kapaki - pakinabang. Tingnan angcache Mga Dokumento Mula sa Urol.
Mga Direktoryo at HTTP Range Kahilingan
(AKA Byte Service, Byte Range Requests, Accept-Rangeshttpheader)
EDDGridMula sa NNcFiles, EDDTable FromMultidimNcFiles, EDDTable FromNcFiles, at EDDTable FromNcCFFililes, can Kung minsan server ang datos mula sa.ncmga file sa remote servers at access sa pamamagitan ng HTTP kung ang server ay sumusuportaPaglilingkod Nang Bytesa pamamagitan ng HTTP range requests (ang mekanismo ng HTTP para sa byte na nagsisilbi) . Posible ito dahil netcdf-java (alinERDDAP™mga gamit upang basahin.ncmga talaksan) ay umaalalay sa pagbasa ng datos mula sa malayo.ncmga file sa pamamagitan ng HTTP range requests.
Huwag mong gawin ito! Ito'y lubhang di - mabisa at mabagal. Sa halip, gamitin ang [<Hache Mula sa sistemang>] (#cache simulaurl) .
PagkakamitERDDAP™datos bilang files sa pamamagitan ng byte range requests -- Ibabad ito, kung maaari (sa teoriya) isipin ang isang dataset saERDDAP™bilang isang higante.ncng talaksan sa pamamagitan ng pag-apending ".nc" sa paanan ng OPenDAPURL para sa ibinigay na datos (e.g., https://myserver.org/erddap/griddap/datasetID.nc at gayundin sa pagdaragdag ng isang ?query pagkatapos niyan upang magtakda ng isang subset) , marahil makatuwirang itanong kung magagamit mo ang netcdf-java,Ferret, o iba paNetCDFsoftware ng kliyente para magbasa ng datos sa pamamagitan ng Mga Kahilingan ng HTTP RangeERDDAP. Ang sagot ay hindi, sapagkat wala naman talagang napakalaki ".nc" talaksan. Kung nais mong gawin ito, sa halip ay gawin ang isa sa mga mapagpipiliang ito:
- Gamitin(OPeN)DAPAng client software upang makipag-ugnayan sa mga serbisyo ng griddap na inaalok ngERDDAP. Iyan ang dahilanDAP (at sa gayonERDDAP) ay dinisenyo para rito. Napakahusay nito.
- O, i-download ang source file (s) mula sa"files"sistema (o isang subset file sa pamamagitan ng isang.nc? tanong) sa iyong computer at gumamit ka ng netcdf-java,Ferret, o iba paNetCDFAng kliyenteng software upang basahin ang (ngayon) lokal na talaksan (s) .
Tinanggal na Impormasyon ng File
Kapag IsangEDDGridMula saFiles dataset ay nakakarga muna,EDDGridAng mga FromFile ay nagbabasa ng impormasyon mula sa lahat ng mga kaugnay na file at lumilikha ng mga talahanayan (isang hanay sa bawat file) na may impormasyon tungkol sa bawat tanggap na talaksan at bawat "masama" (iba o hindi tanggap) talaksan.
- Ang mga mesa ay iniimbak din sa disk, gaya ngNetCDFv3.ncipinasok sa talaksan Malaking Direktoryo /dataset/ Huling2CharsofDatasetID / datasetID / sa mga talaksang ipinangalan: DirTable.nc (na may listahan ng natatanging mga pangalan ng directory) , talaksan Talaan.nc (na humahawak sa mesa ng bawat tanggap na impormasyon ng talaksan) , Masamang Uso.nc (na humahawak sa mesa ng bawat masamang impormasyon ng talaksan) .
- Upang pabilisin ang pagpasok sa isangEDDGridMula sa Filipinas na dataset (ngunit sa kapinsalaan ng paggamit ng higit pang memorya) , magagamit mo
true
upang magsumbongERDDAP™upang tandaan ang isang kopya ng talaan ng impormasyon.
- Ang kopya ng file information tables sa disk ay kapaki-pakinabang din kapagERDDAP™ay sinasarhan at muling isiningit: ito'y nagliligtasEDDGridMula sa mgaFile mula sa kinakailangang muling basahin ang lahat ng data files.
- Kapag ini-reload muli ang dataset,ERDDAP™kailangan lamang basahin ang datos sa mga bagong file at file na nagbago na.
- Kung ang isang file ay may kakaibang istraktura mula sa iba pang files (halimbawa, ibang uri ng datos para sa isa sa mga variable, o ibang halaga para sa "mga yunit" attribute) ,ERDDAPidagdag ang file sa listahan ng mga "masamang" files. Ang impormasyon tungkol sa problema sa talaksan ay isusulat sa Malaking Direktoryo /log/log.txt file.
- Hindi mo na kailangan pang mag - alis o gumawa sa mga file na ito. Ang isang eksepsiyon ay: kung gumagawa ka pa ng mga pagbabago sa dataset'sdatasets.xmlsetup, baka gusto mong alisin ang mga file na ito upang ma-pwersaERDDAP™upang muling basahin ang lahat ng mga files dahil ang mga files ay babasahin/binibigkas nang iba-iba. Kung kailangan mong alisin ang mga file na ito, magagawa mo ito kapagERDDAP™ay tumatakbo. (Pagkatapos ay magtakda ngbandilaupang muling maikarga ang dataset ASAP.) Gayunman,ERDDAP™karaniwang napapansin na angdatasets.xmlhindi tumutugma ang impormasyon sa talaksan Talaan ng impormasyon at i-delets ang mga talahanayan ng talaksan nang kusa.
- Kung nais mong magpatibay - loobERDDAP™upang i-update ang nakaimbak na dataset na impormasyon (Halimbawa, kung basta daragdagan, aalisin, o papalitan mo ang ilang file sa dataset's data directory) , gamitin angsistema ng bandilalakasERDDAP™upang i - update ang impormasyong nasa loob ng talaksan.
Pagharap sa mga Kahilingan
Kapag pinoproseso ang kahilingan ng kliyente para sa impormasyon,EDDGridMula saFiles ay maaaring mabilis na tumingin sa mesa na may tanggap na impormasyon ng file upang makita kung aling files ang may hiniling na data.
Pag - alam sa Kapsiyon ng File Information
Kailanma't ang dataset ay muling ididiskarga, ang impormasyong nasa loob ng talaksan ay ina - update.
- Ang dataset ay muling idinidiskarga sa pana - panahon gaya ng tinitiyak ng<Muling ikarga ang EveryNMinutes> sa dataset's information sadatasets.xml.
- Ang dataset ay muling idinidiskarga sa lalong madaling panahon hangga't maaariERDDAP™na iyong idinagdag, inalis,Ang touch'd (upang palitan ang huli ng talaksan Binagong panahon) , o nagpalit ng datafile.
- Ang dataset ay muling ikarga sa lalong madaling panahon kung gagamitin mo ang datasetsistema ng bandila.
Kapag muling nadiskarga ang dataset,ERDDAP™ihambing ang kasalukuyang makukuhang mga files sa may cached file information tables. Ang mga bagong file ay binabasa at idinaragdag sa mga tanggap na file table. Ang mga talaksan na hindi na umiiral ay ibinababa mula sa tanggap na mga file table. Ang mga talaksan kung saan nagbago na ang file timestamp ay binabasa at ang kanilang impormasyon ay inaapruba. Ang mga bagong talahanayan ay pinapalitan ang mga lumang talahanayan sa memorya at sa disk.
Masasamang Bunton
Ang mesa ng mga sirang file at ang mga dahilan kung bakit ang mga file ay ipinahayag na masama (sirang talaksan, nawawalang variables, atbp.) ay ipinadadala sa email Lahat Sa adres ng email (malamang na ikaw) Sa tuwing muling ididiskarga ang dataset. Dapat mong palitan o kumpunihin agad ang mga file na ito.
Nawawalang mga Kasangkapan
Kung ang ilan sa mga file ay walang ilan sadataVariablekatuturan sa dataset'sdatasets.xmlOkay lang. KailanEDDGridMula saFiles ay mababasa ang isa sa mga files na iyon, ito ay kikilos na parang ang file ay may variable, ngunit may lahat ng nawawalang mga halaga.
Kaguluhan ng FTP/Advice
Kung ikaw ay magbibigay ng bagong mga data file saERDDAP™server habangERDDAP™tumatakbo, may tsansa naERDDAP™ay muling magkarga ng dataset sa panahon ng proseso ng FTP. Mas madalas itong mangyari kaysa sa inaakala mo! Kapag nangyari ito, lilitaw na tanggap ang talaksan (may tanggap na pangalan) , ngunit hindi pa mabisa ang talaksan. KungERDDAP™ay sumusubok na basahin ang datos mula sa hindi tanggap na talaksang iyon, ang resultang error ay magpapangyari sa talaksan na idagdag sa mesa ng hindi tanggap na mga file. Hindi ito mabuti. Upang maiwasan ang problemang ito, gumamit ng temporary file kapag ang FTP'ing the file, halimbawa, ABC2005.nc\_TEMP . Pagkatapos, ang fileNameRegex test (Tingnan ang ibaba) ay magpapakita na ito ay hindi isang nauugnay na talaksan. Pagkatapos makumpleto ang proseso ng FTP, palitan ng pangalan ang talaksan sa tamang pangalan. Ang proseso ng pagpapalit ng pangalan ay magpapangyari sa talaksan na maging mahalaga sa isang iglap.
"0 files" Error sa pagbasa ng Mensahe
Kung tumatakbo kaGenerateDatasetsXmloMga Dasd, o kung papasanin moEDDGridMula sa...Files dataset saERDDAP™, at nakakuha ka ng "0 files" error message na nagpapahiwatig naERDDAP™nakakita ng 0 katugmang files sa directory (kung inaakala mong may katugmang mga file sa directory na iyon) :
- Tingnan kung talagang nasa directoryng iyon ang mga file.
- Tingnan ang baybay ng pangalang directory.
- Tingnan ang fileNameRegex. Sa totoo lang, talagang madaling magkamali gamit ang regexes. Para sa mga layuning pangsubok, subukan ang regex .\* na dapat tumugma sa lahat ng mga pangalan. (Tingnan itodokumentasyon ng regexatregex tutorial.)
- Tiyakin na ang gumagamit na nagpapatakbo ng programa (e.g., gumagamit ng=tomcat (?) para sa Tomcat/ERDDAP) ay may pahintulot ng 'read' para sa mga file na iyon.
- Sa ilang operating system (Halimbawa, ang SCORINux) at depende sa system settings, ang gumagamit na nagpapatakbo ng programa ay dapat na may 'read' na pahintulot para sa buong kadena ng mga directories na humahantong sa directory na may mga files.
EDDGridMula sa kalansay ng mgaFile XML
- Ang kalansay na XML lahatEDDGridMula sa mga subclass ngFiles ay:
<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* Mula sa AudioFiles
EDDGridMula sa AudioFiles at Mga EDDTable Mula sa AudioFile Aggregate data mula sa koleksiyon ng lokal na mga audio file. (Ang mga ito ay unang lumitawERDDAP™v1.82.) Ang pagkakaiba ay naEDDGridMula sa AudioFiles ang impormasyon ay itinuturing na isang multidimensional na dataset (karaniwang may 2 dimensiyon:\[umpisa ng talaksan Panahon\]at\[Lumipas Oras sa loob ng talaksan\]) , samantalang itinuturing ng EDDTable FromAudioFiles ang impormasyon bilang tabular data (karaniwang may mga tudling para sa file startTime, ang passes na orasime na may file, at ang impormasyon mula sa audio channels) .EDDGridMula saAudioFiles ay nangangailangan na ang lahat ng file ay may parehong bilang ng sampol, kaya kung hindi totoo iyan, dapat mong gamitin ang EDDTable FromAudioFiles. Kung hindi, ang pagpili kung aling EDD na uri ang gagamitin ang iyong pipiliin. Isang bentaha ng EDDTable FromAudioFiles: maaari mong idagdag ang iba pang mga variable na may ibang impormasyon, e.g.,.stationID, stationType. Sa parehong mga kaso, ang kawalan ng nagkakaisang oras variable ay gumagawa ritong mas mahirap na gumana sa mga data mula sa mga tipong ito ng EDD, ngunit walang mabuting paraan upang magtatag ng isang nagkakaisang oras variable.
Tingnan ang mga superklase ng klaseng ito,EDDGridMula sa mga LabiatMapagkakatiwalaan Mula sa mga Bakod, para sa pangkalahatang impormasyon kung paano gumagana ang klaseng ito at kung paano ito gagamitin.
Mahigpit naming inirerekomenda ang paggamit ngMga GenerateDataset Xml programaupang gumawa ng isang magaspang na burador ngdatasets.xmlPara sa dataset na ito. Yamang ang mga audio file ay walang metadata maliban sa impormasyong nauugnay sa pag - uugnay ng sound data, kailangan mong baguhin ang output mula sa GenerateDatasets Xml upang maglaan ng mahalagang impormasyon (e.g., pamagat, buod,creator\_name, institusyon, kasaysayan) .
Mga Detalye:
- Maraming audio file format. Sa kasalukuyan,ERDDAP™ay maaaring magbasa ng datos mula sa karamihan ng mga talaksang .wav at .au. Sa kasalukuyan ay hindi ito makabasa ng ibang uri ng mga files na audio, e.g., .aiff o .mp3. Kung kailangan mo ng suporta para sa iba pang audio file formats o iba pang variant ng .wav at .au, pakisuyong i-mail ang iyong kahilingan kay Chris. Juan sa noaa.gov . O, bilang trabahong magagamit mo ngayon, maaari mong gawing PCM\_ ang iyong mga audio file NANGANGANIB (para sa di - tiyak na datos) o PCM\_FLOAT (para sa lumulutang na impormasyon tungkol sa puntos) .wav files upangERDDAP™ay maaaring gumawang kasama nila.
- Sa kasalukuyan,ERDDAP™ay makababasa ng audio files na may anoJava'Ang AudioFormat class ay tumatawag sa PCM\_FLOAT, PCM\_SGNED, PCM\_UNSGNED, ALAW, at ULAW Aspeto.ERDDAP™mga kumberte PCM\_UNSIGNONG pamantayan (e.g., 0 hanggang 255) ng pirmadong mga pamantayan (e.g., -128 hanggang 128) sa pamamagitan ng pagpapatibay sa mga piraso sa mga halaga ng impormasyon.ERDDAP™mga kumberteng ALAW at ULAW mula sa kanilang katutubong kodigong byte format sa maikli (int16) mga pamantayan. Mula NoonJavanais ng bigEndian=tunay na datos,ERDDAP™Muling binabago ang mga byte ng datos na nakaimbak ng bigEndian= false (maliit na "endian ") upang mabasa nang wasto ang mga pamantayan. Para sa lahat ng iba pang mga pagsubok (PCM) ,ERDDAP™basahin ang impormasyon.
- KailanERDDAP™ay kababasahan ng impormasyon mula sa mga audio file, ginagawa nitong pangglobong mga katangian ang makukuhang audio metadata. Laging kasama rito ang (na may mga pamantayang halimbawa na ipinakita)
Haging audioBigEndian "bulaan"; //tunay o hindi totoo int audio Mga channel 1; String audioEncoding "PCM\_IGNED"; Ilutang ang audioFrameRate 9600.0; //per second int audioFrameSize 2; //# of data byte kada frame Ilutang ang audioSampleRate 9600.0; //per second int audioSampleSize InBits 16; //# of bits per channel sa bawat sampol
SapagkatERDDAP'mga layunin, ang isang frame ay kasingkahulugan ng isang sampol, na ang datos para sa isang punto sa isang panahon. Ang mga katangian saERDDAP™ay magkakaroon ng impormasyon na naglalarawan sa impormasyon na gaya ng nasa pinagkunang mga file.ERDDAP™ay madalas na nagbago ito habang ang pagbasa ng datos, e.g., PCM\_UNSGNED, ALAW, at ULAW regulatory data ay ginagawang PCM\_SGNED, at ang bigEndian= fract data ay ginagawang bigEndian=tunay na datos (kung paanoJavanais basahin ito) . Sa huli, data values saERDDAP™ang laging magigingPCM-encodekailangan ng datos (I.e., simpleng mga sampol ng tunog) .
- KailanERDDAP™ay kababasahan ng impormasyon mula sa mga audio file, binabasa nito ang buong file.ERDDAP™ay nakababasa ng kasindami ng mga 2 bilyong sampol sa bawat channel. Halimbawa, kung ang sampol ay 44,100 sampol sa bawat segundo, 2 bilyong sampol ang nagsasalin sa halos 756 na minuto ng impormasyon sa tunog sa bawat file. Kung mayroon kang mga audio file na may higit pa sa dami ng impormasyong ito, kailangan mong hatiin ang mga file sa mas maliliit na tipak upang maging maliliit na tipakERDDAP™ang mga ito.
- SapagkatERDDAP™basahin ang buong audio files,ERDDAP™ay kailangang magkaroon ng maraming memorya upang gumana na may malalaking audio file. TingnanERDDAP'mga memory setting. Minsan pa, kung ito ay isang problema, ang isang gawain na magagamit mo ngayon ay hatiin ang mga file sa mas maliliit na tipak upang maging maliliit na tipakERDDAP™ay maaaring basahin ang mga ito nang walang gaanong memorya.
- Ang ilang audio file ay maling isinulat.ERDDAP™ay gumagawa ng kaunting pagsisikap upang pakitunguhan ang gayong mga kaso. Ngunit sa pangkalahatan, kapag may pagkakamali,ERDDAP™ang isang eksepsiyon (at tanggihan ang talaksang iyon) o (kung ang pagkakamali ay hindi mabasa) basahin ang datos (ngunit ang datos ay mali) .
- ERDDAP™ang lakas ng tunog. Tamang - tama, ang integer audio data ay sinusukat upang gamitin ang buong saklaw ng uri ng datos.
- Ang mga file ng audio at mga audio player ay walang sistema para sa mga nawawalang halaga (e.g., -999 o Florat.NaN) . Kaya ang audio data ay hindi dapat may anumang nawawalang halaga. Kung may nawawalang mga pamantayan (e.g., kung kailangan mong pahabain ang isang audio file) , gumamit ng serye ng 0's na bibigyang kahulugan bilang perpektong katahimikan.
- KailanERDDAP™ay kababasahan ng datos mula sa mga audio file, lagi itong lumilikha ng isang kolum na tinatawag na pass Orasan ang bawat sampol, sa loob lamang ng ilang segundo (naka-imbak bilang doubles) , relatibo sa unang sampol (na iniatas Oras=0.0 s) . KasamaEDDGridMula saAudioFiles, ito ang nagiging pabagu - bagong takbo ng paspas na axis.
- EDDGridMula saAudioFiles ay nangangailangan na ang lahat ng mga file ay may parehong bilang ng mga sampol. Kaya kung hindi totoo iyan, dapat mong gamitin ang EDDTable FromAudioFiles.
- SapagkatEDDGridMula sa AudioFiles, inirerekomenda namin na magtakda kayo [kayo]<Mga Katangian sa Memory>] (#dimension deficingsinmemory) ng kabulaanan (gaya ng iminumungkahi ng GenerateDatasets Xml) , dahil ang sukat ng oras ay kadalasang may napakaraming halaga.
- SapagkatEDDGridMula sa AudioFiles, dapat na halos laging gamitin mo angEDDGridMula sa sistemangFiles para saPag - aalsa Mga Pangalan ng File, halos sa tuwina'y sa pamamagitan ng pagkuha sa panimulang petsa ng rekording Oras mula sa mga file. Halimbawa,
<sourceName>\\*\\*\\*fileName,"timeFormat=yyyyMMdd'\\_'HHmmss",aco\\_acoustic\\.(\\[0-9\\]{8}\\_\\[0-9\\]{6})\\.wav,1</sourceName>
Mga GenerateDataset Hinihimok ka ni Xml na gawin ito at tutulungan ka sa bagay na ito.
- Para sa EDDTable FromAudioFiles, halos dapat mong gamitin ang EDDTable FromFiles system para sa\\\*fileName pseudosourceNamesupang makakuha ng impormasyon mula sa pangalan ng talaksan (halos laging petsa ng pasimula Panahon para sa rekording) at itinataguyod ito upang maging isang hanay ng mga impormasyon. Halimbawa,
<sourceName>\\*\\*\\*fileName,aco\\_acoustic\\.(\\[0-9\\]{8}\\_\\[0-9\\]{6})\\.wav,1</sourceName>
Ang time format ay dapat na tiyakin bilang ang mga yunit na attribute:<Pangalang= "units">yyMd'\_'Hms</att>
EDDGridMula sa mga GamergeIRFile
EDDGridMula sa mga GamergeIRFile Nag-iipon ng datos mula sa lokal,MALUNGKOTmga talaksan, na mula saNasusukat ng Tropikal na Pag - ulan ang Misyon (TRMM) , na isang magkasamang misyon sa pagitan ng NASA at ng Japan Aerospace Exploration Agency (JAXA) . Maganda Ang mga file ng IR ay maaring i-download mula saNASA.
EDDGridMula saMergeIRFiles.java ay isinulat at nakatulong sa ambag saERDDAP™proyekto nina Jonathan Lafite at Philippe Makowski ng R.Tech Engineering (lisensiya: may copyright na open source) .
EDDGridAng mga FromMergeIRFile ay medyo kakaiba:
- EDDGridAng mga taga-MergeIRFile ay sumusuporta sa mga siksik o hindi nai-compressed na source data files, sa anumang kombinasyon, sa parehong dataset. Ito'y nagpapangyari sa iyo, halimbawa, na i - compress ang mas lumang mga file na bihirang ma - access, subalit hindi nai - compress ang bagong mga file na kadalasang naka - access. O, maaari mong baguhin ang uri ng compression mula sa orihinal . Z para sa halimbawa,.gz.
- Kung ikaw ay may siksik at di - nai - compress na mga bersiyon ng parehong data files sa iisang directory, pakisuyong tiyakin ang mga ito<ang fileNameRegex> para sa inyong dataset ay tumutugma sa mga file na nais mong itugma nito at hindi itugma ang mga files na ayaw mong pagtugmain nito.
- Hindi suportado ang mga pinagmulang data files ay dapat walang extension ng talaksan (I.e., hindi "." sa filename) .
- Ang mga talaksang source data ay dapat na may extension ng talaksan, ngunitERDDAP™Alamin ang uri ng compression sa pamamagitan ng pagsusuri sa nilalaman ng file, hindi sa pamamagitan ng pagtingin sa extension ng file (Halimbawa, ".Z") . Kabilang sa mga suportadong uri ng compression ang "gz", "bzip2", "xz", "lzma", "snappy-raw", "snappy-framed", "pack200", at "z". KailanERDDAP™basahin ang mga compressed file, ito ay decompresses sa-the-fly, nang hindi sumusulat sa isang temporary file.
- Kailangang gamitin ng lahat ng source data files ang orihinal na sistema ng pagpapangalan: i.e., merg\_ YYYYMDH \_4km-pixel (kung saan YYYYMDH nagpapakita ng oras na kaugnay ng datos sa talaksan) , at isang extension ng talaksan kung ang file ay siksik.
Tingnan ang superclass ng klaseng ito,EDDGridMula sa mga Labi, para sa pangkalahatang impormasyon kung paano gumagana ang klaseng ito at kung paano ito gagamitin.
Mahigpit naming inirerekomenda ang paggamit ngMga GenerateDataset Xml programaupang gumawa ng isang magaspang na burador ngdatasets.xmlPara sa dataset na ito. Pagkatapos ay maaari mo itong i - edit na mabuti.
EDDGridMula sa mga Uso
EDDGridMula sa mga Uso Hinahati ang mga impormasyon mula sa lokal, grided,GRIB .grb at .grb2mga talaksan,HDF (v4 o v5) .hdfmga talaksan,.ncmlmga talaksan,NetCDF (v3 o v4) .ncmga talaksan, atKumandantemga talaksan (ng bersyon 2.25) . Ang mga talaksang Zar ay may bahagyang kakaibang pag-uugali at nangangailangan ng alin sa fileNameRegex o ang pathRegex upang isama ang "zarr".
Maaaring gumana ito sa iba pang uri ng talaksan (Halimbawa, BUFR) , basta hindi namin sinubukan -- pakisuyong padalhan kami ng ilang sampol na files.
- Para sa mga talaksang GRIB,ERDDAP™ay gagawa ng .gbx index file sa unang pagbasa nito sa bawat file ng GRIB. Kaya ang mga files ng GRIB ay dapat nasa isang directory kung saan ang "user" na tumakbo Tomcat ay nakabasa ng+write permit.
- Tingnan ang superclass ng klaseng ito,EDDGridMula sa mga Labi, para sa impormasyon kung paano gumagana ang klaseng ito at kung paano ito gagamitin.
- Pasimula saERDDAP™v2.12,EDDGridMula sa mga Latian at mga LatianEDDGridMula sa mga Uso Nakabuklat ng datos mula sa "istruktura" sa.nc4 at.hdf4 files. Upang makilala ang isang pagkakaiba - iba na mula sa isang kayarian, ang<sourceName> kailangang gamitin ang format: Buong StructureName | miyembrong Naname , halimbawa group1/myStruct|ang akingMember .
- Mahigpit naming inirerekomenda ang paggamit ngMga GenerateDataset Xml programaupang gumawa ng isang magaspang na burador ngdatasets.xmlPara sa dataset na ito. Pagkatapos ay maaari mo itong i - edit na mabuti.
Mga Grupo sa Gridded Nc Files
Ang mga talaksang netcdf4 ay maaaring maglaman ng mga grupo. ERDDAP™ay gumagawa lamang ng isang dataset mula sa mga variables sa isang grupo at lahat ng mga magulang nito. Matutukoy mo ang espesipikong pangalan ng grupo sa GenerateDatasets Xml (Alisin ang bakas) , o gumamit ng "" upang magkaroon ng GenerateDatasets Xml hanapin ang lahat ng grupo para sa mga variable na gumagamit ng pinakamaraming dimensiyon, o gamit "\[root\]" Upang magkaroon lamang ng mga GenerateDatasetts humanap ng mga variables sa root group.
Ang unang bagay na ginagawa ng GenerateDatasetsXml para sa ganitong uri ng dataset matapos mong sagutin ang mga tanong ay ilimbag ang ncdump-tulad na istraktura ng sampol na talaksan. Kaya kung papasok ka sa ilang kasagutan ng goofy para sa unang silo sa pamamagitan ng GenerateDatasets Xml, sa paano man ay makikita mo kungERDDAP™ay maaaring magbasa ng file at tingnan kung anong dimensiyon at variables ang nasa file. Pagkatapos ay makapagbibigay ka ng mas mabuting mga sagot para sa ikalawang silo sa pamamagitan ng GenerateDatasetsXml.
EDDGridMula sa mga Liwasang Hindi Nabuklat
EDDGridMula sa mga Liwasang Hindi Nabuklat ay iba't ibaEDDGridMula sa mga Usona nag - aalis ng impormasyon mula sa lokal, griddNetCDF (v3 o v4) .ncat kaugnay na mga file. Ang pagkakaiba ay na binubuksan ng klaseng ito ang bawat talaksang datos bago pa manEDDGridMula saFiles tingnan ang mga files:
- Ito'y nakabuklat ng mga variable na punô ng lamanscale\_factorat/oadd\_offset.
- Nakukumberte nito ang \_FillValue atmissing\_valueMga pamantayan na dapat sa NaN (o MAX\_VALUE para sa mga uri ng integer data) .
- Binabago nito ang panahon at mga pamantayan"seconds since 1970-01-01T00:00:00Z".
Ang malaking bentaha ng klaseng ito ay na naglalaan ito ng paraan upang pakitunguhan ang iba't ibang pamantayan ng klasescale\_factor,add\_offset\_FillValue,missing\_value, o time units sa iba't ibang source files sa isang koleksiyon. Kung hindi, kailangan mong gumamit ng isang kagamitang gaya ngNcMLoNCOupang baguhin ang bawat file upang alisin ang mga pagkakaiba upang ang mga file ay maaaring hawakan ngEDDGridMula sa NNcFiles. Upang gumana nang maayos ang klaseng ito, dapat sundin ng mga file ang pamantayan ng CF para sa mga kaugnay na katangian.
- Kung susubuking gumawa ng isang bagayEDDGridMula sa mga Uso Nabuklat mula sa isang grupo ng mga file na dati mong sinubukan at hindi mo nagamitEDDGridMga FromNcFile, cd hanggang Malaking Direktoryo /dataset/ Mga huling2Letter / datasetID / kung saan Mga huling2Letter ang huling 2 titik ngdatasetID, at alisin ang lahat ng files sa directory na iyon.
- Pasimula saERDDAP™v2.12,EDDGridMula sa mga Latian at mga LatianEDDGridMula sa mga Uso Nakabuklat ng datos mula sa "istruktura" sa.nc4 at.hdf4 files. Upang makilala ang isang pagkakaiba - iba na mula sa isang kayarian, ang<sourceName> kailangang gamitin ang format: Buong StructureName | miyembrong Naname , halimbawa group1/myStruct|ang akingMember .
- Mahigpit naming inirerekomenda ang paggamit ngMga GenerateDataset Xml programaupang gumawa ng isang magaspang na burador ngdatasets.xmlPara sa dataset na ito. Pagkatapos ay maaari mo itong i - edit na mabuti.
Ang mga talaksang netcdf4 ay maaaring maglaman ng mga grupo. Tingnanang dokumentong ito.
Ang unang bagay na ginagawa ng GenerateDatasetsXml para sa ganitong uri ng dataset matapos mong sagutin ang mga tanong ay ilimbag ang ncdump-tulad na istraktura ng sampol na talaksan bago ito ay nakabuklat. Kaya kung papasok ka sa ilang kasagutan ng goofy para sa unang silo sa pamamagitan ng GenerateDatasets Xml, sa paano man ay makikita mo kungERDDAP™ay maaaring magbasa ng file at tingnan kung anong dimensiyon at variables ang nasa file. Pagkatapos ay makapagbibigay ka ng mas mabuting mga sagot para sa ikalawang silo sa pamamagitan ng GenerateDatasetsXml.
EDDGridLonPM180
EDDGridLonPM180 ang longhitud ng isang bata (nakapaloob) EDDGriddataset na may ilang halaga ng longhitud na higit pa sa 180 (halimbawa, 0 hanggang 360) upang ang mga ito ay nasa range -180 hanggang 180 (Longitude Plus o Minus 180, kaya ang pangalan) .
- Ito ay nagbibigay ng paraan upang makagawa ng mga dataset na may mga halagang longhitúd na mas malaki sa 180 compliant sa/na may longhitúd na halaga na mas malaki sa 180 compliantOGCserbisyo (halimbawaWMSPumasok sa serverERDDAP) , dahil lahatOGCang mga serbisyong nangangailangan ng mga halagang longhitud sa loob ng -180 hanggang 180.
- Ang pagtatrabaho nang malapit sa di - pagkakasundo ay nagdudulot ng mga problema, ito man ay sa longhitud 0 o sa longhitud 180. Ang uring ito ng dataset ay nagpapangyari sa iyo na maiwasan ang mga problemang iyon para sa lahat, sa pamamagitan ng pag - aalok ng dalawang bersiyon ng iisang dataset: na may halaga ng longhitúd sa range na 0 hanggang 360 ("Pacificenttric"?) , na may halaga ng longhitúd noong range -180 hanggang 180 ("Atlantric"?) .
- Para sa mga dataset ng bata na may lahat ng halaga ng longhitúd na higit sa 180, ang lahat ng bagong halaga ng longhitud ay mas mababa lamang ng 360 digri. Halimbawa, ang isang dataset na may mga halagang longhitúd na 180 hanggang 240 ay magiging dataset na may mga halagang longhitud na -180 hanggang -120.
- Para sa mga dataset ng bata na may longhitud para sa buong globo (Mga 0 hanggang 360) , ang bagong halaga ng longhitud ay babaguhin (Halos) -180 hanggang 180: Ang orihinal na 0 hanggang halos 180 halaga ay hindi nagbabago. Ang orihinal na 180 hanggang 360 halaga ay ginawang -180 sa 0 at inilipat sa pasimula ng guhit na longhitúd.
- Para sa mga child datasets na sumasaklaw sa 180 ngunit hindi sumasaklaw sa globo,ERDDAP™ang nawawalang mga halaga kung kinakailangan upang gumawa ng isang dataset na sumasaklaw sa globo. Halimbawa, ang isang child dataset na may longhitúd na halaga na 140 hanggang 200 ay magiging dataset na may longhitúd na halaga na -180 hanggang 180. Ang mga pamantayang pambata ng 180 hanggang 200 ay magiging -180 hanggang -160. Ilalagay ang mga bagong halaga ng longhitud mula -160 hanggang 140. Ang katumbas na halaga ng datos ay \_FillValues. Ang halaga ng bata na 140 hanggang halos 180 ay hindi magbabago. Ang pagpapasok ng nawawalang mga pamantayan ay maaaring magtinging kakatwa, subalit iniiwasan nito ang ilang problema na bunga ng pagkakaroon ng mga pagpapahalaga sa longhitud na biglang tumatalon (e.g, mula -160 hanggang 140) .
- Sa loobGenerateDatasetsXml, may natatanging "dataset type",EDDGridLonPM180 MulaErddapCatalog, na nagpapangyari sa iyo na lumikha ngdatasets.xmlpara saEDDGridLonPM180 datasets mula sa bawat isaEDDGridmga datos sa loob ng isangERDDAPna may anumang halaga ng longhitud na higit pa sa 180. Pinadadali nito ang pag-aalok ng dalawang bersyon ng mga datos na ito: ang orihinal, na may halaga ng longhitud sa range 0 hanggang 360, at ang bagong dataset, na may mga halagang longhitud noong range -180 hanggang 180.
Ang dataset ng bata sa loob ng bawat isaEDDGridAng LonPM180 dataset ay magiging isangEDDGridMulaErddap dataset na tumuturo sa orihinal na dataset. Ang bagong dataset'sdatasetIDang magiging pangalan ng orihinal na dataset plat na "\_LonPM180". Halimbawa,
<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>
Ilagay angEDDGridLonPM180 dataset sa ibaba ang orihinal na dataset sadatasets.xml. Iniiwasan niyan ang ilang posibleng problema.
Sa ibang paraan, maaari mong palitan angEDDGridMula saErddap child dataset na may orihinal na dataset'sdatasets.xml. Pagkatapos, magkakaroon lamang ng isang bersyon ng dataset: ang isa na may mga halagang longhitud sa loob ng -180 hanggang 180. Hindi namin ito pinapansin sapagkat may mga panahon na ang bawat bersiyon ng dataset ay mas kombinyente.
- Halimbawa, kung mag - aalok ka ng dalawang bersiyon ng dataset, isa na may longhitud 0 hanggang 360 at isa na may longhitud -180 hanggang 180:
- Maaari mong gamitin ang opsyonal [<Makukuha ViaWMS> Mali</accessible ViaWMS>] (Mga #accessibleviawm) na may 0-360 dataset upang sapilitang sirain angWMSserbisyo para sa dataset na iyon. Pagkatapos, tanging ang LonPM180 na bersiyon lamang ng dataset ang mararating sa pamamagitan ngWMS.
- May dalawang paraan upang panatilihin ang LonPM180 dataset up-to-date na may mga pagbabago sa saligang dataset:
- Kung ang child dataset ay isangEDDGridMula sa Erddap dataset na bumabanggit ng isangset ng datos sa parehong datosERDDAP™, ang LonPM180 dataset ay magsisikap na direktang mag-skripto sa saligang dataset upang ito ay laging up-to-date. Ang tuwirang mga suskripsiyon ay hindi lumilikha ng mga email na humihiling sa iyo na patunayan ang bisa ng suskripsiyon ay dapat na gawin nang kusa.
- Kung hindi dataset ng bataEDDGridMula sa Erddap dataset na parehoERDDAP™, ang LonPM180 dataset ay magsisikap na gamitin ang regular na sistema ng subscription upang magsuskribe sa saligang dataset. Kung mayroon kang sistema ng suskripsiyon sa iyong pusoERDDAP™ang sabi pa, dapat kang kumuha ng mga email na humihiling sa iyo na patunayan ang suskrisyon. Mangyari pa.
- Kung mayroon kang sistema ng suskripsiyon sa iyong pusoERDDAP™patayin, ang LonPM180 dataset ay maaaring kung minsan ay may luma nang metadata hanggang sa muling maikarga ang LonPM180 dataset. Kaya kung ang sistema ng suskripsiyon ay patayin, dapat mong itakda ang [<Muling pagkarga [[Talaksan] (Mga #reload offenminute) Pagtatakda ng LonPM180 dataset sa isang mas maliit na numero, kung kaya mas malamang na mahuli ang mga pagbabago sa dataset ng bata sa lalong madaling panahon.
EDDGridLonPM180 kalansay 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>
EDDGridLon0360
EDDGridLon0360 ang longhitud ng isang bata (nakapaloob) EDDGriddataset na may ilang halaga ng longhitud na wala pang 0 (Halimbawa, -180 hanggang 180) upang ang mga ito ay nasa range 0 hanggang 360 (Kaya ang pangalan) .
- Ang pagtatrabaho nang malapit sa di - pagkakasundo ay nagdudulot ng mga problema, ito man ay sa longhitud 0 o sa longhitud 180. Ang uring ito ng dataset ay nagpapangyari sa iyo na maiwasan ang mga problemang iyon para sa lahat, sa pamamagitan ng pag - aalok ng dalawang bersiyon ng iisang dataset: na may halaga ng longhitúd noong range -180 hanggang 180 ("Atlantric"?) . na may halaga ng longhitúd sa range na 0 hanggang 360 ("Pacificenttric"?) ,
- Para sa mga dataset ng bata na may lahat ng halaga ng longhitud na wala pang 0, lahat ng bagong halaga ng longhitud ay 360 digri lamang ang taas. Halimbawa, ang isang dataset na may mga halagang longhitúd na -180 hanggang -120 ay magiging isang dataset na may halagang longhitúd na 180 hanggang 240.
- Para sa mga dataset ng bata na may longhitud para sa buong globo (Halos -180 hanggang 180) , ang bagong halaga ng longhitud ay babaguhin (Halos) 0 hanggang 360: Ang orihinal na -180 sa 0 pamantayan ay ginawang 180 sa 360 at inilipat sa dulo ng hanay ng longhitud. Ang orihinal na 0 hanggang halos 180 halaga ay hindi nagbabago.
- Para sa mga child datasets na sumasakop sa un=0 ngunit hindi sumasaklaw sa mundo,ERDDAP™ang nawawalang mga halaga kung kinakailangan upang gumawa ng isang dataset na sumasaklaw sa globo. Halimbawa, ang isang dataset ng bata na may mga halagang longhitúd na -40 hanggang 20 ay magiging isang dataset na may mga halagang longhitud na 0 hanggang 360. Ang halaga ng bata na 0 hanggang 20 ay hindi magbabago. Ilalagay ang bagong mga pamantayan sa longhitud mula 20 hanggang 320. Ang katumbas na halaga ng datos ay \_FillValues. Ang halaga ng bata na -40 hanggang 0 ay magiging 320 hanggang 360. Ang pagpapasok ng nawawalang mga pamantayan ay maaaring magtinging kakatwa, subalit iniiwasan nito ang ilang problema na bunga ng pagkakaroon ng mga pagpapahalaga sa longhitud na biglang tumatalon (e.g, mula 20 hanggang 320) .
- Sa loobGenerateDatasetsXml, may natatanging "dataset type",EDDGridLon0360 Mula sa ErddapCatalog, na nagpapangyari sa iyo na lumikha ngdatasets.xmlpara saEDDGridLon0360 datos mula sa bawat isaEDDGridmga datos sa loob ng isangERDDAPna may anumang halaga ng longhitud na higit pa sa 180. Pinadadali nito ang pag-aalok ng dalawang bersyon ng mga datos na ito: ang orihinal, na may halaga ng longhitud sa range 0 hanggang 360, at ang bagong dataset, na may mga halagang longhitud noong range -180 hanggang 180.
Ang dataset ng bata sa loob ng bawat isaEDDGridAng Lon0360 dataset ay magiging isangEDDGridMulaErddap dataset na tumuturo sa orihinal na dataset. Ang bagong dataset'sdatasetIDang magiging pangalan ng orihinal na dataset kasama ang "\_Lon0360". Halimbawa,
<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>
Ilagay angEDDGridLon0360 dataset sa ibaba ang orihinal na dataset sadatasets.xml. Iniiwasan niyan ang ilang posibleng problema.
Sa ibang paraan, maaari mong palitan angEDDGridMula saErddap child dataset na may orihinal na dataset'sdatasets.xml. Pagkatapos, magkakaroon lamang ng isang bersiyon ng dataset: ang isa na may halaga ng longhitud sa loob ng 0 hanggang 360. Hindi namin ito pinapansin sapagkat may mga panahon na ang bawat bersiyon ng dataset ay mas kombinyente.
- Halimbawa, kung mag - aalok ka ng dalawang bersiyon ng dataset, isa na may longhitud 0 hanggang 360 at isa na may longhitud -180 hanggang 180:
- Maaari mong gamitin ang opsyonal [<Makukuha ViaWMS> Mali</accessible ViaWMS>] (Mga #accessibleviawm) na may 0 hanggang 360 dataset upang sapilitang sirain angWMSserbisyo para sa dataset na iyon. Pagkatapos, tanging ang -180 hanggang 180 bersiyon lamang ng dataset ang mararating sa pamamagitan ngWMS.
- May dalawang paraan upang panatilihin ang Lon0360 dataset up-to-date na may mga pagbabago sa saligang dataset:
- Kung ang child dataset ay isangEDDGridMula sa Erddap dataset na bumabanggit ng isangset ng datos sa parehong datosERDDAP™, ang Lon0360 dataset ay magsisikap na direktang magsuskripsiyon sa saligang dataset upang ito ay laging up-to-date. Ang tuwirang mga suskripsiyon ay hindi lumilikha ng mga email na humihiling sa iyo na patunayan ang bisa ng suskripsiyon ay dapat na gawin nang kusa.
- Kung hindi dataset ng bataEDDGridMula sa Erddap dataset na parehoERDDAP™, ang Lon0360 dataset ay magsisikap na gamitin ang regular na sistema ng suskripsiyon upang magsuskribe sa saligang dataset. Kung mayroon kang sistema ng suskripsiyon sa iyong pusoERDDAP™ang sabi pa, dapat kang kumuha ng mga email na humihiling sa iyo na patunayan ang suskrisyon. Mangyari pa.
- Kung mayroon kang sistema ng suskripsiyon sa iyong pusoERDDAP™off, ang Lon0360 dataset ay maaaring kung minsan ay may luma nang metadata hanggang sa muling maikarga ang Lon0360 dataset. Kaya kung ang sistema ng suskripsiyon ay patayin, dapat mong itakda ang [<Muling pagkarga [[Talaksan] (Mga #reload offenminute) Pagtatakda ng Lon0360 dataset sa mas maliit na bilang, kung kaya mas malamang na masalo nito ang mga pagbabago sa dataset ng bata sa mas madaling panahon.
EDDGridLon0360 kalansay 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>
EDDGridSide Side Side
EDDGridSide Side Side Naghihiwalay ng dalawa o higit paEDDGriddatos (ang mga bata) Isa - isa.
- Ang resultang dataset ay may lahat ng mga variables mula sa lahat ng mga child datasets.
- Ang magulang dataset at ang lahat ng mga child datasets MUST ay may pagkakaibadatasetIDs. Kung ang anumang pangalan sa isang pamilya ay parehong - pareho, ang dataset ay hindi magkakarga (sa maling mensahe na ang mga pamantayan ng aggregadong axis ay hindi inuuri) .
- Lahat ng bata ay may iisang pinagmumulan ng mga pamantayan para saaxisVariables\[1+\] (Halimbawa, latitud, longhitud) . Ang prekwensiya ng pagsubok ay tinitiyak ngmga palito sa posporo.
- Ang mga bata ay maaaring may iba't ibang pinagmumulang mga pamantayan para saaxisVariables\[0\] (halimbawa, panahon) , ngunit karaniwan nang pareho sila.
- Ang magulang na dataset ay lalabas na mayroon ng lahat ng impormasyonaxisVariables\[0\]ang pinagmumulan ng mga pamantayan mula sa lahat ng mga bata.
- Halimbawa, ito ay nagpapahintulot sa iyo na pagsamahin ang isang source dataset sa isang u-component ng vector at isa pang source dataset sa vector's v-component, kaya ang pinagsamang datos ay maaaring ihain.
- Ang mga batang nilalang sa ganitong paraan ay ginaganap nang sarilinan. Ang mga ito ay hindi hiwalay na makukuhang datos (Halimbawa, sa pamamagitan ng mga kahilingan sa data o ng kliyentemga talaksan ng bandila) .
- Ang global metadata at settings para sa magulang ay nagmula sa global metadata at settings para sa unang anak.
- Kung may eksepsiyon habang nililikha ang panganay na anak, hindi lilikhain ang magulang.
- Kung may eksepsiyon samantalang lumilikha ng ibang mga bata, ito'y nagpapadala ng email upang mag - email ng mga bagay - bagay (na itinakdasetup.xml) at nagpapatuloy sa iba pang mga bata.
EDDGridSide Byside kalansay 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>
EDDGridPagdidisiplina
EDDGridPagdidisiplina Naghihiwalay ng dalawa o higit paEDDGridang bawat isa na may iba't ibang halaga para sa unang dimensiyon, subalit magkatulad na mga halaga para sa iba pang dimensiyon.
- Halimbawa, ang isang dataset ng bata ay maaaring may 366 na halaga (para sa 2004) para sa sukat ng panahon at ang isa pang bata ay maaaring magkaroon ng 365 pamantayan (para sa 2005) para sa sukat ng panahon.
- Lahat ng mga pamantayan para sa lahat ng iba pang dimensiyon (Halimbawa, latitud, longhitud) TIYAK na magkatulad para sa lahat ng bata. Ang prekwensiya ng pagsubok ay tinitiyak ngmga palito sa posporo.
- Pinag - uriang Pamantayan - Ang mga pamantayan para sa bawat dimensiyong MUST ay maaaring uriin ayon sa pagkakasunud - sunod (Pag - akyat o pagbaba) . Ang mga halaga ay maaaring maging iregular ang layo. Walang mga ugnayan. Ito ay isang kahilingan saPamantayang CF metadata. Kung ang mga halaga ng anumang dimensiyon ay hindi ayon sa pagkakasunud - sunod, ang dataset ay hindi ididiskarga at ang dataset ay hindi ididiskargaERDDAP™ay matutukoy ang unang di-nababababang halaga sa log file, Malaking Direktoryo /log/log.txt .
Ang mga hindi natukoy na dimensiyonal na halaga ay halos palaging nagpapahiwatig ng problema sa source dataset. Ito ay pinaka karaniwang nangyayari kapag ang isang mali ang pangalan o hindi angkop na talaksan ay kabilang sa agregasyon, na humahantong sa isang hindi natukoy na dimensiyon ng oras. Upang malutas ang problemang ito, tingnan ang maling mensahe saERDDAP™log.txt file upang mahanap ang hindi magandang halaga ng oras. Pagkatapos ay tingnan ang pinagkunang mga file upang hanapin ang katumbas na talaksan (o isa bago o isa pa) na hindi kabilang sa agregasyon.
- Ang magulang na dataset at ang child dataset na MUST ay magkaibadatasetIDs. Kung ang anumang pangalan sa isang pamilya ay parehong - pareho, ang dataset ay hindi magkakarga (sa maling mensahe na ang mga pamantayan ng aggregadong axis ay hindi inuuri) .
- Sa kasalukuyan, ang child dataset MUST ay magiging isangEDDGridMula sa Dap dataset at MUST ay may pinakamababang halaga ng aggregated dimensiyon (karaniwang ang pinakamatandang pamantayan sa panahon) . Ang lahat ng iba pang mga bata na MUST ay halos magkaparehong datasets (Magkaiba lamang sa mga halaga para sa unang dimensiyon) at tinitiyak ng kanila lamangsourceUrl.
- Nakuha ng aggregate dataset ang metadata nito mula sa unang anak.
- AngMga GenerateDataset Xml programaay maaaring gumawa ng isang magaspang na pagkalap ngdatasets.xmlpara sa isangEDDGridAggregateExing Dimension batay sa isang set ng mga files na pinaglilingkuran ng isangHyraxo THEDDS server. Halimbawa, gamitin ang input na ito para sa programa (ang "/1988" sa URL ay gumagawa sa halimbawa na mas mabilis tumakbo) :
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
Magagamit mo ang resulta<sourceUrl> Mga tag o i-delete ang mga ito at i-uncommit ang mga<sourceUrl> tag (upang ang mga bagong file ay mapansin sa tuwing ang dataset ay muling ikarga.
EDDGridAggregateExisting Dimension kalansay 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>
EDDGridKopya
EDDGridKopya gumagawa at nag - iingat ng isang lokal na kopya ng isa pang kopyaEDDGrid'Ang datos at nagsisilbi ng datos mula sa lokal na kopya.
- EDDGridKopya (at para sa impormasyong taskular,Mapagkakatiwalaang Komponiya) ay napakadaling gamitin at napakabisa
ang ilan sa pinakamalaking problema sa pagbibigay ng impormasyon mula sa isang malayong pinagkukunan ng impormasyon:
- Maaaring maging mabagal ang pagkuha ng datos mula sa isang malayong pinagkukunan ng datos.
- Maaaring mabagal ito sapagkat ito ay likas na mabagal (Halimbawa, isang di - mabisang uri ng server) ,
- Sapagka't ito'y nadaraig ng maraming kahilingan,
- o dahil limitado ang iyong server o ang remote server.
- Ang remote dataset kung minsan ay hindi makukuha (muli, sa iba't ibang kadahilanan) .
- Ang pagtitiwala sa isang pinagmumulan ng impormasyon ay hindi sapat (Halimbawa, kapag maraming gumagamit at marami ang gumagamitERDDAPginagamit ito ng mga s) .
- Maaaring maging mabagal ang pagkuha ng datos mula sa isang malayong pinagkukunan ng datos.
- Kung Paano Ito Gumagana --EDDGridNilulutas ng kopya ang mga problemang ito sa pamamagitan ng kusang paggawa at pagpapanatili ng isang lokal na kopya ng impormasyon at pagsisilbi ng mga datos mula sa lokal na kopya.ERDDAP™ay magsisilbi ng impormasyon mula sa lokal na kopya nang napakabilis. At ang paggawa ng isang lokal na kopya ay nakababawas sa pasanin sa remote server. At ang lokal na kopya ay backup ng orihinal, na kapaki - pakinabang sakaling may mangyari sa orihinal.
Walang bago sa paggawa ng lokal na kopya ng isang dataset. Ang bago rito ay na ginagawa ito ng klaseng ito\*Madali\*upang lumikha at\*tagapangalaga\*isang lokal na kopya ng impormasyon mula sa isang\*pagkakasari - sari\*ng mga uri ng remote data source at\*idagdag ang metadata\*habang kinokopya ang impormasyon.
- Mga Patak ng Data --EDDGridGinagawa ng kopya ang lokal na kopya ng impormasyon sa pamamagitan ng paghiling ng mga tipak ng impormasyon mula sa malayo<dataset> . Magkakaroon ng tipak sa bawat halaga ng pinakakaliwa (una) Iba - iba ang axis.EDDGridAng kopya ay hindi umaasa sa remote dataset's index number para sa axis - maaaring magbago ang mga ito.
BABALA: Kung ang dami ng datos ay napakalaki (> 2GB) na ito'y nagdudulot ng mga problema,EDDGridHindi maaaring gamitin ang kopya. (Ikinalulungkot namin, kami'y umaasang magkakaroon ng lunas sa problemang ito sa hinaharap.)
- \[Isang mapagpipilianEDDGridKopya - Kung ang remote data ay available sa pamamagitan ng downloadable files, hindi web service, gamitincache Mula sa opsyon para saEDDGridMula sa mga Labi, na gumagawa sa isang lokal na kopya ng mga remote files at nagsisilbi sa data mula sa lokal na mga files.\]
- Local Files -- Ang bawat bahagi ng datos ay nakatago sa isang hiwalayNetCDFtalaksan sa isang subdirectory ng Malaking Direktoryo /copy/ datasetID / (na itinakdasetup.xml) . Ang mga talaksan na nilikha mula sa mga halaga ng axis ay binabago upang gawin itong file-name-ligtas (Halimbawa, ang mga hyphen ay pinapalitan ng "x2D".) - ito ay hindi nakakaapekto sa aktuwal na datos.
- Bagong Data -- Sa bawat pagkakataonEDDGridMuling kinakarga ang kopya, sinusuri nito ang liblib<dataset> upang makita kung anong mga tipak ang makukuha. Kung hindi pa umiiral ang talaksan para sa isang bahagi ng datos, isang kahilingan upang makuha ang daglat ay idinaragdag sa isang queue.ERDDAP'Thread processs lahat ng mgaqueued requests para sa mga tipak ng datos, one-by-one. Makikita mo ang mga estadistika para sa gawain ng taskThreadKatayuan Pahinaat saPang - araw - araw na Report. (Oo,ERDDAP™ay maaaring mag-atas ng maramihang gawain sa prosesong ito, ngunit ito ay gagamit ng maraming mga remote data source's bandwidth, memory, at CPU panahon, at maraming lokalERDDAP''s bandwidth, memory, at CPU time, alinman dito ay hindi magandang ideya.)
WALA: Sa unang pagkakataonEDDGridNakakarga ang kopya, (kung mabuti ang takbo ng lahat) maraming mga kahilingan para sa mga tipak ng datos ay idadagdag sa queue ng taskThread, ngunit walang mga lokal na data file ang malilikha. Kaya ang tagapagtayo ay mabibigo ngunit ang taskThread ay patuloy na magtatrabaho at lilikha ng mga lokal na file. Kung ang lahat ay magiging maayos, ang taskThread ay gagawa ng ilang lokal na data file at ang susunod na pagtatangka na muling ikarga ang dataset (sa ~15 minuto) ay magtatagumpay, subalit sa simula ay limitado lamang ang impormasyon.
TANE: Pagkatapos ng lokal na dataset ay may ilang datos at makikita sa inyong lugarERDDAP, kung ang remote dataset ay pansamantala o permanenteng hindi makukuha, ang lokal na dataset ay gagana pa rin.
BABALA: Kung malaki ang remote dataset at/o mabagal ang remote server (iyan ang problema, hindi ba?) , matagal bago makagawa ng isang kumpletong lokal na kopya. Sa ilang kaso, hindi magiging katanggap - tanggap ang panahong kailangan. Halimbawa, naghahatid ng 1 TB ng datos sa isang linya ng T1 (0.15 GB/s) ay gumugugol ng di - kukulangin sa 60 araw, sa ilalim ng pinakamabuting mga kalagayan. Bukod pa riyan, gumagamit ito ng maraming bandwidth, memory, at CPU na panahon sa liblib at lokal na mga computer. Ang solusyon ay magpadala ng hard drive sa administrador ng remote data set upang ang s/siya ay makagawa ng isang kopya ng dataset at ihulog ang hard drive pabalik sa iyo. Gamitin ang impormasyong iyon bilang pasimula at pasimulaEDDGridAng kopya ay magdadagdag ng datos dito. (Iyan ang isang paraan naPaglilingkod ng EC2 Cloud ng AmazonHarapin ang problema, kahit na ang kanilang sistema ay maraming bandwidth.)
BABALA: Kung bibigyan ng halaga ang kaliwa (una) Ang axis ay natatanggal sa remote dataset,EDDGridHINDI inaalis ng kopya ang lokal na talaksang kinopya. Kung nais mo, maaari mo itong alisin sa iyong sarili.
Grid Copy checkSource Data
Angdatasets.xmlpara sa dataset na ito ay maaaring magkaroon ng opsyonal na tag
<checkSourceData>true</checkSourceData>
Totoo ang default na halaga. Kung/kapag ito ay mali, ang dataset ay hindi kailanman titingnan ang source dataset upang malaman kung may karagdagang datos na makukuha.
Mula lamang noon
Masasabi moEDDGridKopya upang gumawa ng isang kopya ng isang subset ng source dataset, sa halip ng buong source dataset, sa pamamagitan ng pagdagdag ng isang tag sa anyo<Mula lamang noong> ilan Halaga </ Tanging mula> hanggang sa dataset'sdatasets.xmlLarawan.EDDGridAng pagkopya ay mag-download lamang ng mga halagang datos na may kaugnayan sa mga halaga ng unang dimensiyon (karaniwang sukat ng panahon) Na lalong dakila kay sa ilan Halaga . ilan Halaga ay maaaring:
-
Isang relatibong panahon ang itinakda sa pamamagitan ngnow- Mga Pag - aari . Halimbawa,<Mula lamang noong>now-2 Taon</ Tanging mula noong> ay nagsasabi sa dataset na gumawa lamang ng lokal na mga kopya ng impormasyon para sa impormasyon kung saan ang panlabas na mga halaga ng dimensiyon (karaniwang mga pamantayan sa panahon) sa loob ng 2 taon (na muli-evaluated sa tuwing ang dataset ay muling i-load, na kapag ito ay naghahanap ng bagong datos upang kopyahin) . Tingnan angnow- Mga Pag - aari Iba't ibang paglalarawan. Ito ay kapaki-pakinabang kung ang unang dimensiyon ay may time data, na karaniwang ginagawa nito.
EDDGridHindi inaalis ng kopya ang lokal na mga data file na may datos na, sa paglipas ng panahon, ay nagiging mas matanda kaysa sa paglipas ng panahonnow- Mga Pag - aari . Maaari mong alisin ang mga file na iyon anumang oras kung gugustuhin mo. Kung oo, mahigpit naming inirerekomenda na mag - set ka ng isangbandilapagkatapos mong alisin ang mga files upang sabihinEDDGridKopyahin upang i-update ang listahan ng mga talaksang may cached.
-
Isang takdang punto sa panahon ang tinukoy na string ng ISO 8601yyyy-MM-ddTHH:mm:ssZ. Halimbawa,<Mula lamang noong>2000-01-01T00:00:00Z</ Tanging mula noong> ay nagsasabi sa dataset na gumawa lamang ng mga lokal na kopya ng datos kung saan ang halaga ng unang dimensiyon ay \>=2000-01-01T00:00:00Z . Ito ay kapaki-pakinabang kung ang unang dimensiyon ay may time data, na karaniwang ginagawa nito.
-
Isang lumulutang na bilang. Halimbawa,<Tanging mula noong>946684800.0</ Tanging mula> . Ang mga yunit ang magiging patutunguhang yunit ng unang dimensiyon. Halimbawa, para sa sukat ng panahon, ang mga yunit saERDDAP™laging"seconds since 1970-01-01T00:00:00Z". Kaya 946684800.0"seconds since 1970-01-01T00:00:00Z"ay katumbas ng 2000-01-01T00:00:00Z. Ito ay laging kapaki-pakinabang na opsyon, ngunit lalo nang kapakipakinabang kapag ang unang dimensiyon ay walang time data.
EDDGridMuling Ginamit ang Kopya
- Gumawa ng<Kakaibang datos> ipinasok (katutubong uri, hindiEDDGridKopya) para sa malayong pinagkukunan ng datos. Kunin itong gumagana nang tama, pati na ang lahat ng ninanais na metadata.
- Kung ito ay masyadong mabagal, idagdag ang XML code upang balutin itoEDDGridKopyahin ang dataset.
- Gumamit ng ibang paraandatasetID (marahil sa pamamagitan ng pagbabago ngdatasetIDng matatandadatasetIDbahagya) .
- Tularan ang<Makukuha Sa>,<Muling magkarga sa Bawat NMinutes> at<onChange> mula sa malayoEDDGrid' XML to theEDDGridKopya ng XML. (Ang kanilang mga pamantayanEDDGridKopyahin ang materya; ang kanilang mga pagpapahalaga sa panloob na dataset ay nagiging walang kaugnayan.)
- ERDDAP™ang lokal na kopya ng impormasyon.
- BABALA:EDDGridIpinalalagay ng kopya na ang mga halaga ng data para sa bawat tipak ay hindi kailanman nagbabago. Kung/kapag ginawa nila ito, kailangan mong manu-manong i-display ang mga score files sa Malaking Direktoryo /copy/ datasetID / na nagbago atbandilaang dataset na muling ikarga upang mapalitan ang inalis na mga tipak. Kung mayroon kang subscription ng email sa dataset, makakakuha ka ng dalawang email: isa kapag ang dataset ay unang nag - reload at sinimulang kopyahin ang impormasyon, at ang isa naman kapag ang dataset ay muling nagkakarga (kusa) at nakikita ang bagong lokal na data files.
- Ang lahat ng pagpapahalaga sa axis ay dapat na pantay - pantay. Sa bawat palakol maliban sa pinakakaliwa (una) , lahat ng mga pamantayan ay dapat na pantay - pantay para sa lahat ng mga bata. Ang prekwensiya ng pagsubok ay tinitiyak ngmga palito sa posporo.
- Mga Pagtatakda, Metadata, Variables --EDDGridAng kopya ay gumagamit ng settings, metadata, at variables mula sa kulong source dataset.
- Palitan ang Metadata -- Kung kailangan mong magpalitaddAttributeso baguhin ang pagkakasunud-sunod ng mga variable na nauugnay sa source dataset:
- Palitan angaddAttributespara sa source datasetdatasets.xml, kung kinakailangan.
- Isalin ang isa sa mga kinopyang files.
- Magtakda ngbandilaupang muling maikarga kaagad ang dataset. Kung gagamitin mo ang isang bandila at mayroon kang isang email subscription sa dataset, kukuha ka ng dalawang email: isa kapag ang dataset ay unang nagkarga at sinimulang kopyahin ang impormasyon, at isa pa kapag ang dataset ay muling nakunan (kusa) at nakikita ang bagong lokal na data files.
- Ang tinanggal na talaksan ay muling pakikita ng bagong metadata. Kung ang source dataset ay hindi makuha, angEDDGridAng childpy dataset ay makakakuha ng metadata mula sa retailed file, dahil ito ang pinakabatang file.
EDDGridKopyang kalansay 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 Mula saCassandra
EDDTable Mula saCassandra hawakan ang datos mula sa isaCassandramesa. Ang Cassandra ay isang database ng NoSQL.
- ERDDAP™ay maaaring magtrabaho sa Cassandra v2 at v3 na walang pagbabago o pagkakaiba sa setup. Sinubok na natinCassandra v2 at v3 mula sa Apache. Malamang na gayon ngaERDDAP™ay maaari ring gumana sa Cassandra na download mula sa DataStax.
- Para kay Aug 2019 - Mayo 2021, nahirapan kaming dalhin si Cassandra upang magtrabaho kasama ni AppopenJdkJavav8. Ito ay naghagis ng EXCEPSION\_ACCESS\_VIOLATION). Subalit ngayon (Mayo 2021) , wala na ang problemang iyan: maaari nating matagumpay na gamitin ang Cassandra v2.1.22 at ang AmponJdk jdk8u292-b10.
Isang Talaan
Hindi sinusuportahan ni Cassandra ang mga "join" sa paraan ng pag-uugnay ng mga database. IsaERDDAP™EDDTable FromCassandra dataset mapas sa isa (Marahil isang subset ng isa) dulang Cassandra.
Cassandradatasets.xml
- ERDDAP™kasama ang CassandraJavadriver, kaya hindi mo na kailangang i-install ng hiwalay.
- Maingat na basahin ang lahat ng impormasyon ng dokumentong ito tungkol sa EDDTable FromCassandra. Ang ilan sa mga detalye ay napakahalaga.
- Ang CassandraJavaAng tsuper ay nilayon na magtrabaho sa Apache Cassandra (1.2+) at ang DataStax Enterprise (3.1+) . Kung ikaw ay gumagamit ng Apache Cassandra 1.2.x, dapat mong baguhin ang talaksang cassandra.yaml para sa bawat node na mag-set ng start\_native\_transport: totoo, pagkatapos ay mag-restart bawat node.
- Mahigpit naming inirerekomenda ang paggamit ngMga GenerateDataset Xml programaupang gumawa ng isang magaspang na burador ngdatasets.xmlPara sa dataset na ito. Pagkatapos ay maaari mo itong i - edit na mabuti (lalo na [<partisyon KeySourceNames>] (#partitionkeysourcenames) ). Maaari mong tipunin ang karamihan sa impormasyong kailangan mo upang likhain ang XML para sa isang EDDTable FromCassandra dataset sa pamamagitan ng pakikipag-ugnayan sa administrador ng Cassandra at sa pamamagitan ng paghahanap sa web.
Mga GenerateDataset Ang Xml ay may dalawang espesyal na opsyon para sa EDDTable FromCassandra:
- Kung ikaw ay papasok "!!!". (nang walang mga sinipi) para sa keyspace, ang programa ay magpapakita ng listahan ng mga keyspace
- Kung papasok ka sa isang espesipikong keyspace at pagkatapos ay pumasok "!!!!!"! (nang walang mga sinipi) para sa tablename, ang programa ay magpapakita ng isang talaan ng mga tala sa keyspace na iyon at sa kanilang mga haligi.
Pagiging sensitibo sa Kaso
- Case-insensitive Keyspace at Table Names - Pinakikitunguhan ni Cassandra ang keyspace at mga pangalan ng mesa sa paraang case-insensitive. Dahil dito, hindi kayo kailanman gumamit ng panreserbang salita (ngunit sa ibang kaso) bilang isang Cassandra keyspace o pangalan ng mesa.
- Mga Pangalang Case-insensitive Column -- Sa pamamagitan ng default, pinakikitunguhan ni Cassandra ang mga pangalan ng kolum sa paraang case-insensitive. Kung gagamitin mo ang isa sa mga panreserbang salita ni Cassandra bilang pangalan ng kolum (pakisuyong huwag!) , ikaw UST gamitin
<columnNameQuotes>"<columnNameQuotes>
sa loobdatasets.xmlpara sa dataset na ito kaya't sina Cassandra at CassandraERDDAP™ang mga pangalan ng kolum sa paraang case-sensitive. Malamang na ito ay magiging isang malaking sakit ng ulo para sa iyo, dahil mahirap malaman ang mga case-sensitive na bersyon ng mga pangalan ng kolum-Si Cassandra ay halos palaging nagtatanghal ng mga pangalan ng kolum bilang lahat ng mga mas mababang-case, anuman ang tunay na kaso.
- Makipagtulungan sa administrador ng Cassandra, na maaaring may mahalagang karanasan. Kung hindi maikarga ang dataset, basahin angerror sa mensaheupang malaman kung bakit.
Cassandra<koneksyon Pag - aari
Ang Cassandra ay may mga katangiang koneksyon na maaaring tiyakin sadatasets.xml. Marami sa mga ito ay makaaapekto sa pagganap ng Cassandra-ERDDAP™koneksiyon. Sa kasamaang palad, ang mga katangian ni Cassandra ay dapat na ilagay sa programaJava, kayaERDDAP™ay kailangang may kodigo para sa bawat ari - arianERDDAP™ay umaalalay. Sa kasalukuyan,ERDDAP™ay umaalalay sa mga katangiang ito: (Ipinakikita ng mga default ang nakikita natin. Maaaring iba ang mga default ng iyong sistema.)
- Pangkalahatang Options
<koneksyon Pangalan=" Pag - aayos "> wala ni isa|LZ4|Pagkabigla </ Pag - uugnay Mga ari - arian> (case-insensitive, default=ne)
(Pangkalahatang payong compression: gamitin ang 'none' kung ang koneksyon sa pagitan ng Cassandra at ngERDDAP™ay lokal/fast at gamitin 'LZ4' kung ang koneksyon ay malayong/mabagal.)
<koneksyon Pangalan=" kredensiyal "> username/pasword </ Pag - uugnay Mga ari - arian> (literal'/')
<koneksyon Pangalan=" metriko "> totoo|bulaan </ Pag - uugnay Mga ari - arian> (2021-01-25 ay default=tunay, ngayon ay hindi pinapansin at laging mali)
<koneksyon Pangalan=" daungan "> Tagapag - alaga </ Pag - uugnay Mga ari - arian> (default para sa katutubong binary protocol=9042)
<koneksyon Pangalan=" ssl "> totoo|bulaan </ Pag - uugnay Mga ari - arian> (default=bulaan)
(Nabigo ang aking mabilis na pagsisikap na gumamit ng ssl. Kung magtagumpay ka, pakisuyong sabihin mo sa akin kung paano mo ginawa ito.) - Mga Mapagpipilian sa Pagtatanong
<koneksyon Pangalan=" Hindi nagbabago Kataasan "> lahat|kahit sino|bawat\_quorum|lokal na\_isa|lokal na\_quorum|lokal na\_serial|isa|quorum|serye|tatlo|dalawa </ Pag - uugnay Mga ari - arian> (case-insensitive, default=ON)
<koneksyon Pangalan=" Halaga "> Tagapag - alaga </ Pag - uugnay Mga ari - arian> (default=5000)
(Huwag magtakda ng bolyum sa mas maliit na halaga.)
<koneksyon Pangalan=" serialConsistencyLevel "> lahat|kahit sino|bawat\_quorum|lokal na\_isa|lokal na\_quorum|lokal na\_serial|isa|quorum|serye|tatlo|dalawa </ Pag - uugnay Mga ari - arian> (case-insensitive, default=SERIAL) - Mga Mapagpipiliangbili
<koneksyon Pangalan=" Pag - uugnay ng PanahonoutMillis "> Tagapag - alaga </ Pag - uugnay Mga ari - arian> (default=5000)
(Huwag magtakda ng koneksyon TimeoutMillis sa mas maliit na halaga.)
<koneksyon Pangalan=" Pag - iingat "> totoo|bulaan </ Pag - uugnay Mga ari - arian> <koneksyon Pangalan=" magbasa ngTimoutMillis "> Tagapag - alaga </ Pag - uugnay Mga ari - arian> (Ang default na pagbasa ni Cassandra na ThismeoutMillis ay 12000, ngunitERDDAP™palitan ang default sa 120000. Kung si Cassandra ay naghahagis ng mga readingTimeouts, ang pagdaragdag nito ay maaaring hindi makatulong, dahil minsan ay inihahagis sila ni Cassandra bago ang panahong ito. Ang problema ay malamang na ikaw ay nag - iimbak ng napakaraming impormasyon sa bawat partisyon Pangunahing kombinasyon.)
<koneksyon Pangalan=" tumatanggap ng "BufferSize " "> Tagapag - alaga </ Pag - uugnay Mga ari - arian> (Hindi malinaw kung ano ang default na requiberSize. Huwag itong gawing maliit na halaga.)
<koneksyon Pangalan=" soLinger "> Tagapag - alaga </ Pag - uugnay Mga ari - arian> <koneksyon Pangalan=" Pag - aalis ng TecpNo "> totoo|bulaan </ Pag - uugnay Mga ari - arian> (default=null)
Kung kailangan mong magtakda ng iba pang mga katangiang nauugnay rito, tingnan ang ating mga katangiansa pagkuha ng karagdagang suporta.
Para sa isang ibinigay na simulap ng Tomcat, ang koneksyong Properties ay ginagamit lamang sa unang pagkakataon na ang isang dataset ay nilikha para sa isang ibinigay na Cassandra URL. Ang lahat ng mga reload ng dataset na iyon at lahat ng kasunod na datasets na nagbabahagi ng parehong URL ay gagamit ng orihinal na mga connectionProperties.
CQL
Ang Wikang Cassandra Query (CQL) ay mababaw na katulad ng SQL, ang wikang query na ginagamit ng mga tradisyonal na database. SapagkatOPeNDAPAng mga kahilingan ng taskular data ay dinisenyo upang gayahin ang mga kahilingan ng SQL tabular data, ito ay posible para saERDDAP™upang gawing CQL Round/PreparatedStatements ang mga tipular data requests.ERDDAP™nasa loob ng pangungusaplog.txtgaya ng
bilang teksto: Ang "Statement ASText "
Ang bersiyon ng pangungusap na nakikita mo ay magiging isang representasyon ng teksto ng pangungusap at magkakaroon lamang ng "?" kung saan ilalagay ang mga ipinagbabawal na halaga.
Hindi gaanong simple -- Sa kasamaang palad, ang CQL ay maraming pagbabawal kung saan ang mga haligi ay maaaring tanungin kung aling uri ng mga pagbabawal, halimbawa, ang partikulong mga pangunahing haligi ay maaaring ipagbawal ng = at IN, sa gayon,ERDDAP™ay nagpapadala ng ilang mga restriksiyon kay Cassandra at ilalapat ang lahat ng mga limitasyon matapos matanggap ang datos mula kay Cassandra. Upang makatulongERDDAP™tungkol kay Cassandra, kailangan mong magtakda [<partisyon KeySourceNames>] (#partitionkeysourcenames) , [<clusterColumnSourceNames>] (#clustercolumnsourcenames) , at [<indexColumnSourceNames>] (#indexcolumnsourcenames) sa loobdatasets.xmlpara sa dataset na ito. Ito ang pinakamahalagang mga paraan upang makatulongERDDAP™Magaling sa paggawa kasama ni Cassandra. Kung hindi mo sasabihinERDDAP™ang impormasyong ito, ang dataset ay lubhang babagalERDDAP™at gumamit ng tone - toneladang yamang Cassandra.
<partisyon KeySourceNames gt;
Dahil ang partikulong key ay gumaganap ng sentral na papel sa mga mesa ni Cassandra,ERDDAP™kailangang malaman ang kanilangsourceNames at, kung may kaugnayan dito, iba pang impormasyon tungkol sa kung paano gagawang kasama nila.
- Itinakda mo sa MUST ang isang comma-weadd na listahan ng partition key source column na mga pangalan sadatasets.xmlgagamitin<partisyon KeySourceNames>. Simpleng halimbawa,
<partitionKeySourceNames>station, deviceid<partitionKeySourceNames>
Mas masalimuot na halimbawa,
<partitionKeySourceNames>deviceid=1007, date/sampletime/1970-01-01<partitionKeySourceNames>
- Mga Susi sa Pagpupulong -- Kung ang isa sa partisyonal na pangunahing haligi ay isang tudling sa timestamp na may mas magaspang na bersiyon ng isa pang tudling sa timestamp, tiyakin ito sa pamamagitan ng
partisyonKeySourcName/ibangColumnSourceName/time\_precision
kung saantime\_precisionay isa satime\_precisionmga kuwerdas na ginagamit sa ibang lugarERDDAP. Ang landas na Z satime\_precisionAng string ay ang default, kaya hindi mahalaga kung angtime\_precisionAng string ay nagtatapos sa Z o hindi. Halimbawa,ERDDAP™ay magbibigay ng kahulugan sa petsa/sampletime/1970-01-01 bilang " Ang mga pag - aayos para sa petsa ay maaaring gawin mula sa mga pagbabawal sa panahon ng sampol sa pamamagitan ng paggamit nitotime\_precision." Ang aktuwal na pagbabago ng mga pagbabawal ay mas masalimuot, subalit iyan ang sumaryo. Gamitin ito kailanma't ito ay may kaugnayan. Ito ang nagpapangyariERDDAP™sa mahusay na paggawa kasama ni Cassandra. Kung ang relasyong ito sa pagitan ng mga haligi ay umiiral sa isang dulang Cassandra at hindi mo sinasabiERDDAP™, ang dataset ay lubhang babagalERDDAP™at gumamit ng tone - toneladang yamang Cassandra. - Walang Asawa Mahalagang mga Susi -- Kung nais mo ng isangERDDAP™datos na gagamitin sa trabaho na may isang halaga lamang ng isang partikulong susi, espisipiko partisyonKeySourceName=halaga . Huwag gumamit ng mga sinipi para sa isang hanay ng numero, halimbawa, deviceid=1007 Gumamit ng mga sinipi para sa isang String column, halimbawa, stationid= "Point Pinos".
- Talaan ng mga Nilalaman Ang pagkakasunud - sunod ng partisyon<dataVariable> nasadatasets.xmlAlamin ang default na order ng mga resulta mula kay Cassandra. Mangyari pa, ang mga gumagamit ay maaaring humiling ng ibang uri ng order para sa isang ibinigay na set ng mga resulta sa pamamagitan ng pag - aapending &orderBy (" Kasama-hating listahan ng mga variables ") hanggang sa dulo ng kanilang tanong.
- Sa pamamagitan ng default, Cassandra atERDDAP™ang mga pangalan ng kolum sa paraang case-insensitive. Subalit kung ikaw ay magtatakdahaliging NanameQuotes",ERDDAP™ay gagamutin ang Cassandra column ng mga pangalan ng isang sa kaso-sensitive na paraan.
<partisyon Susi;
Kung ito ay espesipikong,ERDDAP™gagamitin ito sa halip na hilingin kay Cassandra ang partisyon Pangunahing impormasyon sa tuwing muling ididiskarga ang dataset. Ito ay nagbibigay ng talaan ng magkakaibang partikulong mga pangunahing halaga, ayon sa pagkakasunud-sunod na gagamitin ang mga ito. Ang mga panahon ay dapat espesipikong bilang segundo simula 1970-01-01T00:00:00Z. Subalit mayroon ding dalawang pantanging mapagpipiliang paraan upang tiyakin ang mga panahon (ang bawat nakaposisyon bilang isang string) :
- panahon (ISO8601 Panahon) (Maaaring i-install bilang string)
- "Mga panahon (Ang ANISO8601StartTime, stepsconds, topTime) " (TANGGAPIN bilang tali)
hihinto Ang panahon ay maaaring maging isang ISO8601 Panahon o Isang "now-"Units" na panahon (e.g., "now-3minutos") . hihinto Ang panahon ay hindi kailangang maging eksaktong tugma ng simula Oras + x quickSconds. Isang hanay na may mga panahon () Ang halaga ay lumalawak sa maraming hanay bago ang bawat query, kaya ang talaan ng partisyon Ang mga susi ay maaaring palaging perpektong up-to-date. Halimbawa,
<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>
ay lumalawak sa mesang ito ng partisyong mga pangunahing kombinasyon:
deviceid,date
1001,1.4148E9
1001,1.4148864E9
1007,1.4153184E9
1008,1.4154048E9
1009,1.4154912E9
<clusterColumnSourNames gt;
Tinatanggap ng Cassandra ang mga SQL-tulad ng mga strip sa mga kumpol na haligi, na siyang mga haligi na bumubuo sa ikalawang bahagi ng primary key (pagkatapos ng partisyon (s) ) . Kaya, mahalaga na makilala mo ang mga haliging ito sa pamamagitan ng<clusterColumnSourceNames>. Ito ang nagpapangyariERDDAP™sa mahusay na paggawa kasama ni Cassandra. Kung may kumpol na mga haligi at hindi mo sinasabiERDDAP, ang dataset ay lubhang babagalERDDAP™at gumamit ng tone - toneladang yamang Cassandra.
- Halimbawa,<ClusterColumnSourceNames> Ang akingClusterColumn1, ang akingClusterColumn2 </clusterColumnSourceNames>
- Kung ang isang mesa ng Cassandra ay walang kumpol na mga haligi, alinman sa hindi espisipiko<clusterColumnSourceNames>, o magtakda nito nang walang halaga.
- Sa pamamagitan ng default, Cassandra atERDDAP™ang mga pangalan ng kolum sa paraang case-insensitive. Subalit kung ikaw ay magtatakdahaliging NanameQuotes",ERDDAP™ang mga pangalan ng Cassandra column sa paraang case-sensitive.
<indexColumnSourNames gt;
Tinatanggap ni Cassandra'='Ang mga limitasyon sa mga tudling ng second index, na siyang mga tudling na malinaw na ginawa mo para sa mga indise
CREATE INDEX *indexName* ON *keyspace.tableName* (*columnName*);
(Oo, kailangan ang mga panaklong.)
Kaya, lubhang kapaki - pakinabang kung makikilala mo ang mga haliging ito sa pamamagitan ng<indexColumnSourceNames>. Ito ang nagpapangyariERDDAP™sa mahusay na paggawa kasama ni Cassandra. Kung may mga index column at hindi mo sinasabiERDDAP, ang ilang mga katanungan ay magiging hindi kinakailangan, lubhang mabagalERDDAP™at gumamit ng tone - toneladang yamang Cassandra.
- Halimbawa,<indexColumnSourceNames> ang aking IndexColumn1, ang aking IndexColumn2 </indexColumnSourceNames>
- Kung ang isang mesa ng Cassandra ay walang mga hanay ng indise, alinman sa hindi espisipiko<indexColumnSourceNames>, o magtakda nito nang walang halaga.
- BABALA: Ang mga indise ng Cassandra ay hindi tulad ng mga index ng database. Nakatutulong lamang ang mga indise ng Cassandra'='Mga pagbabawal. At sila'y tangingmungkahipara sa mga tudling na may mas kaunting natatanging mga halaga kaysa kabuuang mga halaga.
- Sa pamamagitan ng default, Cassandra atERDDAP™ang mga pangalan ng kolum sa paraang case-insensitive. Subalit kung ikaw ay magtatakdahaliging NanameQuotes",ERDDAP™ang mga pangalan ng Cassandra column sa paraang case-sensitive.
<maxRequestFractiongt;
KailanERDDAP™ (muli) ng isang dataset,ERDDAP™mula sa Cassandra ang talaan ng iba't ibang kombinasyon ng partisyong mga susi. Para sa malaking dataset, ang bilang ng mga kombinasyon ay magiging napakalaki. Kung nais mong hadlangan ang mga gumagamit na humiling ng karamihan o lahat ng dataset (o kahit na ang isang kahilingan na humihilingERDDAP™upang makuha ang karamihan o lahat ng impormasyon upang higit pang masala ito) , masasabi moERDDAP™upang pahintulutan lamang ang mga kahilingan na bawasan ang bilang ng mga kombinasyon sa pamamagitan ng ilang dami<maxRequestFraction>, na isang lumulutang na point number sa pagitan ng 1e-10 (na nangangahulugang hindi kakailanganin ng kahilingan ang mahigit sa 1 kombinasyon sa isang bilyon) at 1 (ang default, na nangangahulugang ang kahilingan ay maaaring para sa buong dataset) . Halimbawa, kung ang isang dataset ay may 10000 magkakaibang kombinasyon ng partikulong mga susi at ang maxRequestFraction ay itinakda sa 0.1, kung gayon ang mga kahilingan na nangangailangan ng impormasyon mula sa 1001 o higit pang kombinasyon ay lilikha ng maling mensahe, ngunit ang mga kahilingan na nangangailangan ng datos mula 1000 o mas kaunting mga kombinasyon ay pahihintulutan.
Sa pangkalahatan, mientras mas malaki ang dataset, mas mababa ang dapat mong itakda<maxRequestFraction>. Kaya maaari mo itong ilagay sa 1 para sa isang maliit na dataset, 0.1 para sa isang medium-sized dataset, 0.01 para sa isang malaking dataset, at 0.0001 para sa isang malaking dataset.
Ang pamamaraang ito ay hindi sakdal. Ito ay hahantong sa ilang mga makatuwirang kahilingan na tanggihan at ang ilang mga masyadong-big na kahilingan ay pinapayagan. Subalit ito ay isang mahirap na problema at ang lunas na ito ay mas mabuti kaysa wala.
CassandrasubsetVariables
Tulad ng iba pang EDDTable datasets, maaari mong tiyakin ang isang comma-weaded na listahan ng mga datos<dataVariable>destinationNamesa isang pangglobong katangian na tinatawag na "subsetVariables" upang makilala ang mga pagkakaiba - iba na may limitadong bilang ng mga pamantayan. Ang dataset pagkatapos ay magkakaroon ng .subset web page at ipakita ang mga listahan ng mga natatanging halaga para sa mga variable na iyon sa mga drop-down list sa maraming web page.
Kasama ang mga partikulong key variable at static column sa listahan ay SSTROGLYNCOMAHIRAP. Ang Cassandra ay makakalikha ng talaan ng mga magkakaibang kombinasyon na napakabilis at madali sa bawat pagkakataon na muling maikarga ang dataset. Ang isang eksepsiyon ay ang timestamp partition keys na magaspang na bersyon ng ilang iba pang selum ng timestamp -- malamang na pinakamabuting iwan ang mga ito sa listahan ng mgasubsetVariablesyamang maraming pamantayan at ang mga ito ay hindi gaanong kapaki - pakinabang sa mga gumagamit.
Kung isasama mo ang non-partition key, non-static variables sa talaan, ito ay malamang na maging ang mismong Tinatayang mahal para kay Cassandra sa bawat pagkakataon na ang dataset ay muling maikarga, sapagkat ang dataset ay muling ikarga,ERDDAP™ay kailangang tumingin sa bawat hanay ng dataset upang lumikha ng impormasyon. Sa katunayan, malamang na mabigo ang pagtatanong. Kaya, maliban sa napakaliit na datasets, ito ay SSTROGLY DISCOURAGED.
Cassandra DataTypes
Sapagkat may ilang malabong bagay tungkol ditoMga uri ng datos na Cassandramapa kung saanERDDAP™mga uri ng datos, kailangan mong magtakda ng isang [<dataType>] (#datatype) tag para sa bawat [<dataVariable>] (Nakatatawa) upang magsumbongERDDAP™na gagamitin ng dataType. Ang pamantayanERDDAP™datos Mga Uri (at ang pinakakaraniwang katumbas na uri ng datos na Cassandra) ay:
- Ekstasi (Ekstasi) , naERDDAP™pagkatapos ay mag - imbak bilang mga byte
- byte (int, kung ang range ay -128 hanggang 127)
- maikli (int, kung ang range ay -32768 hanggang 32767)
- int (int, counter?, varint?, kung ang range ay -21474833648 hanggang 2147483647)
- mahaba (Bigint, counter?, varint?, kung ang range ay -9223372036854775808 hanggang 92233720368547807)
- Palutang (Palutang)
- doble (Dalawang beses, titik (may posibleng pagkawala ng prekwensiya) , periodstamp)
- char (accii o teksto, kung wala silang higit sa 1 karakter)
- Pagpiga (ascii, teksto, varchar, inet, uuid, timeuid, blob, mapa, set, listahan?)
Ang kay Cassandrapaatrasay isang pantanging kaso: paggamitERDDAP'dobleng datos Uri.
Kung itatakda mo ang isang String dataTypeERDDAP™para sa isang mapa ng Cassandra, set o talaan, ang mapa, set o talaan sa bawat hanay ng Cassandra ay babaguhin sa isang solong string sa isang solong hanay sa loob ng hanayERDDAP™mesa.ERDDAP™ay may alternatibong sistema para sa mga talaan; tingnan ang ibaba.
uri Talaan --ERDDAP[ Mga]<dataType>] (#datatype) tag para sa CassandradataVariablemaaaring isama ang regularERDDAP™datos Mga Uri (Tingnan ang nasa itaas) Pati na rin ang ilang mga espesyal na dataType na maaaring gamitin para sa Cassandra list column: booleanList, byteList, ubyteList, shortList, umiklingList, intList, uintList, longList, ulongList, boatList, doubleList, charList, StringList. Kapag ang isa sa mga hanay ng talaang ito ay nasa mga resultang ipinapasaERDDAP™, ang bawat hanay ng source data ay lalawak upang itala. laki () mga hanay ng datos saERDDAP; simpleng datos Mga Uri (Halimbawa, int) sa source data row na iyon ay tutularan. laki () kung minsan. Kung ang mga resulta ay naglalaman ng higit sa isang talaan na variable, ang lahat ng mga talaan sa isang ibinigay na hanay ng datos na MUST ay may parehong sukat at ang MUST ay "parallel" na talaan, oERDDAP™ay lilikha ng maling mensahe. Halimbawa, para sa kasalukuyang sukat mula sa ADCP, lalim\[0\], uCurrent\[0\], vCurrent\[0\], at zCurrent\[0\]lahat ay magkakaugnay, at lalim\[1\], uCurrent\[1\], vCurrent\[1\], at zCurrent\[1\]ay pawang magkaugnay, ... Pero kung ayaw moERDDAP™upang palawakin ang listahan sa maramihang hanay saERDDAP™mesa, Espesipikong Pagpiga Bilang angdataVariable' Type kaya ang buong talaan ay ikatawan bilang isang String sa isang hanay saERDDAP.
Cassandra Timestamp Data
Ang time zones ay laging may kamalayan sa time zones. Kung papasok ka sa timestamp data nang hindi tinitiyak ang timezone, ipinapalagay ni Cassandra na ang timestamp ay gumagamit ng lokal na sona ng oras.
ERDDAP™ay umaalalay sa impormasyon at laging inihaharap ang impormasyon saZulu/GMT sona ng oras. Kaya kapag pumasok ka sa timestamp data sa Cassandra gamit ang time zone maliban sa time zoneZulu/GMT, tandaan na kailangan mong gawin ang lahat ng mga queries para sa timestamp data saERDDAP™paggamit ngZulu/GMT sona ng oras. Kaya huwag kang magtaka kung ang mga pamantayan na nagbabago ay lumabas sa mga pamantayanERDDAPay inililipat ng ilang oras dahil sa paglipat ng sona ng oras mula sa isang lugar tungo saZulu/GMT na panahon.
- Sa loobERDDAP'datasets.xml, sa loob<dataVariable> tag para sa timestamp variable, set
<dataType>double</dataType>
at saka<addAttributes> set
<att name="units">seconds since 1970-01-01T00:00:00Z</att>
- Mungkahi: Kung ang data ay isang time range, kapaki-pakinabang na ang mga timestamp na halaga ay tumutukoy sa sentro ng ipinahiwatig na time range (Halimbawa, tanghali) . Halimbawa, kung ang isang gumagamit ay may datos para sa 2010-03-26T13:00Z mula sa ibang dataset at nais nila ang pinakamalapit na datos mula sa Cassandra dataset na ito na may datos para sa bawat araw, pagkatapos ay ang datos para sa 2010-03-26T12:00Z (Kinakatawan ang datos ng Cassandra para sa petsang iyon) ay maliwanag na siyang pinakamabuti (kabaligtaran ng hatinggabi bago o pagkatapos nito, kung saan hindi gaanong halata kung alin ang pinakamabuti) .
- ERDDAP™may gamit saPagkumberte sa Isang Numerikano Panahon na Upang/mula sa Pabagu - bagong Panahon.
- TingnanPaanoERDDAP™Pakikitungo sa Panahon.
Mga Bulwagang Integer
Sinusuportahan ni Cassandra ang mga null sa Cassandra int (ERDDAP™int) at malaking bituka (ERDDAP™mahaba) mga haligi, ngunitERDDAP™ay hindi sumusuporta sa tunay na mga null para sa anumang uring integer data. Sa pamamagitan ng default, ang Cassandra integer nulls ay babaguhinERDDAP™tungo sa 2147483647 para sa int alum, o 9223372036854775807 para sa mahahabang haligi. Ang mga ito ay lilitaw bilang "NaN" sa ilang mga uri ng mga talaksang output ng teksto (Halimbawa, .csv) , "" sa ibang uri ng mga talaksang output ng teksto (Halimbawa,.htmlTable) , at ang espesipikong numero (21474833647 para sa nawawalang institusyon) sa ibang uri ng files (halimbawa, mga talaksang binary tulad ng.ncat banig) . Ang isang user ay maaaring maghanap ng mga hanay ng datos na may ganitong uri ng nawawalang halaga sa pamamagitan ng pagtukoy sa "NaN", e.g, "BicwinSpeed=NaN".
Kung gumagamit ka ng iba pang integer na halaga upang ipahiwatig ang nawawalang mga halaga sa iyong mesa sa Cassandra, pakisuyong kilalanin ang halaga nitodatasets.xml:
<att name="missing\_value" type="int"\>-999</att>
Para kay Cassandra lumulutang na mga haliging point, ang mga null ay nakukumberte sa mga NaN saERDDAP. Para sa mga uri ng datos na Cassandra na ginagawang mga String saERDDAP™, ang mga null ay nakukumberte sa walang laman na Strings. Hindi iyan dapat maging problema.
"Warning: Re-preparang naihanda nang query".
- "WARNING: Muling-handa na ang query" sa tomcat /logs/catalina.out (o iba pang talaksang log na Tomcat)
Ang dokumentasyon ng Cassandra ay nagsasabi na may problema kung ang parehong query ay ginagawang isang RehandaStatement nang dalawang beses (o higit pa) . (Tingnan itoulat ng bug.) Upang maiwasang magalit si Cassandra,ERDDAP™Lahat ng mga cache ay nakahandang mga estatement upang magamit muli ito. Ang cache na iyon ay nawawala kung/kapag Tomcat/ERDDAP™ay muling naka-arte, ngunit sa tingin ko ay okay dahil sa ang mga Handang Sestatement ay nauugnay sa isang ibinigay na sesyon (sa pagitanJavaat si Cassandra) , na nawala rin. Kaya, maaaring makita mo ang mga mensaheng ito. Wala na akong alam na ibang solusyon. Mabuti na lamang, ito ay isang babala, hindi isang pagkakamali (Bagaman nagbabanta si Cassandra na maaari itong humantong sa mga problema sa pagsasagawa) .
Sinasabi ni Cassandra na ang mga Separatement ay mabuti magpakailanman, kayaERDDAP'Hindi dapat maging out-of-date/invalid ang mga cached Resetment. Kung hindi totoo iyan, at nagkakamali ka tungkol sa ilang inihandang mga estatement ay out-of-date/invalid, kung gayon kailangan mong mag-restartERDDAP™hanggang sa malinawERDDAP'Ang cache of RehandaStatements.
Seguridad ng Cassandra
TingnanPag - aayos ng Cassandra
Kapag gumagawang kasama ni Cassandra, kailangan mong gawin ang mga bagay nang ligtas at matatag hangga't maaari upang maiwasan ang pagpapahintulot sa isang may malisyang tagagamit na sirain ang iyong Cassandra o makakuha ng access sa datos na hindi nila dapat makuha.ERDDAP™sikaping gawin ang mga bagay - bagay sa isang tiwasay na paraan.
- Hinihimok ka namin na magtatagERDDAP™upang makipag-ugnayan sa Cassandra bilang isang tagagamit ng Cassandra na tanging may access lamang sa Mahalaga mesa (s) at tanging ang may mga pribilehiyo lamang sa pagbasa.
- Hinihimok ka namin na gumawa ng koneksiyon mula saERDDAP™papuntang Cassandra kung kaya't ito'y naging
- Laging gumamit ng SSL,
- ay nagpapahintulot lamang ng mga koneksiyon mula sa isang direksiyon ng IP (o isang bloke ng mga direksiyon) at mula sa isaERDDAP™gumamit, at gumamit
- lamang ang paglilipat ng mga password sa kanilang anyong MD5 hashed.
- \[KILALANG PROBLEMA\]Ang mga Hula Tungkol sa Kaugnayan (kasama ang password!) ay iniimbak bilang simpleng tekstodatasets.xml. Wala pa kaming makitang paraan para makapasok ang administrador sa password ng CassandraERDDAP'Umula sa Tomcat (na nangyayari nang walang gumagamit na input) , kaya ang password ay dapat na makuha sa isang file. Upang gawin itong mas ligtas:
- Ikaw (angERDDAP™Tagapangasiwa) dapat na may - aridatasets.xmlat nakapagbasa at nakapagsaayos ng access.
- Gumawa ng isang grupo na kinabibilangan lamang ng user=tomcat. Gumamit ng chgrp upang gawin ang grupo para sadatasets.xml, na may mga pribilehiyo lamang sa pagbasa.
- Gumamit ng chmod upang mag-atas ng mga pribilehiyong o-rwx (walang basa o advance para sa "ibang" tagagamit) para sadatasets.xml.
- Kapag nasaERDDAP™, ang password at iba pang mga katangian ng koneksyon ay iniimbak sa "private"JavaIba't iba.
- Ang mga kahilingan mula sa mga kliyente ay inilalagay at sinusuri kung totoo ito bago gawin ang mga kahilingan ng CQL para kay Cassandra.
- Ang mga kahilingan kay Cassandra ay ginagawa gamit ang CQL Retard/PreparatedStatements, upang maiwasan ang pag-iniksiyon ng CQL. Sa anumang kaso, ang Cassandra ay likas na hindi gaanong madaling mabakunahan ng CQL kung ihahambing sa tradisyonal na mga databasePag - iiniksiyon ng SQL.
Bilis ng Cassandra
Ang Cassandra ay maaaring maging mabilis o mabagal. May ilang bagay na magagawa ka upang mapabilis ito:
- Sa Heneral - Ang katangian ng CQL ay na ang mga queries aydeclarative. Itinakda lamang nila kung ano ang gusto ng gumagamit. Hindi kasama sa mga ito ang isang detalye o mga pahiwatig kung paano dapat pangasiwaan o gawin ang query. Kaya walang lunasERDDAP™upang malikha ang query sa paraan na ito'y tumutulong kay Cassandra na gawing optimente ang query (o sa anumang paraan ay sabihin kung paano dapat hawakan ang pila) . Sa pangkalahatan, nasa administrador ng Cassandra ang pagtatatag ng mga bagay - bagay (Halimbawa, mga indise) upang maging kapaki - pakinabang para sa ilang uri ng mga tanong.
- Paglalarawan sa mga timestamp column na nauugnay sa mas magaspang na-precision timestamp partition keys sa pamamagitan [<partisyon KeySourceNames>] (#partitionkeysourcenames) ang pinakamahalagang paraan upang makatulongERDDAP™Magaling sa paggawa kasama ni Cassandra. Kung ang relasyong ito ay umiiral sa isang dulang Cassandra at hindi mo sinasabiERDDAP™, ang dataset ay lubhang babagalERDDAP™at gumamit ng tone - toneladang yamang Cassandra.
- Paglalarawan sa kumpol ng mga haligi sa pamamagitan [<clusterColumnSourceNames>] (#clustercolumnsourcenames) ang ikalawang pinakamahalagang paraan upang makatulongERDDAP™Magaling sa paggawa kasama ni Cassandra. Kung may kumpol na mga haligi at hindi mo sinasabiERDDAP, ang isang malaking subset ng posibleng mga queries para sa impormasyon ay hindi kinakailangan, lubhang babagalERDDAP™at gumamit ng tone - toneladang yamang Cassandra.
- GumawaMga Indisepara sa mga Karaniwang Kontroled Variable -- Maaari mong pabilisin ang ilang queries sa pamamagitan ng paglikha ng mga indise para sa mga kolumna ng Cassandra na kadalasang nalilimitahan ng "=" na mga demand.
Hindi makagawa si Cassandra ng mga indise para sa talaan, set, o mga hanay ng mapa.
- Paglalarawan sa mga hanay ng indise sa pamamagitan [<indexColumnSourceNames>] (#indexcolumnsourcenames) ay isang mahalagang paraan ng pagtulongERDDAP™Magaling sa paggawa kasama ni Cassandra. Kung may mga index column at hindi mo sinasabiERDDAP, ang ilang katanungan para sa impormasyon ay hindi kinakailangan, lubhang babagalERDDAP™at gumamit ng tone - toneladang yamang Cassandra.
Mga Stat ng Cassandra
- "Cassandra stats" Diagnostic Messages-- Sa bawat isaERDDAP™tagagamit ng query sa isang Cassandra dataset,ERDDAP™ay maglilimbag ng linya sa log file, Malaking Direktoryo /log/log.txt, na may ilang mga estadistikang may kaugnayan sa query, halimbawa,
\\* Cassandra stats: partitionKeyTable: 2/10000=2e-4 < 0.1 nCassRows=1200 nErddapRows=12000 nRowsToUser=7405
Sa paggamit ng mga numero sa halimbawa sa itaas, ito'y nangangahulugan:
- KailanERDDAP™huli (muli) ang dataset na ito, sabi ni CassandraERDDAP™na may 10000 iba't ibang kombinasyon ng partisyong mga susi.ERDDAP™Nakalagay ang lahat ng iba't ibang kombinasyon sa isang file.
- Dahil sa mga limitasyon ng gumagamit,ERDDAP™Itukoy ang 2 mga kombinasyon sa 10000 na maaaring magkaroon ng nais na datos. Kaya,ERDDAP™ay gagawa ng 2 tawag kay Cassandra, isa para sa bawat kombinasyon ng partikulong mga susi. (Iyan ang kailangan ni Cassandra.) Maliwanag, mahirap kung ang isang malaking dataset ay may maraming kombinasyon ng partisyong mga susi at ang isang ibinigay na kahilingan ay hindi lubhang nakababawas niyan. Maaari mong hilingin na bawasan ng bawat kahilingan ang pangunahing espasyo sa pamamagitan ng pagtatakda [ng]<maxRequestFraction>] (#maxrequestfraction) . Dito, 2/10000=2e-4, na mas mababa sa maxRequestFraction (0.1) , kaya pinayagan ang kahilingan.
- Pagkatapos ikapit ang mga pagbabawal sa partisyong mga susi,kumpol ng mga haligi, atMga hanay ng indisena ipinadalaERDDAP™, ibinalik ni Cassandra ang 1200 hanay ng datos saERDDAP™sa passerSet.
- Ang Resulta Tiyak na ikaw ay inilagay roondatos Type= pagkain Talaanmga haligi (na may katamtamang 10 bagay sa bawat listahan) , dahilERDDAP™pinalawak ang 1200 hanay mula sa Cassandra tungo sa 12000 hanay saERDDAP.
- ERDDAP™ay laging kumakapit sa mga datos mula sa Cassandra. Sa kasong ito, ang mga limitasyon na hindi hinawakan ni Cassandra ay nakabawas sa bilang ng mga hanay hanggang sa 7405. Iyan ang bilang ng mga hanay na ipinadala sa gumagamit.
Ang pinakamahalagang gamit ng mga mensaheng ito sa pagsusuri ay tiyakin naERDDAP™ay ginagawa ang inaakala mong ginagawa nito. Kung hindi gayon (Halimbawa, hindi ba't nababawasan nito ang bilang ng iba't ibang kombinasyon gaya ng inaasahan?) , kung gayon ay magagamit mo ang impormasyon upang alamin kung ano ang nangyayari.
- Pananaliksik at eksperimento upang mahanap at maging mas mabuti [<[Property>] (#cassandra-connectity) ' s.
- Tingnan ang bilis ng koneksiyon ng network sa pagitan ng Cassandra at ngERDDAP. Kung mabagal ang koneksiyon, tingnan kung mapasusulong mo pa ito. Ang pinakamabuting kalagayan ay kapagERDDAP™ay tumatakbo sa isang server na nakakabit sa iisang server (mabilis) Palitan habang ang server na nagpapatakbo sa Cassandra node kung saan ka nag-uugnay.
- Pakisuyong maging matiyaga. Basahing mabuti ang impormasyon dito at sa dokumento ni Cassandra. Eksperimento. Suriin ang inyong akda. Kung ang Cassandra-ERDDAP™Mas mabagal pa ang koneksyon kaysa sa inaasahan mo, pakisuyong isama ang schema at ang iyong Cassandra tableERDDAP™Larawan ngdatasets.xmlat tingnan ang atingsa pagkuha ng karagdagang suporta.
- Kung ang lahat ay mabigo, ang pag - iimbak ng impormasyon sa koleksiyon ngNetCDFv3.ncmga talaksan (lalo na.ncmga talaksan na gumagamit ngCF Mga Sampling Geometriya (DSG) Kontiguous Ragged Array data istruktura kaya't maaaring hawakan gamit angERDDAP'Mga EDDTable Mula sa mga Latian) . Kung sila ay makatuwirang organisado (bawat isa ay may datos para sa isang tipak ng espasyo at panahon) ,ERDDAP™ay madaling makakuha ng impormasyon mula sa mga ito.
EDDTable Mula sa kalansay ngCassandra 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. -->