On 27 January 2015 at 15:23, Andy Seaborne <[email protected]> wrote:

> tdbloader is pure java and is included in the fuseki jar.
> tdbloader2 has a shell script to drive it.
> You can't run either loader on a live database

Right. A nice feature (or side-effect?) I found was that Fuseki can
pick up live any existing datasets (made by tdloader)  by simply
"Creating a new dataset" that has exactly the same name:

https://github.com/stain/jena/blob/fuseki2-docker/jena-fuseki2/jena-fuseki-docker/README.md#recognizing-the-dataset-in-fuseki




> did you mean
> java -cp fuseki-server.jar tdb.tdbloader --loc


Right - I got this to work, and even added a little shell-script to
help with *ttl.gz expansion (as that could get tricky through the
shell on the host).

See 
https://github.com/stain/jena/tree/fuseki2-docker/jena-fuseki2/jena-fuseki-docker#data-loading


With not much adjustment (usual FUSEKI_HOME/FUSEKI_BASE stuff) this
script could work well also in the normal fuseki2 dist?

https://github.com/stain/jena/blob/fuseki2-docker/jena-fuseki2/jena-fuseki-docker/load.sh


The default is to load all *ttl *rdf.gz etc. in the /staging directory.


As tdbloader with just filenames chucks everything into the default
graph, I guess the only option to get named graphs is through an
assembler file?

I didn't use tdbloader2 for now as it will only work with fresh
databases (could add confusion to the README).


> config.ttl or the UI.

I went with just telling people to click the button in the UI, this
worked smoothly. :-)

I guess it would only be a challenge if you wanted to load many datasets.


It would be nice to just add it to config.ttl, but it seems then I
have to copy the defaults for "query" endpoints etc?  (Where from?).
It would also have to detect if the dataset already exists.


Would I get reasonable defaults if I add a minimal config with just
DatasetTDB, fuseki:dataset and tdb:location - or do I need to include
all of those from the template?


The datasets created in the UI seem to live under
system-configuration/ rather than in config.ttl
-- should such a register-load shell script put things in there
instead of config.ttl?

Are those UUIDs registered somewhere?



>> Q: Should I run the standalone Fuseki or a WAR inside say Tomcat?
> Your choice!

I'll stick with the standalone then, as it means I get the tdb.loader
for free :)


>> Q: Are there any memory settings that should be made accessible?
> Heap - usually it does not need changing but if you have lots of datasets it
> might.

I see - now it is this line:

    JVM_ARGS=${JVM_ARGS:--Xmx1200M}

Why is this using ":" here? I don't understand that bit. :-)

I guess I would need to freshen my sed skills to set the memory limit
from a shell variable.


So you generally mean.. a high number of datasets? Size of dataset or
query doesn't matter much with TDB?


>> Q: Is it safe to just stop fuseki-server with Ctrl-C / docker stop? It
>> seems to stop a bit too fast, with no log outputs.
> Yes - or even "kill -9"

Nice! So

  docker stop fuseki

just works safely.


> The distribution has an unversioned file in it IIRC

Could you clarify..?

apache-jena-2.12.1.tar.gz and jena-fuseki-1.1.1-distribution.tar.gz
don't seem to include fuseki2.


So I have to (at least until Fuseki 2.0.0 is released) download
jena-fuseki-dist from

https://repository.apache.org/content/groups/snapshots/org/apache/jena/jena-fuseki-dist/2.0.0-SNAPSHOT/

by finding the timestamp in

https://repository.apache.org/content/groups/snapshots/org/apache/jena/jena-fuseki-dist/2.0.0-SNAPSHOT/maven-metadata.xml




-- 
Stian Soiland-Reyes
Apache Taverna (incubating)
http://orcid.org/0000-0001-9842-9718

Reply via email to