BLANCO
-> П
« 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 ...25 26 »
.development_process
Как и обещал, выкладываю небольшое видео процесса разработки. Тут использовал далеко не все кейсы. На днях запишу еще что-нибудь, если будет интересно Smile
 
Автор: Йакуд | O-- | .мыслей 9 [ +1 ]
.blanco
Ребят, я очень рад, что сюда снова стали ходить люди Happy Даже появляются новые пользователи! Я понимаю, что пока мы с Лёшей пишем о достаточно специфичных вещах, поэтому то, что вы приходите не смотря ни на что вдвойне приятно Smile
Автор: stasundr | O-- | .мыслей 8 [ +1 ]
.genetic_atlas
В качестве источника "мета данных" (описание образцов: географическое расположение, популяция, пол и куча других) у меня обычные огроменные экселевские таблицы.
 
Для разных выборок эти таблицы имеют разный формат, разные колонки, и предначены они для людей. А нужно скормить всё это серверу в удобоваримом виде. Немного повоевал с регулярными выражениями, в итоге все-таки сплавил в redis и elastic-search пачку данных генотипирования - это около 2000 образцов (до этого были данные о полных геномах, там было около 300 образцов). И теперь, когда данные "внутри", пора заняться непосредственно поиском по ним.
Автор: stasundr | O-- | .мыслей 0 [ +2 ]
.to_infinity_and_beyond
Недавно я писал про всякие онлайн курсы, которые собираюсь пройти. Введение в биоинформатику сегодня заканчивается. Пока набрал там 92 из 100 баллов (этого уже достаточно для получения сертификата с "отличием"), если будет не лень, то сегодня доделаю последние 8 баллов. Лёгкий и немного неряшливо сделанный курс, но авторы все равно молодцы. Удачи им в будущем с курсом.
 

Теперь наступила пора введения в Computer Science - CS50x. Уговорил еще двух человек проходить его вместе со мной Smile Если хотите - присоединяйтесь! Очень интересный и продуманный курс.
Автор: stasundr | O-- | .мыслей 2 [ +1 ]
.es_cluster
Вот так сейчас выглядит карта одного индекса в кластере ElasticSearch:

Синий кружок - нода (сервер)
Зеленый - шард
Желтый - индекс
Звездочка стоит у  Primary node/shard.
Шард (Shard) без звездочки - это реплика (replica).
Данные одного индекса "размазываются" по всем нодам (nodes).
 
Возьмем пример отказоустойчивости. Пускай бомба упадает на сервер Statistics 01. Он содержит  Primary shards: 1, 3.
При запросе ES смотрит, ага, нода 01 лежит и она содержит шарды 1, 3. Ищем реплики на других нодах. Берем данные:
1 шарда с реплики сервера Statistics 02;
3 шарда с реплики сервера Statistics 03.
 
Все хорошо. Нода лежит, но данные остаются доступны.
 
P.S. Как же хранятся данные?
Имеем 3 ноды.
Представим, что индекс A содержит следующие данные:
Text
[1, 2, 3, 4, 5, 6, 7, 8, 9]

К конфиге указано, что индекс содержит 3 шарда и 2 реплики.
ES делит данные между шардами. Например:
Text
шард 1: [1, 2, 3]
шард 2: [3, 4, 5]
шард 3: [6, 7, 8, 9]

Далее, ES определяет на какой ноде лежат эти шарды.
Text
Шард 1: нода 1
Шард 2: нода 1
Шард 3: нода 2

Осталось распределить реплики по остальным нодам. Например так:
Text
Шард 1, реплика 1: нода 2
Шард 1, реплика 2: нода 3
Шард 2, реплика 1: нода 2
Шард 2, реплика 2: нода 3
Шард 3, реплика 1: нода 1
Шард 3, реплика 2: нода 3

Примерно так делятся данные между серверами, обеспечивая отказоустойчивость. Чем больше серверов, тем более надежным будет кластер.
Автор: Йакуд | O-- | .мыслей 2 [ +1 ]
.genetic_atlas
Продолжаю пилить атлас. Уже можно выбирать отдельные образцы из группы. Начал делать поиск с elasticsearch'ем.
 
Автор: stasundr | O-- | .мыслей 1 [ +3 ]
.genetic_atlas
Раз кластерер кластирует, а парсер парсирует, то значит пришла пора подумать о реализации поиска среди образцов и их сортировке по возрасту и прочим параметрам. Здесь, видимо, нам понадобится elasticsearch.
Автор: stasundr | O-- | .мыслей 7 [ +2 ]
.genetic_atlas
Присобачил к генетическому атласу MarkerClustererPlus Happy Теперь нужно написать небольшой парсер списка образцов, чтобы импортировать его в Redis и все эти образцы можно было наблюдать на карте.
 
Еще нашел описание реализации дуг между точками на карте - необходимая штука для изображения результатов ALDER (такой вид анализа генетического родства). Но сначала парсер.
 
update: написал парсер для первой коллекции образцов Smile
Автор: stasundr | O-- | .мыслей 0 [ +3 ]
.lhmg-expeditions
Записал на видео процесс разработки lhmg-expeditions Smile Ускорил видео примерно в 5 раз, потому что иногда просто зависал и втыкал в экран. За неимением опыта программирую очень медленно.
 

Чтобы посмотреть на результат можно отмотать на самый конец (секунд за 30 до окончания).
 
Автор: stasundr | O-- | .мыслей 6 [ +2 ]
.git
Продолжаю свои попытки подружиться с jQuery, Redis и Node.js Smile Попутно поражаюсь факту, что сейчас можно написать (пускай и примитивный) клиент-сервер в 100 строк кода. До чего техника дошла Happy
 
Автор: stasundr | O-- | .мыслей 2 [ +1 ]