<!DOCTYPE html>

      
      
<html lang="en">
<head>
    <!-- Global site tag (gtag.js) - Google Analytics -->
    <script async src="https://www.googletagmanager.com/gtag/js?id=UA-61232409-1"></script>
    <script>
    window.dataLayer = window.dataLayer || [];
    function gtag(){dataLayer.push(arguments);}
    gtag('js', new Date());

    gtag('config', 'UA-61232409-1');
    </script>

    

    <meta charset="UTF-8">
    <meta name="ignite-version" content="2.9.0" />
    <title>Data Partitioning | Ignite Documentation</title>
    
    <link rel="canonical" href="/docs/2.9.0/data-modeling/data-partitioning" />
    
	
	<link rel="stylesheet" href="/assets/css/styles.css?1600286556">
    <link rel="stylesheet" href="/assets/css/asciidoc-pygments.css">
    <link rel="shortcut icon" href="/favicon.ico">
    <meta name='viewport' content='width=device-width, height=device-height, initial-scale=1.0, minimum-scale=1.0'>

	<script type="text/javascript" src="/assets/js/anchor.min.js?1600286556"></script>
  
  <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css" />


</head>
<body>
    <header>
    <!--#include virtual="/includes/promotion_banner.html" -->
    <div class="container">
        <button type='button' class='menu' title='Docs menu'>
        <img src="/assets/images/menu-icon.svg"/>
        </button>
        <div class='home'>
            <a href="/" class='home' title='Apache Ignite home'>
                <img src="/assets/images/apache_ignite_logo.svg" alt="Apache Ignite logo" width="103" >
            </a>
        </div>
        
        <nav>
            
        </nav>
        
        <select id="version-selector">
            <option value="2.9.0">2.9.0</option>
        </select>
        
        <a href="https://github.com/apache/ignite" title='GitHub' class='github' target="_blank">
            <img src="/assets/images/github-gray.svg" alt="GitHub logo">
        </a>
        
        <form class='search'>
            <button class="search-close" type='button'><img src='/assets/images/cancel.svg'></button>
            <input type="search" placeholder="Search…" id="search-input">
        </form>
        <button type='button' class='search-toggle'><img src='/assets/images/search.svg'></button>
        <button type='button' class='top-nav-toggle'>⋮</button>

        
        
    </div>
</header>


    	 <link rel="stylesheet" href="/assets/css/docs.css">
<section class='page-docs'>
    



