девчонка

Компания QA над социальными сетями
qacompany/qendpointqacompany/qendpoint-wikidataQendpoint-это очень масштабируемый тройной магазин с полнотекстовым и геоспараклом. Его можно использовать в качестве отдельной конечной точки Sparql или в качестве зависимости. Qendpoint, например, используется в Kohesio, где каждое взаимодействие с пользовательским интерфейсом соответствует основному запросу Sparql на Qendpoint. Также QendPoint является частью вопроса QANSWER Enabeling, отвечающего на графики RDF.
Для бэкэнда/теста
Для фронта (не обязательно запустить бэкэнд)
Вы можете установить QendPoint, используя диспетчер Scoop Package.
Вам нужно добавить ведро the-qa-company , а затем вы сможете установить манифест qendpoint , это можно сделать, используя эти команды
# 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 qendpointВы можете установить QendPoint с помощью диспетчера пакетов Brew.
Вы можете установить, использует эту команду
brew install the-qa-company/tap/qendpoint Если у вас нет доступа к Brew или Scoop, интерфейс командной строки QendPoint доступен на странице выпусков под файлом qendpoint-cli.zip . Извлеките его, вы можете добавить каталог бин, который можно добавить на ваш путь.
Клонировать Qendpoint из этой ссылки: git clone https://github.com/the-qa-company/qEndpoint.git
Перейти на бэк-концертный компакт cd qendpoint-backend
Скомпилируйте проект, используя эту команду: mvn clean install -DskipTests
Запустите проект, используя java -jar target/qendpoint-backend-1.2.3-exec.jar (замените версию на последнюю версию)
Вы можете использовать проект в качестве зависимости (замените версию на последнюю версию)
<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-frontend каталогуnpm installnpm start Здесь можно найти установщики конечной точки для Linux, MacOS и Windows, установщики не содержат командной строки (CLI), только конечная точка .
Вы можете использовать одно из наших предварительно настроенных изображений Docker.
qacompany/qendpointDockerhub : Qacompany/Qendpoint
Это изображение Docker содержит конечную точку, вы можете загрузить набор данных и начать использовать его.
Вам просто нужно запустить изображение, и оно подготовит среду, загрузив индекс и настроив репозиторий, используя фрагмент ниже:
docker run -p 1234:1234 --name qendpoint qacompany/qendpointВы также можете указать размер памяти, выделенной путем установки значения среды Docker MEM_SIZE . По умолчанию это значение установлено на 6G. Вы не должны устанавливать это значение ниже 4G, потому что у вас, безусловно, заканчивает память с большим набором данных. Для более крупного набора данных также рекомендуется большее значение для большого набора данных, в качестве примера, Wikidata-All не будет работать не менее 10 г.
docker run -p 1234:1234 --name qendpoint --env MEM_SIZE=6G qacompany/qendpointВы можете остановить контейнер и повторить его в любое время, поддерживая данные внутри (Qendpoint - это имя контейнера), используя следующие команды:
docker stop qendpoint
docker start qendpoint: Обратите внимание, что этот контейнер может занять огромную часть диска из -за размера индекса данных, поэтому обязательно удалите контейнер, если вам больше не нужно, используя команду ниже:
docker rm qendpointqacompany/qendpoint-wikidataDockerhub : Qacompany/qendpoint-wikidata
Это изображение Docker содержит конечную точку с помощью скрипта для загрузки индекса, содержащего операторы Wikidata Lidy с наших серверов, поэтому вам просто нужно ждать загрузки индекса и начать его.
Вам просто нужно запустить изображение, и оно подготовит среду, загрузив индекс и настроив хранилище, используя код ниже:
docker run -p 1234:1234 --name qendpoint-wikidata qacompany/qendpoint-wikidataВы также можете указать размер памяти, выделенной путем установки значения среды Docker MEM_SIZE . По умолчанию это значение установлено в 6G, для большого набора данных также рекомендуется более широкое значение, в качестве примера, Wikidata-All не будет работать не менее 10 г.
docker run -p 1234:1234 --name qendpoint-wikidata --env MEM_SIZE=6G qacompany/qendpoint-wikidata Вы можете указать набор данных для загрузки с использованием значения EnvironmentNement HDT_BASE , по умолчанию значение - wikidata_truthy , но текущие доступные значения:
wikidata_truthy - Wikidata Prirony утверждения (нужно как минимум 6G памяти)wikidata_all - Wikidata -All операторы (нужно не менее 10G памяти) docker run -p 1234:1234 --name qendpoint-wikidata --env MEM_SIZE=10G --env HDT_BASE=wikidata_all qacompany/qendpoint-wikidataВы можете остановить контейнер и повторить его в любое время, поддерживая данные внутри (Qendpoint - это имя контейнера), используя приведенный ниже код:
docker stop qendpoint-wikidata
docker start qendpoint-wikidataОбратите внимание, что этот контейнер может занять огромную часть диска из -за размера индекса данных, поэтому обязательно удалите контейнер, если он вам больше не нужен, используя команду, как показано ниже:
docker rm qendpoint-wikidataВы можете получить доступ к http: // localhost: 1234, где есть графический интерфейс, где вы можете написать запросы Sparql и выполнить их, и есть доступный API Restful, который вы можете использовать для запуска запросов из любого приложения по HTTP, например, SO:
curl -H ' Accept: application/sparql-results+json ' localhost:1234/api/endpoint/sparql --data-urlencode ' query=select * where{ ?s ?p ?o } limit 10 'ПРИМЕЧАНИЕ Первый запрос займет некоторое время, чтобы отобразить индекс в память, позже он будет намного быстрее!
Большинство форматов результатов доступны, вы можете использовать, например:
application/sparql-results+jsonapplication/sparql-results+xmlapplication/x-binary-rdf-results-tableВы можете запустить конечную точку с этой командой:
java -jar endpoint.jar &Вы можете найти шаблон файла Application.properties в бэкэнд -источнике
Если у вас есть файл HDT вашего графика, вы можете положить его перед загрузкой конечной точки в каталоге HDT-магазина (по умолчанию hdt-store/index_dev.hdt )
Если у вас нет HDT, вы можете загрузить набор данных в конечную точку, выполнив команду во время работы конечной точки:
curl " http://127.0.0.1:1234/api/endpoint/load " -F " [email protected] " Где mydataset.nt - это файл RDF для загрузки, вы можете использовать все форматы, используемые RDF4J.
Вы можете создать хранилище Sparql, используя этот метод, не забудьте инициировать репозиторий
// Create a SPARQL repository
SparqlRepository repository = CompiledSail . compiler (). compileToSparqlRepository ();
// Init the repository
repository . init (); Вы можете выполнить запросы sparql, используя executeTupleQuery , executeBooleanQuery , executeGraphQuery или 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" ));
}
}Не забудьте остановить репозиторий после использования
// Shutdown the repository (better to release resources)
repository . shutDown (); Вы можете получить репозиторий RDF4J с помощью метода getRepository() .
// get the rdf4j repository (if required)
SailRepository rdf4jRepo = repository . getRepository ();Запустите Qendpoint локально
cd wikibase
Переместите prefixes.sparql файла.
(повторно) Начните свою конечную точку, чтобы использовать префиксы
бегать
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:08ZВы можете адаптировать параметры к вашему викибазе, в этом случае мы запросили график знаний ЕС, вы также можете изменить время начала.
Смотрите открытые проблемы для списка предлагаемых функций (и известных вопросов).
Обратитесь к сопровождающему в одном из следующих мест:
Если вы хотите сказать спасибо или//и поддержать активную разработку QendPoint:
Прежде всего, спасибо , что нашли время внести свой вклад! Вклад-это то, что делает сообщество с открытым исходным кодом таким удивительным местом для изучения, вдохновения и создания. Любые взносы, которые вы вносите, принесут пользу всем остальным и будут высоко ценится .
Пожалуйста, прочитайте наши рекомендации по вкладу, и спасибо за участие!
Первоначальная настройка этого репозитория связана с компанией QA.
Полный список всех авторов и участников, см. Страницу участников.
Qendpoint следует надлежащей практике безопасности, но 100% безопасность не может быть гарантирована. QendPoint предоставляется «как есть» без какой -либо гарантии . Используйте свой собственный риск.
Для получения дополнительной информации и сообщать о вопросах безопасности, пожалуйста, обратитесь к нашей документации по безопасности.
Этот проект лицензирован в соответствии с общей публичной лицензией GNU с уведомлением.
Смотрите лицензию для получения дополнительной информации.