diff --git a/.htaccess b/.htaccess
index bf09eb2..e7a1f1b 100644
--- a/.htaccess
+++ b/.htaccess
@@ -12,6 +12,7 @@
 Redirect 301 /features/persistence.html /arch/persistence.html
 Redirect 301 /features/deploy.html /arch/clustering.html
 Redirect 301 /features/igniterdd.html /use-cases/spark/shared-memory-layer.html
+Redirect 301 /use-cases/spark/shared-memory-layer.html /use-cases/spark/spark-acceleration.html
 
 RewriteEngine On 
 
diff --git a/includes/header.html b/includes/header.html
index 14d8ee0..5761e5a 100644
--- a/includes/header.html
+++ b/includes/header.html
@@ -98,78 +98,45 @@
                                         </li>
                                     </ul>
                                 </li>
+
                                 <li class="dropdown" style="cursor: pointer;">
                                     <a class="dropdown-toggle" data-toggle="dropdown" aria-label="Use Cases">Use Cases<span class="caret"></span></a>
                                     <ul class="dropdown-menu" role="menu">
-                                        <li role="presentation" class="submenu-header">Proven by</li>
-                                        <li><a href="/provenusecases.html" aria-label="Proven Use Cases"
-                                               onclick="ga('send', 'event', 'apache_ignite_usecases', 'menu_click', 'proven_usecases');">
-                                            Ignite in Production</a>
-                                        </li>
 
-                                        <li class="divider">
-
-                                            <!--Database-->
-                                        <li role="presentation" class="submenu-header">Data Store</li>
-                                        <li><a href="/use-cases/database/distributed-database.html" aria-label="Data Store"
-                                               onclick="ga('send', 'event', 'apache_ignite_usecases', 'menu_click', 'distributed-database');">
-                                            Distributed Database</a>
-                                        </li>
-                                        <li><a href="/use-cases/database/in-memory-database.html" aria-label="In-Memory Database"
-                                               onclick="ga('send', 'event', 'apache_ignite_usecases', 'menu_click', 'distributed-database');">
-                                            In-Memory Database</a>
+                                        <li><a href="/use-cases/caching/database-caching.html"
+                                               aria-label="In-Memory Cache"
+                                               onclick="ga('send', 'event', 'apache_ignite_usecases', 'menu_click', 'in_memory_cache');">
+                                            In-Memory Cache</a>
                                         </li>
                                         <li><a href="/features/datagrid.html" aria-label="In-Memory Data Grid"
                                                onclick="ga('send', 'event', 'apache_ignite_usecases', 'menu_click', 'data_grid');">
                                             In-Memory Data Grid</a>
                                         </li>
+                                        <li><a href="/use-cases/database/in-memory-database.html" aria-label="In-Memory Database"
+                                               onclick="ga('send', 'event', 'apache_ignite_usecases', 'menu_click', 'distributed-database');">
+                                            In-Memory Database</a>
+                                        </li>
+                                        <li><a href="#" aria-label="Digital Integration Hub"
+                                               onclick="ga('send', 'event', 'apache_ignite_usecases', 'menu_click', 'digital_integration_hub');">
+                                            Digital Integration Hub</a>
+                                        </li>
                                         <li><a href="/use-cases/database/key-value-store.html" aria-label="Key-Value Store"
                                                onclick="ga('send', 'event', 'apache_ignite_usecases', 'menu_click', 'key_value_store');">
                                             Key-Value Store</a>
                                         </li>
-                                        <li class="divider">
-
-                                            <!--In-Memory Caching-->
-                                        <li role="presentation" class="submenu-header">In-Memory Cache</li>
-                                        <li><a href="/use-cases/caching/database-caching.html" aria-label="Database Caching"
-                                               onclick="ga('send', 'event', 'apache_ignite_usecases', 'menu_click', 'database-caching');">
-                                            Database Caching</a>
+                                        <li><a href="/use-cases/spark/spark-acceleration.html"
+                                               aria-label="Apache Spark Acceleration"
+                                               onclick="ga('send', 'event', 'apache_ignite_usecases', 'menu_click', 'apache_spark_acceleration');">
+                                            Apache Spark Acceleration</a>
                                         </li>
