Database Reference
In-Depth Information
Thus, to generate data for performance testing, clone or download this
project from github: https://github.com/markkerzner/cas-dax-labs .
It contains the compiled JAR files, so all that you need to run it is Java.
Run this generator, for example, as follows:
cd generators
./run_generate_videos.sh 100 10
Here, the two parameters are number-videos and number-locations-per-
video .
Then, you can load the generated user data. (Please consult the labs for the
load script.)
To analyze the SQL, examine the videos.txt ile.
• Add a location to a map, modify it, and delete it.
Consider this example:
UPDATE videos SET location = {'us' : 'http://right.there'} WHERE
videoid = 18134b9d-6222-4f0e-b06d-4ba1e6c62f50;
• Do performance testing and profiling on your table.
Maps are serialized, and this incurs a performance cost. Generate data with
10 locations or with 100 locations. Run it with trace turned on and find the
point where the performance of this location map becomes a problem. (For
more information on tracing, please consult http://hbase.apache.org/
book/tracing.client.shell.html . ) To turn on tracing, use this command:
hbase> trace 'start'
Now, you can run the inserts by copying and pasting the generated
video's data.
Run it with 5, 10, 20, and other such locations. When does the performance
noticeably deteriorate?
The following points should be noted on profiling:
° Observe the wealth of information you get with tracing turned on
° All of this tracing information is available with the Java API, and
that is how you can approach measuring performance in production,
without writing custom load testing code
° Keep in mind that tracing has its own overhead; so, use it only for
debugging and profiling, not for overall performance measurements
 
Search WWH ::




Custom Search