
<!DOCTYPE html><html><head><meta charset="utf-8"><title>Untitled Document.md</title><style>
p img{ max-width:100%}
pre {
    width: 80% !important;
    white-space: normal;
}
</style></head><body id="preview">
<!--<p>&lt;!–<br>
Licensed to the Apache Software Foundation (ASF) under one<br>
or more contributor license agreements.  See the NOTICE file<br>
distributed with this work for additional information<br>
regarding copyright ownership.  The ASF licenses this file<br>
to you under the Apache License, Version 2.0 (the<br>
“License”); you may not use this file except in compliance<br>
with the License.  You may obtain a copy of the License at</p>
<pre><code>  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
&quot;AS IS&quot; 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.
</code></pre>
<p>–&gt;<br>-->
<img src="../docs/images/format/CarbonData_logo.png?raw=true" alt="CarbonData_Logo"></p>
<h1><a id="User_Guide_19"></a>User Guide</h1>
<p>Welcome to Apache CarbonData. Apache CarbonData(incubating) is a new big data file format for faster interactive query using advanced columnar storage, index, compression and encoding techniques to improve computing efficiency, in turn it will help speedup queries an order of magnitude faster over PetaBytes of data.<br>
This user guide provides a detailed description about the CarbonData and its features.</p>
<p>Let’s get started !</p>
<ul>
<li><a href="">Overview</a>
<ul>
<li><a href="">Introduction</a></li>
<li><a href="">Features</a></li>
<li><a href="">Data Types</a></li>
<li><a href="">Compatibility</a></li>
<li><a href="">Packaging and Interfaces</a></li>
</ul>
</li>
<li><a href="">Installing CarbonData</a>
<ul>
<li><a href="">Standalone Spark Cluster</a></li>
<li><a href="">Spark on Yarn Cluster</a></li>
</ul>
</li>
<li><a href="">Configuring CarbonData</a>
<ul>
<li><a href="">System Configuration</a></li>
<li><a href="">Performance Configuration</a></li>
<li><a href="">Spark Configuration</a></li>
</ul>
</li>
<li><a href="">Using CarbonData</a>
<ul>
<li><a href="">Data Management</a></li>
<li><a href="">DDL Operations</a></li>
<li><a href="">DML Operations</a></li>
</ul>
</li>
</ul>

</body></html>
