Статьи

Выпуск Bio4j 0.7 получает поддержку Cypher и Gremlin

Узнайте о новейшей версии Bio4j, которая теперь включает экземпляры AWS из любого региона, базовый сервер REST и поддержку Cypher и Gremlin.

Здравствуй !

Я рад сообщить, что версия 0.7 Bio4j была выпущена. Ознакомьтесь с широким набором новых функций, инструментов и улучшений:

Интеграция базы данных Expasy Enzyme

Отныне у вас есть вся ферментная БД, включенная в Bio4j. Для этого были созданы новый тип узла и тип отношения:

Все найденные свойства были включены в ферментный узел, включая:

  • МНЕ БЫ
  • Официальное название
  • Альтернативные имена
  • Кофакторы
  • Комментарии
  • Каталитическая активность
  • Проспект перекрестных ссылок

Индексирование типа узла

С этого момента каждый узел в базе данных имеет свойство nodeType, включая его тип, который был проиндексирован. Таким образом, теперь вы можете легко получить доступ ко всем узлам, принадлежащим к определенному типу.

 

Наличие во всех регионах

Регион AWS, в котором вы находитесь, больше не будет проблемой для использования Bio4j. Снимки EBS были созданы во всех регионах, а шаблоны CloudFormation были обновлены, так что теперь их можно использовать независимо от региона, в котором вы хотите создать стек.

Только Азиатско-Тихоокеанский регион (Сингапур) на юго-востоке-1 не готов из-за постоянных проблем со стороны AWS в отношении крайне медленной загрузки объектов S3. Надеюсь, мы сможем найти решение этой проблемы в ближайшее время!

Новые шаблоны CloudFormation

Базовый экземпляр Bio4j (обновлен)

Базовый шаблон экземпляра Bio4j был обновлен, так что теперь вы можете использовать его из всех зон. Проверьте больше информации об этом в обновленном сообщении в блоге

Базовый REST-сервер Bio4j

Был разработан новый шаблон, позволяющий легко развернуть REST-сервер Neo4j-Bio4j менее чем за минуту.

Этот шаблон доступен по следующему адресу:
https://s3-eu-west-1.amazonaws.com/bio4j-public/Bio4jBasicRestServerTemplate.txt

Шаги, которые вы должны выполнить, чтобы создать стек, действительно просты. На самом деле, вы можете руководствоваться этим сообщением в блоге о шаблоне, который я создал для развертывания общего сервера Neo4j, — меняются только один или два параметра

REST-сервер Bio4j

Как только вы запустите свой сервер благодаря полезному шаблону, который я только что упомянул ранее, используя Neo4j WebAdmin с Bio4j в качестве источника, вы сможете:

Исследуйте свою базу данных с помощью браузера данных

Используя вкладку браузера данных инструмента веб-администрирования, вы можете в реальном времени просматривать содержимое Bio4j!

Чтобы получить визуализации, подобные показанной выше, вы должны использовать профили визуализации . Там вы можете указать различные стили, связанные с настраиваемыми правилами, которые могут быть выражены в терминах свойств узла. Вот снимок экрана, показывающий, как выглядит профиль визуализации, который я использовал для визуализации выше:

Просто остерегайтесь одной вещи, поведение инструмента таково, что оно не различает узлы с высокой степенью соединения и более изолированные. Из-за этого щелкать узлы, такие как узел набора данных Trembl, не рекомендуется, если вы не хотите, чтобы он замерзал навсегда — этот узел имеет более 15 миллионов связей, связывающих его с белками .

 

Запускайте запросы с помощью Cypher

Сайфер что ?!

Cypher — это декларативный язык, который позволяет выполнять выразительные и эффективные запросы к хранилищу графов без необходимости писать в коде траверс. Он фокусируется на ясности выражения того, что извлечь из графа, а не на том , как это сделать , в отличие от императивных языков, таких как Java, и языков сценариев, таких как Gremlin.

Запрос на получение цепей взаимодействия белков длиной 3 с белками, принадлежащими к набору данных Swiss-Prot (ограничено 5 результатами), будет выглядеть в Cypher следующим образом:

START d=node:dataset_name_index(dataset_name_index = "Swiss-Prot")
 MATCH d <-[r:PROTEIN_DATASET]- p,
 circuit = (p) -[:PROTEIN_PROTEIN_INTERACTION]-> (p2) -[:PROTEIN_PROTEIN_INTERACTION]-> (p3) -[:PROTEIN_PROTEIN_INTERACTION]-> (p)
 return p.accession, p2.accession, p3.accession, p.accession
 limit 5

Если вы хотите ознакомиться с другими примерами Bio4j + Cypher, ознакомьтесь с нашей шпаргалкой Bio4j Cypher, которую мы будем обновлять время от времени.

 

Опрос Bio4j с помощью Gremlin

 

Гремлины? Какое отношение они имеют к Bio4j!?

Gremlin — это язык обхода графов, который может использоваться в различных языках JVM — в настоящее время он обеспечивает встроенную поддержку Java, Groovy и Scala. Тем не менее, он может выразить в нескольких строках кода то, что потребовалось бы много-много строк кода в Java для выражения.

Запрос белков, связанных с мотивом interpro с id ‘IPR023306’ в Bio4j с Gremlin, будет выглядеть следующим образом: (ограничено 5 результатами)

gremlin> g.idx('interpro_id_index')[['interpro_id_index':'IPR023306']].inE('PROTEIN_INTERPRO').outV.accession[0..4]
==> E2GK26
==> G3PMS4
==> G3Q865
==> G3PIL8
==> G3NNA4
gremlin>

Если вы хотите ознакомиться с другими примерами Bio4j + Gremlin, ознакомьтесь с нашей шпаргалкой Bio4j gremlin, которую мы будем обновлять время от времени.

Исправление ошибок

  1. Узлы набора данных В процессе импорта произошла ошибка, которая приводила к созданию нового узла набора данных при каждом сохранении новой записи Uniprot. Теперь все хорошо!

Так что пока все!
Надеюсь, вам понравятся все эти изменения и новые функции, над которыми я работал в последние пару месяцев.
Как всегда, не стесняйтесь оставлять отзывы, я с нетерпением жду этого

@pablopareja

Источник:  http://blog.bio4j.com/2012/01/bio4j-release-0-7-is-out/