Skip to content

meeting_20170711

okbp edited this page Jul 11, 2017 · 20 revisions

2017-07-11 打合せ

日時: 2017-07-11(火)13:30-
場所: W207
参加: 岡別府、大石、藤澤、児玉、

アジェンダ

進捗確認

  • BioProject Validationの実装(23/27)

  • DRA Validationの実装(2/32)

  • スパコンに endpoint を準備 検討資料

  • private tax dump - rdf - import を daily で回す処理構築、import に 20 min 程度かかるので二式切り替え方式 [検討資料]

  • api サーバ本番とテスト環境セットアップ

  • deasy 業務用スパコンアカウント情報共有

  • biosample, bioprojectにobjectカラムを追加する【Todo 岡別府】

  • 現状のBioSampleValidationルールのスナップショットをとりバージョン0.9等としてGitHubに保存する。conf等も含めた形で保存する(岡別府)【Todo】

  • ルールのlocationの箇所をXPathに書き直す(岡別府) 【Todo】

  • biosample package の rdf に tsv での提供順情報を持たせる [todo 藤澤]

  • ncbi utility での pubmed id 実在チェックは warning なので、通信エラーになったらその旨を返すようにして 500 エラーでストップさせない biosample rule 11 bioproject rule 14 (児玉) [todo 岡別府]

仕様確認事項

  • 同一カテゴリの複数ファイル送信について 組み合わせが間違えていた場合、不正な要求(400)としてvalidationをせずに返したい
    NG例: $ curl -F "biosample=@SSUB000019_1.xml" -F "biosample=@SSUB000019_2.xml" "http://host:port/validation"
    だたし、bioprojectやsubmissionのように1つのXMLファイルに複数のオブジェクトが記述されているものは、validationでチェックする
  • BioSampleValidationの速度と実行状況API
    288サンプルでの実測値は8.2秒。最大1000サンプルとしても30秒で返ってくるためAPIの速度としては許容範囲。
    ただしDB系の接続や通信系がボトルネックになる環境(ネットワーク遅延)は考えられるので、jobのようにstatusを問い合わせるAPIは持たせた方が良い
  • APIのバージョンと仕様
    APIのURLのバージョンを含める
    http://host:port/validation/api/v0.9/{UUID} , http://host:port/validation/api/v1.0/{UUID}
    ※詳細は藤澤、岡別府、大石で詰める
  • Annotated sequence Validationについて
    既存webappにはAnnotated sequenceについても若干処理の記述がある(tsvであればAnnotated sequenceにする等)。
    前回までのAPI検討ではAnnotated sequenceについては想定していないので、組み込むとすれば仕様を検討する

内容

ルール変更

DRA rule 23, 24 Run と Analysis のデータファイル名
「空白を含まない」という緩い規則から「英数字 - _ .」のみから構成に強化
ルール

メモ

endpoint 実装

  • v0_9 ドット使える?
    → 使用可能(開発会議にて確認)   

  • 更新あると 0_9_1 インクリメント
    → セマンティックバージョニングに則り"0.9.0"等とする(開発会議にて決定) 

  • tax private 版なので validtor からのみアクセスに制限、private であることを示すグラフ名検討
    開発会議にて"taxonomy-private"と決定
    → スパコンTの相談、IP 制限、ロードバランサー、web サーバ

  • virtuoso は差分更新ができないので切り替え更新

  • t013 にすでにあるので IP 振ってもらう?web サーバたてる必要あり
    → t013 に validator 用 web サーバたてていいか apache or Nginx?SW 開発用サーバを運用に転用していいか? validator 設置サーバをどこに?運用チームがもってるところで?メール送信できる? todo: 来週の運用会議できく → t013 から外部にメール送信できることは確認済み(岡別府)

  • 深夜に切り替えで全更新、cron 深夜実施

  • 管理者、運用チームの管理者アドレス確認

  • メールできるかどうか確認、開発フェーズ

  • 死活監視 api、validator virtuoso 使っているサービス全部監、rdf 件数チェックプログラム

  • コーディネータ、藤澤さんにメール通知?通知方法を検討

  • nagios での監視が可能か?  

  • 運用にのせたときに業務用メールに切り替える  

  • E-utility 400 でエラー無視して validation 遂行、virtuoso db 落ちてたら validation できなかった旨のエラーを返す  

  • 運用管理者には細かい情報を含める、登録者にはみせない

  • guanine に daily dump している private tax dump に t013 からアクセスできるようにする、converter は github public にある [todo 児玉が運用、スパコンTに確認、日次更新の時間も確認、スパコンアカウント w3sw]

  • 構築サーバにテスト api サーバ実装、ruby bundler を git pull して build ツールを走らせてもらう [todo: 小菅さん], ruby version 確認 env → 開発会議にてrbenvでRubyインストール 

  • rdf 属性の順番 package ごとにインデックス持たせたらよさそう 進捗 50% [藤澤]

  • biosample xml 複数などは api で不正指定として弾く [岡別府]

  • time out 2 min とかに設定してもらう。uuid でステータスを返す、uuid フォルダにファイル置いてステータスを通知、sql キャッシュ  

  • 疎結合 ステータスを登録システム DB にもってもらう validator は db とかミドルウェアもたない

  • ディレクトリ数 uuid 先頭二文字で整理

  • annotated 消して大丈夫、山本さん togoannotator で機能を吸い上げた(藤澤)

運用会議での確認事項

  • validator (ruby) を置くサーバ、bp bs dra rdb アクセスできる必要ある
  • t013 にすでにあるので IP 振ってもらう?web サーバたてる必要あり
    → t013 に validator 用 web サーバたてていいか apache or Nginx?SW 開発用サーバを運用に転用していいか? validator 設置サーバをどこに?運用チームがもってるところで?メール送信できる?
  • 死活監視 運用チームの監視システムに載せられる?

開発会議

OWLにも記述する

@prefix : <http://ddbj.nig.ac.jp/ontologies/biosample#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix xml: <http://www.w3.org/XML/1998/namespace> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@base <http://ddbj.nig.ac.jp/ontologies/biosample> .

<http://ddbj.nig.ac.jp/ontologies/biosample> rdf:type owl:Ontology ;                                                                   
 owl:priorVersion "http://ddbj.nig.ac.jp/ontologies/biosample/0.9.0" ;
 owl:versionIRI <http://ddbj.nig.ac.jp/ontologies/biosample/1.0.0> .

OpenAPIの定義で記述する "basePath": "/api/0.9.0/"

  • Annotation Sequence ValidationのAPI仕様
    • webappsのAnnotation Sequence Validation関連はすてて良い
    • src/annotated_sequence_validatorは開発中
    • apiサーバの仕組みでPOSTは実行できるようにしたい
  • APIとWeb (APIクライアント)アプリの構成(同一サーバにするか)
  • validatorはgem化して分離した方がいいのか
  • lib以下にまとめることを優先して、gemは必須ではない
  • コマンドラインで実行の需要はある -tf
  • validationのソースコードとクラス構成
  • ddbj_validator配下にSinatraサーバの標準のディレクトリ構成で配置する
    • ddbj_validator/lib
    • ddbj_validator/bin or ddbj_validator/api
    • ddbj_validator/conf

次回

7/28(金)スパークルソンの合間 13:30-

submission/validation api

Clone this wiki locally