-                                        <li><a href="/use-cases/caching/jcache-provider.html" aria-label="JCache Provider"
-                                               onclick="ga('send', 'event', 'apache_ignite_usecases', 'menu_click', 'jcache-provider');">
-                                            JCache Provider</a>
+                                        <li><a href="#"
+                                               aria-label="Hadoop Acceleration"
+                                               onclick="ga('send', 'event', 'apache_ignite_usecases', 'menu_click', 'hadoop_acceleration');">
+                                            Apache Hadoop Acceleration</a>
                                         </li>
-                                        <li><a href="/use-cases/caching/hibernate-l2-cache.html" aria-label="Hibernate L2 Cache"
-                                               onclick="ga('send', 'event', 'apache_ignite_usecases', 'menu_click', 'hibernate-l2-cache');">
-                                            Hibernate L2 Cache</a>
-                                        </li>
-                                        <li><a href="/use-cases/caching/web-session-clustering.html" aria-label="Web Session Clustering"
-                                               onclick="ga('send', 'event', 'apache_ignite_usecases', 'menu_click', 'web-session-clustering');">
-                                            Web Session Clustering</a>
-                                        </li>
-                                        <li class="divider">
-
-                                            <!-- Comparison -->
-                                        <li role="presentation" class="submenu-header">Comparison</li>
-                                        <li><a href="/use-cases/comparison/ignite-for-nosql.html" aria-label="Ignite for NoSQL Users"
-                                               onclick="ga('send', 'event', 'apache_ignite_usecases', 'menu_click', 'ignite-for-nosql');">
-                                            Ignite for NoSQL Users</a>
-                                        </li>
-                                        <li><a href="/use-cases/comparison/ignite-for-rdbms.html" aria-label="Ignite for RDBMS Users"
-                                               onclick="ga('send', 'event', 'apache_ignite_usecases', 'menu_click', 'ignite-for-rdbms');">
-                                            Ignite for RDBMS Users</a>
-                                        </li>
-                                        <li class="divider">
-
-                                            <!--Ignite with Spark-->
-                                        <li role="presentation" class="submenu-header">Ignite with Spark</li>
-                                        <li><a href="/use-cases/spark/shared-memory-layer.html" aria-label="In-Memory Store for Spark"
-                                               onclick="ga('send', 'event', 'apache_ignite_usecases', 'menu_click', 'shared-memory-layer');">
-                                            In-Memory Store for Spark</a>
-                                        </li>
-                                        <li><a href="/use-cases/spark/sql-queries.html" aria-label="Faster SQL for Spark"
-                                               onclick="ga('send', 'event', 'apache_ignite_usecases', 'menu_click', 'sql-queries');">
-                                            Faster Sql for Spark</a>
+                                        <li><a href="/provenusecases.html" aria-label="Proven Use Cases"
+                                               onclick="ga('send', 'event', 'apache_ignite_usecases', 'menu_click', 'proven_usecases');">
+                                            Powered by Ignite</a>
                                         </li>
                                     </ul>
                                 </li>
diff --git a/use-cases/spark/shared-memory-layer.html b/use-cases/spark/spark-acceleration.html
similarity index 67%
rename from use-cases/spark/shared-memory-layer.html
rename to use-cases/spark/spark-acceleration.html
index 4619fbf..a9186a5 100644
--- a/use-cases/spark/shared-memory-layer.html
+++ b/use-cases/spark/spark-acceleration.html
@@ -33,10 +33,10 @@
 <!DOCTYPE html>
 <html lang="en">
 <head>
-<link rel="canonical" href="https://ignite.apache.org/use-cases/spark/shared-memory-layer.html" />
+<link rel="canonical" href="https://ignite.apache.org/use-cases/spark/spark-acceleration"/>
     <meta charset="utf-8">
     <meta name="viewport" content="width=device-width, initial-scale=1.0">
