Итоги

сервисной паузы 12.01.2021 - 08.02.2021

Как пользоваться этой презентацией

  • Данная презентация выполнена на HTML5.
  • Если хотите увидеть план рассказа и вернуться обратно - дважды нажмите <Esc>.
  • Презентация состоит из блоков.
  • Чтобы перейти к следующему блоку вращайте презентацию вправо.
  • Чтобы получить более детальную информацию по данному блоку вращайте презентацию вниз.

Обновленный конвейер данных

Конвейеры Airflow

1. run_demultiplexing

Конвейеры Airflow

2. run_dragen

Конвейеры Airflow

3. copy_dragen_res_to_udh

Конвейеры Airflow

4. copy_copy_gvcfs_and_metrics

Конвейеры Airflow

5. copy_fastqs_to_cephfs

6. copy_fastqs_to_udh

Конвейеры Airflow

7. copy_bcls_to_cephfs

8. copy_bcls_to_cephfs

Конвейеры Airflow

9. copy_folders_to_tape_rec

10. copy_folders_to_tape_rec

Хранилища данных

Требуется хранить 3 основных промежуточных формата данных:

 

  • BCL - порядка 1.2 ТБ на ячейку (24 образца)
  • FASTQ - порядка 1.9 ТБ на ячейку (24 образца)
  • BAM+gVCF - порядка 1.5 ТБ на ячейку (24 образца)

 

У нас есть 3 типа хранилищ:

  • Ceph (горячие хранилища)
  • Дисковые полки UDH (холодные хранилища)
  • Магнитные ленты (архивные хранилища)

Хранилища данных

Горяее (Ceph) Холодное (UDH) Архивное (ленты)
BCL 0 1 2
FASTQ 1 1 0 (в последнюю очередь будет 1)
BAM+gVCF 1 1 0 (в первую очередь станет 1-2)

Сколько копий каждого типа данных хранится в каждом из хранилищ?

Введена в строй 042 серверная

Характеристики Ceph3

  • Полезное пространство - порядка 20ПБ, это - около  135 тысяч геномов (FASTQ+BAM+gVCF)
  • Нужно обеспечить скорость доступа по сети 100ГБ/с (суммарная пропускная способность всех 200 узлов VU Сергея, читающих одновременно). В тестах получили 65-75ГБ/с, работаем над этим.

Отказосутойчивость Ceph3

Если бы диски были из разных партий, то шанс одновременного отказа более X дисков описывался бы распределением Пуассона:

p(одновременного\spaceотказа\space k\space дисков) = \frac{\lambda^{k} \cdot e^{-\lambda} }{k!}
p(отказа \space диска \space за \space день) = 10^{-5}
Число\spaceдисков\space N = 2400
\lambda = N * p = 0.024
p(k=1) = 0.023
p(k=2) = 0.0002
p(k=3) \to 0

Отказ 1 диска в день будет случаться раз в 40-45 дней

Отказ 2 дисков в день будет случаться раз в 5-10 лет

Отказосутойчивость Ceph3

  • Мы протестировали ряд конфигураций и остановились на пуле 10+4 и домене отказа - хост, подобные использует Facebook: https://arxiv.org/pdf/1709.05365.pdf.

    Пробовали также варианты:
  • 7+3 и домен отказа - стойка (проблемы с распределением групп размещения)
  • 12+4 (великовата нагрузка)
  • 9+3 и домен отказа - хост (недостаточная отказоустойчивость для такого количества дисков)
  • replicated pool с 3 репликами (неэффективное хранение)

Дисковые полки

  • Сырая емкость хранения: ~58 Петабайт
  • Полезная емкость хранения: ~40 Пибибайт или 150 тысяч + дополнительные 20% места в резерве для 3 форматов хранения BCL+FASTQ+BAM (+gVCF).

Дисковые полки

На данный момент смонтировано и настроено 27 серверов, из которых распределено 22. На каждом из этих 22 серверов есть по 6 разделов с данными с разных UVD. Вот как они распределены:

Отказоустойчивость баз данных

Продакшн-база данных PostgreSQL: master, slave, синхронная репликация и бэкап-сервер.

 

Тестовая база данных PostgreSQL: кластер Patroni.

Отказоустойчивость баз данных

Продакшн-база данных PostgreSQL: master, slave, синхронная репликация и бэкап-сервер.

Отказоустойчивость баз данных

Тестовая база данных PostgreSQL: кластер Patroni.

 

Должен сам переключаться на резевр с случае отказа основной базы данных, но очень сложен. Проверим сначала на тестовом стенде.

Сеть

Сеть

Сеть

Сеть

Как действительно выжать 100Gb/s из сети 100Gb/s?

http://doc.tm.uka.de/2019-LCN-100g-tuning-authors-copy.pdf

Сеть

Навели порядок в шнурах, второй шнур в 0014, L3-сеть: суперядро сети, ядра серверных, листья серверных, ...

Упрощение структуры базы данных status

Итоги

By vasjaforutube1

Итоги

  • 23