<nav class='left-nav' data-swiftype-index='false'>

      
        <li>
            

            <a href="/docs/2.9.0/preface" class='' >Preface</a>
            
        </li>
    
        <li>
            

            

            

			<button type='button' data-guide-url="" class='group-toggle collapsed '>Quick Start Guides<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/quick-start/java"

                                class=''
                            >Java</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/quick-start/dotnet"

                                class=''
                            >.NET/C#</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/quick-start/cpp"

                                class=''
                            >C++</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/quick-start/python"

                                class=''
                            >Python</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/quick-start/nodejs"

                                class=''
                            >Node.JS</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/quick-start/sql"

                                class=''
                            >SQL</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/quick-start/php"

                                class=''
                            >PHP</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/quick-start/restapi"

                                class=''
                            >REST API</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

			<button type='button' data-guide-url="/installation" class='group-toggle collapsed '>Installation<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/installation/installing-using-zip"

                                class=''
                            >Installing Using ZIP Archive</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/installation/installing-using-docker"

                                class=''
                            >Installing Using Docker</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/installation/deb-rpm"

                                class=''
                            >Installing DEB or RPM package</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            
                            
                            <button
                                type='button'
                                class='collapsed '>Kubernetes<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
                            <nav class="sub_pages collapsed">

                            
                                  

								  <li><a href="/docs/2.9.0//installation/kubernetes/amazon-eks-deployment" class=''>Amazon EKS</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//installation/kubernetes/azure-deployment" class=''>Azure Kubernetes Service</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//installation/kubernetes/gke-deployment" class=''>Google Kubernetes Engine</a></li>
                            
                            </nav>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

			<button type='button' data-guide-url="" class='group-toggle collapsed '>Setting Up<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/setup"

                                class=''
                            >Setting Up Ignite for Java</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/setup-dotnet"

                                class=''
                            >Setting Up Ignite for .NET/C#</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            <a href="/docs/2.9.0/understanding-configuration" class='' >Understanding Configuration</a>
            
        </li>
    
        <li>
            

            <a href="/docs/2.9.0/logging" class='' >Configuring Logging</a>
            
        </li>
    
        <li>
            

            <a href="/docs/2.9.0/starting-nodes" class='' >Starting and Stopping Nodes</a>
            
        </li>
    
        <li>
            

            

            

			<button type='button' data-guide-url="" class='group-toggle collapsed '>Clustering<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/clustering/clustering"

                                class=''
                            >Overview</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/clustering/tcp-ip-discovery"

                                class=''
                            >TCP/IP Discovery</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/clustering/zookeeper-discovery"

                                class=''
                            >ZooKeeper Discovery</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/clustering/discovery-in-the-cloud"

                                class=''
                            >Discovery in the Cloud</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/clustering/network-configuration"

                                class=''
                            >Network Configuration</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/clustering/connect-client-nodes"

                                class=''
                            >Connecting Client Nodes</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/clustering/running-client-nodes-behind-nat"

                                class=''
                            >Running Client Nodes Behind NAT</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

			<button type='button' data-guide-url="" class='group-toggle expanded '>Data Modeling<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group expanded'>
            
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/data-modeling/data-modeling"

                                class=''
                            >Introduction</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/data-modeling/data-partitioning"

                                class='active'
                            >Data Partitioning</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/data-modeling/affinity-collocation"

                                class=''
                            >Affinity Colocation</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

			<button type='button' data-guide-url="" class='group-toggle collapsed '>Configuring Memory<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/memory-architecture"

                                class=''
                            >Memory Architecture</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/memory-configuration/data-regions"

                                class=''
                            >Configuring Data Regions</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/memory-configuration/eviction-policies"

                                class=''
                            >Eviction Policies</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

			<button type='button' data-guide-url="" class='group-toggle collapsed '>Configuring Caches<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/configuring-caches/configuration-overview"

                                class=''
                            >Cache Configuration</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/configuring-caches/configuring-backups"

                                class=''
                            >Configuring Partition Backups</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/configuring-caches/atomicity-modes"

                                class=''
                            >Atomicity Modes</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/configuring-caches/expiry-policies"

                                class=''
                            >Expiry Policy</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/configuring-caches/on-heap-caching"

                                class=''
                            >On-Heap Caching</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/configuring-caches/cache-groups"

                                class=''
                            >Cache Groups</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

			<button type='button' data-guide-url="" class='group-toggle collapsed '>Persistence<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/persistence/native-persistence"

                                class=''
                            >Ignite Persistence</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/persistence/external-storage"

                                class=''
                            >External Storage</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/persistence/swap"

                                class=''
                            >Swapping</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/persistence/custom-cache-store"

                                class=''
                            >Implementing Custom Cache Store</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/persistence/disk-compression"

                                class=''
                            >Disk Compression</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/persistence/persistence-tuning"

                                class=''
                            >Tuning Persistence</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            <a href="/docs/2.9.0/baseline-topology" class='' >Baseline Topology</a>
            
        </li>
    
        <li>
            

            <a href="/docs/2.9.0/cluster-states" class='' >Cluster States</a>
            
        </li>
    
        <li>
            

            <a href="/docs/2.9.0/data-rebalancing" class='' >Data Rebalancing</a>
            
        </li>
    
        <li>
            

            <a href="/docs/2.9.0/partition-loss-policy" class='' >Partition Loss Policy</a>
            
        </li>
    
        <li>
            

            <a href="/docs/2.9.0/deploying-user-code" class='' >Deploying User Code</a>
            
        </li>
    
        <li>
            

            <a href="/docs/2.9.0/peer-class-loading" class='' >Peer Class Loading</a>
            
        </li>
    
        <li>
            

            <a href="/docs/2.9.0/data-streaming" class='' >Data Streaming</a>
            
        </li>
    
        <li>
            

            

            

			<button type='button' data-guide-url="" class='group-toggle collapsed '>Using Key-Value Cache API<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/key-value-api/basic-cache-operations"

                                class=''
                            >Basic Cache Operations</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/key-value-api/binary-objects"

                                class=''
                            >Working with Binary Objects</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/key-value-api/using-scan-queries"

                                class=''
                            >Using Scan Queries</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/read-repair"

                                class=''
                            >Read Repair</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            <a href="/docs/2.9.0/key-value-api/continuous-queries" class='' >Using Continuous Queries</a>
            
        </li>
    
        <li>
            

            <a href="/docs/2.9.0/key-value-api/transactions" class='' >Performing Transactions</a>
            
        </li>
    
        <li>
            

            

            

			<button type='button' data-guide-url="" class='group-toggle collapsed '>Working with SQL<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/SQL/sql-introduction"

                                class=''
                            >Introduction</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/SQL/schemas"

                                class=''
                            >Understanding Schemas</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/SQL/indexes"

                                class=''
                            >Defining Indexes</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/SQL/sql-api"

                                class=''
                            >Using SQL API</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/SQL/distributed-joins"

                                class=''
                            >Distributed Joins</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/SQL/sql-transactions"

                                class=''
                            >SQL Transactions</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/SQL/custom-sql-func"

                                class=''
                            >Custom SQL Functions</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/SQL/JDBC/jdbc-driver"

                                class=''
                            >JDBC Driver</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/SQL/JDBC/jdbc-client-driver"

                                class=''
                            >JDBC Client Driver</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/transactions/mvcc"

                                class=''
                            >Multiversion Concurrency Control</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

			<button type='button' data-guide-url="" class='group-toggle collapsed '>Distributed Computing<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/distributed-computing/distributed-computing"

                                class=''
                            >Distributed Computing API</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/distributed-computing/cluster-groups"

                                class=''
                            >Cluster Groups</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/distributed-computing/executor-service"

                                class=''
                            >Executor Service</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/distributed-computing/map-reduce"

                                class=''
                            >MapReduce API</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/distributed-computing/load-balancing"

                                class=''
                            >Load Balancing</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/distributed-computing/fault-tolerance"

                                class=''
                            >Fault Tolerance</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/distributed-computing/job-scheduling"

                                class=''
                            >Job Scheduling</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            <a href="/docs/2.9.0/collocated-computations" class='' >Colocating Computations with Data</a>
            
        </li>
    
        <li>
            

            

            

			<button type='button' data-guide-url="" class='group-toggle collapsed '>Working with Events<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/events/listening-to-events"

                                class=''
                            >Enabling and Listenting to Events</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/events/events"

                                class=''
                            >Events</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            <a href="/docs/2.9.0/near-cache" class='' >Near Caches</a>
            
        </li>
    
        <li>
            

            <a href="/docs/2.9.0/platform-cache" class='' >.NET Platform Cache</a>
            
        </li>
    
        <li>
            

            <a href="/docs/2.9.0/services/services" class='' >Services</a>
            
        </li>
    
        <li>
            

            

            

			<button type='button' data-guide-url="" class='group-toggle collapsed '>Distributed Data Structures<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/data-structures/queue-and-set"

                                class=''
                            >Queue and Set</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/data-structures/atomic-types"

                                class=''
                            >Atomic Types</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/data-structures/countdownlatch"

                                class=''
                            >CountDownLatch</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/data-structures/atomic-sequence"

                                class=''
                            >Atomic Sequence</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/data-structures/semaphore"

                                class=''
                            >Semaphore</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

			<button type='button' data-guide-url="" class='group-toggle collapsed '>Machine Learning<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/machine-learning/machine-learning"

                                class=''
                            >Machine Learning</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/machine-learning/partition-based-dataset"

                                class=''
                            >Partition Based Dataset</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/machine-learning/updating-trained-models"

                                class=''
                            >Updating Trained Models</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            
                            
                            <button
                                type='button'
                                class='collapsed '>Binary Classification<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
                            <nav class="sub_pages collapsed">

                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/binary-classification/introduction" class=''>Introduction</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/binary-classification/linear-svm" class=''>Linear SVM (Support Vector Machine)</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/binary-classification/decision-trees" class=''>Decision Trees</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/binary-classification/multilayer-perceptron" class=''>Multilayer Perceptron</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/binary-classification/logistic-regression" class=''>Logistic Regression</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/binary-classification/knn-classification" class=''>k-NN Classification</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/binary-classification/ann" class=''>ANN (Approximate Nearest Neighbor)</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/binary-classification/naive-bayes" class=''>Naive Bayes</a></li>
                            
                            </nav>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            
                            
                            <button
                                type='button'
                                class='collapsed '>Regression<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
                            <nav class="sub_pages collapsed">

                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/regression/introduction" class=''>Introduction</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/regression/linear-regression" class=''>Linear Regression</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/regression/decision-trees-regression" class=''>Decision Trees Regression</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/regression/knn-regression" class=''>k-NN Regression</a></li>
                            
                            </nav>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            
                            
                            <button
                                type='button'
                                class='collapsed '>Clustering<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
                            <nav class="sub_pages collapsed">

                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/clustering/introduction" class=''>Introduction</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/clustering/k-means-clustering" class=''>K-Means Clustering</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/clustering/gaussian-mixture" class=''>Gaussian mixture (GMM)</a></li>
                            
                            </nav>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/machine-learning/preprocessing"

                                class=''
                            >Preprocessing</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            
                            
                            <button
                                type='button'
                                class='collapsed '>Model Selection<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
                            <nav class="sub_pages collapsed">

                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/model-selection/introduction" class=''>Introduction</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/model-selection/evaluator" class=''>Evaluator</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/model-selection/split-the-dataset-on-test-and-train-datasets" class=''>Split the dataset on test and train datasets</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/model-selection/hyper-parameter-tuning" class=''>Hyper-parameter tuning</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/model-selection/pipeline-api" class=''>Pipeline API</a></li>
                            
                            </nav>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/machine-learning/multiclass-classification"

                                class=''
                            >Multiclass Classification</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            
                            
                            <button
                                type='button'
                                class='collapsed '>Ensemble Methods<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
                            <nav class="sub_pages collapsed">

                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/ensemble-methods/introduction" class=''></a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/ensemble-methods/stacking" class=''>Stacking</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/ensemble-methods/baggin" class=''>Bagging</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/ensemble-methods/random-forest" class=''>Random Forest</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/ensemble-methods/gradient-boosting" class=''>Gradient Boosting</a></li>
                            
                            </nav>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/machine-learning/recommendation-systems"

                                class=''
                            >Recommendation Systems</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            
                            
                            <button
                                type='button'
                                class='collapsed '>Importing Model<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
                            <nav class="sub_pages collapsed">

                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/importing-model/introduction" class=''>Introduction</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/importing-model/model-import-from-gxboost" class=''>Import Model from XGBoost</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//machine-learning/importing-model/model-import-from-apache-spark" class=''>Import Model from Apache Spark</a></li>
                            
                            </nav>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

			<button type='button' data-guide-url="" class='group-toggle collapsed '>Monitoring<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/monitoring-metrics/intro"

                                class=''
                            >Introduction</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/monitoring-metrics/cluster-id"

                                class=''
                            >Cluster ID and Tag</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            
                            
                            <button
                                type='button'
                                class='collapsed '>Metrics<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
                            <nav class="sub_pages collapsed">

                            
                                  

								  <li><a href="/docs/2.9.0//monitoring-metrics/configuring-metrics" class=''>Configuring Metrics</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//monitoring-metrics/metrics" class=''>JMX Metrics</a></li>
                            
                            </nav>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            
                            
                            <button
                                type='button'
                                class='collapsed '>New Metrics System<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
                            <nav class="sub_pages collapsed">

                            
                                  

								  <li><a href="/docs/2.9.0//monitoring-metrics/new-metrics-system" class=''>Introduction</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//monitoring-metrics/new-metrics" class=''>Metrics</a></li>
                            
                            </nav>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/monitoring-metrics/system-views"

                                class=''
                            >System Views</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/monitoring-metrics/tracing"

                                class=''
                            >Tracing</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

			<button type='button' data-guide-url="/security" class='group-toggle collapsed '>Security<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/security/authentication"

                                class=''
                            >Authentication</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/security/ssl-tls"

                                class=''
                            >SSL/TLS</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            
                            
                            <button
                                type='button'
                                class='collapsed '>Transparent Data Encryption<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
                            <nav class="sub_pages collapsed">

                            
                                  

								  <li><a href="/docs/2.9.0//security/tde" class=''>Introduction</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//security/master-key-rotation" class=''>Master key rotation</a></li>
                            
                            </nav>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

			<button type='button' data-guide-url="" class='group-toggle collapsed '>Thin Clients<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/thin-clients/getting-started-with-thin-clients"

                                class=''
                            >Thin Clients Overview</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/thin-clients/java-thin-client"

                                class=''
                            >Java Thin Client</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/thin-clients/dotnet-thin-client"

                                class=''
                            >.NET Thin Client</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/thin-clients/cpp-thin-client"

                                class=''
                            >C++ Thin Client</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/thin-clients/python-thin-client"

                                class=''
                            >Python Thin Client</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/thin-clients/php-thin-client"

                                class=''
                            >PHP Thin Client</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/thin-clients/nodejs-thin-client"

                                class=''
                            >Node.js Thin Client</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            
                            
                            <button
                                type='button'
                                class='collapsed '>Binary Client Protocol<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
                            <nav class="sub_pages collapsed">

                            
                                  

								  <li><a href="/docs/2.9.0//binary-client-protocol/binary-client-protocol" class=''>Binary Client Protocol</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//binary-client-protocol/data-format" class=''>Data Format</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//binary-client-protocol/key-value-queries" class=''>Key-Value Queries</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//binary-client-protocol/sql-and-scan-queries" class=''>SQL and Scan Queries</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//binary-client-protocol/binary-type-metadata" class=''>Binary Types Metadata</a></li>
                            
                                  

								  <li><a href="/docs/2.9.0//binary-client-protocol/cache-configuration" class=''>Cache Configuration</a></li>
                            
                            </nav>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

			<button type='button' data-guide-url="" class='group-toggle collapsed '>ODBC Driver<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/SQL/ODBC/odbc-driver"

                                class=''
                            >ODBC Driver</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/SQL/ODBC/connection-string-dsn"

                                class=''
                            >Connection String and DSN</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/SQL/ODBC/querying-modifying-data"

                                class=''
                            >Querying and Modifying Data</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/SQL/ODBC/specification"

                                class=''
                            >Specification</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/SQL/ODBC/data-types"

                                class=''
                            >Data Types</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/SQL/ODBC/error-codes"

                                class=''
                            >Error Codes</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            <a href="/docs/2.9.0/restapi" class='' >REST API</a>
            
        </li>
    
        <li>
            

            <a href="/docs/2.9.0/control-script" class='' >Control Script</a>
            
        </li>
    
        <li>
            

            <a href="/docs/2.9.0/plugins" class='' >Plugins</a>
            
        </li>
    
        <li>
            

            <a href="/docs/2.9.0/sqlline" class='' >SQLLine</a>
            
        </li>
    
        <li>
            

            

            

			<button type='button' data-guide-url="" class='group-toggle collapsed '>Ignite for Spark<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/ignite-for-spark/overview"

                                class=''
                            >Overview</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/ignite-for-spark/ignitecontext-and-rdd"

                                class=''
                            >IgniteContext and IgniteRDD</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/ignite-for-spark/ignite-dataframe"

                                class=''
                            >Ignite DataFrame</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/ignite-for-spark/installation"

                                class=''
                            >Installation</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/ignite-for-spark/spark-shell"

                                class=''
                            >Test Ignite with Spark-shell</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/ignite-for-spark/troubleshooting"

                                class=''
                            >Troubleshooting</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

			<button type='button' data-guide-url="/sql-reference/sql-reference-overview" class='group-toggle collapsed '>SQL Reference<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/sql-reference/sql-conformance"

                                class=''
                            >SQL Conformance</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/sql-reference/ddl"

                                class=''
                            >Data Definition Language (DDL)</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/sql-reference/dml"

                                class=''
                            >Data Manipulation Language (DML)</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/sql-reference/transactions"

                                class=''
                            >Transactions</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/sql-reference/operational-commands"

                                class=''
                            >Operational Commands</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/sql-reference/aggregate-functions"

                                class=''
                            >Aggregate functions</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/sql-reference/numeric-functions"

                                class=''
                            >Numeric Functions</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/sql-reference/string-functions"

                                class=''
                            >String Functions</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/sql-reference/date-time-functions"

                                class=''
                            >Data and Time Functions</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/sql-reference/system-functions"

                                class=''
                            >System Functions</a>
                        
                    </li>
                

                    
                    

                    <li> 
                        
                            <a href="/docs/2.9.0/sql-reference/data-types"

                                class=''
                            >Data Types</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
