[3/6] accumulo git commit: ACCUMULO-4100 Fix typo in batch scanner example
ACCUMULO-4100 Fix typo in batch scanner example Project: http://git-wip-us.apache.org/repos/asf/accumulo/repo Commit: http://git-wip-us.apache.org/repos/asf/accumulo/commit/05811af3 Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/05811af3 Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/05811af3 Branch: refs/heads/master Commit: 05811af38c3dd257400465779552603df2a13641 Parents: 288a2e1 Author: Christopher TubbsAuthored: Wed Jan 6 15:35:55 2016 -0500 Committer: Christopher Tubbs Committed: Wed Jan 6 15:35:55 2016 -0500 -- docs/src/main/latex/accumulo_user_manual/chapters/clients.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/accumulo/blob/05811af3/docs/src/main/latex/accumulo_user_manual/chapters/clients.tex -- diff --git a/docs/src/main/latex/accumulo_user_manual/chapters/clients.tex b/docs/src/main/latex/accumulo_user_manual/chapters/clients.tex index f41352d..e0e2889 100644 --- a/docs/src/main/latex/accumulo_user_manual/chapters/clients.tex +++ b/docs/src/main/latex/accumulo_user_manual/chapters/clients.tex @@ -219,7 +219,7 @@ BatchScanner bscan = bscan.setRanges(ranges); bscan.fetchColumnFamily(new Text("attributes")); -for(Entry entry : scan) +for(Entry entry : bscan) System.out.println(entry.getValue()); \end{verbatim}\endgroup
[6/6] accumulo git commit: Merge branch '1.7'
Merge branch '1.7' Project: http://git-wip-us.apache.org/repos/asf/accumulo/repo Commit: http://git-wip-us.apache.org/repos/asf/accumulo/commit/c252d1a6 Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/c252d1a6 Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/c252d1a6 Branch: refs/heads/master Commit: c252d1a6e17ce5a0641a96c817aca029ded6ffca Parents: 7bbf7ad d505843 Author: Christopher TubbsAuthored: Wed Jan 6 15:41:26 2016 -0500 Committer: Christopher Tubbs Committed: Wed Jan 6 15:41:26 2016 -0500 -- docs/src/main/asciidoc/chapters/clients.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --
[1/6] accumulo git commit: ACCUMULO-4100 Fix typo in batch scanner example
Repository: accumulo Updated Branches: refs/heads/1.6 288a2e108 -> 05811af38 refs/heads/1.7 0e9f2085a -> d505843e1 refs/heads/master 7bbf7ade1 -> c252d1a6e ACCUMULO-4100 Fix typo in batch scanner example Project: http://git-wip-us.apache.org/repos/asf/accumulo/repo Commit: http://git-wip-us.apache.org/repos/asf/accumulo/commit/05811af3 Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/05811af3 Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/05811af3 Branch: refs/heads/1.6 Commit: 05811af38c3dd257400465779552603df2a13641 Parents: 288a2e1 Author: Christopher TubbsAuthored: Wed Jan 6 15:35:55 2016 -0500 Committer: Christopher Tubbs Committed: Wed Jan 6 15:35:55 2016 -0500 -- docs/src/main/latex/accumulo_user_manual/chapters/clients.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/accumulo/blob/05811af3/docs/src/main/latex/accumulo_user_manual/chapters/clients.tex -- diff --git a/docs/src/main/latex/accumulo_user_manual/chapters/clients.tex b/docs/src/main/latex/accumulo_user_manual/chapters/clients.tex index f41352d..e0e2889 100644 --- a/docs/src/main/latex/accumulo_user_manual/chapters/clients.tex +++ b/docs/src/main/latex/accumulo_user_manual/chapters/clients.tex @@ -219,7 +219,7 @@ BatchScanner bscan = bscan.setRanges(ranges); bscan.fetchColumnFamily(new Text("attributes")); -for(Entry entry : scan) +for(Entry entry : bscan) System.out.println(entry.getValue()); \end{verbatim}\endgroup
[5/6] accumulo git commit: Merge branch '1.6' into 1.7
Merge branch '1.6' into 1.7 Conflicts: docs/src/main/asciidoc/chapters/clients.txt Project: http://git-wip-us.apache.org/repos/asf/accumulo/repo Commit: http://git-wip-us.apache.org/repos/asf/accumulo/commit/d505843e Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/d505843e Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/d505843e Branch: refs/heads/1.7 Commit: d505843e1fe2cf7e2abe947bad166a37693a441c Parents: 0e9f208 05811af Author: Christopher TubbsAuthored: Wed Jan 6 15:41:00 2016 -0500 Committer: Christopher Tubbs Committed: Wed Jan 6 15:41:00 2016 -0500 -- docs/src/main/asciidoc/chapters/clients.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/accumulo/blob/d505843e/docs/src/main/asciidoc/chapters/clients.txt -- diff --cc docs/src/main/asciidoc/chapters/clients.txt index 2bae4ed,000..53abd03 mode 100644,00..100644 --- a/docs/src/main/asciidoc/chapters/clients.txt +++ b/docs/src/main/asciidoc/chapters/clients.txt @@@ -1,391 -1,0 +1,391 @@@ +// Licensed to the Apache Software Foundation (ASF) under one or more +// contributor license agreements. See the NOTICE file distributed with +// this work for additional information regarding copyright ownership. +// The ASF licenses this file to You under the Apache License, Version 2.0 +// (the "License"); you may not use this file except in compliance with +// the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +== Writing Accumulo Clients + +=== Running Client Code + +There are multiple ways to run Java code that uses Accumulo. Below is a list +of the different ways to execute client code. + +* using java executable +* using the accumulo script +* using the tool script + +In order to run client code written to run against Accumulo, you will need to +include the jars that Accumulo depends on in your classpath. Accumulo client +code depends on Hadoop and Zookeeper. For Hadoop add the hadoop client jar, all +of the jars in the Hadoop lib directory, and the conf directory to the +classpath. For recent Zookeeper versions, you only need to add the Zookeeper jar, and not +what is in the Zookeeper lib directory. You can run the following command on a +configured Accumulo system to see what its using for its classpath. + + $ACCUMULO_HOME/bin/accumulo classpath + +Another option for running your code is to put a jar file in ++$ACCUMULO_HOME/lib/ext+. After doing this you can use the accumulo +script to execute your code. For example if you create a jar containing the +class +com.foo.Client+ and placed that in +lib/ext+, then you could use the command ++$ACCUMULO_HOME/bin/accumulo com.foo.Client+ to execute your code. + +If you are writing map reduce job that access Accumulo, then you can use the +bin/tool.sh script to run those jobs. See the map reduce example. + +=== Connecting + +All clients must first identify the Accumulo instance to which they will be +communicating. Code to do this is as follows: + +[source,java] + +String instanceName = "myinstance"; +String zooServers = "zooserver-one,zooserver-two" +Instance inst = new ZooKeeperInstance(instanceName, zooServers); + +Connector conn = inst.getConnector("user", new PasswordToken("passwd")); + + +The PasswordToken is the most common implementation of an \texttt{AuthenticationToken}. +This general interface allow authentication as an Accumulo user to come from +a variety of sources or means. The CredentialProviderToken leverages the Hadoop +CredentialProviders (new in Hadoop 2.6). + +For example, the CredentialProviderToken can be used in conjunction with a Java +KeyStore to alleviate passwords stored in cleartext. When stored in HDFS, a single +KeyStore can be used across an entire instance. Be aware that KeyStores stored on +the local filesystem must be made available to all nodes in the Accumulo cluster. + +[source,java] + +KerberosToken token = new KerberosToken(); +Connector conn = inst.getConnector(token.getPrincipal(), token); + + +The KerberosToken can be provided to use the authentication provided by Kerberos. +Using Kerberos requires external setup and additional configuration, but provides +a single point of authentication through HDFS, YARN and ZooKeeper and allowing +for
[4/6] accumulo git commit: Merge branch '1.6' into 1.7
Merge branch '1.6' into 1.7 Conflicts: docs/src/main/asciidoc/chapters/clients.txt Project: http://git-wip-us.apache.org/repos/asf/accumulo/repo Commit: http://git-wip-us.apache.org/repos/asf/accumulo/commit/d505843e Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/d505843e Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/d505843e Branch: refs/heads/master Commit: d505843e1fe2cf7e2abe947bad166a37693a441c Parents: 0e9f208 05811af Author: Christopher TubbsAuthored: Wed Jan 6 15:41:00 2016 -0500 Committer: Christopher Tubbs Committed: Wed Jan 6 15:41:00 2016 -0500 -- docs/src/main/asciidoc/chapters/clients.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/accumulo/blob/d505843e/docs/src/main/asciidoc/chapters/clients.txt -- diff --cc docs/src/main/asciidoc/chapters/clients.txt index 2bae4ed,000..53abd03 mode 100644,00..100644 --- a/docs/src/main/asciidoc/chapters/clients.txt +++ b/docs/src/main/asciidoc/chapters/clients.txt @@@ -1,391 -1,0 +1,391 @@@ +// Licensed to the Apache Software Foundation (ASF) under one or more +// contributor license agreements. See the NOTICE file distributed with +// this work for additional information regarding copyright ownership. +// The ASF licenses this file to You under the Apache License, Version 2.0 +// (the "License"); you may not use this file except in compliance with +// the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +== Writing Accumulo Clients + +=== Running Client Code + +There are multiple ways to run Java code that uses Accumulo. Below is a list +of the different ways to execute client code. + +* using java executable +* using the accumulo script +* using the tool script + +In order to run client code written to run against Accumulo, you will need to +include the jars that Accumulo depends on in your classpath. Accumulo client +code depends on Hadoop and Zookeeper. For Hadoop add the hadoop client jar, all +of the jars in the Hadoop lib directory, and the conf directory to the +classpath. For recent Zookeeper versions, you only need to add the Zookeeper jar, and not +what is in the Zookeeper lib directory. You can run the following command on a +configured Accumulo system to see what its using for its classpath. + + $ACCUMULO_HOME/bin/accumulo classpath + +Another option for running your code is to put a jar file in ++$ACCUMULO_HOME/lib/ext+. After doing this you can use the accumulo +script to execute your code. For example if you create a jar containing the +class +com.foo.Client+ and placed that in +lib/ext+, then you could use the command ++$ACCUMULO_HOME/bin/accumulo com.foo.Client+ to execute your code. + +If you are writing map reduce job that access Accumulo, then you can use the +bin/tool.sh script to run those jobs. See the map reduce example. + +=== Connecting + +All clients must first identify the Accumulo instance to which they will be +communicating. Code to do this is as follows: + +[source,java] + +String instanceName = "myinstance"; +String zooServers = "zooserver-one,zooserver-two" +Instance inst = new ZooKeeperInstance(instanceName, zooServers); + +Connector conn = inst.getConnector("user", new PasswordToken("passwd")); + + +The PasswordToken is the most common implementation of an \texttt{AuthenticationToken}. +This general interface allow authentication as an Accumulo user to come from +a variety of sources or means. The CredentialProviderToken leverages the Hadoop +CredentialProviders (new in Hadoop 2.6). + +For example, the CredentialProviderToken can be used in conjunction with a Java +KeyStore to alleviate passwords stored in cleartext. When stored in HDFS, a single +KeyStore can be used across an entire instance. Be aware that KeyStores stored on +the local filesystem must be made available to all nodes in the Accumulo cluster. + +[source,java] + +KerberosToken token = new KerberosToken(); +Connector conn = inst.getConnector(token.getPrincipal(), token); + + +The KerberosToken can be provided to use the authentication provided by Kerberos. +Using Kerberos requires external setup and additional configuration, but provides +a single point of authentication through HDFS, YARN and ZooKeeper and allowing +for
[2/6] accumulo git commit: ACCUMULO-4100 Fix typo in batch scanner example
ACCUMULO-4100 Fix typo in batch scanner example Project: http://git-wip-us.apache.org/repos/asf/accumulo/repo Commit: http://git-wip-us.apache.org/repos/asf/accumulo/commit/05811af3 Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/05811af3 Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/05811af3 Branch: refs/heads/1.7 Commit: 05811af38c3dd257400465779552603df2a13641 Parents: 288a2e1 Author: Christopher TubbsAuthored: Wed Jan 6 15:35:55 2016 -0500 Committer: Christopher Tubbs Committed: Wed Jan 6 15:35:55 2016 -0500 -- docs/src/main/latex/accumulo_user_manual/chapters/clients.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/accumulo/blob/05811af3/docs/src/main/latex/accumulo_user_manual/chapters/clients.tex -- diff --git a/docs/src/main/latex/accumulo_user_manual/chapters/clients.tex b/docs/src/main/latex/accumulo_user_manual/chapters/clients.tex index f41352d..e0e2889 100644 --- a/docs/src/main/latex/accumulo_user_manual/chapters/clients.tex +++ b/docs/src/main/latex/accumulo_user_manual/chapters/clients.tex @@ -219,7 +219,7 @@ BatchScanner bscan = bscan.setRanges(ranges); bscan.fetchColumnFamily(new Text("attributes")); -for(Entry entry : scan) +for(Entry entry : bscan) System.out.println(entry.getValue()); \end{verbatim}\endgroup