CREATE TABLE hit #this is ~45 bytes/record right now -> factor of 6 expansion from raw data.. not too bad?
(
hitid BIGINT UNSIGNED AUTO_INCREMENT KEY NOT NULL,
eventpower FLOAT NOT NULL,
meanpower FLOAT NOT NULL,
binnum INT UNSIGNED NOT NULL,
topocentric_freq DOUBLE NOT NULL,
barycentric_freq DOUBLE,
q_pix BIGINT SIGNED,
rfi_checked TINYINT UNSIGNED,
rfi_found TINYINT UNSIGNED,
searched TINYINT UNSIGNED,
reserved INT,
specid INT UNSIGNED
); #Total 55 bytes
CREATE TABLE config
(
specid INT UNSIGNED NOT NULL AUTO_INCREMENT,
PRIMARY KEY(specID),
thrscale TINYINT UNSIGNED NOT NULL, #bee2 units
thrlimit TINYINT UNSIGNED NOT NULL,
fftshift SMALLINT UNSIGNED NOT NULL,
pfbshift SMALLINT UNSIGNED NOT NULL,
beamnum TINYINT UNSIGNED NOT NULL, #moved these four to save space, and ra/dec was redundant w/ qpix
obstime DOUBLE NOT NULL, #MJD
ra FLOAT(9,6) NOT NULL, #decimal degrees
decl FLOAT(9,6) NOT NULL, #decimal degrees
digital_lo FLOAT UNSIGNED NOT NULL, #LGS
board CHAR(2) NOT NULL, #Two letter board designation (e.g. 'B2', 'RO')
AGC_Az FLOAT(9,6) NOT NULL,
AGC_Za FLOAT(9,6) NOT NULL,
AlfaFirstBias INT UNSIGNED NOT NULL,
AlfaSecondBias INT UNSIGNED NOT NULL,
AlfaMotorPosition FLOAT(9,6) NOT NULL,
synI_freqHz DOUBLE NOT NULL,
IF1_synI_ampDB INT UNSIGNED NOT NULL,
IF1_rfFreq DOUBLE NOT NULL,
IF1_if1FrqMhz DOUBLE NOT NULL,
IF1_alfaFb TINYINT UNSIGNED NOT NULL, #Instead of nbfilter LGS
TT_TurretEncoder INT NOT NULL,
TT_TurretDegrees FLOAT(9,6) NOT NULL,
rawfile CHAR(24)
); #117 bytes
CREATE TABLE spec
(
specid INT UNSIGNED NOT NULL,
coarsespec BLOB #entire coarse spectrum in concatenated 32 bit powers
); #Total 16k bytes
~
CREATE TABLE hit
(
hitid BIGINT UNSIGNED AUTO_INCREMENT KEY NOT NULL,
eventpower FLOAT NOT NULL,
meanpower FLOAT NOT NULL,
binnum INT UNSIGNED NOT NULL,
freq FLOAT NOT NULL,
barycentric_freq FLOAT,
beamnum TINYINT UNSIGNED NOT NULL,
obstime FLOAT NOT NULL #MJD
ra FLOAT NOT NULL,
decl FLOAT NOT NULL,
q_pix BIGINT SIGNED,
rfi_checked TINYINT UNSIGNED,
rfi_found TINYINT UNSIGNED,
searched TINYINT UNSIGNED,
reserved INT,
configID TINYINT UNSIGNED,
specid INT UNSIGNED
);
CREATE TABLE config
(
configID TINYINT UNSIGNED NOT NULL,
PRIMARY KEY(configID),
thrscale TINYINT UNSIGNED NOT NULL, #units?
thrlimit TINYINT UNSIGNED NOT NULL,
nbfilter TINYINT UNSIGNED NOT NULL, #narrow band filter in? 0=no; 1=yes
fftshift SMALLINT UNSIGNED NOT NULL,
pfbshift SMALLINT UNSIGNED NOT NULL,
board CHAR(2) NOT NULL #Two letter board designation (e.g. 'B2', 'RO')
);
CREATE TABLE spec
(
specid INT UNSIGNED NOT NULL,
coarsespec BLOB,
scram TEXT, #Or TINYTEXT? - would it be horrible to just pull out the values? might be cleaner?
AGC_Az FLOAT NOT NULL,
AGC_Za FLOAT NOT NULL,
AlfaFirstBias INT UNSIGNED NOT NULL,
AlfaSecondBias INT UNSIGNED NOT NULL,
AlfaMotorPosition FLOAT NOT NULL,
synI_freqHz DOUBLE NOT NULL,
IF1_synI_ampDB UNSIGNED INT NOT NULL,
IF1_rfFreq DOUBLE NOT NULL,
IF1_if1FrqMhz FLOAT NOT NULL,
TT_TurretEncoder INT NOT NULL,
TT_TurretDegrees FLOAT NOT NULL,
rawfile CHAR(24),
rfcenter FLOAT
);
create table hits (
id serial8 not null ,
result_id int8, -- references result
peak_power smallfloat not null , --event power
mean_power smallfloat not null , -- threshold power
time float not null , --time
ra smallfloat not null , --right ascension
decl smallfloat not null , --declination
q_pix int8 not null , --qpix value
coarse_bin int16 not null , --coarse bin number
fine_bin int16 not null , --fine bin number
beam_num int8 not null , --beam number
scram_id int16 not null, --pointer to a unique alfa setup
rfi_checked smallint, --checked for rfi?
rfi_found smallint, --rfi weighting?
reserved integer
An example SCRAM header
SCRAM AGC AGC_SysTime 1236650082 AGC_Az 133.206400 AGC_Za 5.561100 AGC_Time
78882026 AGC_LST 0.000000 AGC_Ra 0.000000 AGC_Dec 0.000000
SCRAM ALFASHM ALFASHM_SysTime 1236650082 ALFASHM_AlfaFirstBias 255
ALFASHM_AlfaSecondBias 63 ALFASHM_AlfaMotorPosition 61.335464
SCRAM IF1 IF1_SysTime 1236650082 IF1_synI_freqHz_0 1625000000.000000
IF1_synI_ampDB_0 1500 IF1_rfFreq 1375000000.000000 IF1_if1FrqMhz 0.000000
IF1_alfaFb 0
SCRAM IF2 IF2_SysTime 1236650082 IF2_useAlfa 1
SCRAM TT TT_SysTime 1236650082 TT_TurretEncoder 12729 TT_TurretDegrees
26.637137
Example Header
<8f>ÿ<80>^X^@^@^@^GHEADER
^@HEADER_SIZE 4096
^@DATA_SIZE 819728
^@NAME NoName
^@DSI 0
^@FRAMESEQ 340138
^@DATASEQ 1036418
^@IDLECOUNT 696280
^@MISSED 0
^@AST 1133516201479
^@SYNTH 6936520000000 0 1420000000
^@ENG
^@RECEIVER alfa
^@SAMPLERATE 2.500000
^@VER 2.00
^@SCRAM AGC AGC_SysTime 1322770814 AGC_Az 180.001200 AGC_Za 14.999900
AGC_Time 58814017 AGC_LST
-
531401037251780825636587599904212012639396619732347172842128890097399499499
5621064806304670425032319
319930465788549226676808739915925371739460987196007348791827079941548676023
7686103337328912488367762
790585538134681320831878096722361084753722896837981861941855723969391872246
0166327387117488103718125
5680.000000 AGC_Ra 2.000000 AGC_Dec 0.000000 ^@SCRAM ALFASHM
ALFASHM_SysTime 1322770814
ALFASHM_AlfaFirstBias 255 ALFASHM_AlfaSecondBias 63
ALFASHM_AlfaMotorPosition 49.999939 ^@SCRAM IF1
IF1_SysTime 1322770814 IF1_synI_freqHz_0 1625000000.000000
IF1_synI_ampDB_0 1500 IF1_rfFreq
1375000000.000000 IF1_if1FrqMhz 0.000000 IF1_alfaFb 0
^@SCRAM IF2 IF2_SysTime 1322770814 IF2_useAlfa 1
^@SCRAM TT TT_SysTime 1322770814 TT_TurretEncoder 12728 TT_TurretDegrees
26.635045
^@CONFIG_BLOCK
^@# SETI@home data recorder configuration file
^@# beam_res is in degrees
^@#limited_run 2000
^@#use_fake_data
^@#very_verbose
^@# uncomment skip_scram and no_synth to force data taking during non-alfa
times
^@#skip_scram
^@no_synth
^@### synth_step_synth was commented out on 7/7/06 by jeffc. This turns
off frequency
^@### stepping and was done so that we could start distributing WUs before
we make
^@### the client changes needed to handle frequency stepping.
^@#synth_step_synth
^@trigger_file_name ./dr2_run_trigger
^@num_data_streams 1
^@beam_res 0.05
^@quicklook_interval 4
^@quicklook_freq 1420000000
^@quicklook_bufs 64
^@freq_steps 1420000000 1422500000 1417500000 1425000000
1415000000 1427500000 1412500000
1430000000 1410000000 1432500000 1407500000 1435000000 1405000000
1437500000 1402500000 1440000000
1400000000 1442500000 1397500000 1445000000 1395000000
^@min_synth_freq 50000000
^@max_synth_freq 450000000
^@min_rec_freq 1200000000
^@max_rec_freq 1530000000
^@filtered_min_rec_freq 1380000000
^@filtered_max_rec_freq 1500000000
^@sample_rate 2.5
^@receiver alfa
^@num_m_in_d 8
^@#num_m_in_d 128
^@num_diskbufs 4
^@#num_diskbufs 6
^@synth_model PTS500
^@# min_vgc 525 = 65536/5v * .04v <- the correct value
^@#min_vgc 525
^@turret_degrees_alfa 26.62
^@turret_degrees_tolerance 1
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^
@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^
@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^
@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^
@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^
@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^
@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^
@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^
@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^
@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^
@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^
@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^
@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@END_OF_CO
NFIG_BLOCK
^@END_OF_HEADER
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^
@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^
@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^
@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^
@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^
@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^
@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^
@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^
@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^
@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^
@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^
@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^
@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^
@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^
@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^
@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^
@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^
@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^
@^@^@^@^@^@^@^@^@^@^@^@^@
^@^@^@^@^@^@^@^@^@<90>^A^@^@^@^@^@Þ^@^@^@^@^@^@^@BEE2 STATUS: Wed Nov 23
18:08:59 AST 2011 PFB
SHIFT: 268435455 FFT SHIFT: 28398 THRESH LIMIT: 25 THRESH SCALE: 80 TENGE
PORT: 33001 TENGE IP:
167772161