What is FITS? FITS = Flexible Image Transport System

Slides:



Advertisements
Similar presentations
IVOA, Pune India September Data Access Layer Working Group Pune Workshop Summary Doug Tody National Radio Astronomy Observatory International.
Advertisements

Introduction to the BinX Library eDIKT project team Ted Wen Robert Carroll
Data Format Description Language (DFDL) WG Martin Westhead EPCC, University of Edinburgh Alan Chappell PNNL
Data formats in e-Science Two key requirements Two key requirements –Interoperability and Scalability –XML is flexible, but verbose –Binary formats are.
E-Science Data Information and Knowledge Transformation BinX – A Tool for Binary File Access eDIKT project team Ted Wen
Overview of programming in C C is a fast, efficient, flexible programming language Paradigm: C is procedural (like Fortran, Pascal), not object oriented.
INSTRUCTION SET ARCHITECTURES
ICOM 6005 – Database Management Systems Design Dr. Manuel Rodríguez-Martínez Electrical and Computer Engineering Department Lecture 8 – File Structures.
Dr. Kalpakis CMSC 661, Principles of Database Systems Representing Data Elements [12]
E-Science Data Information and Knowledge Transformation The BinX Language.
ILDG File Format Chip Watson, for Middleware & MetaData Working Groups.
Variable Length Data and Records Eswara Satya Pavan Rajesh Pinapala CS 257 ID: 221.
NetCDF An Effective Way to Store and Retrieve Scientific Datasets Jianwei Li 02/11/2002.
CPSC 231 Managing Files of Records (D.H.) 1 Learning Objectives Concept of key - primary and secondary keys. Sequential versus direct access. RRN Use of.
Chapter 12.2: Records Kristen Mori CS 257 – Spring /4/2008.
Portability CPSC 315 – Programming Studio Spring 2008 Material from The Practice of Programming, by Pike and Kernighan.
Computer Science: A Structured Programming Approach Using C1 Objectives ❏ To understand the structure of a C-language program. ❏ To write your first C.
CS 255: Database System Principles slides: Variable length data and record By:- Arunesh Joshi( 107) Id: Cs257_107_ch13_13.7.
BinX and Astronomy Bob Mann Institute for Astronomy and National e-Science Centre.
Final Exam Review Instructor : Yuan Long CSC2010 Introduction to Computer Science Apr. 23, 2013.
Beyond Record Structures Dr. Robert J. Hammell Assistant Professor Towson University Computer and Information Sciences Department 8000 York Road - Suite.
 Value, Variable and Data Type  Type Conversion  Arithmetic Expression Evaluation  Scope of variable.
