JVO Skynode Toolkit

Yuji Shirasaki
National Astronomical Observatory of Japan

Objectives
 Provide a toolkit for exposing the relational

database via VO interface.
 It becomes possible for a data provider to make a VO

compliant data service without precise knowledge
about VO standard.
 For developing distributed database system basedon VOQL.
 Testing the ADQL spec.
 Testing the SkyNode interface.
 Feedback to the VOQL WG.

Functionalities


Basic Skynode + Cross matchRegion search based on HTM index
File upload & cross match based on proximity criteria
 multiple regions search
ADQL Core syntax + some extensions
performQuery, queryCost, xmatch, table(s), column(s)SIAP & SSAP equivalent service.


ADQL query even for the image & spectrum data.
Data calculated dynamically on a request is treated as afunction column.

Architecture
SkyNode IN

SIAP/SSAP/SkyNode OUT

Parameter

ADQL VOTable

VOTableController

Customizable(Java)QL Converter

Resource

Interface

SIAP/SSAP IN

JDBCSQL forbackend DB

Formatter
uploadJDBC
Main
DBResultSetMetadataDB

Required Software Java ( tested on 1.4.2 and 1.5.0 ) Tomcat ( servlet container, http interface ) PostgreSQL ( Relational DBMS ) or others.
 SkyNode toolkit

http://jvo.nao.ac.jp/download/skynode-toolkit
 If you want to build from source files
 Ant ( Java-based build tool ) JavaCC ( Java Parser Generator, SQL parser )Minimum procedure for building askynode Install Java, tomcat, RDBMS and skynode toolkit.
 Prepare database for your data.
 Register metadata of your relational table(s).
 Create HTM index table as required.
 Start tomcat container and deploy the web serviceapplication.
 Instruction for building a sample skynode is
described at
http://jvo.nao.ac.jp/download/skynodetoolkit/instruction.txt

Example : QSO Catalog
 How to build a skynode service on the following

QSO table.
qso=# select * from qso_veron_2003;
id|
name| raj2000| dej2000 |z| v_mag |-------+-------------------+------------+-----------+-------+-------+
1 | FIRST J00000-0202 | 00 00 01.3 | -02 02 00 | 1.356 | 19.64 |2 | 2QZ J000001-3036 | 00 00 01.4 | -30 36 27 | 1.143 | 20.10 |3 | 2QZ J000001-3122 | 00 00 01.7 | -31 22 26 | 1.331 | 20.69 |4 | XMM J00000-2511| 00 00 02.7 | -25 11 37 | 1.314 | 21.00 |…

Metadata Registration
 Metadata of the database, table and columns

must be registered.

 Database – name, database URL, JDBC driver name,access user name, password, description.
 Table – name, db name, description, etc…
 Column – name, db name, table name, data type,UCD, unit, description…

 Methods for the registration:
 Command line script Graphical user interface (under development)

Metadata registration
1. Create metadata tables.
2. Generate a template of metadata file and edit
the file. (example)
3. Register the metadata.
$ createdb metadb # For PostgreSQL$ meta-op create # -- (1)$ skynode-ops template –d qso –t ¥qso_veron_2003 –f template.dat # -- (2)$ meta-op register –f template.dat # -- (3)Creating HTM index
Create an HTM index table for region search.
$ skynode-op htm –d qso –t qso_veron_2003 ¥–col-ra raj2000 –col-dec dej200 –l 18

This will create a table named “_htm_18_qso_verson_2003”.
$ psql qso
qso=# select * from _htm_18_qso_veron_2003;
id|
htm_index-------+--------------1 | 549782062857
2 | 556618233970
3 | 556502057816

Region Search
SELECT *FROM
qso_veron_2003 qso
WHERE Region('Circle 189.20625 62.216111 0.1')

SELECT *FROM
qso_veron_2003 qso
natural join
(SELECT t1.idFROM_htm_18_qso_veron_2003 t1
join _region t2ON t1.htm between t2.low and t2.high)Summary Skynode toolkit is available at:
 http://jvo.nao.ac.jp/download/skynode-toolkit

 Instruction manual is also available at above URL
 More detailed usage will be included.