【Sesame】TripleStore添加三元数据
打算写一个sesame数据库的使用系列文章。这是第二篇,第一篇详见这里,讲解sesame数据库的搭建。 Sesame数据库添加triple三元组的方法有很多种,这里讲解两种,即单条添加与批量添加。 1. 建立数据库链接 Sesame数据库提供了几种数据存储办法,有本地数据库N
打算写一个sesame数据库的使用系列文章。这是第二篇,第一篇详见这里,讲解sesame数据库的搭建。
Sesame数据库添加triple三元组的方法有很多种,这里讲解两种,即单条添加与批量添加。
1. 建立数据库链接
Sesame数据库提供了几种数据存储办法,有本地数据库NativeStore,有基于内存的MemoryStore,有基于远程数据库的HTTP方式,还有基于关系型数据库存储方式的MySQLStore.声明变量:
private Repository repo; private MemoryStore memStore; private NativeStore natStore; private File repoFile; private RepositoryConnection repoConn;
基于内存MemoryStore:
/** * To get the repository within memory. */ public RepoUtil() { repoFile = new File(Const.repoPath); memStore = new MemoryStore(); repo = new SailRepository(memStore); }
基于本地NativeStore:
/** * To get the repository on the disk. * @param repoPath the repository file path */ public RepoUtil(String repoPath) { repoFile = new File(repoPath); natStore = new NativeStore(repoFile); repo = new SailRepository(natStore); }
基于网络HTTP Connection:
/** * To get the repository on the Http server. * @param server the server address * @param repoId the repository ID */ public RepoUtil(String server, String repoId) { repo = new HTTPRepository(server, repoId); }
基于关系型数据库MySQL:参考我的另一篇文章.
1.1. 初始化数据库
try { repo.initialize(); repoConn = repo.getConnection();//Get the connection from repository connection pool // repoConn.setAutoCommit(false);//why deprecate the setAutoCommit method? } catch(RepositoryException e) { e.printStackTrace(); }
2. 添加单条数据
2.1. 生成URI
此处提供函数用于生成URI,不需要如此麻烦,领会URI生成方法要领即可。先需要初始化URI、Literal生成器ValueFactory:ValueFactory valueFactory = new ValueFactoryImpl();
接下来即可生成URI:
/** * To get the URI of the specific string value * 1. if it is already a URI, then return; * 2. else translate it to URI format and return. * @param iden * @return the true URI */ public URI getUri(String iden) { URI rtn = null; String url = null; StringBuilder strRtn = new StringBuilder(uriBuilder); if(isUri(iden)) { System.out.println("isUri"); return valueFactory.createURI(iden); } else { try { url = URLEncoder.encode(iden,"utf-8"); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } strRtn.append(url); rtn = valueFactory.createURI(strRtn.toString()); return rtn; } }
此处附上判断URI的函数(摘自网络)
/** * To justify if the input string is * in the format of URI. * @param obj * @return */ public boolean isUri(String obj) { return obj.matches("(([a-zA-Z][0-9a-zA-Z+\\\\-\\\\.]*:)?/{0,2}[0-9a-zA-Z;/?:@&=+$\\\\.\\\\-_!~*'()%]+)?(#[0-9a-zA-Z;/?:@&=+$\\\\.\\\\-_!~*'()%]+)?"); // return false; }
生成URI与Literal方法的简化版(会忽略某些问题,建议采用以上函数):
URI creativeWork = vf.createURI(namespace+"CreativeWork"); Literal about = vf.createLiteral(namespace+"about#"+"SomeString");
在构建好Connection、URI以及Literal以后,即可插入三元组:
/** * The URI-URI-Literal format SPO record. */ public void addRecord(URI subj, URI pred, Literal obj) { try { // repoConn = repo.getConnection(); repoConn.add(subj, pred, obj); // repoConn.close(); } catch (RepositoryException e) { e.printStackTrace(); } } /** * The URI-URI-URI format SPO record. */ public void addRecord(URI subj, URI pred, URI obj) { try { // repoConn = repo.getConnection(); repoConn.add(subj, pred, obj); // repoConn.close(); } catch (RepositoryException e) { e.printStackTrace(); } }
3、批量导入数据
如果有大量数据已经在文件中保存,我们不需要人工编写数据读取、写入的代码,直接通过Sesame已经提供的批量导入接口即可。File importFile = new File("segment"+j+".ttl"); String baseURI = "http://rk.com/import/test/"; RepositoryConnection con; try { FileReader fileReader = new FileReader(importFile); BufferedReader reader = new BufferedReader(fileReader); con = repo.getConnection(); con.add(reader, baseURI, RDFFormat.TURTLE); System.out.println("Add "+j+" ends."); con.close(); } catch (RepositoryException e) { e.printStackTrace(); } catch (RDFParseException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); }
注意Java Heap的内存大小限制。可以查看这里修改Java虚拟机内存限制。
至此完成了Sesame数据写入的几种方法。下回介绍数据导出与数据修改。

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











DDREASE는 하드 드라이브, SSD, RAM 디스크, CD, DVD 및 USB 저장 장치와 같은 파일 또는 블록 장치에서 데이터를 복구하기 위한 도구입니다. 한 블록 장치에서 다른 블록 장치로 데이터를 복사하여 손상된 데이터 블록은 남겨두고 양호한 데이터 블록만 이동합니다. ddreasue는 복구 작업 중에 간섭이 필요하지 않으므로 완전히 자동화된 강력한 복구 도구입니다. 게다가 ddasue 맵 파일 덕분에 언제든지 중지하고 다시 시작할 수 있습니다. DDREASE의 다른 주요 기능은 다음과 같습니다. 복구된 데이터를 덮어쓰지 않지만 반복 복구 시 공백을 채웁니다. 그러나 도구에 명시적으로 지시된 경우에는 잘릴 수 있습니다. 여러 파일이나 블록의 데이터를 단일 파일로 복구

0. 이 글은 어떤 내용을 담고 있나요? 우리는 다재다능하고 빠른 최첨단 생성 단안 깊이 추정 모델인 DepthFM을 제안합니다. DepthFM은 전통적인 깊이 추정 작업 외에도 깊이 인페인팅과 같은 다운스트림 작업에서 최첨단 기능을 보여줍니다. DepthFM은 효율적이며 몇 가지 추론 단계 내에서 깊이 맵을 합성할 수 있습니다. 이 작품을 함께 읽어보아요~ 1. 논문 정보 제목: DepthFM: FastMoncularDepthEstimationwithFlowMatching 저자: MingGui, JohannesS.Fischer, UlrichPrestel, PingchuanMa, Dmytr

Excel에서 여러 기준으로 필터링을 사용하는 방법을 알아야 하는 경우 다음 자습서에서는 데이터를 효과적으로 필터링하고 정렬할 수 있는 단계를 안내합니다. Excel의 필터링 기능은 매우 강력하며 많은 양의 데이터에서 필요한 정보를 추출하는 데 도움이 될 수 있습니다. 이 기능을 사용하면 설정한 조건에 따라 데이터를 필터링하고 조건에 맞는 부분만 표시하여 데이터 관리를 더욱 효율적으로 할 수 있습니다. 필터 기능을 사용하면 대상 데이터를 빠르게 찾을 수 있어 데이터 검색 및 정리에 드는 시간을 절약할 수 있습니다. 이 기능은 단순한 데이터 목록에만 적용할 수 있는 것이 아니라, 여러 조건에 따라 필터링하여 필요한 정보를 보다 정확하게 찾을 수 있도록 도와줍니다. 전반적으로 Excel의 필터링 기능은 매우 실용적입니다.

Google이 추진하는 JAX의 성능은 최근 벤치마크 테스트에서 Pytorch와 TensorFlow를 능가하여 7개 지표에서 1위를 차지했습니다. 그리고 JAX 성능이 가장 좋은 TPU에서는 테스트가 이루어지지 않았습니다. 개발자들 사이에서는 여전히 Tensorflow보다 Pytorch가 더 인기가 있습니다. 그러나 앞으로는 더 큰 모델이 JAX 플랫폼을 기반으로 훈련되고 실행될 것입니다. 모델 최근 Keras 팀은 기본 PyTorch 구현을 사용하여 세 가지 백엔드(TensorFlow, JAX, PyTorch)와 TensorFlow를 사용하는 Keras2를 벤치마킹했습니다. 첫째, 그들은 주류 세트를 선택합니다.

많은 사용자가 현대 생활에서 Xiaomi 스마트 홈 상호 연결의 전자 생태계를 점점 더 선호하고 있습니다. Mijia 앱에 연결하면 휴대폰으로 연결된 장치를 쉽게 제어할 수 있습니다. 그러나 많은 사용자는 여전히 Mijia를 추가하는 방법을 모릅니다. 이 튜토리얼 가이드는 도움이 필요한 모든 사람에게 도움이 될 수 있도록 구체적인 연결 방법과 단계를 제공합니다. 1. Mijia 앱을 다운로드한 후 Xiaomi 계정을 생성하거나 로그인합니다. 2. 추가 방법: 새 장치의 전원을 켠 후 휴대폰을 장치에 가까이 가져간 다음 Xiaomi TV를 켜십시오. 정상적인 상황에서는 "확인"을 선택하여 장치 연결 프로세스에 들어갑니다. 메시지가 나타나지 않으면 수동으로 장치를 추가할 수도 있습니다. 방법은 스마트 홈 앱에 들어간 후 왼쪽 하단에 있는 첫 번째 버튼을 클릭하는 것입니다.

세상은 미친 듯이 큰 모델을 만들고 있습니다. 인터넷의 데이터만으로는 충분하지 않습니다. 훈련 모델은 '헝거게임'처럼 생겼고, 전 세계 AI 연구자들은 이러한 데이터를 탐식하는 사람들에게 어떻게 먹이를 줄지 고민하고 있습니다. 이 문제는 다중 모드 작업에서 특히 두드러집니다. 아무것도 할 수 없던 시기에, 중국 인민대학교 학과의 스타트업 팀은 자체 새로운 모델을 사용하여 중국 최초로 '모델 생성 데이터 피드 자체'를 현실화했습니다. 또한 이해 측면과 생성 측면의 두 가지 접근 방식으로 양측 모두 고품질의 다중 모드 새로운 데이터를 생성하고 모델 자체에 데이터 피드백을 제공할 수 있습니다. 모델이란 무엇입니까? Awaker 1.0은 중관촌 포럼에 최근 등장한 대형 멀티모달 모델입니다. 팀은 누구입니까? 소폰 엔진. 런민대학교 힐하우스 인공지능대학원 박사과정 학생인 Gao Yizhao가 설립했습니다.

지연이 발생하고 iPhone의 모바일 데이터 연결 속도가 느립니까? 일반적으로 휴대폰의 셀룰러 인터넷 강도는 지역, 셀룰러 네트워크 유형, 로밍 유형 등과 같은 여러 요소에 따라 달라집니다. 더 빠르고 안정적인 셀룰러 인터넷 연결을 얻기 위해 할 수 있는 일이 몇 가지 있습니다. 수정 1 – iPhone 강제 다시 시작 때로는 장치를 강제로 다시 시작하면 셀룰러 연결을 포함한 많은 항목이 재설정됩니다. 1단계 – 볼륨 높이기 키를 한 번 눌렀다가 놓습니다. 그런 다음 볼륨 작게 키를 눌렀다가 다시 놓습니다. 2단계 - 프로세스의 다음 부분은 오른쪽에 있는 버튼을 누르는 것입니다. iPhone이 다시 시작되도록 하세요. 셀룰러 데이터를 활성화하고 네트워크 속도를 확인하세요. 다시 확인하세요 수정 2 – 데이터 모드 변경 5G는 더 나은 네트워크 속도를 제공하지만 신호가 약할 때 더 잘 작동합니다

최근 군계는 미군 전투기가 이제 AI를 활용해 완전 자동 공중전을 완수할 수 있다는 소식에 충격을 받았다. 네, 얼마 전 미군의 AI 전투기가 최초로 공개되면서 그 미스터리가 드러났습니다. 이 전투기의 정식 명칭은 VISTA(Variable Stability Flight Simulator Test Aircraft)로 미 공군 장관이 직접 조종해 일대일 공중전을 모의 실험한 것이다. 5월 2일, 미 공군 장관 프랭크 켄달(Frank Kendall)이 X-62AVISTA를 타고 에드워드 공군 기지에서 이륙했습니다. 1시간의 비행 동안 모든 비행 작업은 AI에 의해 자동으로 완료되었습니다. Kendall은 "지난 수십 년 동안 우리는 자율 공대공 전투의 무한한 잠재력에 대해 생각해 왔지만 항상 도달할 수 없는 것처럼 보였습니다."라고 말했습니다. 그러나 지금은,