Segmentation & O/S Input/Output Chapter 4 & 5 Tuesday, April 3, 2007.
CMPT 454, Simon Fraser University, Fall 2009, Martin Ester 75 Database Systems II Record Organization.
The HDF Group HDF5 Datasets and I/O Dataset storage and its effect on performance May 30-31, 2012HDF5 Workshop at PSI 1.
Data Storage Choices File or Database ? Binary or Text file ? Variable or fixed record length ? Choice of text file record and field delimiters XML anyone.
The netCDF-4 data model and format Russ Rew, UCAR Unidata NetCDF Workshop 25 October 2012.
Sizing Basics  Why Size?  When to size  Sizing issues:  Bits and Bytes  Blocks (aka pages) of Data  Different Data types  Row Size  Table Sizing.
Types in APL – The SimCorp Way Dyalog User Conference 2007 Lars Stampe Villadsen, SimCorp A/S (Denmark)
The HDF Group Introduction to netCDF-4 Elena Pourmal The HDF Group 110/17/2015.
COS PIPELINE CDR Jim Rose July 23, 2001OPUS Science Data Processing Space Telescope Science Institute 1 of 12 Science Data Processing
E-Science Data Information and Knowledge Transformation BinX – A Tool for Binary File Access eDIKT project team Ted Wen
Madhuri Gollu Id: 207. Agenda Agenda  Records with Variable Length Fields  Records with Repeating Fields  Variable Format Records  Records that do.
Binary IO Writing and Reading Raw Data. Files Two major flavors of file: Text Binary.
CSI 3125, Data Types, page 1 Data types Outline Primitive data types Structured data types Strings Enumerated types Arrays Records Pointers Reading assignment.
Copyright © 2010 The HDF Group. All Rights Reserved1 Data Storage and I/O in HDF5.
CS 257: Database System Principles Variable length data and record BY Govind Kalyankar Class Id: 107.
Proposed Changes to the FITS Data Format
Chapter 3 Data Representation
Geog. 314 Working with tables.
ASN.1: Introduction Zdeněk Říha.
CHP - 9 File Structures.
SRNWP Interoperability Workshop
Chapter 7 Text Input/Output Objectives
Module 2: Creating Data Types and Tables
Introduction to the C Language
A Closer Look at Instruction Set Architectures
Chapter 6: Data Types Lectures # 10.
CPSC 231 Managing Files of Records (D.H.)
Object Oriented Programming
CPSC 315 – Programming Studio Spring 2012
Net 323 D: Networks Protocols
CS 245: Database System Principles Notes 03: Disk Organization
ILDG Implementation Status
Introduction to the C Language
Introduction to the C Language
Data.
Portability CPSC 315 – Programming Studio
Data Types & File Size Calculations
File I/O in C Lecture 7 Narrator: Lecture 7: File I/O in C.
Net 323 D: Networks Protocols
CSCI-1680 RPC and Data Representation
High Level Programming Languages
CS 245: Database System Principles Disk Organization
Variable Length Data and Records
Comp Org & Assembly Lang
Real-World File Structures
VIJAYA PAMIDI CS 257- Sec 01 ID:102
Beyond Record Structures
Lecture 20: Representing Data Elements
Presentation transcript:

What is FITS? FITS = Flexible Image Transport System Invented ~1980 to transfer Radio Astronomy datasets from one observatory to another Format now used by most astronomical software Widely used as data archive format FITSIO and other libraries developed to read/write FITS efficiently using C, Fortran, Perl, Python, Java… Always big-endian (so portable) Format defined to the last bit in primary literature. Images and binary tables fairly space-efficient.

FITS Structure in outline Any number of Header-Data units (HDUs) Header has metadata: lines of 80 characters NAME = value /[units] other commentary A few reserved names, e.g. DATE-OBS, no rules otherwise Data section can be Image or Table Image: 8, 16, 32-bit integers, 32 or 64-bit floats Up to 999 dimensions (mostly 2 or 3 dimensions) Table up to 999 columns, up to 2 billion rows 8/16/32-bit integers, 32/64-bit floats, strings, logical, 64/128-bit complex. Vector columns (optional variable length vectors) Null values can be defined

What’s wrong with FITS Flat structure for metadata, single name-space, only 8-character names Blocked in units of 2880 bytes Length of data unit must be declared in header unit, so cannot stream output No structure to HDUs, just a simple list No direct access to HDUs, have to decode each header in turn to find size of data unit. Always big-endian, requires byte-swap on most popular platforms. Not quite fully 64-bit clean

What’s wrong with VOTable Three alternative ways of including binary: Pure XML but very verbose, 4-byte real may turn into ~24 bytes, e.g. <TD>-0.12345678E-04</TD> Blob encoded in Base64 Pointer to separate FITS file Possible loss of linkage Duplication of header data Tabular datasets only, no format yet for images, spectra, etc. Cannot use direct offset to required row or field

What we want Flexible header to contain metadata XML very suitable Data section to contain heterogeneous data (table) or homogeneous (image etc) but to be efficient, evenly spaced Binary formats as in FITS very suitable Endian-neutral Suitable for streaming data

VOTable++ or FITS++? Use MIME/DIME to have separate sections of file, as proposed for BinX, and have: XML-based header, very similar to VOTable Binary data units to follow, similar to FITS Use BinX/DFDL in header to describe data unit. Can choose big or little-endian when file created Allow streaming format for tables, no pre-defined length. Allow FITS HDU as special case of data unit for compatibility. Make fully 64-bit clean for tables >2Grows.