-    <title>Apache Spark Shared Memory Layer - Apache Ignite</title>
+    <title>Apache Spark Performance Acceleration With Apache Ignite</title>
     <!--#include virtual="/includes/styles.html" -->
 
     <!--#include virtual="/includes/sh.html" -->
@@ -47,38 +47,47 @@
 
     <main id="main" role="main" class="container">
         <section id="shared-memory-layer" class="page-section">
-            <h1 class="first">Shared Memory Layer for Apache Spark</h1>
+            <h1 class="first">Apache Spark Performance Acceleration With Apache Ignite</h1>
             <div class="col-sm-12 col-md-12 col-xs-12" style="padding:0 0 10px 0;">
                 <div class="col-sm-6 col-md-6 col-xs-12" style="padding-left:0; padding-right:0">
                     <p>
-                        Apache Ignite is a distributed memory-centric database and caching platform that is
-                        used by Apache Spark users to:
-                        <ul class="page-list" style="margin-bottom: 20px;">
-                            <li>
-                                Achieve true in-memory performance at scale and avoid data movement from a data source
-                                to Spark workers and applications.
-                            </li>
-                            <li>
-                                Boost DataFrame and SQL performance.
-                            </li>
-                            <li>
-                                More easily share state and data among Spark jobs.
-                            </li>
-                        </ul>
+                        Apache Ignite integrates with Apache Spark to accelerate the performance of Spark applications
+                        and APIs by keeping data in a shared in-memory cluster. Spark users can use Ignite as a data
+                        source in a way similar to Hadoop or a relational database. Just start an Ignite cluster, set
+                        it as a data source for Spark workers, and keep using Spark RDDs or DataFrames APIs or gain
+                        even more speed by running Ignite SQL or compute APIs directly.
                     </p>
+
+                    <p>
+                        In addition to the performance acceleration of Spark applications, Ignite is used as a shared
+                        in-memory layer by those Spark workers that need to share both data and state.
+                    </p>
+
                 </div>
 
                 <div class="col-sm-6 col-md-6 col-xs-12" style="padding-right:0">
                     <img class="img-responsive" src="/images/spark_integration.png" width="440px" style="float:right;"/>
                 </div>
+
             </div>
 
+            <p>
+                The performance increase is achievable for several reasons. First, Ignite is designed to store data sets
+                in memory across a cluster of nodes reducing latency of Spark operations that usually need to pull date
+                from disk-based systems. Second, Ignite tries to minimize data shuffling over the network between its
+                store and Spark applications by running certain Spark tasks, produced by RDDs or DataFrames APIs,
+                in-place on Ignite nodes. This optimization helps to reduce the effect of the network latency on
+                performance of Spark calls. Finally, the network impact can be minimized even greatly if native
+                Ignite APIs such as SQL are called from Spark applications directly. By doing that, you will completely
+                eliminate data shuffling between Spark and Ignite as long as Ignite SQL queries are always executed on
+                Ignite nodes returning a much smaller final result set to an application layer.
+            </p>
+
             <div class="page-heading">Ignite Shared RDDs</div>
             <p>
                 Apache Ignite provides an implementation of the Spark RDD which allows any data and state to be shared
                 in memory as RDDs across Spark jobs. The Ignite RDD provides a shared, mutable view of the same data
-                in-memory in Ignite across different Spark jobs, workers, or applications. Native Spark RDDs cannot be
-                shared across Spark jobs or applications.
+                in-memory in Ignite across different Spark jobs, workers, or applications.
             </p>
 
             <p>
@@ -88,18 +97,6 @@
                 state may either exist only during the lifespan of a Spark application (embedded mode), or it may
                 out-survive the Spark application (standalone mode).
             </p>
-            <p>
-                While Apache SparkSQL supports a fairly rich SQL syntax, it doesn't implement any indexing. As a result,
-                Spark queries may take minutes even on moderately small data sets because they have to do full data
-                scans. With Ignite, Spark users can configure primary and secondary indexes that can bring up to 1000x
-                performance gains.
-            </p>
-
-            <p>
-                <a href="https://apacheignite-fs.readme.io/docs/ignitecontext-igniterdd" target="docs">
-                    <b>Ignite RDDs in Details <i class="fa fa-angle-double-right"></i></b>
-                </a>
-            </p>
 
             <div class="page-heading">Ignite DataFrames</div>
             <p>
