JSOC Help and Examples


Examples of JSOC RecordSet Specifiers

Basics

For all users, it is highly recommended that you understand the instructions at JSOC Data Access.

Once you are familiar with the basic structure of JSOC Datasets, including the JSOC term "PrimeKeyword" please review JSOC data series in the JSOC Wiki.

How to Get Data FAQ provides an accessible description of how to get data.

Simple Time-Series Examples

Many JSOC dataseries are a time-ordered sequence of records, such as hmi.M_45s - the set of HMI magnetograms observed once each 45 seconds. For such series the first PrimeKey is the time of the record. Its name will ordinarily be "T_REC" for HMI and MDI data but may be some other time keyword such as "T_OBS". The name of a PrimeKey need not be specified if you know the order in which they are defined. In a dataseries that is effectively a time series, the standard is that the first PrimeKey will be the the ordering time keyword.

Using the lookdata Tool

The lookdata utility can be used for searching, examining, and exporting data. There is documentation at Lookdata Wiki Page and at the PDF Tutorial. Lookdata helps you search for a data series, gives information about the series you select, allows to you build up a RecordSet query, reports Keyword values for the records you select, allows you to graph the values of Keyword Series, and transfers the results of your search to the exportdata utility described above.

Note About Notation for Time

The JSOC DRMS time parsing code can recognize several formats for expressing time. In particular it understands a subset of ISO-8601 formats such as 2010-07-25T13:30:00 and the SDO/HMI (and SOHO/MDI) format of 2010.07.25_13:30_00. Trailing time or date parts that are omitted default to the start of the respecitve interval. E.g. 2010.07.25_13 corresponds to 13:00 UTC on 25 July 2010 as one would expect. If the ISO format is used, at least the hour part must be present so the programs can tell the difference between an ISO time and a range of times. See JSOC-TN 07-001 for the full specification.

Time zones are a special topic. HMI data it time tagged in TAI time, "International Atomic Time", since they are observed on SDO using TAI time. There are no leap-seconds in TAI time as there are in UTC so for long time series such as the 14 year SOHO/MDI set of heliosiesmology data one does not need to worry about the 5 leap-seconds that were inserted during that time. All SDO data are intrinsically observed using TAI. For the convenience of people the times can also be expressed in UTC. HMI data has "nicer" time stamps when expressed in TAI. By choice, AIA uses UTC for most user-level time stamps. Either may be used for any JSOC data requests. Since the offset, now 34 seconds, is more than half the basic HMI obseving cadence of 45 seconds, you will often not get the record you expect if you use UTC to ask for HMI data. The default for an omitted time zone specifier is UTC. Thus if you ask for hmi.M_45s[2010.07.25] you will get the magnetogram labelled hmi.M_45s[2010.07.25_00:00:45_TAI].

The rule of thumb is: Use TAI when specifing HMI or MDI data but use UTC for AIA.

More About Prime Keys

A JSOC Dataseries may have multiple Prime Keys, between 0 and 15. Usually 1 or a few. When multiple Prime Keys are used, a record is fully specified by the complete set of keyword values for the PrimeKeys. The PrimeKeys can be thought of as a filter acting on the full set of records in the given dataseries. I.e. only records matching all of the given PrimeKey values will be selected. If some PrimeKeys are omitted then all records matching the given PrimeKeys but having any values for the omitted PrimeKeys will be returned.

The full set of PrimeKeys for each series are listed in lookdata both on the "Series Content" tab and at the top of the "RecordSet Select" tab. If you check the checkbox labelled "Check box to show the QueryBuilder" located just under the title "Select Records and Get Record Count" on the "RecordSet Select" tab, lookdata will provide you with an expanded template for building a recordset query using all of the available PrimeKeys.

Generally, each PrimeKey will be in some sense orthogonal to the others. They specify different quantities which are all needed for a unique record specification. This is not required. In fact, AIA and HMI each use both T_OBS and FSN as PrimeKeys for the "Level-1" dataseries. T_OBS is always the time of observation of a quantity. For the low-level HMI and AIA data, "FSN" is the "Frame Sequence Number" and is a unique number provided by the onboard software when each image is created. Since no two images can be made at exactly the same time, FSN is redundant with T_OBS. However, rounded to the nearest second and in testing multiple images can be obtained with the same T_OBS rounded value. But the reason we chose to use both for this low-level data is that the data is generated based on FSN but used based on T_OBS. You should use "T_OBS" for aia.lev1 data unless you really know what you are after.

While the built-in PrimeKey formats are convenient with notation like "2010.07.25/6h" sometimes the user wants to either build a query from other not Prime Keywords or to make a query that is noyt easy to specify using the PrimeKey special logic. In those cases we provide the ability to specify one or more very geenral SQL "Where" clauses. An SQL where clause contents may be provided in one or more "[? ... ?]" or "[! ... !]" clauses. The word "where" is not needed, or allowed.