Return-Path: X-Original-To: apmail-ignite-commits-archive@minotaur.apache.org Delivered-To: apmail-ignite-commits-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id CD5B1185A8 for ; Mon, 20 Jul 2015 08:37:07 +0000 (UTC) Received: (qmail 46430 invoked by uid 500); 20 Jul 2015 08:36:45 -0000 Delivered-To: apmail-ignite-commits-archive@ignite.apache.org Received: (qmail 46399 invoked by uid 500); 20 Jul 2015 08:36:45 -0000 Mailing-List: contact commits-help@ignite.incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@ignite.incubator.apache.org Delivered-To: mailing list commits@ignite.incubator.apache.org Received: (qmail 46390 invoked by uid 99); 20 Jul 2015 08:36:45 -0000 Received: from Unknown (HELO spamd4-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 20 Jul 2015 08:36:45 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd4-us-west.apache.org (ASF Mail Server at spamd4-us-west.apache.org) with ESMTP id 299C8C13BD for ; Mon, 20 Jul 2015 08:36:45 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd4-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 1.791 X-Spam-Level: * X-Spam-Status: No, score=1.791 tagged_above=-999 required=6.31 tests=[KAM_ASCII_DIVIDERS=0.8, KAM_LAZY_DOMAIN_SECURITY=1, T_RP_MATCHES_RCVD=-0.01, URIBL_BLOCKED=0.001] autolearn=disabled Received: from mx1-us-east.apache.org ([10.40.0.8]) by localhost (spamd4-us-west.apache.org [10.40.0.11]) (amavisd-new, port 10024) with ESMTP id ZwamNBWIl2uo for ; Mon, 20 Jul 2015 08:36:31 +0000 (UTC) Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by mx1-us-east.apache.org (ASF Mail Server at mx1-us-east.apache.org) with SMTP id 7F593428CC for ; Mon, 20 Jul 2015 08:36:30 +0000 (UTC) Received: (qmail 46384 invoked by uid 99); 20 Jul 2015 08:36:30 -0000 Received: from eris.apache.org (HELO hades.apache.org) (140.211.11.105) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 20 Jul 2015 08:36:30 +0000 Received: from hades.apache.org (localhost [127.0.0.1]) by hades.apache.org (ASF Mail Server at hades.apache.org) with ESMTP id 91A79AC0157 for ; Mon, 20 Jul 2015 08:36:29 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: svn commit: r1691887 - in /incubator/ignite/site/trunk: css/all.css features-old.html features.html features/datagrid.html includes/header.html scss/ignite.scss use-cases/caching/database-caching.html Date: Mon, 20 Jul 2015 08:36:28 -0000 To: commits@ignite.incubator.apache.org From: dsetrakyan@apache.org X-Mailer: svnmailer-1.0.9 Message-Id: <20150720083629.91A79AC0157@hades.apache.org> Author: dsetrakyan Date: Mon Jul 20 08:36:28 2015 New Revision: 1691887 URL: http://svn.apache.org/r1691887 Log: Added features page. Added: incubator/ignite/site/trunk/features-old.html - copied unchanged from r1691455, incubator/ignite/site/trunk/features.html incubator/ignite/site/trunk/features.html - copied, changed from r1691455, incubator/ignite/site/trunk/features.html Modified: incubator/ignite/site/trunk/css/all.css incubator/ignite/site/trunk/features/datagrid.html incubator/ignite/site/trunk/includes/header.html incubator/ignite/site/trunk/scss/ignite.scss incubator/ignite/site/trunk/use-cases/caching/database-caching.html Modified: incubator/ignite/site/trunk/css/all.css URL: http://svn.apache.org/viewvc/incubator/ignite/site/trunk/css/all.css?rev=1691887&r1=1691886&r2=1691887&view=diff ============================================================================== --- incubator/ignite/site/trunk/css/all.css (original) +++ incubator/ignite/site/trunk/css/all.css Mon Jul 20 08:36:28 2015 @@ -8117,6 +8117,46 @@ img[usemap], map area { margin: 0; } +table.overview { + width: 92% !important; + border: none !important; + margin: auto !important; +} +table.overview > thead > tr { + border-bottom: 1px solid #3c3c3c; +} +table.overview > thead > tr > th { + color: #000; + font-size: 21px !important; + font-weight: bold; + border: none !important; + padding: 20px !important; +} +table.overview > thead > tr .left { + padding-left: 20px !important; +} +table.overview > thead > tr .border-right { + border-right: 1px solid #3c3c3c !important; +} +table.overview > tbody > tr:nth-child(even) { + background: #f5f5f5; +} +table.overview > tbody > tr > td { + border: none !important; + font-size: 18px !important; + font-weight: 400; +} +table.overview > tbody > tr > td > p { + margin-top: 8px; + margin-bottom: 8px; +} +table.overview > tbody > tr .left { + padding-left: 20px !important; +} +table.overview > tbody > tr .border-right { + border-right: 1px solid #3c3c3c !important; +} + table.formatted { border: 1px solid #ddd !important; width: 98% !important; Copied: incubator/ignite/site/trunk/features.html (from r1691455, incubator/ignite/site/trunk/features.html) URL: http://svn.apache.org/viewvc/incubator/ignite/site/trunk/features.html?p2=incubator/ignite/site/trunk/features.html&p1=incubator/ignite/site/trunk/features.html&r1=1691455&r2=1691887&rev=1691887&view=diff ============================================================================== --- incubator/ignite/site/trunk/features.html (original) +++ incubator/ignite/site/trunk/features.html Mon Jul 20 08:36:28 2015 @@ -50,806 +50,53 @@ under the License.
-
-
-

Key In-Memory Fabric Features

-

- Apache Ignite In-Memory Data Fabric is a high-performance, - integrated and distributed in-memory platform for computing - and transacting on large-scale data sets in real-time, orders - of magnitude faster than possible with traditional disk-based - or flash technologies. -

+
+
+

Main Features

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Core FunctionalityBig Data AnalyticsRuns Everywhere
Data GridSpark Shared RDDClient Protocols
Compute GridIn-Memory File SystemDeployment Options
Streaming & CEPIn-Memory MapReduce 
Data Structures  
Messaging  
Service Grid  
- -
-

Data Grid

-

- Ignite In-Memory Data Fabric stores their data in-memory as opposed to traditional - Database Management Systems that utilize disk as their primary storage mechanism. - By utilizing system memory rather than disk, Ignite In-Memory Data Fabric is orders - of magnitude faster than traditional DBMS systems. -

-
-
-
Features:
-
    -
  • Distributed In-Memory Caching (JCache JSR-107 compliant)
  • -
  • Lightning Fast Performance
  • -
  • Elastic Scalability
  • -
  • Distributed In-Memory Transactions
  • -
  • Distributed SQL Queries (SQL-99 compliant)
  • -
  • JDBC Driver
  • -
  • Distributed In-Memory Queue and Other Data Structures
  • -
  • Tiered Off-Heap Storage
  • -
  • Web Session Clustering
  • -
  • Hibernate L2 Cache Integration
  • -
  • Memcached-compliant for access from different languages
  • -
  • REST APIs for HTTP-based access
  • -
-
-
- -
-
-
-
Examples:
- - - - -
-
-
-                            Ignite ignite = Ignition.ignite();
-
-                             // Get an instance of named cache.
-                            final IgniteCache<Integer, String> cache = ignite.cache("cacheName");
-
-                            // Store keys in cache.
-                            for (int i = 0; i < 10; i++)
-                                cache.put(i, Integer.toString(i));
-
-                            // Retrieve values from cache.
-                            for (int i = 0; i < 10; i++)
-                                System.out.println("Got [key=" + i + ", val=" + cache.get(i) + ']');
-
-                            // Remove objects from cache.
-                            for (int i = 0; i < 10; i++)
-                                cache.remove(i);
-
-                            // Atomic put-if-absent.
-                            cache.putIfAbsent(1, "1");
-
-                           // Atomic replace.
-                           cache.replace(1, "1", "2");
-                        
-
-
-
-                            Ignite ignite = Ignition.ignite();
-
-                            // Clone every object we get from cache, so we can freely update it.
-                            IgniteCache<Integer, Account> cache = ignite.cache("cacheName");
-
-                            try (IgniteTx tx = Ignition.ignite().transactions().txStart()) {
-                                Account acct = cache.get(acctId);
-
-                                assert acct != null;
-
-                                // Deposit $20 into account.
-                                acct.setBalance(acct.getBalance() + 20);
-
-                                // Store updated account in cache.
-                                cache.put(acctId, acct);
-
-                                tx.commit();
-                            }
-                        
-
-
-
-                            Ignite ignite = Ignition.ignite();
-
-                             // Get an instance of named cache.
-                            final GridCache<String, Integer> cache = ignite.cache("cacheName");
-
-                            // Lock cache key "Hello".
-                            Lock lock = cache.lock("Hello");
-
-                            lock.lock();
-
-                            try {
-                                cache.put("Hello", 11);
-                                cache.put("World", 22);
-                            }
-                            finally {
-                                lock.unlock();
-                            }
-                        
-
-
-
-                            Ignite ignite = Ignition.ignite();
-
-                            // Get an instance of named cache.
-                            GridCache<Long, Person> cache = ignite.cache("cacheName");
-
-                            // Create query which selects salaries based on range.
-                            CacheQuery<Map.Entry<Long, Person>> qry =
-                                cache.queries().createSqlQuery(Person.class, "salary > ? and salary <= ?");
-
-                            // Execute queries for salary ranges.
-                            print("People with salaries between 0 and 1000: ", qry.execute(0, 1000).get());
-
-                            print("People with salaries between 1000 and 2000: ", qry.execute(1000, 2000).get());
-                        
-
-
-
-                            Ignite ignite = Ignition.ignite();
-
-                             // Get an instance of named cache.
-                            GridCache<Long, Person> cache = ignite.cache("cacheName");
-
-                            // Create query which joins on 2 types to select people for a specific organization.
-                            CacheQuery<Map.Entry<Long, Person>> qry =
-                                cache.queries().createSqlQuery(Person.class, "from Person, Organization " +
-                                    "where Person.orgId = Organization.id " +
-                                    "and Organization.name = ?");
-
-                            // Execute queries for find employees for different organizations.
-                            print("Following people are 'Ignite' employees: ", qry.execute("Ignite").get());
-
-                            print("Following people are 'Other' employees: ", qry.execute("Other").get());
-                        
-
-
-
- -
-
Videos:
- -
- - -
- -
-

Compute Grid

-

- Compute Grid provides the means for parallel processing of CPU - or otherwise resource intensive tasks including traditional High Performance Computing (HPC) and Massively Parallel Processing (MPP). -

-
-
-
Features:
-
    -
  • Dynamic Clustering
  • -
  • Fork-Join & MapReduce Processing
  • -
  • Distributed Closure Execution
  • -
  • Adaptive Load Balancing
  • -
  • Automatic Fault Tolerance
  • -
  • Linear Scalability
  • -
  • Custom Scheduling
  • -
  • Checkpointing for Long Running Jobs
  • -
  • ExecutorService
  • -
-
-
- -
-
-
-
Examples:
- - - - -
-
-
-                            Ignite ignite = Ignition.ignite();
-
-                            // Print out hello message on all cluster nodes.
-                            ignite.compute().broadcast(() -> "Hello Node!");
-                        
-
-
-
-                            Collection<IgniteCallable<Integer>> calls = new ArrayList<>();
-                             
-                            // Iterate through all words in the sentence and create callable jobs.
-                            for (String word : "How Many Characters".split(" "))
-                                calls.add(word::length);
-
-                            // Execute collection of callables on the Ignite cluster.
-                            Collection<Integer> res = ignite.compute().call(calls);
-
-                            // Add all the word lengths received from cluster nodes.
-                            int total = res.stream().mapToInt(Integer::intValue).sum(); 
-                        
-
-
-
-                            IgniteCompute compute  = ignite.compute();
-
-                            // Execute closure on all cluster nodes.
-                            Collection<Integer> res = ignite.compute().apply(
-                                String::length,
-                                Arrays.asList("How Many Characters".split(" "))
-                            );
-                                 
-                            // Add all the word lengths received from cluster nodes.
-                            int total = res.stream().mapToInt(Integer::intValue).sum(); 
-                        
-
-
-
- -
-
Videos:
- -
- - -
- -
-

Service Grid

-

- Ignite Service Grid allows you to have complete control over services being deployed on the - cluster. It allows you to control how many instances of your service should be deployed on each cluster - node, ensuring proper deployment and fault tolerance. Service Grid guarantees continuous availability - of all deployed services in case of node failures.

-

-
-
-
Features:
-
    -
  • Automatically Deploy Multiple Instances of a Service
  • -
  • Automatically Deploy a Service as Singleton
  • -
  • Automatically Deploy Services on Node Start-Up
  • -
  • Fault Tolerant Deployment
  • -
  • Un-Deploy Any of the Deployed Services
  • -
  • Get Service Deployment Topology Information
  • -
  • Access Remotely Deployed Service via Service Proxy
  • -
-
-
- -
-
- -
-
Examples:
- - - - -
-
-
-

- An example of how a distributed service may be implemented - -

-
-                            // Simple service implementation.
-                            public class MyIgniteService implements Service {
-                                // Example of ignite resource injection. All resources are optional.
-                                // You should inject resources only as needed.
-                                @IgniteInstanceResource
-                                private Ignite ignite;
-                                ...
-
-                                @Override public void cancel(ServiceContext ctx) {
-                                    // No-op.
-                                }
-
-                                @Override public void execute(ServiceContext ctx) {
-                                    // Loop until service is cancelled.
-                                    while (!ctx.isCancelled()) {
-                                        // Do something.
-                                        ...
-                                    }
-                                }
-                            }
-                        
-
-

- and deployed. -

-
-                            Ignite ignite = Ignition.ignite();
-
-                            ...
-
-                            IgniteServices svcs = ignite.services();
-
-                            IgniteFuture<?> fut = svcs.deployClusterSingleton("myClusterSingleton", new MyIgniteService());
-
-                            // Wait for deployment to complete.
-                            fut.get();
-                        
-
-
-
- - -
- -
-

Streaming

-

- Streaming support allows to query into sliding windows of coming data, and enable users to answer such questions as “What are the 10 most popular products over last 2 hours?”, or “What is the average product price in a certain category for the past day?”.

-

- -
-
-
Features:
-
    -
  • Programmatic Querying
  • -
  • Customizable Event Workflow
  • -
  • At-Least-Once Guarantee
  • -
  • Sliding Windows
  • -
  • Data Indexing
  • -
  • Distributed Streamer Queries
  • -
  • Co-Location With In-Memory Data Grid
  • -
-
-
- -
-
- -
 
- - -
- -
-

Advanced Clustering

-

- Ignite In-Memory Data Fabric provides one of the most sophisticated clustering technologies on Java Virtual Machine (JVM). 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.

-

-
-
-
Features:
-
    -
  • Dynamic Topology Management
  • -
  • Guaranteed Cluster Member Discovery
  • -
  • Public and Private Clouds
  • -
  • Automatic AWS Discovery
  • -
  • Virtual Cluster Groups
  • -
  • Zero Deployment
  • -
  • Per-Node Shared State
  • -
  • Real Time Cluster Monitoring and Metrics
  • -
-
-
- -
-
- -
-
Examples:
- - - - -
-
-
-                            final Ignite ignite = Ignition.ignite();
-
-                            IgniteCluster cluster = ignite.cluster();
-
-                            // Cluster group containing all remote nodes, i.e. not this node.
-                            ClusterGroup remotes = cluster.forRemotes();
-
-                            // Get compute instance which will only execute over remote nodes.
-                            IgniteCompute compute = ignite.compute(remotes);
-
-                            // Broadcast to all remote nodes and print the ID of the node 
-                            // on which this closure is executing.
-                            compute.broadcast(() -> System.out.println("Hello Node: " + cluster.localNode().id());
-                        
-
- -
-
-                            Ignite ignite = Ignition.ignite();
-
-                            IgniteCluster cluster = ignite.cluster();
-
-                            // Cluster group containing random remote node.
-                            ClusterGroup random = cluster.forRemotes().forRandom();
-
-                            // Get compute instance over a random remote node.
-                            IgniteCompute compute = ignite.compute(random);
-
-                            // Send closure to the random node and print its ID.
-                            compute.run(() -> System.out.println("Hello Node: " + cluster.localNode().id());
-                        
-
- -
-
-                            Ignite ignite = Ignition.ignite();
-
-                            IgniteCluster cluster = ignite.cluster();
-
-                            // Dynamic cluster group over nodes loaded less than 50%.
-                            ClusterGroup cpuNodes = cluster.forPredicate(node -> node.metrics().getCurrentCpuLoad() < 0.5);
-
-                            // Get compute instance over nodes loaded less than 50%.
-                            IgniteCompute compute = ignite.compute(cpuNodes);
-
-                            // Send closure to one of the CPU nodes.
-                            compute.run(() -> System.out.println("Hello Node: " + cluster.localNode().id());
-                        
-
-
-
- - -
- -
-

Distributed Messaging

-

- Apache Ignite provides high-performance cluster-wide messaging functionality to exchange data via - publish-subscribe and direct point-to-point communication models. -

-
-
-
Features:
-
    -
  • Support for Topic-Based Publish-Subscribe Model
  • -
  • Support for Direct Point-to-Point Communication
  • -
  • Pluggable Communication Transport Layer
  • -
  • Support for Message Ordering
  • -
  • Cluster-Aware Message Listener Auto-Deployment
  • -
-
-
- -
-
Examples:
- - - - -
-
-
-                            Ignite ignite = Ignition.ignite();
-
-                            IgniteMessaging rmtMsg = ignite.message(ignite.cluster().forRemotes());
-
-                            // Add listener for unordered messages on all remote nodes.
-                            rmtMsg.remoteListen("MyOrderedTopic", (nodeId, msg) -> {
-                                System.out.println("Received ordered message [msg=" + msg + ", from=" + nodeId + ']');
-
-                                return true; // Return true to continue listening.
-                            });
-
-                            // Send ordered messages to remote nodes.
-                            for (int i = 0; i < 10; i++)
-                                rmtMsg.sendOrdered("MyOrderedTopic", Integer.toString(i));
-                        
-
-
-
-                            Ignite ignite = Ignition.ignite();
-
-                            IgniteMessaging rmtMsg = ignite.message(ignite.cluster().forRemotes());
-
-                            // Add listener for unordered messages on all remote nodes.
-                            rmtMsg.remoteListen("MyUnOrderedTopic", (nodeId, msg) -> {
-                                System.out.println("Received unordered message [msg=" + msg + ", from=" + nodeId + ']');
-
-                                return true; // Return true to continue listening.
-                            });
-
-                            // Send unordered messages to remote nodes.
-                            for (int i = 0; i < 10; i++)
-                                rmtMsg.send("MyUnOrderedTopic", Integer.toString(i));
-                        
-
-
-
- - -
- -
-

Distributed Events

-

- Distributed events functionality allows applications to receive notifications about cache events occurring in distributed grid environment. Developers can use this functionality to get notified about remote tasks executions or any cache data changes within the cluster. Event notifications can be grouped together and sent in batches and/or timely intervals to reduce network traffic. -

-
-
-
Features:
-
    -
  • Subscribe Local and Remote Listeners
  • -
  • Enable and Disable any Event
  • -
  • Provide Local and Remote Event Filters
  • -
  • Group Event Notifications into Batches
  • -
-
-
- -
-
Examples:
- - - - -
-
-
-

- Subscribe to remote notifications for cache data updates. -

-
-                            Ignite ignite = Ignition.ignite();
-
-                            // Sample remote filter which only accepts events for keys
-                            // that are greater than or equal to 10.
-                            IgnitePredicate<CacheEvent> rmtLsnr = evt -> evt.key() >= 10;
-
-                            // Subscribe to specified cache events on all nodes that have cache running.
-                            ignite.events(ignite.cluster().forCacheNodes("cacheName")).remoteListen(null, rmtLsnr,
-                                EventType.EVT_CACHE_OBJECT_PUT, 
-                                EventType.EVT_CACHE_OBJECT_READ, 
-                                EventType.EVT_CACHE_OBJECT_REMOVED);
-
-                            // Get an instance of named cache.
-                            final IgniteCache<Integer, String> cache = ignite.jcache("cacheName");
-
-                            // Generate cache events.
-                            for (int i = 0; i < 20; i++)
-                                cache.put(i, Integer.toString(i));
-                        
-
-
-
- - -
- -
-

Distributed Data Structures

-

- Ignite allows for most of the data structures from java.util.concurrent framework to be used - in a distributed fashion. For example, you can take java.util.concurrent.BlockingDeque and add something - to it on one node and poll it from another node. Or have a distributed Primary Key generator, - which would guarantee uniqueness on all nodes. -

-
-
-
Features:
-
    -
  • Concurrent Map
  • -
  • Distributed Queues and Sets
  • -
  • AtomicLong
  • -
  • AtomicSequence
  • -
  • AtomicReference
  • -
  • CountDownLatch
  • -
  • ExecutorService
  • -
-
-
- -
-
Examples:
- - - - -
-
-
-

- Distributed Queue example. -

-
-                            Ignite ignite = Ignition.ignite();
-
-                            CollectionConfiguration colCfg = new CollectionConfiguration();
-
-                            colCfg.setCacheName("cacheName");
-
-                            // Non-colocated queue which will be distributed
-                            // across all data nodes.
-                            IgniteQueue<String> queue = ignite.queue("queueName", 20, colCfg);
-
-                            // Add queue elements.
-                            for (int i = 0; i < 20; i++)
-                                queue.add("Value " + Integer.toString(i));
-
-                            // Poll queue elements.
-                            for (int i = 0; i < 20; i++)
-                                System.out.println("Polled value: " + queue.poll());
-
-                        
-
-
-
-

- Distributed Set example. -

-
-                            Ignite ignite = Ignition.ignite();
-
-                            // Initialize new set.
-                            IgniteSet<String> set = ignite.set("setName", null);
-
-                            // Add set elements.
-                            for (int i = 0; i < 10; i++)
-                                set.add(Integer.toString(i));
-
-                            // Iterate over set.
-                            for (String item : set)
-                                System.out.println("Set item: " + item);
-                        
-
-
-
-

- Distributed AtomicSequence example. -

-
-                            Ignite ignite = Ignition.ignite();
-
-                            // Initialize atomic sequence.
-                            IgniteAtomicSequence seq = ignite.atomicSequence("seqName", 0, true);
-
-                            for (int i = 0; i < 100; i++)
-                                System.out.println("Next sequence value: " + seq.incrementAndGet());
-                        
-
-
-
- - -
- -
-

Distributed File System

-

- One of the unique capabilities of Ignite is a file system interface to its in-memory data called Ignite File System (IGFS). IGFS delivers similar functionality to Hadoop HDFS, but only in memory. In fact, IGFS is at the core of Ignite’s In-Memory Hadoop Accelerator.

- The data from each file is split on separate data blocks and stored in cache. - Developers can access each file’s data with a standard Java streaming API. Moreover, for each part of the file a developer can calculate an affinity and process the file’s content on corresponding nodes to avoid unnecessary networking. -

-
-
-
Features:
-
    -
  • In-Memory File System
  • -
  • List Directories
  • -
  • Get Information for a Single Path
  • -
  • Create/Move/Delete Files or Directories
  • -
  • Write/Read Data Streams into/from Files
  • -
-
-
- -
 
- - -
- -
-

Hadoop Acceleration

-

- Hadoop Accelerator enhances existing Hadoop technology to enable fast data processing using the tools and technology your organization is already using today.

- Ignite’s in-memory accelerator for Hadoop is based on the dual-mode, - high-performance in-memory file system that is 100% compatible with Hadoop HDFS, and an in-memory optimized MapReduce implementation. In-memory HDFS and in-memory MapReduce provide easy to use extensions to disk-based HDFS and traditional MapReduce, delivering up to 100x faster performance. -

-
-
-
Features:
-
    -
  • 100x Faster Performance
  • -
  • In-Memory MapReduce
  • -
  • Highly Optimized In-Memory Processing
  • -
  • Standalone File System
  • -
  • Optional Caching Layer for HDFS
  • -
  • Read-Through and Write-Through with HDFS
  • -
-
-
- -
-
- -
 
- - -
Modified: incubator/ignite/site/trunk/features/datagrid.html URL: http://svn.apache.org/viewvc/incubator/ignite/site/trunk/features/datagrid.html?rev=1691887&r1=1691886&r2=1691887&view=diff ============================================================================== Binary files - no diff available. Modified: incubator/ignite/site/trunk/includes/header.html URL: http://svn.apache.org/viewvc/incubator/ignite/site/trunk/includes/header.html?rev=1691887&r1=1691886&r2=1691887&view=diff ============================================================================== --- incubator/ignite/site/trunk/includes/header.html (original) +++ incubator/ignite/site/trunk/includes/header.html Mon Jul 20 08:36:28 2015 @@ -18,7 +18,7 @@