@@ -108,26 +105,32 @@
                 a DataFrame is a distributed collection of data organized into named columns. It is conceptually
                 equivalent to a table in a relational database and allows Spark to leverage the Catalyst query
                 optimizer to produce much more efficient query execution plans in comparison to RDDs, which are
-                just collections of elements partitioned across the nodes of the cluster.
+                collections of elements partitioned across the nodes of the cluster.
             </p>
             <p>
-                Ignite expands DataFrame, simplifying development and improving data access times whenever
-                Ignite is used as memory-centric storage for Spark. Benefits include:
-                <ul class="page-list" style="margin-bottom: 20px;">
-                <li>
-                    Ability to share data and state across Spark jobs by writing and reading DataFrames to/from Ignite.
-                </li>
-                <li>
-                    Faster SparkSQL queries by optimizing Spark query execution plans with Ignite SQL engine which
-                    include​ advanced indexing and avoid data movement across the network from Ignite to Spark.
-                </li>
-                </ul>
+                Ignite supports DataFrame APIs letting Spark to write to and read from Ignite through that interface.
+                Even more, Ignite analyses execution plans produced by Spark's Catalyst engine and can execute
+                parts of the plan on Ignite nodes directly, reducing data shuffling. All that will make your SparkSQL
+                more performant.
+            </p>
+
+            <div class="page-heading">Learn More</div>
+            <p>
+                <a href="https://apacheignite-fs.readme.io/docs/installation-deployment" target="docs">
+                    <b>Ignite and Spark Installation and Deployment <i class="fa fa-angle-double-right"></i></b>
+                </a>
+            </p>
+            <p>
+                <a href="https://apacheignite-fs.readme.io/docs/ignitecontext-igniterdd" target="docs">
+                    <b>Ignite RDDs in Details <i class="fa fa-angle-double-right"></i></b>
+                </a>
             </p>
             <p>
                 <a href="https://apacheignite-fs.readme.io/docs/ignite-data-frame" target="docs">
                     <b>Ignite DataFrames in Details <i class="fa fa-angle-double-right"></i></b>
                 </a>
             </p>
+
         </section>
     </main>
 