</nav>
<div class="left-nav__overlay"></div>


    <article data-swiftype-index='true'>
      <a class='edit-link' href="https://github.com/apache/ignite/tree/IGNITE-7595/docs/_docs/data-modeling/data-partitioning.adoc" target="_blank">Edit</a>
        
            <h1>Data Partitioning</h1>
        
        <div id="preamble">
<div class="sectionbody">
<div class="paragraph">
<p>Data partitioning is a method of subdividing large sets of data into smaller chunks and distributing them between all server nodes in a balanced manner.</p>
</div>
<div class="paragraph">
<p>Partitioning is controlled by the <em>affinity function</em>.
The affinity function determines the mapping between keys and partitions.
Each partition is identified by a number from a limited set (0 to 1023 by default).
The set of partitions is distributed between the server nodes available at the moment.
Thus, each key is mapped to a specific node and is stored on that node.
When the number of nodes in the cluster changes, the partitions are re-distributed — through a process called <a href="#rebalancing">rebalancing</a> — between the new set of nodes.</p>
</div>
<div class="paragraph">
<p><span class="image"><img src="/docs/2.9.0/images/partitioning.png" alt="Data Partitioning"></span></p>
</div>
<div class="paragraph">
<p>The affinity function takes the <em>affinity key</em> as an argument.
The affinity key can be any field of the objects stored in the cache (any column in the SQL table).
If the affinity key is not specified, the default key is used (in case of SQL tables, it is the PRIMARY KEY column).</p>
</div>
<div class="paragraph">
<p>Partitioning boosts performance by distributing both read and write operations.
Moreover, you can design your data model in such a way that the data entries that are used together are stored together (i.e., in one partition).
When you request that data, only a small number of partitions is scanned.
This technique is called <a href="/docs/2.9.0/data-modeling/affinity-collocation">Affinity Colocation</a>.</p>
</div>
<div class="paragraph">
<p>Partitioning helps achieve linear scalability at virtually any scale.
You can add more nodes to the cluster as your data set grows, and Ignite makes sure that the data is distributed "equally" among all the nodes.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="affinity-function">Affinity Function</h2>
<div class="sectionbody">
<div class="paragraph">
<p>The affinity function controls how data entries are mapped onto partitions and partitions onto nodes.
The default affinity function implements the <em>rendezvous hashing</em> algorithm.
It allows a bit of discrepancy in the partition-to-node mapping (i.e., some nodes may be responsible for a slightly larger number of partitions than others).
However, the affinity function guarantees that when the topology changes, partitions are migrated only to the new node that joined or from the node that left.
No data exchange happens between the remaining nodes.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="partitionedreplicated-mode">Partitioned/Replicated Mode</h2>
<div class="sectionbody">
<div class="paragraph">
<p>When creating a cache or SQL table, you can choose between partitioned and replicated mode of cache operation. The two modes are designed for different use case scenarios and provide different performance and availability benefits.</p>
</div>
<div class="sect2">
<h3 id="partitioned">PARTITIONED</h3>
<div class="paragraph">
<p>In this mode, all partitions are split equally between all server nodes.
This mode is the most scalable distributed cache mode and allows you to store as much data as fits in the total memory (RAM and disk) available across all nodes.
Essentially, the more nodes you have, the more data you can store.</p>
</div>
<div class="paragraph">
<p>Unlike the <code>REPLICATED</code> mode, where updates are expensive because every node in the cluster needs to be updated, with <code>PARTITIONED</code> mode, updates become cheap because only one primary node (and optionally 1 or more backup nodes) need to be updated for every key. However, reads are somewhat more expensive because only certain nodes have the data cached.</p>
</div>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<div class="title">Note</div>
</td>
<td class="content">
Partitioned caches are ideal when data sets are large and updates are frequent.
</td>
</tr>
</table>
</div>
<div class="paragraph">
<p>The picture below illustrates the distribution of a partitioned cache. Essentially we have key A assigned to a node running in JVM1, key B assigned to a node running in JVM3, etc.</p>
</div>
<div class="paragraph">
<p><span class="image"><img src="/docs/2.9.0/images/partitioned_cache.png" alt="partitioned cache"></span></p>
</div>
</div>
<div class="sect2">
<h3 id="replicated">REPLICATED</h3>
<div class="paragraph">
<p>In the <code>REPLICATED</code> mode, all the data (every partition) is replicated to every node in the cluster. This cache mode provides the utmost availability of data as it is available on every node. However, every data update must be propagated to all other nodes, which can impact performance and scalability.</p>
</div>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<div class="title">Note</div>
</td>
<td class="content">
Replicated caches are ideal when data sets are small and updates are infrequent.
</td>
</tr>
</table>
</div>
<div class="paragraph">
<p>In the diagram below, the node running in JVM1 is a primary node for key A, but it also stores backup copies for all other keys as well (B, C, D).</p>
</div>
<div class="paragraph">
<p><span class="image"><img src="/docs/2.9.0/images/replicated_cache.png" alt="replicated cache"></span></p>
</div>
<div class="paragraph">
<p>Because the same data is stored on all cluster nodes, the size of a replicated cache is limited by the amount of memory (RAM and disk) available on the node. This mode is ideal for scenarios where cache reads are a lot more frequent than cache writes, and data sets are small. If your system does cache lookups over 80% of the time, then you should consider using the <code>REPLICATED</code> cache mode.</p>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="backup-partitions">Backup Partitions</h2>
<div class="sectionbody">
<div class="paragraph">
<p>By default, Ignite keeps a single copy of each partition (a single copy of the entire data set). In this case, if one or multiple nodes become unavailable, you lose access to partitions stored on these nodes. To avoid this, you can configure Ignite to maintain backup copies of each partition.</p>
</div>
<div class="admonitionblock important">
<table>
<tr>
<td class="icon">
<div class="title">Important</div>
</td>
<td class="content">
By default, backups are disabled.
</td>
</tr>
</table>
</div>
<div class="paragraph">
<p>Backup copies are configured per cache (table).
If you configure 2 backup copies, the cluster maintains 3 copies of each partition.
One of the partitions is called the <em>primary</em> partition, and the other two are called <em>backup</em> partitions.
By extension, the node that has the primary partition is called the <em>primary node for the keys stored in the partition</em>.
The node with backup partitions is called the <em>backup node</em>.</p>
</div>
<div class="paragraph">
<p>When a node with the primary partition for some key leaves the cluster, Ignite triggers the partition map exchange (PME) process.
PME labels one of the backup partitions (if they are configured) for the key as primary.</p>
</div>
<div class="paragraph">
<p>Backup partitions increase the availability of your data, and in some cases, the speed of read operations, since Ignite reads data from backed-up partitions if they are available on the local node (this is the default behavior that can be disabled. See <a href="/docs/2.9.0/configuring-caches/configuration-overview#readfrombackup">Cache Configuration</a> for details.). However, they also increase memory consumption or the size of the persistent storage (if enabled).</p>
</div>
<div class="admonitionblock note">
<table>
<tr>
<td class="icon">
<div class="title">Note</div>
</td>
<td class="content">
Backup partitions can be configured in PARTITIONED mode only. Refer to the <a href="/docs/2.9.0/configuring-caches/configuring-backups">Configuring Partition Backups</a> section.
</td>
</tr>
</table>
</div>
</div>
</div>
<div class="sect1">
<h2 id="partition-map-exchange">Partition Map Exchange</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Partition map exchange (PME) is a process of sharing information about partition distribution (partition map) across the cluster so that every node knows where to look for specific keys. PME is required whenever the partition distribution for any cache changes, for example, when new nodes are added to the topology or old nodes leave the topology (whether on user request or due to a failure).</p>
</div>
<div class="paragraph">
<p>Examples of events that trigger PME include (but are not limited to):</p>
</div>
<div class="ulist">
<ul>
<li>
<p>A new node joins/leaves the topology.</p>
</li>
<li>
<p>A new cache starts/stops.</p>
</li>
<li>
<p>An index is created.</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>When one of the PME-triggering events occurs, the cluster waits for all ongoing transactions to complete and then starts PME. Also, during PME, new transactions are postponed until the process finishes.</p>
</div>
<div class="paragraph">
<p>The PME process works in the following way: The coordinator node requests from all nodes the information about the partitions they own. Each node sends this information to the coordinator. Once the coordinator node receives the messages from all nodes, it merges the information into a full partition map and sends it to all nodes. When the coordinator has received confirmation messages from all nodes, PME is considered completed.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="rebalancing">Rebalancing</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Refer to the <a href="/docs/2.9.0/data-rebalancing">Data Rebalancing</a> page for details.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="partition-loss-policy">Partition Loss Policy</h2>
<div class="sectionbody">
<div class="paragraph">
<p>It may happen that throughout the cluster’s lifecycle, some of the data partitions are lost due to the failure of some primary node and backup nodes that held a copy of the partitions. Such a situation leads to a partial data loss and needs to be addressed according to your use case. For detailed information about partition loss policies, see <a href="/docs/2.9.0/partition-loss-policy">Partition Loss Policy</a>.</p>
</div>
</div>
</div>
        <div class="copyright">
 © 2020 The Apache Software Foundation.<br/>
Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either registered trademarks or trademarks of The Apache Software Foundation. 

