====== BioCASe Transfer from DC to BioCASe MySQL DB ====== FIXME ; server : ganapti/ganesh ; script : ''/home/biocase/transfer/Transfer2/transfer_data.py'' ; database schema : [[biocase:DBSchema]] ; git : [[https://datacenter.zfmk.de/gitlab/BioCASe/biocase_media|gitlab@fredie.eu/BioCASe/biocase_media.git]] ; GBOL : [[GBOL:import_data|BioCASe queries]] ---- ===== Software Package ===== ; DOI : https://doi.org/10.20363/zfmk-app.vcat-transfer-mapping_version_9 ; Tag : https://fredie.eu/gitlab/BioCASe/biocase_media/tags/mapping_version_9 ==== Shortcuts in puTTY unter byobu ==== * ''linke Maustaste'' und etwas markieren - Kopieren des Markierten in die Zwischenablage * ''rechte Maustaste'' - Einfügen der Zwischenablage (entspricht Strg-V) * ''Strg + A'', loslassen und dann ''0'' oder ''1'' oder .... - man springt zu dem schon geöffneten Fenster mit der entsprechenden Zahl * ''Strg + A und dann C'' oder ''F2'' - neuer Tab * ''Strg + A und dann K'' - Schließen des Tabs (nicht der ganzen Anwendung) * ''Strg + C'' - Prozess beenden * ''Strg + D'' oder ''exit'' - Programm beenden * ''Pfeil nach oben'' - schreibt den letzten verwendeten Befehl in die Kommandozeile * ''F4'' - Sprung in den nächsten Tab/Fenster * ''F5'' - Informationen neu laden * ''F6'' - byobu schließen, die Prozesse bleiben aktiv und nach Neustart wieder verfügbar * ''F8'' - Tab umbenennen Mehr Infos unter: [[https://wiki.ubuntuusers.de/byobu/]] ===== Usage ===== Login into ''zfmk.datacenter.de'' using putty or ssh: ==== Vorbereitung ==== cd /home/biocase/transfer/Transfer2 source bin/activate Die Befehle zum Transfer immer in Fenster 0 (work) ausführen ggf. zuvor deaktivieren (quasi ausloggen): deactivate ==== Transfer one single project ==== ''python Transfer.py -p 656'' * transfer into BioCASe, * creates the archive * and updates the BinHUM database Die Nummer hinter p ist die ID des Projektes (hier: ZFMK-Opiliones), das übertragen werden soll. Diese kann man auch in Projects auslesen. ==== Transfer all projects into BioCASe ==== ''python Transfer.py -s'' ==== Vergleich der Versionsnummern ==== ''python Transfer.py -v'' * Vergleicht die Versionsnummern in BioCASe und Projects. * Bei einer Änderung wird das Transfer-Skript (mit -p) aufgerufen. * Dieser Parameter ist ohne Projektnummer aufzurufen. ==== Hilfe für Transfer-Script ==== ''python Transfer.py -h'' ==== Monitor progress/Log-files: ==== ''less log/transfer.log'' * in Fenster 1 (less) ausführen, bzw. dort läuft dann der Log ==== Ausführen der Warteschlange ==== ''python T_Queue.py'' ==== Inhalt der Warteschlange ==== ''python T_Queue.py -l'' ==== Löschen der Warteschlange ==== ''python T_Queue.py -q'' ==== Hilfe für Warteschlange ==== ''python T_Queue.py -h'' Die beiden Skripte Transfer und Queue interagieren miteinander: Transfer stellt die Befehle zum transferiern, Archiv erzeugen usw. in die Warteschlange. Die Warteschlange wird regelmäßig aufgerufen und arbeitet die Befehle ab. Die Warteschlange wird alle 5 Minuten aufgerufen, muss also nur gestartet werden, wenn etwas schiefläuft (also z.B. kein Archiv erstellt wurde). ==== Auflisten der Projektnummern (Obereinheiten) ==== ''python Transfer.py -a'' *ZFMK - 600 *GBOL - 300 ===== Transfer Policies ===== ; Specimen : accession number is not empty, withholding reason empty, transaction not embargo ; Identification : only the first one ; Agents : withholding reason empty ; Event : withholding reason empty ; Media : only images with creator and license type fields filled out ===== Development ===== Development Environment: sudo mount /var/svzfmkfs02 sudo mkdir /var/www/biocase/biocase_media python Transfer.py -c 707 -r -n Test: ll /mnt/svzfmkfs02//CollDig/Coll_Oberthuer_CollDig/CollOberthuer_Kaesteninhalt/Ob0099.jpg in fstab: //131.220.75.247/Resources /var/svzfmkfs02 cifs credentials=/home/mdb_smb/.smbcredentials,uid=1001,gid=100,port=8067,file_mode=0664,dir_mode=0775,noauto,iocharset=utf8 0 0 ==== ToDo ==== ==== Relations ==== Nach Transfer: - Füge **ALLE** Unit-IDs (=Acc-Nos) + AccessPoint + Collection in ''ZFMK_BioCASE_Data.Registry'' ein - Suche für alle Einträge in ''CollectionSpecimenRelation'' mit dem ''RelatedSpecimenDisplayText'' (=Acc. No des targets) in der ''Registry'' die Unit-ID, den AccessPoint und die Collection raus und füge sie ein * Gehe durch **ALLE** DSAs und aktualiesiere die Relations mit Schritt 2! === Beispiel BGBM === MfN Mollusc Collection 119736 same in situ individual http://ww3.bgbm.org/biocase/pywrapper.cgi?dsa=GGBN_MfN_specimens ===== Tests ===== | CollectionSpecimen | 19 | | IdentificationUnits | 30 | | Identifications | 35 | | SpecimenParts | 31 | | IdentificationUnits_in_Parts | 41 | | Specimen images | 6 | | IdentificationUnitAnalysis | 5 | | Barcodes | 2 | ^ Preview ^ Type ^ Acc-No ^ Col Spec. ID ^ Event ^ IdentificationUnit1 ^ Identification1 ^ IdentificationUnit2 ^ Identification2 ^ SpecimenPart1 ^ SpecimenPart2 ^ Transaction ^ GBOL-Barcode ^ Measurements ^ Internal Relation ^ External Relation ^ Annotation ^ | {{ :biocase:zfmk-test_kr-m-0028821-31662.png?250 }} | GBOL | KR-M-0028821 - Barcoding 95 | 31662 | 28773 | x | x | x | x | x | | | x | | | | | | {{ :biocase:zfmk-test_kr-m-0028821-31662.png?250 }} | Mammalia | MAM 2016-0587-t Measurements | 224079503 | 610384 | x | x | | | x | x | | | x | | | | | {{ :biocase:zfmk-test_ob-0100-t-223977534.png?250 }} | Coleoptera | Ob-0100-t - Insect Box - 11 families | 223977534 | | x | x | x | x | x | x | | | | | | | | {{ :biocase:zfmk-test_test-0981-223850707.png?250 }} | Ichtyology | Test-0981 - Geographic region | 223850707 | 365856 | x | x | | | | | | | | | | | | {{ :biocase:zfmk-test_zfmk-col_3489134-s-100428137.png?250 }} | Coleoptera | ZFMK-COL 3489134-s | 100428137 | 127106 | x | x | | | x | x | | | | | x | | | {{ :biocase:zfmk-test_zfmk-dna-12927-t-223950737.png?250 }} | Biobank | ZFMK-DNA-12927-t | 223950737 | 65061 | x | x | | | x | | | | | | x | | | {{ :biocase:zfmk-test_zfmk-het_10002287-100428131.png?250 }} | Hymenoptera | ZFMK-HET 10002287 | 100428131 | | x | x | | | x | | Sammelgenehmigung | | | | | | | {{ :biocase:zfmk-test_zfmk-hom-20001243-10000737.png?250 }} | Hymenoptera | ZFMK-HOM 20001243 - 2 Subparts | 10000737 | 35880 | x | x | | | x | x | | | | | | | | {{ :biocase:zfmk-test_zfmk-mam_19130186-t-223746247.png?250 }} | General | ZFMK-MAM 19130186-t - Internal Relation 1b | 223746247 | 44482 | x | x | | | x | x | | | | 223746248 | | | |{{ :biocase:zfmk-test_zfmk-mam_19130195-t-223746248.png?250 |}}| General | ZFMK-MAM 19130195-t - Internal Relation 1a | 223746248 | 44482 | x | x | | | x | | | | | 223746247 | x | | | {{ :biocase:zfmk-test_zfmk-mam_19790138-t-223746249.png?250 }} | Mammalia | ZFMK-MAM 19790138-t | 223746249 | 53617 | x | x | | | x | x | Permit | | | | | | | {{ :biocase:zfmk-test_zfmk-mam_20080222-223849502.png?250 }} | Mammalia | ZFMK-MAM 20080222 | 223849502 | 363926 | x | x | | | x | | | | | x | | | | {{ :biocase:zfmk-test_zfmk-mam_223746244-t-223746244.png?250 }} | General | ZFMK-MAM 223746244-t | 223746244 | 52026 | x | x | | | x | x | | | | x: specimen: 223946097, identification unit: 223746246, part: 223746245 | | | | {{ :biocase:zfmk-test_zfmk-zfmk-mam_223746245-t-223746245.png?250 }} | General | ZFMK-MAM 223746245-t | 223746245 | 305354 | x | x | | | x | x | | | | 223746244 | | | | {{ :biocase:zfmk-test_zfmk-zfmk-mam_223746246-t-223746246.png?250 }} | General | ZFMK-MAM 223746246-t | 223746246 | 293835 | x | x | | | x | x | | | x | 223746244 | | | |{{ :biocase:zfmk-test_zfmk-mam_223946097-t-223946097.png?250 |}}| General | ZFMK-MAM 223946097-t | 223946097 | 52026 | x | x | | | x | x | | | | 223746244 | | | |{{ :biocase:zfmk-test_zfmk-tis-12498-t-224074730.png?250 |}}| GBOL | ZFMK-TIS-12498-t | 224074730 | 608013 | x | x | | | x | | | | | | | x | | {{ :biocase:zfmk-test_zfmk-tis-1307-t-223891263.png?250 }} | GBOL | ZFMK-TIS-1307-t Dataset GBOL w/o Barcode | 223891263 | 67299 | x | x | | | x | | | | | | x | | | {{ :biocase:zfmk-test_zfmk-tis-223865258-t-223865258.png?250 }} | GBOL | ZFMK-TIS-223865258-t | 223865258 | | x | x | | | x | | | x | | | | |