Dev

A empresa de controle de qualidade sobre as redes sociais
qacompany/qendpointqacompany/qendpoint-wikidataO QendPoint é uma loja tripla altamente escalável, com suporte completo e geosparql. Pode ser usado como um ponto de extremidade Sparql independente ou como uma dependência. O QendPoint é, por exemplo, usado em Kohesio, onde cada interação com a interface do usuário corresponde a uma consulta SPARQL subjacente no QENDPOINT. Além disso, o QendPoint faz parte dos Qanswer Enabeling perguntas que respondem aos gráficos RDF.
Para o back -end/referência
Para o front -end (não é obrigatório para executar o back -end)
Você pode instalar o QendPoint usando o Scoop Package Manager.
qendpoint precisa adicionar o balde the-qa-company e, em seguida
# Add the-qa-company bucket
scoop bucket add the - qa - company https: // github.com / the - qa - company / scoop - bucket.git
# Install qEndpoint CLI
scoop install qendpointVocê pode instalar o QendPoint usando o gerenciador de pacotes Brew.
Você pode instalar está usando este comando
brew install the-qa-company/tap/qendpoint Se você não tiver acesso a Brew ou Scoop, a interface da linha de comando QendPoint estará disponível na página de liberações no arquivo qendpoint-cli.zip . Ao extraí -lo, você pode um diretório de bin que pode ser adicionado ao seu caminho.
Clone o qendpoint deste link: git clone https://github.com/the-qa-company/qEndpoint.git
Mova para o cd qendpoint-backend
Compilar o projeto usando este comando: mvn clean install -DskipTests
Execute o projeto usando java -jar target/qendpoint-backend-1.2.3-exec.jar (substitua a versão pela versão mais recente)
Você pode usar o projeto como dependência (substitua a versão pela versão mais recente)
<dependency>
<groupId>com.the_qa_company</groupId>
<artifactId>qendpoint</artifactId>
<version>1.2.3</version>
</dependency>
git clone https://github.com/the-qa-company/qEndpoint.gitcd qendpoint-frontendnpm installnpm start Os instaladores do endpoint para Linux, MacOS e Windows podem ser encontrados aqui, os instaladores não contêm a linha de comando (CLI), apenas o terminal .
Você pode usar uma de nossas imagens pré -configuradas do Docker.
qacompany/qendpointDockerHub : Qacompany/QendPoint
Esta imagem do Docker contém o terminal, você pode fazer upload do seu conjunto de dados e começar a usá -lo.
Você só precisa executar a imagem e ela preparará o ambiente baixando o índice e configurando o repositório usando o snippet abaixo:
docker run -p 1234:1234 --name qendpoint qacompany/qendpointVocê também pode especificar o tamanho da memória alocada, definindo o Docker EnviroNlement Value MEM_SIZE . Por padrão, este valor é definido como 6G. Você não deve definir esse valor abaixo de 4G, pois certamente ficará sem memória com um conjunto de dados grande. Para o conjunto de dados maior, um valor maior também é recomendado para o Big DataSet, como exemplo, o Wikidata-tudo não será executado sem pelo menos 10g.
docker run -p 1234:1234 --name qendpoint --env MEM_SIZE=6G qacompany/qendpointVocê pode interromper o contêiner e executá -lo a qualquer momento, mantendo os dados dentro (QendPoint é o nome do contêiner) usando os seguintes comandos:
docker stop qendpoint
docker start qendpoint: Observe que este contêiner pode ocupar uma grande parte do disco devido ao tamanho do índice de dados; portanto, exclua o contêiner se não precisar mais dele usando o comando abaixo:
docker rm qendpointqacompany/qendpoint-wikidataDockerHub : Qacompany/QendPoint-wikidata
Esta imagem do Docker contém o endpoint com um script para baixar um índice que contém as instruções Wikidata Truthy de nossos servidores, para que você simplesmente precise esperar o download do índice e começar a usá -lo.
Você só precisa executar a imagem e ela preparará o ambiente baixando o índice e configurando o repositório usando o código abaixo:
docker run -p 1234:1234 --name qendpoint-wikidata qacompany/qendpoint-wikidataVocê também pode especificar o tamanho da memória alocada, definindo o Docker EnviroNlement Value MEM_SIZE . Por padrão, esse valor é definido como 6G, um valor maior também é recomendado para o Big DataSet, como exemplo, o Wikidata-tudo não será executado sem pelo menos 10g.
docker run -p 1234:1234 --name qendpoint-wikidata --env MEM_SIZE=6G qacompany/qendpoint-wikidata Você pode especificar o conjunto de dados a ser baixado usando o valor do Environnement hdt_base , por padrão o valor é wikidata_truthy , mas os valores atuais disponíveis são:
wikidata_truthy - Declarações verdadeiras do Wikidata (precisam de pelo menos 6G de memória)wikidata_all - Wikidata -All Declarações (precisam de pelo menos 10G de memória) docker run -p 1234:1234 --name qendpoint-wikidata --env MEM_SIZE=10G --env HDT_BASE=wikidata_all qacompany/qendpoint-wikidataVocê pode interromper o contêiner e executá -lo a qualquer momento, mantendo os dados dentro (QendPoint é o nome do contêiner) usando o código abaixo:
docker stop qendpoint-wikidata
docker start qendpoint-wikidataObserve que este contêiner pode ocupar uma grande parte do disco devido ao tamanho do índice de dados; portanto, exclua o contêiner se não precisar mais dele usando o comando como mostrado abaixo:
docker rm qendpoint-wikidataVocê pode acessar http: // localhost: 1234, onde há uma GUI onde você pode escrever consultas SPARQL e executá -las, e há a API RESTful disponível que você pode usar para executar consultas de qualquer aplicativo sobre HTTP como assim:
curl -H ' Accept: application/sparql-results+json ' localhost:1234/api/endpoint/sparql --data-urlencode ' query=select * where{ ?s ?p ?o } limit 10 'Nota A First Query levará algum tempo para mapear o índice para a memória, mais tarde será muito mais rápido!
A maioria dos formatos de resultado está disponível, você pode usar, por exemplo:
application/sparql-results+jsonapplication/sparql-results+xmlapplication/x-binary-rdf-results-tableVocê pode executar o terminal com este comando:
java -jar endpoint.jar &Você pode encontrar um modelo do arquivo Application.Properties na fonte de back -end
Se você possui o arquivo HDT do seu gráfico, pode colocá-lo antes de carregar o terminal no diretório HDT-Store (por padrão hdt-store/index_dev.hdt )
Se você não tiver o HDT, poderá fazer upload do conjunto de dados para o endpoint executando o comando enquanto o endpoint estiver em execução:
curl " http://127.0.0.1:1234/api/endpoint/load " -F " [email protected] " Onde mydataset.nt é o arquivo rdf a ser carregado, você pode usar todos os formatos usados pelo RDF4J.
Você pode criar um repositório SPARQL usando este método, não se esqueça de iniciar o repositório
// Create a SPARQL repository
SparqlRepository repository = CompiledSail . compiler (). compileToSparqlRepository ();
// Init the repository
repository . init (); Você pode executar consultas SPARQL usando o executeTupleQuery , executeBooleanQuery , executeGraphQuery ou execute .
// execute the a tuple query
try ( ClosableResult < TupleQueryResult > execute = sparqlRepository . executeTupleQuery (
// the sparql query
"SELECT * WHERE { ?s ?p ?o }" ,
// the timeout
10
)) {
// get the result, no need to close it, closing execute will close the result
TupleQueryResult result = execute . getResult ();
// the tuples
for ( BindingSet set : result ) {
System . out . println ( "Subject: " + set . getValue ( "s" ));
System . out . println ( "Predicate: " + set . getValue ( "p" ));
System . out . println ( "Object: " + set . getValue ( "o" ));
}
}Não se esqueça de desligar o repositório após o uso
// Shutdown the repository (better to release resources)
repository . shutDown (); Você pode obter o repositório RDF4J com o método getRepository() .
// get the rdf4j repository (if required)
SailRepository rdf4jRepo = repository . getRepository ();Execute o QendPoint localmente
cd wikibase
Mova os prefixes.sparql de arquivo.sparql para a instalação do QENDPOINT
(re) Inicie seu terminal para usar os prefixos
correr
java -cp wikidata-query-tools-0.3.59-SNAPSHOT-jar-with-dependencies.jar org.wikidata.query.rdf.tool.Update
--sparqlUrl http://localhost:1234/api/endpoint/sparql
--wikibaseHost https://linkedopendata.eu/
--wikibaseUrl https://linkedopendata.eu/
--conceptUri https://linkedopendata.eu/
--wikibaseScheme https
--entityNamespaces 120,122
--start 2022-06-28T11:27:08ZVocê pode adaptar os parâmetros ao seu Wikibase; nesse caso, estamos consultando o gráfico de conhecimento da UE, você também pode alterar a hora de início.
Veja os problemas abertos para uma lista dos recursos propostos (e problemas conhecidos).
Entre em contato com o mantenedor em um dos seguintes locais:
Se você quiser agradecer ou/e apoiar o desenvolvimento ativo do QendPoint:
Primeiro de tudo, obrigado por reservar um tempo para contribuir! As contribuições são o que tornam a comunidade de código aberto um lugar tão incrível para aprender, inspirar e criar. Quaisquer contribuições que você fizer beneficiarão todos os outros e serão muito apreciadas .
Leia nossas diretrizes de contribuição e obrigado por estar envolvido!
A configuração original deste repositório é da empresa de controle de qualidade.
Para uma lista completa de todos os autores e colaboradores, consulte a página dos colaboradores.
O QENDPOINT segue boas práticas de segurança, mas 100% de segurança não pode ser garantida. O QENDPOINT é fornecido "como está" sem qualquer garantia . Use por sua conta e risco.
Para obter mais informações e relatar problemas de segurança, consulte nossa documentação de segurança.
Este projeto está licenciado sob a licença pública geral da GNU v3 com um aviso.
Consulte a licença para obter mais informações.