Implementing the procedures for creating and maintaining an index of scientific publications
€12-18 EUR / hour
Avslutat
Publicerad ungefär fem år sedan
€12-18 EUR / hour
Employer:
Institute of Neuroinformatics
University of Zurich & ETH Zurich
Project Objective:
Creating an ElasticSearch index of scientific publications (metadata and full-text) by aggregating content from various data sources (i.e. scientific publication databases). Keeping the ElasticSearch index updated as new content is added to the data sources. Implementation of a flexible workflow to integrate additional future data sources. Being able to handle changes to the APIs of data sources.
Technologies to use:
Node.js, Python, Elastic Stack, Docker. Open for other suggestions
Data sources (example list):
1) Crossref ([login to view URL]): contains the metadata of all publications having a digital object identifier (DOI). Content can be downloaded by querying the database through a REST API in a rate-limited fashion.
2) MEDLINE/Pubmed ([login to view URL]): contains metadata and abstracts of most publications related to life sciences. Also contains publications not having DOIs. Content can be bulk downloaded.
3) CORE ([login to view URL]): An aggregate database of most open access publications, including full text of some. If full-text is not available (e.g. papers from arXiv), a link is provided to the original source, which should be crawled to fetch the full text content. Contains data from large databases such as arXiv, CiteSeerX. Database can be bulk downloaded.
The workflow should be flexible to include additional data sources as they become available.
Project Parts/Tasks:
Different tasks should be handled by individual Docker microservices
1) Downloading and parsing the entire content of listed data sources and indexing this in individual ElasticSearch indices
2) Parsing PDF files to extract the full-text (unstructured) if data source only provides PDFs (e.g. CORE)
3) Aggregating downloaded content from data sources in an “meta” ElasticSearch index
4) Keeping meta index updated as new publications appear
5) Maintaining the meta index: handling duplicates, handling different versions of a publication (e.g. arXiv preprints vs their final publication in a journal), adding new fields to the index, etc.
6) Index backup, revisioning and rollback tasks
ElasticSearch index fields:
Title, journal, page, publication date, authors, affiliations, abstract, full-text, references, figures, data source, data source ID, DOI…..
[to be extended]
Hello, thank you for these complete and clear requirements. I have more than 10 years experience in natural language processing, information retrieval, machine learning and other related fields. I have used Elastic Stack in many previous projects and have experience in all other required skills. i can do this project in a perfect way.. this is a list of selected previous projects i have worked on: generating process diagrams starting from texts, Social networks data analysis systems, Recommendation systems, Opinion mining Systems, Bird sounds recognition system, Natural Language interface to a relational database (like SIRI), Question Answering Systems (in limited domain), chatbots ,..
Hi,
I'm professional web developer with 17 years experience. I lead a team of developers as well and we can help you with this project.
I have great experience with Python and Node.js
The main description is clear bit can you provide me a technical specification?
I'm ready to discuss your project in private chat.
Feel free to contact me
Hi there,
I've gone through the post description carefully and ready to start work on this project. Requirements are very clear but please come over the chat so that i can get more requirements if remaining.
Please visit my portfolio here-
https://www.freelancer.com/u/seemasit
My Expert Skills are here: Docker, Elasticsearch, node.js, Python
Thanks
Seema-P
Dear client,
We like to do with python and elastic search with api integration and have to be ongoing support.
Please get intouch with us to discuss in detail.
Kind regards
Mouli
I propose building a python web application to handle this requirement. The application modularised into following components.
1. ES connector module which will help us store data to and retrieve data from ES.
2. Datasource retrieval module - This module will be used to get data from different datasources. This module will be developed in such a manner that more datasources can be plugged in without any effort.
3. A scheduler module which will be used to schedule datasource retrieval.
All these modules will be packaged as docker containers and I will also provide documentation to run the containers.
Will be able to expand when I get more details.
Greetings from Cloudseals,
we are registered Cloud and DevOps service provider from India with team of 14 DevOps team working from Indian. we do have our services rendering in UK, USA and India.
it would be great to discuss further on this requirement and we are honoured to be part of your team which gives us opportunity to prove our technical competencies.
we do offer 24/7 support to deliver projects in agreed timelines. Our ownership and leadership qualities would definitely eligible to take up your project to complete in lesser time.
Thanks,
srini
Hi,
I am dhiraj sharma,
I have more than 5 years of experience in mean and mern stack .
I have worked with many Fortune 500 clients.
I am interested in this project.