</div>

    </article>
    <nav class="right-nav" data-swiftype-index='false'>
    <ul class="sectlevel1">
<li><a href="#affinity-function">Affinity Function</a></li>
<li><a href="#partitionedreplicated-mode">Partitioned/Replicated Mode</a>
<ul class="sectlevel2">
<li><a href="#partitioned">PARTITIONED</a></li>
<li><a href="#replicated">REPLICATED</a></li>
</ul>
</li>
<li><a href="#backup-partitions">Backup Partitions</a></li>
<li><a href="#partition-map-exchange">Partition Map Exchange</a></li>
<li><a href="#rebalancing">Rebalancing</a></li>
<li><a href="#partition-loss-policy">Partition Loss Policy</a></li>
</ul>
          
      
<footer>
</footer>

</nav>
    
</section>
<script type='module' src='/assets/js/code-copy-to-clipboard.js' async crossorigin></script>

    <script>
    // inits deep anchors -- needs to be done here because of https://www.bryanbraun.com/anchorjs/#dont-run-it-too-late 
    anchors.add('.page-docs h1, .page-docs h2, .page-docs h3:not(.discrete), .page-docs h4, .page-docs h5');
    anchors.options = {
        placement: 'right',
        visible: 'always'
    };
    </script>
    <!-- load google fonts async -->
    <script type="text/javascript">
    WebFontConfig = {
      google: { families: [ 'Open+Sans:300,400,600,700&display=swap' ] }
    };
    (function() {
      var wf = document.createElement('script');
      wf.src = 'https://ajax.googleapis.com/ajax/libs/webfont/1/webfont.js';
      wf.type = 'text/javascript';
      wf.async = 'true';
      var s = document.getElementsByTagName('script')[0];
      s.parentNode.insertBefore(wf, s);
    })(); </script>
    <script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script>
    <script>
      docsearch({
        // Your apiKey and indexName will be given to you once
        // we create your config
        apiKey: '3eee686c0ebe39eff3baeb18c56fa5f8', 
        indexName: 'apache_ignite',
        // Replace inputSelector with a CSS selector
        // matching your search input
        inputSelector: '#search-input',
        // algoliaOptions: { 'facetFilters': ["version:$VERSION"] },

        // Set debug to true to inspect the dropdown
        debug: false,
      });
    </script>
<script type='module' src='/assets/js/index.js?1600286556' async crossorigin></script>
<script type='module' src='/assets/js/versioning.js?1600286556' async crossorigin></script>
</body>

</html>
