同步操作将从 科学大数据开源社区/图数据库系统-gStore 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
This chapter introduce the whole structure of the gStore system project.
Database/ (calling other core parts to deal with requests from interface part)
Database.cpp (achieve functions)
Database.h (class, members and functions definitions)
Join.cpp (join the node candidates to get results)
Join.h (class, members,, and functions definitions)
KVstore/ (a key-value store to swap between memory and disk)
KVstore.cpp (interact with upper layers)
KVstore.h
heap/ (a heap of nodes whose content are in memory)
Heap.cpp
Heap.h
node/ (all kinds of nodes in B+-tree)
Node.cpp (the base class of IntlNode and LeafNode)
Node.h
IntlNode.cpp (internal nodes in B+-tree)
IntlNode.h
LeafNode.cpp (leaf nodes in B+-tree)
LeafNode.h
storage/ (swap contents between memory and disk)
file.h
Storage.cpp
Storage.h
tree/ (implement all tree operations and interfaces)
Tree.cpp
Tree.h
Query/ (needed to answer SPARQL query)
BasicQuery.cpp (basic type of queries without aggregate operations)
BasicQuery.h
IDList.cpp (candidate list of a node/variable in query)
IDList.h
ResultSet.cpp (keep the result set corresponding to a query)
ResultSet.h
SPARQLquery.cpp (deal with a entire SPARQL query)
SPARQLquery.h
Varset.cpp
Varset.h
QueryTree.cpp
QueryTree.h
GeneralEvaluation.cpp
GeneralEvaluation.h
RegexExpression.h
Signature/ (assign signatures for nodes and edges, but not for literals)
SigEntry.cpp
SigEntry.h
Signature.cpp
Signature.h
VSTree/ (an tree index to prune more efficiently)
EntryBuffer.cpp
EntryBuffer.h
LRUCache.cpp
LRUCache.h
VNode.cpp
VNode.h
VSTree.cpp
VSTree.h
Parser/
DBParser.cpp
DBParser.h
RDFParser.cpp
RDFParser.h
SparqlParser.c (auto-generated, subtle modified manually, compressed)
SparqlParser.h (auto-generated, subtle modified manually, compressed)
SparqlLexer.c (auto-generated, subtle modified manually, compressed)
SparqlLexer.h (auto-generated, subtle modified manually, compressed)
TurtleParser.cpp
TurtleParser.h
Type.h
QueryParser.cpp
QueryParser.h
Util/
Util.cpp (headers, macros, typedefs, functions...)
Util.h
Bstr.cpp (represent strings of arbitrary length)
Bstr.h (class, members and functions definitions)
Stream.cpp (store and use temp results, which may be very large)
Stream.h
Triple.cpp (deal with triples, a triple can be divided as subject(entity), predicate(entity), object(entity or literal))
Triple.h
BloomFilter.cpp
BloomFilter.h
Server/ (client and server mode to use gStore)
Client.cpp
Client.h
Operation.cpp
Operation.h
Server.cpp
Server.h
Socket.cpp
Socket.h
Main/ (a series of applications/main-program to operate on gStore)
gload.cpp (import a RDF dataset)
gquery.cpp (query a database)
gserver.cpp (start up the gStore server)
gclient.cpp (connect to a gStore server and interact)
To acquire a deep understanding of gStore codes, please go to Code Detail. See use case to understand the design of use cases, and see OOA and OOD for OOA design and OOD design, respectively.
If you want to know the sequence of a running gStore, please view the list below:
It is really not strange to see something different with the original design in the source code. And some designed functions may have not be achieved so far.
The api/ folder in gStore is used to store API program, libs and examples, please go to API for details. And test/ is used to store a series test programs or utilities, such as gtest, full_test and so on. Chapters related with test/ are How To Use and Test Result. This project need an ANTLR lib to parse the SPARQL query, whose code is placed in tools/(also archived here) and the compiled libantlr.a is placed in lib/ directory.
We place some datasets and queries in data/ directory as examples, and you can try them to see how gStore works. Related instructions are in How To Use. The docs/ directory contains all kinds of documents of gStore, including a series of markdown files and two folders, pdf/ and jpg/. Files whose type is pdf are placed in pdf/ folder, while files with jpg type are placed in jpg/ folder.
You are advised to start from the README in the gStore root directory, and visit other chapters only when needed. At last, you will see all documents from link to link if you are really interested in gStore.
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。