-
-
Save pluradj/b0336d4f1318ab20e6bca15ec0a11cf1 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
$ # start in a clean directory | |
$ cd /tmp | |
$ # download and unzip JanusGraph | |
$ curl -OL https://github.com/JanusGraph/janusgraph/releases/download/v0.2.1/janusgraph-0.2.1-hadoop2.zip | |
% Total % Received % Xferd Average Speed Time Time Time Current | |
Dload Upload Total Spent Left Speed | |
100 618 0 618 0 0 1790 0 --:--:-- --:--:-- --:--:-- 1807 | |
100 276M 100 276M 0 0 10.3M 0 0:00:26 0:00:26 --:--:-- 12.9M | |
$ unzip -q janusgraph-0.2.1-hadoop2.zip | |
$ cd janusgraph-0.2.1-hadoop2 | |
$ # backup the original server config and replace it with the one that uses ConfigurationManagementGraph | |
$ cp conf/gremlin-server/gremlin-server.yaml conf/gremlin-server/gremlin-server.yaml.orig | |
$ cp conf/gremlin-server/gremlin-server-configuration.yaml conf/gremlin-server/gremlin-server.yaml | |
$ # start Cassandra, Elasticsearch, and Gremlin Server | |
$ bin/janusgraph.sh start | |
Forking Cassandra... | |
Running `nodetool statusthrift`.. OK (returned exit status 0 and printed string "running"). | |
Forking Elasticsearch... | |
Connecting to Elasticsearch (127.0.0.1:9200)..... OK (connected to 127.0.0.1:9200). | |
Forking Gremlin-Server... | |
Connecting to Gremlin-Server (127.0.0.1:8182)..... OK (connected to 127.0.0.1:8182). | |
Run gremlin.sh to connect. | |
$ # start Gremlin Console | |
$ bin/gremlin.sh | |
\,,,/ | |
(o o) | |
-----oOOo-(3)-oOOo----- | |
plugin activated: janusgraph.imports | |
plugin activated: tinkerpop.server | |
plugin activated: tinkerpop.utilities | |
SLF4J: Class path contains multiple SLF4J bindings. | |
SLF4J: Found binding in [jar:file:/tmp/janusgraph-0.2.1-hadoop2/lib/slf4j-log4j12-1.7.12.jar!/org/slf4j/impl/StaticLoggerBinder.class] | |
SLF4J: Found binding in [jar:file:/tmp/janusgraph-0.2.1-hadoop2/lib/logback-classic-1.1.2.jar!/org/slf4j/impl/StaticLoggerBinder.class] | |
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation. | |
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory] | |
18:03:07 WARN org.apache.hadoop.util.NativeCodeLoader - Unable to load native-hadoop library for your platform... using builtin-java classes where applicable | |
plugin activated: tinkerpop.hadoop | |
plugin activated: tinkerpop.spark | |
plugin activated: tinkerpop.tinkergraph | |
gremlin> // create a sessioned connection to the Gremlin Server | |
gremlin> :remote connect tinkerpop.server conf/remote.yaml session | |
==>Configured localhost/127.0.0.1:8182-[55b76f24-dadf-4774-8a53-3914771027c8] | |
gremlin> // send all scripts to the Gremlin Server | |
gremlin> :remote console | |
==>All scripts will now be sent to Gremlin Server - [localhost/127.0.0.1:8182]-[55b76f24-dadf-4774-8a53-3914771027c8] - type ':remote console' to return to local mode | |
gremlin> // dynamically create a graph configuration | |
gremlin> map = new HashMap() | |
gremlin> map.put("storage.backend", "cql") | |
==>null | |
gremlin> map.put("storage.hostname", "127.0.0.1") | |
==>null | |
gremlin> map.put("graph.graphname", "graph1") | |
==>null | |
gremlin> ConfiguredGraphFactory.createConfiguration(new MapConfiguration(map)) | |
==>null | |
gremlin> // open the graph | |
gremlin> graph = ConfiguredGraphFactory.open("graph1") | |
==>standardjanusgraph[cql:[127.0.0.1]] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Note: this is unmodified copy of gremlin-server-configuration.yaml from the distribution | |
host: 0.0.0.0 | |
port: 8182 | |
scriptEvaluationTimeout: 30000 | |
channelizer: org.apache.tinkerpop.gremlin.server.channel.WebSocketChannelizer | |
graphManager: org.janusgraph.graphdb.management.JanusGraphManager | |
graphs: { | |
ConfigurationManagementGraph: conf/janusgraph-cql-configurationgraph.properties | |
} | |
plugins: | |
- janusgraph.imports | |
scriptEngines: { | |
gremlin-groovy: { | |
imports: [java.lang.Math], | |
staticImports: [java.lang.Math.PI], | |
scripts: [scripts/empty-sample.groovy]}} | |
serializers: | |
- { className: org.apache.tinkerpop.gremlin.driver.ser.GryoMessageSerializerV1d0, config: { ioRegistries: [org.janusgraph.graphdb.tinkerpop.JanusGraphIoRegistry] }} | |
- { className: org.apache.tinkerpop.gremlin.driver.ser.GryoLiteMessageSerializerV1d0, config: {ioRegistries: [org.janusgraph.graphdb.tinkerpop.JanusGraphIoRegistry] }} | |
- { className: org.apache.tinkerpop.gremlin.driver.ser.GryoMessageSerializerV1d0, config: { serializeResultToString: true }} | |
- { className: org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerGremlinV1d0, config: { ioRegistries: [org.janusgraph.graphdb.tinkerpop.JanusGraphIoRegistryV1d0] }} | |
- { className: org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerGremlinV2d0, config: { ioRegistries: [org.janusgraph.graphdb.tinkerpop.JanusGraphIoRegistry] }} | |
- { className: org.apache.tinkerpop.gremlin.driver.ser.GraphSONMessageSerializerV1d0, config: { ioRegistries: [org.janusgraph.graphdb.tinkerpop.JanusGraphIoRegistryV1d0] }} | |
processors: | |
- { className: org.apache.tinkerpop.gremlin.server.op.session.SessionOpProcessor, config: { sessionTimeout: 28800000 }} | |
- { className: org.apache.tinkerpop.gremlin.server.op.traversal.TraversalOpProcessor, config: { cacheExpirationTime: 600000, cacheMaxSize: 1000 }} | |
metrics: { | |
consoleReporter: {enabled: true, interval: 180000}, | |
csvReporter: {enabled: true, interval: 180000, fileName: /tmp/gremlin-server-metrics.csv}, | |
jmxReporter: {enabled: true}, | |
slf4jReporter: {enabled: true, interval: 180000}, | |
gangliaReporter: {enabled: false, interval: 180000, addressingMode: MULTICAST}, | |
graphiteReporter: {enabled: false, interval: 180000}} | |
maxInitialLineLength: 4096 | |
maxHeaderSize: 8192 | |
maxChunkSize: 8192 | |
maxContentLength: 65536 | |
maxAccumulationBufferComponents: 1024 | |
resultIterationBatchSize: 64 | |
writeBufferLowWaterMark: 32768 | |
writeBufferHighWaterMark: 65536 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Note: this is unmodified from the distribution | |
# JanusGraph configuration sample: Cassandra over a socket | |
# | |
# This file connects to a Cassandra daemon running on localhost via | |
# CQL. Cassandra must already be started before starting JanusGraph | |
# with this file. | |
gremlin.graph=org.janusgraph.core.ConfiguredGraphFactory | |
# The primary persistence provider used by JanusGraph. This is required. | |
# It should be set one of JanusGraph's built-in shorthand names for its | |
# standard storage backends (shorthands: berkeleyje, cql, cassandrathrift, | |
# cassandra, astyanax, embeddedcassandra, hbase, inmemory) or to the full | |
# package and classname of a custom/third-party StoreManager | |
# implementation. | |
# | |
# Default: (no default value) | |
# Data Type: String | |
# Mutability: LOCAL | |
storage.backend=cql | |
# The configuration management graph reserved for use with JanusGraphManager | |
# and ConfiguredGraphFactory | |
graph.graphname=ConfigurationManagementGraph | |
# The hostname or comma-separated list of hostnames of storage backend | |
# servers. This is only applicable to some storage backends, such as | |
# cassandra and hbase. | |
# | |
# Default: 127.0.0.1 | |
# Data Type: class java.lang.String[] | |
# Mutability: LOCAL | |
storage.hostname=127.0.0.1 | |
# Whether to enable JanusGraph's database-level cache, which is shared | |
# across all transactions. Enabling this option speeds up traversals by | |
# holding hot graph elements in memory, but also increases the likelihood | |
# of reading stale data. Disabling it forces each transaction to | |
# independently fetch graph elements from storage before reading/writing | |
# them. | |
# | |
# Default: false | |
# Data Type: Boolean | |
# Mutability: MASKABLE | |
cache.db-cache = true | |
# How long, in milliseconds, database-level cache will keep entries after | |
# flushing them. This option is only useful on distributed storage | |
# backends that are capable of acknowledging writes without necessarily | |
# making them immediately visible. | |
# | |
# Default: 50 | |
# Data Type: Integer | |
# Mutability: GLOBAL_OFFLINE | |
# | |
# Settings with mutability GLOBAL_OFFLINE are centrally managed in | |
# JanusGraph's storage backend. After starting the database for the first | |
# time, this file's copy of this setting is ignored. Use JanusGraph's | |
# Management System to read or modify this value after bootstrapping. | |
cache.db-cache-clean-wait = 20 | |
# Default expiration time, in milliseconds, for entries in the | |
# database-level cache. Entries are evicted when they reach this age even | |
# if the cache has room to spare. Set to 0 to disable expiration (cache | |
# entries live forever or until memory pressure triggers eviction when set | |
# to 0). | |
# | |
# Default: 10000 | |
# Data Type: Long | |
# Mutability: GLOBAL_OFFLINE | |
# | |
# Settings with mutability GLOBAL_OFFLINE are centrally managed in | |
# JanusGraph's storage backend. After starting the database for the first | |
# time, this file's copy of this setting is ignored. Use JanusGraph's | |
# Management System to read or modify this value after bootstrapping. | |
cache.db-cache-time = 180000 | |
# Size of JanusGraph's database level cache. Values between 0 and 1 are | |
# interpreted as a percentage of VM heap, while larger values are | |
# interpreted as an absolute size in bytes. | |
# | |
# Default: 0.3 | |
# Data Type: Double | |
# Mutability: MASKABLE | |
cache.db-cache-size = 0.5 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Note: this is unmodified from the distribution | |
hosts: [localhost] | |
port: 8182 | |
serializer: { className: org.apache.tinkerpop.gremlin.driver.ser.GryoMessageSerializerV1d0, config: { serializeResultToString: true }} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment