IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 31390


Ignore:
Timestamp:
Apr 27, 2011, 9:50:52 AM (15 years ago)
Author:
rhenders
Message:

working version. loops through all available FITS files and ingest them into a MySQL database

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/ippToPsps/jython/dvoToMySQL.py

    r31367 r31390  
    77import os
    88import logging
     9import glob
    910from subprocess import call, PIPE, Popen
    1011
     
    4344
    4445        # create DVO tables
    45         self.scratchDb.createDvoTables()
     46        #self.scratchDb.createDvoTables()
    4647
    4748        # import Images.dat table
     49        sql = "DELETE FROM dvoMetaFull"
     50        self.scratchDb.stmt.execute(sql)
     51
    4852        imagesTableName = self.importFits(self.pathToDvo,
    4953                "",
     
    5256        self.scratchDb.createIndex(imagesTableName, "IMAGE_ID")
    5357
    54         # insert into dvoMeta
     58        # insert into dvoMetaFull
    5559        self.logger.info("Inserting all image meta data into database")
    56         sql = "INSERT INTO dvoMeta ( \
     60        sql = "INSERT INTO dvoMetaFull ( \
    5761               sourceID, \
    5862               imageID, \
     
    6670               FROM " + imagesTableName
    6771        self.scratchDb.stmt.execute(sql)
    68 
     72       
    6973        subdirs = ['n0000']
    7074
    7175        for subdir in subdirs:
    7276
    73             files = ['0247.06', '0244.06', '0244.10']
     77            files = glob.glob(pathToDvo + "/" + subdir + "/*.cpm")
     78
     79            #files = ['0247.06', '0244.06', '0244.10']
    7480
    7581            for file in files:
    7682
    77                 self.logger.info("---------------------------------------------")
     83                # get just filename, without extension
     84                file = os.path.basename(os.path.splitext(file)[0])
     85                self.logger.info("---------------------------------------------: " + file)
     86
     87                if self.scratchDb.alreadyImportedThisDvoTable(file): continue
    7888
    7989                # import cpm table and index
     
    112122                self.scratchDb.stmt.execute(sql)
    113123
    114                 # now put everything into dvoDetection table
    115                 self.logger.info("Putting everything into dvoDetection table")
    116                 sql = "INSERT INTO dvoDetection (\
     124                self.logger.info("Putting everything into dvoDetectionFull table")
     125                sql = "INSERT IGNORE INTO dvoDetectionFull (\
    117126                       sourceID \
    118127                       ,imageID \
     
    137146                self.scratchDb.dropTable(cpmTableName)
    138147                self.scratchDb.dropTable(cptTableName)
    139        
     148       
     149                self.scratchDb.setImportedThisDvoTable(file)
     150
    140151        self.scratchDb.dropTable(imagesTableName)
    141152
     
    176187
    177188          #try:
     189          self.logger.info("Writing FITS table to database")
    178190          table.cmd_keepcols(columns).write(self.scratchDb.url + '#' + tableName)
    179191          #except:
     
    190202
    191203dvoToMySql = DvoToMySql(logger, "/data/ipp005.0/gpc1/catdirs/MD04.merges/MD04.merge")
     204#dvoToMySql = DvoToMySql(logger, "/export/ippc00.1/rhenders/MD04.merge")
    192205
    193206logger.info("Program complete")
Note: See TracChangeset for help on using the changeset viewer.