ERDDAP > Information
ERDDAP est un serveur de données qui vous offre un moyen simple et cohérent de télécharger des sous-ensembles d'ensembles de données scientifiques dans des formats de fichiers courants et de créer des graphiques et des cartes.
Table des matières
Sans ERDDAP, lorsqu'une personne (ou un programme informatique) recherche sur Internet un type spécifique de données scientifiques (par exemple, des données satellitaires sur la température de la surface de la mer), il y a des problèmes...
- Les ensembles de données intéressants sont difficiles à trouver car ils se trouvent sur de nombreux sites Web différents.
- Chaque site nécessite un protocole différent pour demander les données :
(par exemple,
HTTP GET
,
XML
,
SOAP+XML
,
OPeNDAP
,
WCS
,
WFS
,
SOS
, ou un formulaire HTML) .
- Chaque site renvoie les données dans un format différent (par exemple, XML, SOAP+XML, flux de données binaires OPeNDAP, texte ASCII, HDF 4, HDF 5, NetCDF, ...) et ce n'est pas le format de fichier courant que vous vouloir.
- Les données de différents sites sont difficiles à comparer car les dates et heures sont exprimées dans différents formats, par exemple "2 janvier 1985", "02-JAN-1985", "1/2/85", "2/1/85".
"," 1985-01-02 ", ou jours depuis le 1er janvier 1980, ou ...).
- Pour une introduction rapide à ERDDAP,
regardez la première moitié de ce
vidéo
. (5 minutes)
Dans ce document, un scientifique télécharge les données de prévision des courants océaniques de ERDDAP pour modéliser un déversement toxique dans l'océan à l'aide
du logiciel GNOME de NOAA
(dans 5 minutes!).
Cette vidéo montre :
Merci à Rich Signell.
(Une petite erreur dans la vidéo :
lors de la recherche d'ensembles de données, n'utilisez pas AND entre les termes de recherche.
C'est implicite.)
- ERDDAP peut obtenir des données à partir de sources de données locales (sur le disque dur du serveur) et distantes (accessibles via le Web).
Consultez la
liste des types de sources de données auxquelles ERDDAP peut accéder.
- ERDDAP peut servir de nombreux types de données scientifiques, pas seulement des données océanographiques.
ERDDAP est un serveur de données écrit par
NOAA
NMFS
SWFSC
ERD .
Le serveur ERDDAP d' ERD sert des données océanographiques, mais ERDDAP (le programme) peut accéder et servir toutes les données maillées ou tabulaires.
- ERDDAP propose plusieurs façons de rechercher des ensembles de données intéressants.
Par exemple,
la recherche en texte intégral,
la recherche par catégorie (également appelée recherche à facettes) et
la recherche avancée .
La recherche avancée combine toutes les techniques de recherche et ajoute des recherches d'ensembles de données contenant des données dans des plages de longitude, de latitude et de temps, afin que vous puissiez rechercher simultanément des ensembles de données en fonction de nombreux critères différents.
- ERDDAP vous permet de demander des données de manière standardisée,
quel que soit le protocole de requête de la source de données.
ERDDAP fournit également des formulaires d'accès aux données (pages Web) qui aident les humains à créer les requêtes OPeNDAP .
OPeNDAP
Protocole d'accès aux données (DAP )
est l'une des
recommandations techniques d'accès aux données de NOAA
et une
norme du système de données et d'information sur les sciences de la Terre de la NASA (ESDIS)
.
(OPeNDAP est génial !) ERDDAP traduit votre demande du format OPeNDAP, WMS ou SOS au format de demande de la source de données et convertit la réponse en l'une des structures de données internes d' ERDDAP .
Ensuite, ERDDAP reformate les données dans le format de fichier commun de votre choix (par exemple, sous forme de tableau .html, ESRI .asc, Google Earth .kml, .mat, .nc, ODV .txt, .csv, .tsv, .json, .xhtml, .png, .pdf) et vous envoie le fichier.
Consultez la liste des
types de fichiers Griddap et la liste des
types de fichiers tabledap .
Autres protocoles pour demander les données (par exemple,
WCS
) pourraient être ajoutés à l’avenir.
ERDDAP est structuré pour ces ajouts et il ne semble y avoir aucun obstacle.
- Les demandes de données maillées peuvent être effectuées en unités utilisateur.
Bien que les demandes de données maillées dans ERDDAP puissent être effectuées avec des indices de tableau (suivant la spécification OPeNDAP ), les demandes peuvent également être effectuées en unités utilisateur (par exemple, degrés Est), en utilisant
une notation entre parenthèses, puisque les utilisateurs pensent dans ces unités, pas dans les indices.
- ERDDAP envoie les résultats dans des formats de fichiers de données courants.
Les résultats peuvent être renvoyés dans l'un des nombreux formats de fichiers de données courants (par exemple,
HTTP GET
,
XML
,
SOAP+XML
,
OPeNDAP
,
WCS
,
WFS
,
SOS
, ou un formulaire HTML), au lieu du simple format d'origine ou du format de transfert OPeNDAP (qui n'a pas de manifestation de fichier standard).
Ces fichiers sont créés à la volée.
Puisqu’il existe peu de structures de données internes, il est facile d’ajouter des pilotes de type de fichier supplémentaires.
Consultez la liste complète des
types de fichiers de grille et
des types de fichiers de table .
- ERDDAP standardise les noms de variables et les unités de longitude, latitude, altitude, profondeur et heure dans les résultats.
Pour faciliter les comparaisons de données provenant de différents ensembles de données, les requêtes et les résultats dans ERDDAP utilisent des unités d'axe espace/temps standardisées :
- la longitude est toujours en degrees_east .
- la latitude est toujours en degrees_north .
- l'altitude est toujours en mètres avec positif = haut.
- la profondeur est toujours en mètres avec positif=vers le bas.
- l'heure, lorsqu'elle est formatée sous forme de nombre, est toujours en"seconds since 1970-01-01T00:00:00Z"(connue sous le nom
d'heure Unix
ou époque secondes, qui estUDUNITS
-compatible) et, lorsqu'il est formaté sous forme de chaîne, est formaté selon le
format"extended"ISO 8601:2004
standard (yyyy-MM-ddTHH:mm:ssZ, par exemple, "1985-01-02T00:00:00Z"). (Vous pouvez convertir des heures numériques vers/depuis des heures de chaîne ISO avec
le convertisseur d'heure d' ERDDAP .) De plus, pour éviter toute confusion entre le fuseau horaire et l'heure d'été, les valeurs horaires sont toujours converties dans le fuseau horaire Zulu (UTC, GMT).
Cela facilite la spécification des contraintes dans les requêtes sans avoir à se soucier du format des données d'altitude (les valeurs positives sont-elles en hausse ou en baisse ?
en mètres ou en brasses ?) ou du format de données temporelles (un royaume cauchemardesque de formats possibles, par exemple,"Jan 2 janvier 1985","02-JAN-1985","1/2/85","2/1/85","1985-01-02"ou jours depuis le 1er janvier 1980).
Cela rend les résultats de différentes sources de données faciles à comparer.
ERDDAP dispose d'un utilitaire pour
convertir une heure numérique vers/à partir d'une chaîne de temps .
Pour plus de détails, voir
Comment ERDDAP gère le temps .
Étant donné que les variables de longitude, de latitude, d’altitude et de temps sont spécifiquement reconnues, ERDDAP connaît les caractéristiques géo/temporelles de chaque ensemble de données.
Ceci est utile lors de la création d'images avec des cartes ou des séries chronologiques, et lors de l'enregistrement de données dans des types de fichiers géoréférencés (par exemple, .esriAscii, .geoJson et .kml ).
Deux normes courantes pour l'écriture des unités de mesure sont :
- UDUNITSlien externe)" title="Ce lien vers un site Web externe ne constitue pas une approbation."> - d'
Unidata
, qui est utilisé dans
COARDS
,
FC
et
NetCDF
fichiers de données.
Par exemple, UDUNITS propose de nombreuses options pour les degrés Celsius, notamment degree_C et degC .
- UCUM
- le Code Unifié des Unités de Mesure.
OGC
des services tels que
SOS
,
WCS
et
WMS
font souvent référence à UCUM sous le nom d'UOM (Unités de Mesure).
Par exemple, UCUM n'a qu'une seule option sensible à la casse pour les degrés Celsius :
"Cel" .
Bien ERDDAP ne nécessite l'utilisation d'aucune des deux unités standard, la plupart des installations ERDDAP privilégient l'une ou l'autre.
(Administrateurs ERDDAP :
vous pouvez le spécifier avec la balise <units_standard> dans setup.xml.) Vous pouvez convertir UDUNITS vers/depuis des unités UCUM avec
le convertisseur d'unités d' ERDDAP .
Lorsque vous demandez des données ou un graphique à partir d'un
ensemble de données tabledap, vous pouvez ajouter &units("UDUNITS") ou &units("UCUM") à la fin de l'URL pour demander des unités UDUNITS ou UCUM.
Plus d'information
- ERDDAP peut ajouter ou modifier des métadonnées.
De nombreuses sources de données contiennent peu ou pas
de métadonnées
(par exemple,
les métadonnées CF
) décrivant les données.
ERDDAP permet (et encourage) l'administrateur de décrire les métadonnées qui seront ajoutées aux ensembles de données et à leurs variables à la volée.
Consultez la
section addAttributes des
instructions destinées aux administrateurs .
- ERDDAP vous permet de demander des fichiers image .png et .pdf avec des graphiques et des cartes
des données en plus des données réelles.
Et Make A Graph d' ERDDAP vous permet de personnaliser les images.
Certaines utilisations spéciales de ces images sont :
- Demander des fichiers compressés
ERDDAP n'offre pas de résultats stockés dans des fichiers compressés (par exemple, .zip ou .gzip ) sauf si le fichier source est déjà compressé.
Au lieu de cela, ERDDAP recherche
le codage accepté
dans l'en-tête de la requête HTTP GET envoyée par le client.
Si un type de compression pris en charge (gzip, x-gzip ou deflate ) est trouvé dans la liste d'acceptation-encodage, ERDDAP inclut content-encoding dans l'en-tête de réponse HTTP et compresse les données au fur et à mesure de leur transmission.
C'est au programme client de rechercher content-encoding et de décompresser les données.
Les réponses compressées sont souvent 3 à 10 fois plus rapides, bien qu'il n'y ait aucun avantage à demander des fichiers .png compressés puisque le contenu des fichiers est déjà compressé.
Les navigateurs et les clients OPeNDAP le font par défaut.
Ils demandent des données compressées et décompressent automatiquement les données renvoyées.
Les autres clients (par exemple les programmes Java ) doivent le faire explicitement.
Avec curl, ajoutez --compressed à la ligne de commande pour indiquer curl de demander une réponse compressée et de la décompresser automatiquement.
- ERDDAP rend interopérables différents types de serveurs de données (OPeNDAP, OBIS, SOS, WMS, ...).
Différents types de serveurs de données sont utilisés dans différentes communautés scientifiques.
Dans un avenir prévisible, il est peu probable qu’un type de ce type devienne dominant et remplace les autres.
ERDDAP agit ainsi comme un pont entre les différents types de programmes clients (navigateurs web, IDV, Matlab, programmes netCDF, ODV, clients WMS, etc.) et les différents types de serveurs de données.
- ERDDAP accepte les demandes de données des clients dans différents formats (par exemple, OPeNDAP, WMS ).
- ERDDAP convertit une requête donnée dans le format de requête utilisé par le serveur de données source (par exemple, OPeNDAP, SOS, OBIS, ...) et l'envoie au serveur de données source.
- ERDDAP convertit les données de réponse du serveur de données source dans un format interne, y compris la conversion de toutes les données temporelles dans un format commun :
"seconds since 1970-01-01T00:00:00Z" .
- ERDDAP convertit les données du format interne dans le format de fichier demandé par le client (par exemple, .csv, Google Earth .kml, .htmlTable, .dods, .mat, .nc, ODV .txt, .png).
Les clients n'ont pas à se soucier du type de serveur de données source ni à le connaître.
Ils obtiennent simplement les données qu’ils souhaitent, dans le format de fichier qu’ils souhaitent.
- ERDDAP utilise seulement deux structures de données de base pour conserver les données.
- Puisqu'il est difficile pour les clients humains et informatiques de gérer un ensemble complexe de structures d'ensembles de données possibles, ERDDAP utilise uniquement deux structures de données de base :
- Certes, toutes les données ne peuvent pas être exprimées dans ces structures, mais une grande partie le peut.
Les tables, en particulier, sont des structures de données très flexibles (regardez le succès phénoménal des
bases de données relationnelles) .
programmes).
- Cela rend les requêtes de données plus faciles à construire.
- Cela donne aux réponses de données une structure simple, ce qui facilite la diffusion des données dans une plus grande variété de types de fichiers standard (qui ne prennent souvent en charge que des structures de données simples).
C’est la principale raison pour laquelle nous avons créé ERDDAP de cette façon.
- Ceci, à son tour, nous permet (ou à n'importe qui) d'écrire très facilement un logiciel client qui fonctionne avec tous les ensembles de données ERDDAP .
- Cela facilite la comparaison des données provenant de différentes sources, par exemple pour une analyse intégrée des écosystèmes (AIE).
- Nous sommes parfaitement conscients que si vous avez l’habitude de travailler avec des données dans d’autres structures de données, vous pourriez au départ penser que cette approche est simpliste ou insuffisante.
Mais toutes les structures de données comportent des compromis.
Aucun n’est parfait.
Même les structures à tout faire ont leurs inconvénients :
leur utilisation est complexe et les fichiers ne peuvent être écrits ou lus qu'avec des bibliothèques de logiciels spéciales.
Si vous acceptez suffisamment l'approche d' ERDDAP pour essayer de l'utiliser, vous constaterez peut-être qu'elle présente des avantages (notamment la prise en charge de plusieurs types de fichiers pouvant contenir les réponses de données).
Le
diaporama original ERDDAP (en particulier la
diapositive sur les structures de données) aborde ces questions.
- Et même si cette approche vous semble étrange, la plupart des clients ERDDAP ne le remarqueront jamais :
ils verront simplement que tous les ensembles de données ont une structure simple et agréable et ils seront reconnaissants de pouvoir obtenir des données provenant d'une grande variété de sources renvoyées dans une grande variété de formats de fichiers.
- ERDDAP propose
email/URL et
RSS
services d'abonnement, afin que vous puissiez être averti chaque fois qu'un ensemble de données change.
- ERDDAP est très efficace pour détecter les modifications apportées aux ensembles de données quadrillées, car il peut détecter le moment où les valeurs des axes (par exemple, les valeurs temporelles) changent.
- ERDDAP n'est pas très efficace pour détecter les modifications apportées aux ensembles de données tabulaires, car il n'y a généralement aucune modification des métadonnées lorsque de nouvelles données sont ajoutées.
- ERDDAP détectera si un ensemble de données devient indisponible (mais peut-être pas immédiatement).
- ERDDAP détectera quand cet ensemble de données redeviendra disponible.
- ERDDAP ne fait aucune promesse quant à l'adéquation ou à l'exactitude de ces services (voir
les AVIS DE NON-RESPONSABILITÉ d' ERDDAP).
Abonnements
par e-mail/URL (non disponibles sur certaines installations ERDDAP ) Chaque fois qu'un ensemble de données change, le système d'abonnement par e-mail/URL vous enverra immédiatement un e-mail ou contactera une URL que vous spécifiez.
Les abonnements par e-mail/URL ne sont pas disponibles sur certaines installations ERDDAP .
Pour configurer un abonnement email/URL, cliquez sur l'une des icônes d'enveloppe
qui apparaissent à l'extrême droite sur les pages Web ERDDAP avec des listes d'ensembles de données (exemple) et sur les pages Web Data Access Forms et Make A Graph pour des ensembles de données individuels (exemple) si cette installation ERDDAP prend en charge les abonnements par e-mail/URL.
(Programmeurs informatiques :
si vous écrivez des services Web, vous pouvez utiliser le système d'URL pour ERDDAP avertisse immédiatement votre service Web chaque fois qu'un ensemble de données change.)
RSS
Les abonnements RSS sont un système standard permettant d'avertir les utilisateurs lorsque le contenu d'un site Web a changé.
Les navigateurs Web modernes intègrent un client RSS ou vous pouvez utiliser un
lecteur RSS distinct.
.
ERDDAP propose un flux RSS 2.01 distinct pour chaque ensemble de données afin que vous puissiez savoir quand les ensembles de données intéressants ont changé.
Pour vous abonner au flux RSS d'un jeu de données, cliquez sur l'une des icônes RSS
qui apparaissent à l'extrême droite sur les pages Web ERDDAP avec des listes d'ensembles de données (exemple) ou sur les pages Web Data Access Forms et Make A Graph pour des ensembles de données individuels (exemple).
Comparaison Le service RSS est peut-être exactement ce que vous recherchez.
C'est une belle norme.
Mais si vous avez besoin de savoir le plus tôt possible lorsqu'un ensemble de données change, utilisez le système de courrier électronique/URL, et non RSS .
Les clients RSS demandent et lisent périodiquement (toutes les heures ?) le document RSS XML pour rechercher des modifications.
Ainsi, généralement, un client RSS ne détectera pas rapidement une modification apportée à un ensemble de données (30 minutes en moyenne ?).
En revanche, le système d'abonnement par e-mail/URL agit immédiatement chaque fois ERDDAP détecte une modification dans un ensemble de données.
L'approche plus proactive du système de courrier électronique/URL est également beaucoup plus efficace :
vous pourrez peut-être configurer votre client RSS pour qu'il vérifie les modifications toutes les minutes (ne le faites pas !), mais cela ne ferait que conduire à de nombreuses requêtes inutiles.
au serveur ERDDAP et il ne détecterait toujours pas les changements immédiatement.
- ERDDAP est une
application web
(pages Web avec des formulaires pour les humains utilisant des navigateurs)
et un
service web
(avec
services pour programmes informatiques).
En fait, les formulaires présents sur les pages Web d' ERDDAP génèrent simplement des URL spécialement formées qui sont ensuite soumises aux services Web d' ERDDAP .
- ERDDAP a
REST
- et
ROA
-liens de style pour rendre ses services accessibles aux programmes informatiques.
Ces fonctionnalités peuvent être utilisées pour créer un autre service Web au-dessus d' ERDDAP (ce qui permet à ERDDAP de faire tout le travail !).
ERDDAP n’est pas destiné à être un service d’exploration/graphique de données de haut niveau.
Au lieu de cela, ERDDAP est destiné à fournir des services pour ces sites Web et programmes.
Donc, si vous avez une idée pour une meilleure interface avec les données servies par ERDDAP, nous vous encourageons à créer votre propre application Web ou service Web et à utiliser ERDDAP comme base.
En savoir plus sur les services d' ERDDAP
pour les programmes informatiques .
- Sécurité - Par défaut, ERDDAP fonctionne comme un serveur entièrement public sans système de connexion ni restriction d'accès aux données.
Cependant, un administrateur ERDDAP peut configurer ERDDAP pour restreindre l'accès à tout ou partie des ensembles de données aux utilisateurs qui se connectent et auxquels certains rôles ont été attribués.
ERDDAP dispose de méthodes intégrées d'authentification (connexion).
Si l'authentification est activée sur une installation ERDDAP, il y aura un lien de « connexion » en haut de chaque page Web.
Les utilisateurs n'ont jamais besoin de se connecter pour accéder aux ensembles de données accessibles au public.
Les utilisateurs connectés peuvent accéder aux ensembles de données publics et aux ensembles de données privés auxquels ils sont autorisés à accéder.
Les utilisateurs doivent utiliser https :
(Secure Sockets Layer) pour se connecter et accéder aux ensembles de données privés.
Les ensembles de données peuvent être configurés pour avoir des graphiques et des cartes accessibles au public, mais pour que les données soient accessibles uniquement aux utilisateurs autorisés.
(Plus d'information)
- ERDDAP traite les données en morceaux.
Pour économiser de la mémoire (un gros problème) et permettre aux réponses de démarrer plus tôt, ERDDAP traite les demandes de données par morceaux - en récupérant à plusieurs reprises un morceau de données de la source, en le nettoyant (par exemple, en ajoutant
des métadonnées) .
), et l'envoyer au client.
Pour de nombreuses sources de données, cela signifie que la première partie des données (par exemple, celles du premier capteur) parvient au client en quelques secondes au lieu de quelques minutes (par exemple, après la récupération des données du dernier capteur), rassurant ainsi le client.
les données arrivent.
Du point de vue de la mémoire, cela permet de traiter simultanément de nombreuses requêtes volumineuses (chacune supérieure à la mémoire disponible).
- ERDDAP a une structure modulaire.
ERDDAP est structuré de manière à ce qu'il soit facile d'ajouter différents composants (par exemple, une classe pour demander des données à un serveur SOS et les stocker sous forme de table).
Le nouveau composant bénéficie alors de toutes les fonctionnalités et capacités du parent (par exemple, prise en charge des requêtes OPeNDAP et possibilité de sauvegarder les données dans plusieurs formats de fichiers courants).
- Réseaux de diffusion/distribution de données :
technologie Push and Pull
Normalement, ERDDAP joue le rôle d'intermédiaire :
il prend une requête d'un utilisateur ; obtient des données à partir d'une source de données distante ; reformate les données ; et l'envoie à l'utilisateur.
Technologie Pull
:
Mais ERDDAP a également la capacité d'obtenir activement toutes les données disponibles à partir d'une source de données distante et
de stocker une copie locale des données .
Technologie Push
:
En utilisant
les services d'abonnement d' ERDDAP, d'autres serveurs de données peuvent être avertis dès que de nouvelles données sont disponibles afin qu'ils puissent demander les données (en extrayant les données).
EDDGrid FromErddap et
EDDTableFromErddap d' ERDDAP utilisent les services d'abonnement et
le système de signalisation d' ERDDAP afin qu'ils soient immédiatement avertis lorsque de nouvelles données sont disponibles.
Vous pouvez les combiner à bon escient :
si vous enroulez une copie EDDGrid autour d'un ensemble de données EDDGrid FromErddap (ou enroulez une EDDTableCopy autour d'un ensemble de données EDDTableFromErddap), ERDDAP créera et conservera automatiquement une copie locale de l'ensemble de données d'un autre ERDDAP .
Étant donné que les services d'abonnement fonctionnent dès que de nouvelles données sont disponibles, la technologie push diffuse les données très rapidement (en quelques secondes).
Cette architecture confie à chaque administrateur ERDDAP la responsabilité de déterminer d'où proviennent les données de son ERDDAP .
D'autres administrateurs ERDDAP peuvent faire de même.
Il n’y a pas besoin de coordination entre les administrateurs.
Si de nombreux administrateurs ERDDAP se connectent ERDDAP uns aux autres, un réseau de distribution de données est formé.
Les données seront diffusées rapidement, efficacement et automatiquement depuis les sources de données (ERDDAP et autres serveurs) vers les sites de redistribution de données (ERDDAP ) n'importe où sur le réseau.
Un ERDDAP donné peut être à la fois une source de données pour certains ensembles de données et un site de redistribution pour d’autres ensembles de données.
Le réseau résultant est à peu près similaire aux réseaux de distribution de données mis en place avec des programmes comme
IDD/IDM d' Unidata
, mais moins rigidement structuré.
DAP ?
OPeNDAP ?
DODS ?
ERDDAP ?
Quelle est la différence? Ma compréhension (de Bob) est la suivante :
DODS (Distributed Oceanographic Data System) a été créé dans les années 1990, avant l'apparition de http :
(!).
Le système DODS a créé et utilisé le protocole dods :
sur Internet.
Lorsque HTTP est arrivé et a connu un tel succès, ils sont passés de dods:
à http:.
À un moment donné, ils ont réalisé que le système était utile pour bien plus que de simples données océanographiques.
Ils ont donc abandonné ce nom DODS (bien qu'il perdure dans certains codes) et ont formé une petite organisation appelée
OPeNDAP
et écrit la
spécification DAP (Data Access Protocol)
, qui standardise le format des demandes de métadonnées et/ou de données, et les réponses avec les métadonnées et/ou les données.
OPeNDAP (l'organisation) gère toujours DAP (la spécification) et est l'auteur de Hyrax (le serveur de données qui est souvent appelé à tort OPeNDAP ).
Hyrax, THREDDS, GRADS, ERDDAP et autres sont des serveurs de données (logiciels) qui implémentent DAP .
Ils mettent chacun en œuvre un sous-ensemble de DAP mais font d’autres choses de manière très différente.
ERDDAP utilise du code (dans le répertoire "dods") (en fait écrit par Jake Hamby du NASA JPL) pour certaines fonctionnalités de lecture de données à partir de serveurs DAP externes.
ERDDAP utilise son propre code pour écrire les réponses DAP .
ERDDAP est-il une solution aux problèmes de distribution/accès aux données de chacun ?
Non.
ERDDAP essaie de trouver un point idéal qui soit une très bonne solution à la plupart des problèmes de distribution de données auxquels nous avons été confrontés.
ERDDAP adopte une approche middleware :
il peut obtenir des données provenant de nombreux types différents de serveurs de données distants et peut transmettre ces données aux clients dans de nombreux formats de fichiers différents.
Il est conçu pour être une solution agnostique qui cherche à rendre interopérables d'autres serveurs de données (OPeNDAP, SOS, OBIS, WMS, ...).
Existe-t-il un serveur de données parfait qui répond parfaitement aux besoins de chacun ?
Nous ne le pensons pas.
Et même si vous pensez qu’il y en a ou qu’il y en aura, il faudra beaucoup de temps avant que tout le monde n’y adopte, voire jamais.
D’ici là, ERDDAP est disponible dès maintenant pour rendre d’autres serveurs de données interopérables et servir les données dès maintenant.
ERDDAP peut gérer la plupart des ensembles de données tels quels, mais pas tous. Ce n'est pas que les ensembles de données restants (par exemple, les données du modèle utilisant une projection de sphère cubique) ne soient pas importants.
C'est juste que l'objectif d' ERDDAP de renvoyer les données dans des formats de fichiers courants (dont certains sont assez simples) exclut une structure de données interne plus complexe.
Les groupes de chercheurs travaillant avec des structures de données plus complexes disposent souvent déjà de serveurs de données spécialisés et de logiciels clients spécialisés adaptés aux besoins de leur communauté.
ERDDAP, en tant que serveur de données à usage général, ne cherche pas à rivaliser avec ces serveurs de données spécialisés.
Ils s'adaptent aux besoins de leur communauté et font un excellent travail.
Cependant, ces ensembles de données ne sont souvent « compris » que par les logiciels spécialisés de cette communauté.
Une solution de contournement pour les ensembles de données complexes :
ERDDAP dispose d'un moyen de gérer des ensembles de données complexes qu'il ne peut pas gérer directement.
Tout comme une
base de données relationnelle
peut stocker un ensemble de données complexe en utilisant une seule structure de données simple (une table), ERDDAP peut servir les données d'ensembles de données plus complexes en divisant l'ensemble de données source en quelques ensembles de données ERDDAP, chacun avec des structures de données simples et similaires.
Par exemple, certains ensembles de données de modèles environnementaux maillés peuvent être stockés dans ERDDAP en plaçant les variables de surface de la mer ([temps][latitude][longitude]) dans un seul ensemble de données ERDDAP, et en plaçant les variables avec l'altitude ([temps][altitude][ latitude][longitude]) dans un autre ensemble de données ERDDAP .
Nous savons que ce n'est pas idéal, mais il est nécessaire de permettre ERDDAP de renvoyer des données dans des formats de fichiers courants (dont certains sont assez simples).
Une autre approche pour traiter des ensembles de données complexes (par exemple, pour les données de modèle utilisant une projection de sphère cubique) consiste également à proposer une version reprojetée de l'ensemble de données ([temps] [altitude] [latitude] [longitude]) avec laquelle ERDDAP peut travailler facilement.
Ces structures de données plus simples ne sont pas destinées à remplacer les structures de données d'origine, mais elles peuvent constituer un moyen utile de distribuer les données à un public plus large.
Dans quelle mesure le projet ERDDAP est-il durable ?
ERDDAP est très durable.
Certaines personnes sont surprises et déçues d'apprendre ERDDAP est principalement développé par une seule personne (Bob Simons, maintenant Chris John).
[À propos, les opinions sur cette page Web sont mes opinions personnelles et ne reflètent pas nécessairement la position du gouvernement ou de l' National Oceanic and Atmospheric Administration .] Ils craignent que si quelque chose m'arrive, ce sera la fin de ERDDAP .
Ce n’est tout simplement pas vrai.
Le positionnement de ERDDAP en matière de durabilité à long terme est excellent et proche du meilleur possible.
Oui, je suis le développeur principal d' ERDDAP .
Je suis un employé fédéral entièrement financé.
Mon financement n'est pas de l'argent « doux », donc je ne reçois pas de subventions ni ne dépends de celles-ci.
Je passe plus de la moitié de mon temps à développer ERDDAP .
Le reste de mon temps est consacré à la gestion d’ensembles de données.
Ce travail est utile pour ERDDAP car j'ai besoin de travailler avec des ensembles de données réels afin de savoir en détail ce que ERDDAP doit faire.
Mes patrons soutiennent pleinement mon travail sur ERDDAP car il fait ce pour quoi j'ai été embauché :
permettre aux scientifiques halieutiques (principalement, mais vraiment à tout le monde) d'obtenir plus facilement des données scientifiques provenant de diverses sources.
Ce qui est miraculeux avec les logiciels, c'est qu'ils ne coûtent rien à dupliquer. Donc, pour faire mon travail, j'écris ERDDAP pour une utilisation chez ERD .
Je pense que c'est la meilleure façon possible pour moi de faire mon travail.
Cette seule raison justifie les dépenses liées au développement ERDDAP .
(Je pense qu'il pourrait être démontré ERDDAP a fait gagner plus de temps aux scientifiques NOAA que j'en ai passé à développer ERDDAP .
Temps = Argent.) Mais l'avantage secondaire est que toute autre organisation peut
télécharger, installer et utiliser ERDDAP gratuitement pour distribuer son données scientifiques.
Plus de 90 organisations dans au moins 14 pays utilisent ERDDAP .
Il existe peut-être un déjeuner gratuit.
ERDDAP est un programme Java .
Le code source de chaque version est sur
GitHub
, le système le plus couramment utilisé pour les projets logiciels collaboratifs.
Crédits Les crédits ERDDAP sont désormais disponibles sur une
page séparée .
J'espère que d'autres contribueront au code à l'avenir.
S'il m'arrive quelque chose, mes patrons embaucheront un remplaçant dans le but précis qu'il continue le développement d' ERDDAP .
De plus, j'essaie d'écrire du code très propre.
J'écris des commentaires Java Doc.
J'écris des commentaires dans le code.
J'ai choisi les noms de variables avec soin.
Je suis les directives de formatage Java .
Tout cela est un effort pour rendre le code plus lisible, pour les autres programmeurs qui veulent le comprendre et/ou le modifier, et pour moi, car, dans un an ou deux, j'aurai oublié les détails du comment et du pourquoi du code.
a été écrit tel quel.
Un code propre avec de bons commentaires facilite mon travail en cours sur ERDDAP, je suis donc fortement incité à écrire du code propre avec de bons commentaires.
Mais toutes mes réponses jusqu’à présent ne sont pas très importantes. Une seule chose qui est vraiment importante.
Une seule chose garantit la durabilité d' ERDDAP ou de tout projet logiciel :
ERDDAP soit
un logiciel libre et open source (FOSS).
.
Plus précisément, ERDDAP utilise
des licences logicielles compatibles Apache
, afin que chacun puisse faire ce qu'il veut avec le code.
Pourquoi est-ce important ?
On pourrait penser que les logiciels seront disponibles de manière fiable à l’avenir parce qu’ils sont soutenus par une grande entreprise.
Mais Google, par exemple, a abandonné de nombreux projets (voici une liste
).
Je ne veux pas m'en prendre à Google parce que j'aime vraiment Google et qu'il finance un grand nombre de grands projets open source.
Microsoft a arrêté des projets.
Apple a abandonné ses projets.
… Le fait est que le simple soutien d'une grande entreprise ne garantit pas la poursuite du projet.
Les utilisateurs de ce logiciel n’ont pas de chance, à moins que le logiciel ne soit (et soit donc toujours) un logiciel libre et open source (FOSS).
Ensuite, chaque fois qu’un seul développeur suscite l’intérêt, le projet peut et continuera d’évoluer.
FOSS est une police d’assurance.
En fait, le FOSS est la seule police d’assurance, la seule assurance qui compte.
FOSS garantit qu'il y a toujours une voie à suivre pour le logiciel.
C’est un droit que personne ne pourra jamais lui retirer.
On pourrait également penser que les logiciels dotés d’une grande équipe de développeurs seront plus durables que les logiciels dotés d’un seul développeur principal.
Mais de nombreux développeurs ont généralement besoin de beaucoup de financement.
Je connais un projet célèbre et assez important avec 10 développeurs (je ne les embarrasserai pas en les nommant) qui court constamment un grave danger d'arrêter le projet parce qu'ils n'ont pas suffisamment de financement.
Ils comptent sur des subventions.
Ils sont toujours en déficit.
Leur patron les a toujours renfloués à la dernière minute, mais il en a vraiment marre de les renflouer.
Donc s’ils ne parviennent pas à récolter un million de dollars par an en subventions (ou si le mécène est trop fatigué de les renflouer), ils arrêteront.
Et le groupe ne conçoit pas moins de 10 développeurs.
Chaque développeur a un rôle à jouer dans son groupe.
À la lumière de cela, il me semble que c'est un bon signe ERDDAP puisse être, et est, activement développé par un seul développeur principal (qui est entièrement financé) avec l'aide non officielle de quelques autres.
En fait, ce serait un mauvais signe si ERDDAP nécessitait plusieurs développeurs.
Le fait que ERDDAP n'ait qu'un seul développeur principal signifie qu'il ne s'agit pas d'une tâche énorme qui nécessite un financement massif et continu ; il s'agit d'une tâche relativement modeste qui nécessite un minimum d'efforts et de financement.
C'est plus durable, pas moins.
On pourrait penser que faire appel à une entreprise sous-traitante pour écrire des logiciels est une bonne idée. Moyennant des frais, ils fourniront des développeurs et promettront une continuité (ce qui est une bonne chose à moins/jusqu'à ce qu'ils fassent faillite).
Mais ils vous ont aussi un baril :
vous devez leur payer ce qu'ils demandent sinon il n'y a plus de développement, à moins que le logiciel soit un FOSS et que vous les payiez simplement pour travailler sur le code.
Avec FOSS, vous avez toujours le choix quant à la manière d’avancer.
Parce ERDDAP est un FOSS, les entrepreneurs sont toujours une bonne option pour vous ou pour n'importe qui en ce qui concerne ERDDAP :
si quelque chose m'arrive (le seul développeur principal), ou si je n'ai pas le temps d'apporter les modifications que vous souhaitez, ou si je prenez votre retraite et vous n'aimez pas le travail de mon remplaçant, vous pouvez toujours faire appel à une entreprise contractante pour apporter les modifications que vous souhaitez (ou les effectuer vous-même).
En résumé, ERDDAP présente les deux caractéristiques de durabilité qui comptent le plus :
- ERDDAP est un petit projet (suffisamment petit pour être géré par un développeur principal avec l'aide non officielle de quelques autres), il ne nécessite donc pas de ressources massives.
- ERDDAP est un logiciel libre et open source, donc personne ne pourra jamais vous empêcher, vous ou quiconque, de travailler sur ERDDAP .
Je ne peux pas penser à une meilleure situation.
J'espère que cela dissipe toutes vos craintes (ou n'importe qui d'autre) concernant la durabilité de ERDDAP .
Si vous entendez des gens remettre en question ou décourager l'utilisation d' ERDDAP parce qu'il n'y a qu'un seul développeur principal, veuillez les mettre au clair en les dirigeant vers la discussion ci-dessus à cette URL :
https://coastwatch.pfeg.noaa.gov/erddap/information.
html#durable .
Comment citer un ensemble de données dans un article
Il est important de faire savoir aux lecteurs comment vous avez obtenu les données que vous avez utilisées dans votre article.
Pour chaque ensemble de données que vous avez utilisé, veuillez consulter les métadonnées de l'ensemble de données dans la section Structure des attributs de l'ensemble de données au bas de la page .html de l'ensemble de données, par exemple :
https://coastwatch.pfeg.noaa.gov/erddap/griddap/jplMU RSS T41.html .
Les métadonnées incluent parfois un format de citation requis ou suggéré pour l'ensemble de données.
Les métadonnées « licence » répertorient parfois des restrictions sur l'utilisation des données.
Pour générer une citation pour un ensemble de données :
Si vous considérez l'ensemble de données comme un article scientifique, vous pouvez générer une citation basée sur l'auteur (voir les métadonnées « nom_créateur » ou "institution" ), la date à laquelle vous avez téléchargé les données, le titre (voir les métadonnées "title" ), et l'éditeur (voir les métadonnées "publisher_name").
Si possible, veuillez inclure la ou les URL spécifiques utilisées pour télécharger les données.
Si les métadonnées de l'ensemble de données incluent un
identifiant d'objet numérique (DOI )
, veuillez l'inclure dans la citation que vous créez.
Comment citer ERDDAP dans un article
Si vous souhaitez citer ERDDAP lui-même dans un article scientifique, veuillez utiliser quelque chose comme
Simons, RA et Chris John.
2022.
ERDDAP .
https://coastwatch.pfeg.noaa.gov/erddap .
Monterey, Californie :
NOAA / NMFS / SWFSC / ERD .
Que signifie l'acronyme « ERDDAP » ?
« ERDDAP » était autrefois un acronyme, mais il a dépassé la description originale.
Maintenant, s'il vous plaît, considérez-le simplement comme un nom, pas comme un acronyme.
Lignes directrices pour les systèmes de distribution de données
Les opinions de Bob sur la conception et l'évaluation des systèmes de distribution de données peuvent être trouvées
ici .
Vous pouvez
configurer votre propre serveur ERDDAP et servir vos propres données.
- Le petit effort de création ERDDAP apporte de nombreux avantages.
- Si vous disposez déjà d'un service web pour diffuser vos données, vous pouvez configurer ERDDAP pour accéder à vos données via le service existant ou via les fichiers sources ou la base de données.
Les utilisateurs disposeront alors d’un autre moyen d’accéder à vos données et pourront télécharger les données dans des formats de fichiers supplémentaires ou sous forme de graphiques ou de cartes.
- Si vos ensembles de données sont très demandés, vous pouvez installer
plusieurs ERDDAP qui fonctionnent ensemble pour évoluer et répondre aux besoins d'un grand centre de distribution de données.
Si vous avez des questions, des suggestions ou des commentaires sur ERDDAP en général (pas sur cette installation ERDDAP spécifique), veuillez envoyer un e-mail à
erd dot data at noaa dot gov et inclure l'URL ERDDAP directement liée à votre question ou commentaire.
Vous pouvez également rejoindre le groupe Google/liste de diffusion ERDDAP en visitant
https://groups.google.com/forum/#!forum/erddap 
et en cliquant sur "Demander l'adhésion".
Une fois que vous êtes membre, vous pouvez y poster votre question ou effectuer une recherche pour voir si la question a déjà été posée et répondue.
AVIS DE NON-RESPONSABILITÉ :
Les opinions exprimées sur cette page Web sont celles de Bob Simons et ne reflètent pas nécessairement la position du gouvernement ou de la National Oceanic and Atmospheric Administration .