Expanded readme documentation

Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/9652760a
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/9652760a
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/9652760a

Branch: refs/heads/ignite-6181-2
Commit: 9652760affd237f950445db705bab48dbcb27330
Parents: 904f6a0
Author: Denis Magda <dma...@gridgain.com>
Authored: Wed Sep 20 12:52:45 2017 -0700
Committer: Denis Magda <dma...@gridgain.com>
Committed: Wed Sep 20 12:52:45 2017 -0700

----------------------------------------------------------------------
 README.md  | 192 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 README.txt |   2 +-
 2 files changed, 193 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ignite/blob/9652760a/README.md
----------------------------------------------------------------------
diff --git a/README.md b/README.md
index 59baf90..e42986d 100644
--- a/README.md
+++ b/README.md
@@ -60,6 +60,198 @@ Ignite is an elastic, horizontally scalable distributed 
system that supports add
 
 [Read More](https://apacheignite.readme.io/docs/clustering)
 
+## Main Features
+
+You can view Apache Ignite as a collection of independent, well-integrated 
components geared to improve performance and
+ scalability of your application.
+
+Some of these components include:
+•    Advanced Clustering
+•    Data Grid
+•    SQL Database
+•    Compute Grid
+•    Service Grid
+•    Hadoop Accelerator
+•    Spark Shared RDDs and SQL indexes
+
+Below you’ll find a brief coverage for each some of them.
+
+
+### Advanced Clustering
+
+Ignite nodes can automatically discover each other. This helps to scale the 
cluster when needed, without having to restart the whole cluster. Developers 
can also leverage from Ignite’s hybrid cloud support that allows establishing 
connection between private cloud and public clouds such as Amazon Web Services, 
providing them with best of both worlds.
+
+<p align="center">
+    <a href="https://apacheignite.readme.io/docs/cluster";>
+        <img src="https://ignite.apache.org/images/advanced-clustering.png"; />
+    </a>
+</p>
+
+Apache Ignite can be deployed on:
+* AWS
+* Docker
+* Google Cloud
+* Kubernetes
+* Mesos
+* YARN
+
+### Data Grid (JCache)
+
+Ignite data grid is an in-memory distributed key-value store which can be 
viewed as a distributed partitioned hash map,
+with every cluster node owning a portion of the overall data. This way the 
more cluster nodes we add, the more data we
+can cache.
+
+Unlike other key-value stores, Ignite determines data locality using a 
pluggable hashing algorithm. Every client can
+determine which node a key belongs to by plugging it into a hashing function, 
without a need for any special mapping
+servers or name nodes.
+
+Ignite data grid supports local, replicated, and partitioned data sets and 
allows to freely cross query between these
+data sets using standard SQL syntax. Ignite supports standard SQL for querying 
in-memory data including support for distributed SQL joins.
+
+<p align="center">
+    <a href="https://apacheignite.readme.io/docs/data-grid";>
+        <img src="https://ignite.apache.org/images/in-memory-data-grid.jpg"; />
+    </a>
+</p>
+
+### SQL Database
+
+Apache Ignite incorporates distributed SQL database capabilities as a part of 
its platform. The database is horizontally
+ scalable, fault tolerant and SQL ANSI-99 compliant. It supports all SQL, DDL, 
and DML commands including SELECT, UPDATE,
+  INSERT, MERGE, and DELETE queries. It also provides support for a subset of 
DDL commands relevant for distributed
+  databases.
+
+With Ignite Durable Memory architecture, data as well as indexes can be stored 
both in memory and, optionally, on disk.
+This allows executing distributed SQL operations across different memory 
layers achieving in-memory performance with the durability of disk.
+
+You can interact with Apache Ignite using the SQL language via natively 
developed APIs for Java, .NET and C++, or via
+the Ignite JDBC or ODBC drivers. This provides a true cross-platform 
connectivity from languages such as PHP, Ruby and more.
+
+
+<p align="center">
+    <a href="https://apacheignite.readme.io/docs/distributed-sql";>
+        <img 
src="https://ignite.apache.org/images/ignite-distributed-database.png"; 
vspace="15" width="400px"/>
+    </a>
+</p>
+
+
+### Compute Grid
+
+Distributed computations are performed in parallel fashion to gain high 
performance, low latency, and linear scalability.
+ Ignite compute grid provides a set of simple APIs that allow users distribute 
computations and data processing across
+ multiple computers in the cluster. Distributed parallel processing is based 
on the ability to take any computation and
+ execute it on any set of cluster nodes and return the results back.
+
+<p align="center">
+    <a href="https://apacheignite.readme.io/docs/compute-grid";>
+        <img src="https://ignite.apache.org/images/in_memory_compute.png"; 
vspace="15"/>
+    </a>
+</p>
+
+We support these features, amongst others:
+
+* Distributed Closure Execution
+* MapReduce & ForkJoin Processing
+* Continuous Mapping
+* Clustered Executor Service
+* Per-Node Shared State
+* Collocation of Compute and Data
+* Load Balancing
+* Fault Tolerance
+* Job State Checkpointing
+* Job Scheduling
+
+### Service Grid
+
+Service Grid allows for deployments of arbitrary user-defined services on the 
cluster. You can implement and deploy any
+service, such as custom counters, ID generators, hierarchical maps, etc.
+
+Ignite allows you to control how many instances of your service should be 
deployed on each cluster node and will
+automatically ensure proper deployment and fault tolerance of all the services.
+
+<p align="center">
+    <a href="https://apacheignite.readme.io/docs/service-grid";>
+        <img src="https://ignite.apache.org/images/ignite_service.png"; 
vspace="15"/>
+    </a>
+</p>
+
+### Ignite File System
+
+Ignite File System (IGFS) is an in-memory file system allowing work with files 
and directories over existing cache
+infrastructure. IGFS can either work as purely in-memory file system, or 
delegate to another file system (e.g. various
+Hadoop file system implementations) acting as a caching layer.
+
+In addition, IGFS provides API to execute map-reduce tasks over file system 
data.
+
+## Distributed Data Structures
+
+Ignite supports complex data structures in a distributed fashion:
+
+* Queues and sets: ordinary, bounded, collocated, non-collocated
+* Atomic types: `AtomicLong` and `AtomicReference`
+* `CountDownLatch`
+* ID Generators
+
+### Distributed Messaging
+
+Distributed messaging allows for topic based cluster-wide communication 
between all nodes. Messages with a specified
+message topic can be distributed to all or sub-group of nodes that have 
subscribed to that topic.
+
+Ignite messaging is based on publish-subscribe paradigm where publishers and 
subscribers are connected together by a
+common topic. When one of the nodes sends a message A for topic T, it is 
published on all nodes that have subscribed to T.
+
+### Distributed Events
+
+Distributed events allow applications to receive notifications when a variety 
of events occur in the distributed grid environment. You can automatically get 
notified for task executions, read, write or query operations occurring on 
local or remote nodes within the cluster.
+
+### Hadoop Accelerator
+
+Our Hadoop Accelerator provides a set of components allowing for in-memory 
Hadoop job execution and file system operations.
+
+#### MapReduce
+
+An alternate high-performant implementation of job tracker which replaces 
standard Hadoop MapReduce. Use it to
+boost your Hadoop MapReduce job execution performance.
+
+<p align="center">
+    <a href="https://apacheignite-fs.readme.io/docs/map-reduce";>
+        <img src="https://ignite.apache.org/images/hadoop-mapreduce.png"; 
vspace="15" height="400"/>
+    </a>
+</p>
+
+#### IGFS - In-Memory File System
+
+A Hadoop-compliant IGFS File System implementation over which Hadoop can run 
over in plug-n-play fashion and significantly reduce I/O and improve both, 
latency and throughput.
+
+<p align="center">
+    <a href="https://apacheignite-fs.readme.io/docs/in-memory-file-system";>
+        <img src="https://ignite.apache.org/images/ignite_filesystem.png"; 
height="300" vspace="15"/>
+    </a>
+</p>
+
+#### Secondary File System
+
+An implementation of `SecondaryFileSystem`. This implementation can be 
injected into existing IGFS allowing for
+read-through and write-through behavior over any other Hadoop FileSystem 
implementation (e.g. HDFS). Use it if you
+want your IGFS to become an in-memory caching layer over disk-based HDFS or 
any other Hadoop-compliant file system.
+
+#### Supported Hadoop distributions
+
+* Apache Hadoop
+* Cloudera CDH
+* Hortonworks HDP
+* Apache BigTop
+
+### Spark Shared RDDs
+
+Apache Ignite provides an implementation of Spark RDD abstraction which allows 
to easily share state in memory across Spark jobs. The main difference between 
native Spark `RDD` and `IgniteRDD` is that Ignite RDD provides a shared 
in-memory view on data across different Spark jobs, workers, or applications, 
while native Spark RDD cannot be seen by other Spark jobs or applications.
+
+<p align="center">
+    <a href="https://apacheignite-fs.readme.io/docs/ignite-for-spark";>
+        <img src="https://ignite.apache.org/images/spark-ignite-rdd.png"; 
height="400" vspace="15" />
+    </a>
+</p>
+
 ## Ignite Facts
 
 <b>Is Ignite a persistent or pure in-memory storage?</b><br/>

http://git-wip-us.apache.org/repos/asf/ignite/blob/9652760a/README.txt
----------------------------------------------------------------------
diff --git a/README.txt b/README.txt
index 9d91e01..013f290 100644
--- a/README.txt
+++ b/README.txt
@@ -8,7 +8,7 @@ The main feature set of Ignite In-Memory Data Fabric includes:
 * Advanced Clustering
 * Compute Grid
 * Data Grid
-* Distributed SQL
+* SQL Database
 * Service Grid
 * IGFS - Ignite File System
 * Distributed Data Structures

Reply via email to