blob: af9205ec778c97c526f5b5bb94da106f3cb964ca [file] [log] [blame] [view]
<!--
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.
-->
# Apache Accumulo Batch Writing and Scanning Example
This is an example of how to use the BatchWriter and BatchScanner.
This tutorial uses the following Java classes.
* [SequentialBatchWriter.java] - writes mutations with sequential rows and random values
* [RandomBatchScanner.java] - reads random rows and verifies their values
Run `SequentialBatchWriter` to add 10000 entries with random 50 bytes values to Accumulo.
$ ./bin/runex client.SequentialBatchWriter
Verify data was ingested by scanning the table using the Accumulo shell:
$ accumulo shell
root@instance> table examples.batch
root@instance examples.batch> scan
Run `RandomBatchScanner` to perform 1000 random queries and verify the results.
$ ./bin/runex client.RandomBatchScanner
16:04:05,950 [examples.client.RandomBatchScanner] INFO : Generating 1000 random ranges for BatchScanner to read
16:04:06,020 [examples.client.RandomBatchScanner] INFO : Reading ranges using BatchScanner
16:04:06,283 [examples.client.RandomBatchScanner] TRACE: 100 lookups
16:04:06,290 [examples.client.RandomBatchScanner] TRACE: 200 lookups
16:04:06,294 [examples.client.RandomBatchScanner] TRACE: 300 lookups
16:04:06,297 [examples.client.RandomBatchScanner] TRACE: 400 lookups
16:04:06,301 [examples.client.RandomBatchScanner] TRACE: 500 lookups
16:04:06,304 [examples.client.RandomBatchScanner] TRACE: 600 lookups
16:04:06,307 [examples.client.RandomBatchScanner] TRACE: 700 lookups
16:04:06,309 [examples.client.RandomBatchScanner] TRACE: 800 lookups
16:04:06,316 [examples.client.RandomBatchScanner] TRACE: 900 lookups
16:04:06,320 [examples.client.RandomBatchScanner] TRACE: 1000 lookups
16:04:06,330 [examples.client.RandomBatchScanner] INFO : Scan finished! 3246.75 lookups/sec, 0.31 secs, 1000 results
16:04:06,331 [examples.client.RandomBatchScanner] INFO : All expected rows were scanned
[SequentialBatchWriter.java]: ../src/main/java/org/apache/accumulo/examples/client/SequentialBatchWriter.java
[RandomBatchWriter.java]: ../src/main/java/org/apache/accumulo/examples/client/RandomBatchWriter.java
[RandomBatchScanner.java]: ../src/main/java/org/apache/accumulo/examples/client/RandomBatchScanner.java