diff --git a/use-cases/spark/sql-queries.html b/use-cases/spark/sql-queries.html
deleted file mode 100644
index 135ec7d..0000000
--- a/use-cases/spark/sql-queries.html
+++ /dev/null
@@ -1,95 +0,0 @@
-<!--
- ▄▄▄       ██▓███   ▄▄▄       ▄████▄   ██░ ██ ▓█████     ██▓  ▄████  ███▄    █  ██▓▄▄▄█████▓▓█████
-▒████▄    ▓██░  ██▒▒████▄    ▒██▀ ▀█  ▓██░ ██▒▓█   ▀    ▓██▒ ██▒ ▀█▒ ██ ▀█   █ ▓██▒▓  ██▒ ▓▒▓█   ▀
-▒██  ▀█▄  ▓██░ ██▓▒▒██  ▀█▄  ▒▓█    ▄ ▒██▀▀██░▒███      ▒██▒▒██░▄▄▄░▓██  ▀█ ██▒▒██▒▒ ▓██░ ▒░▒███
-░██▄▄▄▄██ ▒██▄█▓▒ ▒░██▄▄▄▄██ ▒▓▓▄ ▄██▒░▓█ ░██ ▒▓█  ▄    ░██░░▓█  ██▓▓██▒  ▐▌██▒░██░░ ▓██▓ ░ ▒▓█  ▄
- ▓█   ▓██▒▒██▒ ░  ░ ▓█   ▓██▒▒ ▓███▀ ░░▓█▒░██▓░▒████▒   ░██░░▒▓███▀▒▒██░   ▓██░░██░  ▒██▒ ░ ░▒████▒
- ▒▒   ▓▒█░▒▓▒░ ░  ░ ▒▒   ▓▒█░░ ░▒ ▒  ░ ▒ ░░▒░▒░░ ▒░ ░   ░▓   ░▒   ▒ ░ ▒░   ▒ ▒ ░▓    ▒ ░░   ░░ ▒░ ░
-  ▒   ▒▒ ░░▒ ░       ▒   ▒▒ ░  ░  ▒    ▒ ░▒░ ░ ░ ░  ░    ▒ ░  ░   ░ ░ ░░   ░ ▒░ ▒ ░    ░     ░ ░  ░
-  ░   ▒   ░░         ░   ▒   ░         ░  ░░ ░   ░       ▒ ░░ ░   ░    ░   ░ ░  ▒ ░  ░         ░
-      ░  ░               ░  ░░ ░       ░  ░  ░   ░  ░    ░        ░          ░  ░              ░  ░
--->
-
-<!--
-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
-"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.
--->
-
-<!DOCTYPE html>
-<html lang="en">
-<head>
-<link rel="canonical" href="https://ignite.apache.org/use-cases/spark/sql-queries.html" />
-    <meta charset="utf-8">
-    <meta name="viewport" content="width=device-width, initial-scale=1.0">
-    <title>Fast Apache Spark SQL Queries - Apache Ignite</title>
-    <!--#include virtual="/includes/styles.html" -->
-
-    <!--#include virtual="/includes/sh.html" -->
-</head>
-<body>
-<div id="wrapper">
-    <!--#include virtual="/includes/header.html" -->
-
-    <main id="main" role="main" class="container">
-        <section id="spark-sqlqueries" class="page-section">
-            <h1 class="first">Accelerate Apache Spark SQL Queries</h1>
-            <div class="col-sm-12 col-md-12 col-xs-12" style="padding:0 0 10px 0;">
-                <div class="col-sm-6 col-md-6 col-xs-12" style="padding-left:0; padding-right:0">
-                    <p>
-                        Running SQL queries using Ignite shared RDDs or DataFrames is much faster than running Spark SQL
-                        via native RDDs or Data Frame implementations.
-                    </p>
-                    <div class="page-heading">In-Memory Indexes</div>
-                    <p>
-                        Spark does not support SQL indexes, resulting in slow SQL queries due to full scans across
-                        the whole data set. Such full-scan queries in spark can take minutes and introduce significant
-                        wait times, especially when running many queries within the same Spark application.
-                    <p>
-                        Apache Ignite, on the other hand, supports SQL with <span style="white-space: nowrap;"><code>in-memory indexing</code>.</span>
-                        Because of advanced in-memory indexing capabilities, IgniteRDD executes SQL
-                        queries 100s of times faster than Spark native RDDs or Data Frames.
-                    </p>
-                </div>
-
-                <div class="col-sm-6 col-md-6 col-xs-12" style="padding-right:0">
-                    <img class="img-responsive" src="/images/spark_integration.png" width="440px" style="float:right;"/>
-                </div>
-            </div>
-            <div class="page-heading">Off-Heap Memory</div>
-            <p>
-                Ignite stores data and indexes in an off-heap memory that allows holding petabytes of data in Ignite
-                and process them from Spark without worrying about JVM garbage collection overhead.
-            </p>
-            <p>
-                <a href="https://apacheignite-fs.readme.io/docs/ignitecontext-igniterdd#section-running-sql-queries-against-ignite-cache" target="docs">
-                    <b>Run SQL Queries against Ignite cluster <i class="fa fa-angle-double-right"></i></b>
-                </a>
-            </p>
-            <p>
-                <a href="https://apacheignite-fs.readme.io/docs/ignite-data-frame" target="docs">
-                    <b>Speeding up DataFrames access with Ignite <i class="fa fa-angle-double-right"></i></b>
-                </a>
-            </p>
-        </section>
-    </main>
-
-    <!--#include virtual="/includes/footer.html" -->
-</div>
-<!--#include virtual="/includes/scripts.html" -->
-</body>
-</html>
