<!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.1" />
    <title>Plugins | Ignite Documentation</title>
    
    <link rel="canonical" href="/docs/latest/plugins" />
    
	
	<link rel="stylesheet" href="/assets/css/styles.css?1609302723">
    <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?1609302723"></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>
        
        
        <select id="version-selector">
            <option value="2.9.1">2.9.1</option>
        </select>

        <nav id="api-docs">
            <li><a href="#">APIs</a>
            
                <nav class='dropdown'>
                    <li class="dropdown-item"><a href="/releases/latest/javadoc/index.html">Java</a></li>

                    <li class="dropdown-item"><a href="/releases/latest/dotnetdoc/api/">C#/.NET</a></li>

                    <li class="dropdown-item"><a href="/releases/latest/cppdoc/index.html">C++</a></li>

                    <li class="dropdown-item"><a href="/releases/latest/scaladoc/scalar/index.html#org.apache.ignite.scalar.scalar$">Scala</a></li>

                </nav>
            </li>

            <li><a href="#">Examples</a>
                <nav class="dropdown">
                    <li class="dropdown-item"><a href="https://github.com/apache/ignite/tree/master/examples" target="_blank" rel="noopener" title="Apache Ignite Java examples">Java</a></li>

                    <li class="dropdown-item"><a href="https://github.com/apache/ignite/tree/master/modules/platforms/dotnet/examples" target="_blank" rel="noopener" title="Apache Ignite C#/.NET examples">C#/.NET</a></li>

                    <li class="dropdown-item"><a href="https://github.com/apache/ignite/tree/master/modules/platforms/cpp/examples" target="_blank" rel="noopener" title="Apache Ignite C++ examples">C++</a></li>

                    <li class="dropdown-item"><a href="https://github.com/apache/ignite/tree/master/modules/platforms/python/examples" target="_blank" rel="noopener" title="Apache Ignite Python examples">Python</a></li>

                    <li class="dropdown-item"><a href="https://github.com/apache/ignite/tree/master/modules/platforms/nodejs/examples" target="_blank" rel="noopener" title="Apache Ignite NodeJS examples">NodeJS</a></li>

                    <li class="dropdown-item"><a href="https://github.com/apache/ignite/tree/master/modules/platforms/php/examples" target="_blank" rel="noopener" title="Apache Ignite PHP examples">PHP</a></li>
                </nav>
                </li>
        </nav>
        
        <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>

        <nav id="lang-selector">
            <li><a href="#"><img src="/assets/images/icon_lang_en.png" alt="English language icon" /><span>▼</span></a>
                <nav class="dropdown">
                    <li class="dropdown-item"><a href="/docs/latest/" ><img src="/assets/images/icon_lang_en.png" alt="English language icon" /><span>English</span></a></li>
                    <li class="dropdown-item"><a href="https://www.ignite-service.cn/doc/java/" target="_blank" rel="noopener"><img src="/assets/images/icon_lang_cn.png" alt="Chinese language icon" /><span>Chinese</span></a></li>
                </nav>
            </li>
        </nav>

        <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/latest/index" class='' >Documentation Overview</a>
            
        </li>
    
        <li>
            

            

            

			<button type='button' 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/latest/quick-start/java"
                                class=''
                            >Java</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/quick-start/dotnet"
                                class=''
                            >.NET/C#</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/quick-start/cpp"
                                class=''
                            >C++</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/quick-start/python"
                                class=''
                            >Python</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/quick-start/nodejs"
                                class=''
                            >Node.JS</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/quick-start/sql"
                                class=''
                            >SQL</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/quick-start/php"
                                class=''
                            >PHP</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/quick-start/restapi"
                                class=''
                            >REST API</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

			<button type='button' 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/latest/installation/installing-using-zip"
                                class=''
                            >Installing Using ZIP Archive</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/installation/installing-using-docker"
                                class=''
                            >Installing Using Docker</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/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/latest/installation/kubernetes/amazon-eks-deployment" class=''>Amazon EKS</a></li>
                            
                                
                                  

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

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

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/installation/vmware-installation"
                                class=''
                            >VMWare</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

			<button type='button' 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/latest/understanding-configuration"
                                class=''
                            >Understanding Configuration</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/setup"
                                class=''
                            >Setting Up</a>
                        
                    </li>
                

                    
                    
                    

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

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/resources-injection"
                                class=''
                            >Resources Injection</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            
                
                <a href="/docs/latest/starting-nodes" class='' >Starting and Stopping Nodes</a>
            
        </li>
    
        <li>
            

            

            

			<button type='button' 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/latest/clustering/clustering"
                                class=''
                            >Overview</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/clustering/tcp-ip-discovery"
                                class=''
                            >TCP/IP Discovery</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/clustering/zookeeper-discovery"
                                class=''
                            >ZooKeeper Discovery</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/clustering/discovery-in-the-cloud"
                                class=''
                            >Discovery in the Cloud</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/clustering/network-configuration"
                                class=''
                            >Network Configuration</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/clustering/connect-client-nodes"
                                class=''
                            >Connecting Client Nodes</a>
                        
                    </li>
                

                    
                    
                    

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

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/clustering/running-client-nodes-behind-nat"
                                class=''
                            >Running Client Nodes Behind NAT</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

			<button type='button' 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/latest/thin-clients/getting-started-with-thin-clients"
                                class=''
                            >Thin Clients Overview</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/thin-clients/java-thin-client"
                                class=''
                            >Java Thin Client</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/thin-clients/dotnet-thin-client"
                                class=''
                            >.NET Thin Client</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/thin-clients/cpp-thin-client"
                                class=''
                            >C++ Thin Client</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/thin-clients/python-thin-client"
                                class=''
                            >Python Thin Client</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/thin-clients/php-thin-client"
                                class=''
                            >PHP Thin Client</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/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/latest/binary-client-protocol/binary-client-protocol" class=''>Binary Client Protocol</a></li>
                            
                                
                                  

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

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

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

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

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

            

            

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

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/data-modeling/data-modeling"
                                class=''
                            >Introduction</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/data-modeling/data-partitioning"
                                class=''
                            >Data Partitioning</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/data-modeling/affinity-collocation"
                                class=''
                            >Affinity Colocation</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/data-modeling/binary-marshaller"
                                class=''
                            >Binary Marshaller</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

			<button type='button' 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/latest/memory-architecture"
                                class=''
                            >Memory Architecture</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/memory-configuration/data-regions"
                                class=''
                            >Configuring Data Regions</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/memory-configuration/eviction-policies"
                                class=''
                            >Eviction Policies</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

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

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/persistence/native-persistence"
                                class=''
                            >Ignite Persistence</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/persistence/external-storage"
                                class=''
                            >External Storage</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/persistence/swap"
                                class=''
                            >Swapping</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/persistence/custom-cache-store"
                                class=''
                            >Implementing Custom Cache Store</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/persistence/snapshots"
                                class=''
                            >Cluster Snapshots</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/persistence/disk-compression"
                                class=''
                            >Disk Compression</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/persistence/persistence-tuning"
                                class=''
                            >Tuning Persistence</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

			<button type='button' 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/latest/configuring-caches/configuration-overview"
                                class=''
                            >Cache Configuration</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/configuring-caches/configuring-backups"
                                class=''
                            >Configuring Partition Backups</a>
                        
                    </li>
                

                    
                    
                    

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

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/configuring-caches/atomicity-modes"
                                class=''
                            >Atomicity Modes</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/configuring-caches/expiry-policies"
                                class=''
                            >Expiry Policy</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/configuring-caches/on-heap-caching"
                                class=''
                            >On-Heap Caching</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/configuring-caches/cache-groups"
                                class=''
                            >Cache Groups</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/configuring-caches/near-cache"
                                class=''
                            >Near Caches</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            
                
                <a href="/docs/latest/data-rebalancing" class='' >Data Rebalancing</a>
            
        </li>
    
        <li>
            
                
                <a href="/docs/latest/data-streaming" class='' >Data Streaming</a>
            
        </li>
    
        <li>
            

            

            

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

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/key-value-api/basic-cache-operations"
                                class=''
                            >Basic Cache Operations</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/key-value-api/binary-objects"
                                class=''
                            >Working with Binary Objects</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/key-value-api/using-scan-queries"
                                class=''
                            >Using Scan Queries</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/read-repair"
                                class=''
                            >Read Repair</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            
                
                <a href="/docs/latest/key-value-api/transactions" class='' >Performing Transactions</a>
            
        </li>
    
        <li>
            

            

            

			<button type='button' 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/latest/SQL/sql-introduction"
                                class=''
                            >Introduction</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/SQL/schemas"
                                class=''
                            >Understanding Schemas</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/SQL/indexes"
                                class=''
                            >Defining Indexes</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/SQL/sql-api"
                                class=''
                            >Using SQL API</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/SQL/distributed-joins"
                                class=''
                            >Distributed Joins</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/SQL/sql-transactions"
                                class=''
                            >SQL Transactions</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/SQL/custom-sql-func"
                                class=''
                            >Custom SQL Functions</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/SQL/JDBC/jdbc-driver"
                                class=''
                            >JDBC Driver</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/SQL/JDBC/jdbc-client-driver"
                                class=''
                            >JDBC Client Driver</a>
                        
                    </li>
                

                    
                    
                    

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

                            
                                
                                  

								  <li><a href="/docs/latest/SQL/ODBC/odbc-driver" class=''>ODBC Driver</a></li>
                            
                                
                                  

								  <li><a href="/docs/latest//SQL/ODBC/connection-string-dsn" class=''>Connection String and DSN</a></li>
                            
                                
                                  

								  <li><a href="/docs/latest/SQL/ODBC/querying-modifying-data" class=''>Querying and Modifying Data</a></li>
                            
                                
                                  

								  <li><a href="/docs/latest/SQL/ODBC/specification" class=''>Specification</a></li>
                            
                                
                                  

								  <li><a href="/docs/latest/SQL/ODBC/data-types" class=''>Data Types</a></li>
                            
                                
                                  

								  <li><a href="/docs/latest/SQL/ODBC/error-codes" class=''>Error Codes</a></li>
                            
                            </nav>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/transactions/mvcc"
                                class=''
                            >Multiversion Concurrency Control</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

			<button type='button' 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/latest/sql-reference/sql-conformance"
                                class=''
                            >SQL Conformance</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/sql-reference/ddl"
                                class=''
                            >Data Definition Language (DDL)</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/sql-reference/dml"
                                class=''
                            >Data Manipulation Language (DML)</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/sql-reference/transactions"
                                class=''
                            >Transactions</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/sql-reference/operational-commands"
                                class=''
                            >Operational Commands</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/sql-reference/aggregate-functions"
                                class=''
                            >Aggregate functions</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/sql-reference/numeric-functions"
                                class=''
                            >Numeric Functions</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/sql-reference/string-functions"
                                class=''
                            >String Functions</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/sql-reference/date-time-functions"
                                class=''
                            >Data and Time Functions</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/sql-reference/system-functions"
                                class=''
                            >System Functions</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/sql-reference/data-types"
                                class=''
                            >Data Types</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

			<button type='button' 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/latest/distributed-computing/distributed-computing"
                                class=''
                            >Distributed Computing API</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/distributed-computing/cluster-groups"
                                class=''
                            >Cluster Groups</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/distributed-computing/executor-service"
                                class=''
                            >Executor Service</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/distributed-computing/map-reduce"
                                class=''
                            >MapReduce API</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/distributed-computing/load-balancing"
                                class=''
                            >Load Balancing</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/distributed-computing/fault-tolerance"
                                class=''
                            >Fault Tolerance</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/distributed-computing/job-scheduling"
                                class=''
                            >Job Scheduling</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/distributed-computing/collocated-computations"
                                class=''
                            >Colocating Computations with Data</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

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

                    
                    
                    

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

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/code-deployment/peer-class-loading"
                                class=''
                            >Peer Class Loading</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

			<button type='button' 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/latest/machine-learning/machine-learning"
                                class=''
                            >Machine Learning</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/machine-learning/partition-based-dataset"
                                class=''
                            >Partition Based Dataset</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/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/latest/machine-learning/binary-classification/introduction" class=''>Introduction</a></li>
                            
                                
                                  

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

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

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

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

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

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

								  <li><a href="/docs/latest/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/latest/machine-learning/regression/introduction" class=''>Introduction</a></li>
                            
                                
                                  

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

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

								  <li><a href="/docs/latest/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/latest/machine-learning/clustering/introduction" class=''>Introduction</a></li>
                            
                                
                                  

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

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

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/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/latest/machine-learning/model-selection/introduction" class=''>Introduction</a></li>
                            
                                
                                  

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

								  <li><a href="/docs/latest/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/latest/machine-learning/model-selection/hyper-parameter-tuning" class=''>Hyper-parameter tuning</a></li>
                            
                                
                                  

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

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/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/latest/machine-learning/ensemble-methods/introduction" class=''></a></li>
                            
                                
                                  

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

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

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

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

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/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/latest/machine-learning/importing-model/introduction" class=''>Introduction</a></li>
                            
                                
                                  

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

								  <li><a href="/docs/latest/machine-learning/importing-model/model-import-from-apache-spark" class=''>Import Model from Apache Spark</a></li>
                            
                            </nav>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            
                
                <a href="/docs/latest/key-value-api/continuous-queries" class='' >Using Continuous Queries</a>
            
        </li>
    
        <li>
            
                
                <a href="/docs/latest/services/services" class='' >Using Ignite Services</a>
            
        </li>
    
        <li>
            
                
                <a href="/docs/latest/messaging" class='' >Using Ignite Messaging</a>
            
        </li>
    
        <li>
            

            

            

			<button type='button' 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/latest/data-structures/queue-and-set"
                                class=''
                            >Queue and Set</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/data-structures/atomic-types"
                                class=''
                            >Atomic Types</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/data-structures/countdownlatch"
                                class=''
                            >CountDownLatch</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/data-structures/atomic-sequence"
                                class=''
                            >Atomic Sequence</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/data-structures/semaphore"
                                class=''
                            >Semaphore</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/data-structures/id-generator"
                                class=''
                            >ID Generator</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            
                
                <a href="/docs/latest/distributed-locks" class='' >Distributed Locks</a>
            
        </li>
    
        <li>
            
                
                <a href="/docs/latest/restapi" class='' >REST API</a>
            
        </li>
    
        <li>
            

            

            

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

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/net-specific/net-configuration-options"
                                class=''
                            >Configuration Options</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/net-specific/net-deployment-options"
                                class=''
                            >Deployment Options</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/net-specific/net-standalone-nodes"
                                class=''
                            >Standalone Nodes</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/net-specific/net-logging"
                                class=''
                            >Logging</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/net-specific/net-linq"
                                class=''
                            >LINQ</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/net-specific/net-java-services-execution"
                                class=''
                            >Java Services Execution</a>
                        
                    </li>
                

                    
                    
                    

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

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/net-specific/net-plugins"
                                class=''
                            >Plugins</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/net-specific/net-serialization"
                                class=''
                            >Serialization</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/net-specific/net-cross-platform-support"
                                class=''
                            >Cross-Platform Support</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/net-specific/net-platform-interoperability"
                                class=''
                            >Platform Interoperability</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/net-specific/net-remote-assembly-loading"
                                class=''
                            >Remote Assembly Loading</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/net-specific/net-troubleshooting"
                                class=''
                            >Troubleshooting</a>
                        
                    </li>
                

                    
                    
                    

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

                            
                                
                                  

								  <li><a href="/docs/latest/net-specific/asp-net-output-caching" class=''>ASP.NET Output Caching</a></li>
                            
                                
                                  

								  <li><a href="/docs/latest/net-specific/asp-net-session-state-caching" class=''>ASP.NET Session State Caching</a></li>
                            
                                
                                  

								  <li><a href="/docs/latest/net-specific/net-entity-framework-cache" class=''>Entity Framework 2nd Level Cache</a></li>
                            
                            </nav>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

			<button type='button' class='group-toggle collapsed '>C++ Specific<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/cpp-specific/cpp-serialization"
                                class=''
                            >Serialization</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/cpp-specific/cpp-platform-interoperability"
                                class=''
                            >Platform Interoperability</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/cpp-specific/cpp-objects-lifetime"
                                class=''
                            >Objects Lifetime</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

			<button type='button' 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/latest/monitoring-metrics/intro"
                                class=''
                            >Introduction</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/monitoring-metrics/cluster-id"
                                class=''
                            >Cluster ID and Tag</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/monitoring-metrics/cluster-states"
                                class=''
                            >Cluster States</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/latest/monitoring-metrics/configuring-metrics" class=''>Configuring Metrics</a></li>
                            
                                
                                  

								  <li><a href="/docs/latest/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/latest/monitoring-metrics/new-metrics-system" class=''>Introduction</a></li>
                            
                                
                                  

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

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/monitoring-metrics/system-views"
                                class=''
                            >System Views</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/monitoring-metrics/tracing"
                                class=''
                            >Tracing</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

			<button type='button' 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/latest/events/listening-to-events"
                                class=''
                            >Enabling and Listenting to Events</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/events/events"
                                class=''
                            >Events</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

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

                    
                    
                    

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

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/tools/visor-cmd"
                                class=''
                            >Visor CMD</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/tools/gg-control-center"
                                class=''
                            >GridGain Control Center</a>
                        
                    </li>
                

                    
                    
                    

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

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/tools/tableau"
                                class=''
                            >Tableau</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/tools/informatica"
                                class=''
                            >Informatica</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/tools/pentaho"
                                class=''
                            >Pentaho</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

			<button type='button' 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/latest/security/authentication"
                                class=''
                            >Authentication</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/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/latest/security/tde" class=''>Introduction</a></li>
                            
                                
                                  

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

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/security/sandbox"
                                class=''
                            >Sandbox</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            

            

            

			<button type='button' class='group-toggle collapsed '>Extensions and Integrations<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    
                    

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

                            
                                
                                  

								  <li><a href="/docs/latest/extensions-and-integrations/spring/spring-boot" class=''>Spring Boot</a></li>
                            
                                
                                  

								  <li><a href="/docs/latest/extensions-and-integrations/spring/spring-data" class=''>Spring Data</a></li>
                            
                                
                                  

								  <li><a href="/docs/latest/extensions-and-integrations/spring/spring-caching" class=''>Spring Caching</a></li>
                            
                            </nav>
                        
                    </li>
                

                    
                    
                    

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

                            
                                
                                  

								  <li><a href="/docs/latest/extensions-and-integrations/ignite-for-spark/overview" class=''>Overview</a></li>
                            
                                
                                  

								  <li><a href="/docs/latest/extensions-and-integrations/ignite-for-spark/ignitecontext-and-rdd" class=''>IgniteContext and IgniteRDD</a></li>
                            
                                
                                  

								  <li><a href="/docs/latest/extensions-and-integrations/ignite-for-spark/ignite-dataframe" class=''>Ignite DataFrame</a></li>
                            
                                
                                  

								  <li><a href="/docs/latest/extensions-and-integrations/ignite-for-spark/installation" class=''>Installation</a></li>
                            
                                
                                  

								  <li><a href="/docs/latest/extensions-and-integrations/ignite-for-spark/spark-shell" class=''>Test Ignite with Spark-shell</a></li>
                            
                                
                                  

								  <li><a href="/docs/latest/extensions-and-integrations/ignite-for-spark/troubleshooting" class=''>Troubleshooting</a></li>
                            
                            </nav>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/extensions-and-integrations/hibernate-l2-cache"
                                class=''
                            >Hibernate L2 Cache</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/extensions-and-integrations/mybatis-l2-cache"
                                class=''
                            >MyBatis L2 Cache</a>
                        
                    </li>
                

                    
                    
                    

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

                            
                                
                                  

								  <li><a href="/docs/latest/extensions-and-integrations/streaming/kafka-streamer" class=''>Kafka Streamer</a></li>
                            
                                
                                  

								  <li><a href="/docs/latest/extensions-and-integrations/streaming/camel-streamer" class=''>Camel Streamer</a></li>
                            
                                
                                  

								  <li><a href="/docs/latest/extensions-and-integrations/streaming/flink-streamer" class=''>Flink Streamer</a></li>
                            
                                
                                  

								  <li><a href="/docs/latest/extensions-and-integrations/streaming/flume-sink" class=''>Flume Sink</a></li>
                            
                                
                                  

								  <li><a href="/docs/latest/extensions-and-integrations/streaming/jms-streamer" class=''>JMS Streamer</a></li>
                            
                                
                                  

								  <li><a href="/docs/latest/extensions-and-integrations/streaming/mqtt-streamer" class=''>MQTT Streamer</a></li>
                            
                                
                                  

								  <li><a href="/docs/latest/extensions-and-integrations/streaming/rocketmq-streamer" class=''>RocketMQ Streamer</a></li>
                            
                                
                                  

								  <li><a href="/docs/latest/extensions-and-integrations/streaming/storm-streamer" class=''>Storm Streamer</a></li>
                            
                                
                                  

								  <li><a href="/docs/latest/extensions-and-integrations/streaming/zeromq-streamer" class=''>ZeroMQ Streamer</a></li>
                            
                                
                                  

								  <li><a href="/docs/latest/extensions-and-integrations/streaming/twitter-streamer" class=''>Twitter Streamer</a></li>
                            
                            </nav>
                        
                    </li>
                

                    
                    
                    

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

                            
                                
                                  

								  <li><a href="/docs/latest/extensions-and-integrations/cassandra/overview" class=''>Overview</a></li>
                            
                                
                                  

								  <li><a href="/docs/latest/extensions-and-integrations/cassandra/configuration" class=''>Configuration</a></li>
                            
                                
                                  

								  <li><a href="/docs/latest/extensions-and-integrations/cassandra/usage-examples" class=''>Usage Examples</a></li>
                            
                                
                                  

								  <li><a href="/docs/latest/extensions-and-integrations/cassandra/ddl-generator" class=''>DDL Generator</a></li>
                            
                            </nav>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/extensions-and-integrations/php-pdo"
                                class=''
                            >PHP PDO</a>
                        
                    </li>
                
              
                     
             </nav>   
            
        </li>
    
        <li>
            
                
                <a href="/docs/latest/plugins" class='active' >Plugins</a>
            
        </li>
    
        <li>
            

            

            

			<button type='button' class='group-toggle collapsed '>Performance and Troubleshooting<img class="state-indicator" src="/assets/images/left-nav-arrow.svg"></button>
             <nav class='nav-group collapsed'>
            
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/perf-and-troubleshooting/general-perf-tips"
                                class=''
                            >General Performance Tips</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/perf-and-troubleshooting/memory-tuning"
                                class=''
                            >Memory and JVM Tuning</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/perf-and-troubleshooting/persistence-tuning"
                                class=''
                            >Persistence Tuning</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/perf-and-troubleshooting/sql-tuning"
                                class=''
                            >SQL Tuning</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/perf-and-troubleshooting/thread-pools-tuning"
                                class=''
                            >Thread Pools Tuning</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/perf-and-troubleshooting/troubleshooting"
                                class=''
                            >Troubleshooting and Debugging</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/perf-and-troubleshooting/handling-exceptions"
                                class=''
                            >Handling Exceptions</a>
                        
                    </li>
                

                    
                    
                    

                    <li> 
                        
                            <a href="/docs/latest/perf-and-troubleshooting/yardstick-benchmarking"
                                class=''
                            >Benchmarking With Yardstick</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/plugins.adoc" target="_blank">Edit</a>
        
            <h1>Plugins</h1>
        
        <div class="sect1">
<h2 id="overview">Overview</h2>
<div class="sectionbody">
<div class="paragraph">
<p>The Ignite plugin system allows you to extend the core functionality of Ignite.
Plugins have access to different internal Ignite components, such as security processor and others, and can extend the programmatic API of Ignite.</p>
</div>
<div class="paragraph">
<p>To add a custom plugin, implement the <code>PluginProvider</code> interface and register the implementation in the node configuration.
The following is an overview of the steps involved in creating a plugin:</p>
</div>
<div class="olist arabic">
<ol class="arabic">
<li>
<p>Implement the <code>PluginProvider</code> interface. This is the main interface for creating plugins.</p>
</li>
<li>
<p>Implement the <code>IgnitePlugin</code> interface. If your plugin adds functionality that is meant to be triggered by end users, you should add public methods to this class. An instance of this class is available to end users at runtime via <code>Ignite.plugin(String pluginName)</code>.</p>
</li>
<li>
<p>Register the plugin in <code>IgniteConfiguration.setPluginProviders(&#8230;&#8203;)</code> either programmatically or via XML configuration.</p>
</li>
<li>
<p>If your plugin has a public API, call <code>MyPlugin plugin = Ignite.plugin(pluginName)</code> at runtime and execute specific actions.</p>
</li>
</ol>
</div>
<div class="paragraph">
<p>The following section gives an example of a plugin and goes into details about how plugins work in Ignite.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="example-plugin">Example Plugin</h2>
<div class="sectionbody">
<div class="paragraph">
<p>Let&#8217;s create a simple Ignite plugin that prints information about the number of entries in every cache to the console periodically, on each node.
In addition, it exposes a public method that the users can call programmatically from their application to print the cache size information on demand.
The plugin has one configuration parameter: the time interval for printing the cache size information.</p>
</div>
<div class="sect2">
<h3 id="1-implement-pluginprovider">1. Implement PluginProvider</h3>
<div class="paragraph">
<p><code>PluginProvider</code> is the main interface for creating Ignite plugins.
Ignite calls the methods of each registered plugin provider during initialization.</p>
</div>
<div class="paragraph">
<p>The following methods must return non-null values. Other methods are optional.</p>
</div>
<div class="ulist">
<ul>
<li>
<p><code>name()</code> - returns the name of the plugin</p>
</li>
<li>
<p><code>plugin()</code> - returns the object of your plugin class</p>
</li>
</ul>
</div>
<div class="paragraph">
<p>Below is an example implementation of a plugin provider.
We create an object of <code>MyPlugin</code> class (see next step) in the <code>initExtensions()</code> method.
Ignite passes a <code>PluginContext</code> object as an argument to this method.
<code>PluginContext</code> provides access to the Ignite APIs and node configuration.
See the <a href="https://ignite.apache.org/releases/2.9.1/javadoc/org/apache/ignite/plugin/PluginContext.html" target="_blank" rel="noopener">PluginContext</a> javadoc for more information.
Here we simply pass the <code>PluginContext</code> and the time interval to the <code>MyPlugin</code> constructor.</p>
</div>
<div class="listingblock">
<div class="title">MyPluginProvider.java:</div>
<div class="content">
<pre class="rouge highlight"><code data-lang="java"><span class="cm">/*
 * Licensed to the Apache Software Foundation (ASF) under one or more
 * contributor license agreements.  See the NOTICE file distributed with
 * this work for additional information regarding copyright ownership.
 * The ASF licenses this file to You under the Apache License, Version 2.0
 * (the "License"); you may not use this file except in compliance with
 * the License.  You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */</span>
<span class="kn">package</span> <span class="nn">org.apache.ignite.snippets.plugin</span><span class="o">;</span>

<span class="kn">import</span> <span class="nn">java.io.Serializable</span><span class="o">;</span>
<span class="kn">import</span> <span class="nn">java.util.UUID</span><span class="o">;</span>

<span class="kn">import</span> <span class="nn">org.apache.ignite.IgniteCheckedException</span><span class="o">;</span>
<span class="kn">import</span> <span class="nn">org.apache.ignite.cluster.ClusterNode</span><span class="o">;</span>
<span class="kn">import</span> <span class="nn">org.apache.ignite.plugin.CachePluginContext</span><span class="o">;</span>
<span class="kn">import</span> <span class="nn">org.apache.ignite.plugin.CachePluginProvider</span><span class="o">;</span>
<span class="kn">import</span> <span class="nn">org.apache.ignite.plugin.ExtensionRegistry</span><span class="o">;</span>
<span class="kn">import</span> <span class="nn">org.apache.ignite.plugin.PluginConfiguration</span><span class="o">;</span>
<span class="kn">import</span> <span class="nn">org.apache.ignite.plugin.PluginContext</span><span class="o">;</span>
<span class="kn">import</span> <span class="nn">org.apache.ignite.plugin.PluginProvider</span><span class="o">;</span>
<span class="kn">import</span> <span class="nn">org.apache.ignite.plugin.PluginValidationException</span><span class="o">;</span>
<span class="kn">import</span> <span class="nn">org.jetbrains.annotations.Nullable</span><span class="o">;</span>

<span class="kd">public</span> <span class="kd">class</span> <span class="nc">MyPluginProvider</span> <span class="kd">implements</span> <span class="nc">PluginProvider</span><span class="o">&lt;</span><span class="nc">PluginConfiguration</span><span class="o">&gt;</span> <span class="o">{</span>

    <span class="cm">/**
     * The time interval in seconds for printing cache size information.
     */</span>
    <span class="kd">private</span> <span class="kt">long</span> <span class="n">interval</span> <span class="o">=</span> <span class="mi">10</span><span class="o">;</span>

    <span class="kd">private</span> <span class="nc">MyPlugin</span> <span class="n">plugin</span><span class="o">;</span>

    <span class="kd">public</span> <span class="nf">MyPluginProvider</span><span class="o">()</span> <span class="o">{</span>
    <span class="o">}</span>

    <span class="cm">/**
     *
     * @param interval Time interval in seconds
     */</span>
    <span class="kd">public</span> <span class="nf">MyPluginProvider</span><span class="o">(</span><span class="kt">long</span> <span class="n">interval</span><span class="o">)</span> <span class="o">{</span>
        <span class="k">this</span><span class="o">.</span><span class="na">interval</span> <span class="o">=</span> <span class="n">interval</span><span class="o">;</span>
    <span class="o">}</span>

    <span class="nd">@Override</span>
    <span class="kd">public</span> <span class="nc">String</span> <span class="nf">name</span><span class="o">()</span> <span class="o">{</span>
        <span class="c1">//the name of the plugin</span>
        <span class="k">return</span> <span class="s">"MyPlugin"</span><span class="o">;</span>
    <span class="o">}</span>

    <span class="nd">@Override</span>
    <span class="kd">public</span> <span class="nc">String</span> <span class="nf">version</span><span class="o">()</span> <span class="o">{</span>
        <span class="k">return</span> <span class="s">"1.0"</span><span class="o">;</span>
    <span class="o">}</span>

    <span class="nd">@Override</span>
    <span class="kd">public</span> <span class="nc">String</span> <span class="nf">copyright</span><span class="o">()</span> <span class="o">{</span>
        <span class="k">return</span> <span class="s">"MyCompany"</span><span class="o">;</span>
    <span class="o">}</span>

    <span class="nd">@Override</span>
    <span class="kd">public</span> <span class="nc">MyPlugin</span> <span class="nf">plugin</span><span class="o">()</span> <span class="o">{</span>
        <span class="k">return</span> <span class="n">plugin</span><span class="o">;</span>
    <span class="o">}</span>

    <span class="nd">@Override</span>
    <span class="kd">public</span> <span class="kt">void</span> <span class="nf">initExtensions</span><span class="o">(</span><span class="nc">PluginContext</span> <span class="n">ctx</span><span class="o">,</span> <span class="nc">ExtensionRegistry</span> <span class="n">registry</span><span class="o">)</span>
            <span class="kd">throws</span> <span class="nc">IgniteCheckedException</span> <span class="o">{</span>
        <span class="n">plugin</span> <span class="o">=</span> <span class="k">new</span> <span class="nc">MyPlugin</span><span class="o">(</span><span class="n">interval</span><span class="o">,</span> <span class="n">ctx</span><span class="o">);</span>
    <span class="o">}</span>

    <span class="nd">@Override</span>
    <span class="kd">public</span> <span class="kt">void</span> <span class="nf">onIgniteStart</span><span class="o">()</span> <span class="kd">throws</span> <span class="nc">IgniteCheckedException</span> <span class="o">{</span>
        <span class="c1">//start the plugin when Ignite is started</span>
        <span class="n">plugin</span><span class="o">.</span><span class="na">start</span><span class="o">();</span>
    <span class="o">}</span>

    <span class="nd">@Override</span>
    <span class="kd">public</span> <span class="kt">void</span> <span class="nf">onIgniteStop</span><span class="o">(</span><span class="kt">boolean</span> <span class="n">cancel</span><span class="o">)</span> <span class="o">{</span>
        <span class="c1">//stop the plugin</span>
        <span class="n">plugin</span><span class="o">.</span><span class="na">stop</span><span class="o">();</span>
    <span class="o">}</span>

    <span class="cm">/**
     * The time interval (in seconds) for printing cache size information
     * @return
     */</span>
    <span class="kd">public</span> <span class="kt">long</span> <span class="nf">getInterval</span><span class="o">()</span> <span class="o">{</span>
        <span class="k">return</span> <span class="n">interval</span><span class="o">;</span>
    <span class="o">}</span>

    <span class="cm">/**
     * Sets the time interval (in seconds) for printing cache size information
     * @param interval
     */</span>
    <span class="kd">public</span> <span class="kt">void</span> <span class="nf">setInterval</span><span class="o">(</span><span class="kt">long</span> <span class="n">interval</span><span class="o">)</span> <span class="o">{</span>
        <span class="k">this</span><span class="o">.</span><span class="na">interval</span> <span class="o">=</span> <span class="n">interval</span><span class="o">;</span>
    <span class="o">}</span>

    <span class="c1">// other no-op methods of PluginProvider</span>
<span class="o">}</span></code></pre>
</div>
</div>
<div class="paragraph">
<p>The <code>onIgniteStart()</code> method is invoked when Ignite is started.
We start the plugin by calling <code>MyPlugin.start()</code>, which simply schedules periodic execution of the task that prints cache size information.</p>
</div>
</div>
<div class="sect2">
<h3 id="2-implement-igniteplugin">2. Implement IgnitePlugin</h3>
<div class="paragraph">
<p>The implementation of the <code>IgnitePlugin</code> returned by the plugin provider is available to the users via <code>Ignite.plugin(String pluginName)</code>.
If you want to provide public API to end users, the API should be exposed in the class that implements <code>IgnitePlugin</code>.</p>
</div>
<div class="paragraph">
<p>Strictly speaking, this step is not necessary if your plugin does not provide a public API.
Your plugin functionality may be implemented and initialized in the <code>PluginProvider</code> implementation, and the <code>PluginProvider.plugin()</code> method may return an empty implementation of the <code>IgnitePlugin</code> interface.</p>
</div>
<div class="paragraph">
<p>In our case, we encapsulate the plugin functionality in the <code>MyPlugin</code> class and provide one public method (<code>MyPlugin.printCacheInfo()</code>).
The <code>MyPlugin.java</code> implements the <code>Runnable</code> interface.
The <code>start()</code> and <code>stop()</code> methods schedule periodic printing of cache size information.</p>
</div>
<div class="listingblock">
<div class="title">MyPlugin.java:</div>
<div class="content">
<pre class="rouge highlight"><code data-lang="java"><span class="cm">/*
 * Licensed to the Apache Software Foundation (ASF) under one or more
 * contributor license agreements.  See the NOTICE file distributed with
 * this work for additional information regarding copyright ownership.
 * The ASF licenses this file to You under the Apache License, Version 2.0
 * (the "License"); you may not use this file except in compliance with
 * the License.  You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */</span>
<span class="kn">package</span> <span class="nn">org.apache.ignite.snippets.plugin</span><span class="o">;</span>

<span class="kn">import</span> <span class="nn">java.util.concurrent.Executors</span><span class="o">;</span>
<span class="kn">import</span> <span class="nn">java.util.concurrent.ScheduledExecutorService</span><span class="o">;</span>
<span class="kn">import</span> <span class="nn">java.util.concurrent.TimeUnit</span><span class="o">;</span>

<span class="kn">import</span> <span class="nn">org.apache.ignite.IgniteCache</span><span class="o">;</span>
<span class="kn">import</span> <span class="nn">org.apache.ignite.plugin.IgnitePlugin</span><span class="o">;</span>
<span class="kn">import</span> <span class="nn">org.apache.ignite.plugin.PluginContext</span><span class="o">;</span>

<span class="cm">/**
 *
 * The plugin prints cache size information to console
 *
 */</span>
<span class="kd">public</span> <span class="kd">class</span> <span class="nc">MyPlugin</span> <span class="kd">implements</span> <span class="nc">IgnitePlugin</span><span class="o">,</span> <span class="nc">Runnable</span> <span class="o">{</span>

    <span class="kd">private</span> <span class="kd">final</span> <span class="nc">ScheduledExecutorService</span> <span class="n">scheduler</span> <span class="o">=</span> <span class="nc">Executors</span><span class="o">.</span><span class="na">newScheduledThreadPool</span><span class="o">(</span><span class="mi">1</span><span class="o">);</span>

    <span class="kd">private</span> <span class="nc">PluginContext</span> <span class="n">context</span><span class="o">;</span>

    <span class="kd">private</span> <span class="kt">long</span> <span class="n">interval</span><span class="o">;</span>

    <span class="cm">/**
     *
     * @param context
     */</span>
    <span class="kd">public</span> <span class="nf">MyPlugin</span><span class="o">(</span><span class="kt">long</span> <span class="n">interval</span><span class="o">,</span> <span class="nc">PluginContext</span> <span class="n">context</span><span class="o">)</span> <span class="o">{</span>
        <span class="k">this</span><span class="o">.</span><span class="na">interval</span> <span class="o">=</span> <span class="n">interval</span><span class="o">;</span>
        <span class="k">this</span><span class="o">.</span><span class="na">context</span> <span class="o">=</span> <span class="n">context</span><span class="o">;</span>
    <span class="o">}</span>

    <span class="kd">private</span> <span class="kt">void</span> <span class="nf">print0</span><span class="o">()</span> <span class="o">{</span>
        <span class="nc">StringBuilder</span> <span class="n">sb</span> <span class="o">=</span> <span class="k">new</span> <span class="nc">StringBuilder</span><span class="o">(</span><span class="s">"\nCache Information: \n"</span><span class="o">);</span>

        <span class="c1">//get the names of all caches</span>
        <span class="n">context</span><span class="o">.</span><span class="na">grid</span><span class="o">().</span><span class="na">cacheNames</span><span class="o">().</span><span class="na">forEach</span><span class="o">(</span><span class="n">cacheName</span> <span class="o">-&gt;</span> <span class="o">{</span>
            <span class="c1">//get the specific cache</span>
            <span class="nc">IgniteCache</span> <span class="n">cache</span> <span class="o">=</span> <span class="n">context</span><span class="o">.</span><span class="na">grid</span><span class="o">().</span><span class="na">cache</span><span class="o">(</span><span class="n">cacheName</span><span class="o">);</span>
            <span class="k">if</span> <span class="o">(</span><span class="n">cache</span> <span class="o">!=</span> <span class="kc">null</span><span class="o">)</span> <span class="o">{</span>
                <span class="n">sb</span><span class="o">.</span><span class="na">append</span><span class="o">(</span><span class="s">"  cacheName="</span><span class="o">).</span><span class="na">append</span><span class="o">(</span><span class="n">cacheName</span><span class="o">).</span><span class="na">append</span><span class="o">(</span><span class="s">", size="</span><span class="o">).</span><span class="na">append</span><span class="o">(</span><span class="n">cache</span><span class="o">.</span><span class="na">size</span><span class="o">())</span>
                        <span class="o">.</span><span class="na">append</span><span class="o">(</span><span class="s">"\n"</span><span class="o">);</span>
            <span class="o">}</span>
        <span class="o">});</span>

        <span class="nc">System</span><span class="o">.</span><span class="na">out</span><span class="o">.</span><span class="na">print</span><span class="o">(</span><span class="n">sb</span><span class="o">.</span><span class="na">toString</span><span class="o">());</span>
    <span class="o">}</span>

    <span class="cm">/**
     * Prints the information about caches to console.
     */</span>
    <span class="kd">public</span> <span class="kt">void</span> <span class="nf">printCacheInfo</span><span class="o">()</span> <span class="o">{</span>
        <span class="n">print0</span><span class="o">();</span>
    <span class="o">}</span>

    <span class="nd">@Override</span>
    <span class="kd">public</span> <span class="kt">void</span> <span class="nf">run</span><span class="o">()</span> <span class="o">{</span>
        <span class="n">print0</span><span class="o">();</span>
    <span class="o">}</span>

    <span class="kt">void</span> <span class="nf">start</span><span class="o">()</span> <span class="o">{</span>
        <span class="n">scheduler</span><span class="o">.</span><span class="na">scheduleAtFixedRate</span><span class="o">(</span><span class="k">this</span><span class="o">,</span> <span class="n">interval</span><span class="o">,</span> <span class="n">interval</span><span class="o">,</span> <span class="nc">TimeUnit</span><span class="o">.</span><span class="na">SECONDS</span><span class="o">);</span>
    <span class="o">}</span>

    <span class="kt">void</span> <span class="nf">stop</span><span class="o">()</span> <span class="o">{</span>
        <span class="n">scheduler</span><span class="o">.</span><span class="na">shutdownNow</span><span class="o">();</span>
    <span class="o">}</span>
<span class="o">}</span></code></pre>
</div>
</div>
</div>
<div class="sect2">
<h3 id="3-register-your-plugin">3. Register your Plugin</h3>
<div class="paragraph">
<p>Programmatically:</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="rouge highlight"><code data-lang="java"><span class="nc">IgniteConfiguration</span> <span class="n">cfg</span> <span class="o">=</span> <span class="k">new</span> <span class="nc">IgniteConfiguration</span><span class="o">();</span>

<span class="c1">//register a plugin that prints the cache size information every 100 seconds</span>
<span class="n">cfg</span><span class="o">.</span><span class="na">setPluginProviders</span><span class="o">(</span><span class="k">new</span> <span class="nc">MyPluginProvider</span><span class="o">(</span><span class="mi">100</span><span class="o">));</span>

<span class="c1">//start the node</span>
<span class="nc">Ignite</span> <span class="n">ignite</span> <span class="o">=</span> <span class="nc">Ignition</span><span class="o">.</span><span class="na">start</span><span class="o">(</span><span class="n">cfg</span><span class="o">);</span></code></pre>
</div>
</div>
<div class="paragraph">
<p>Via XML Configuration:</p>
</div>
<div class="paragraph">
<p>Compile your plugin source code and add the classes to the classpath on each node.
Then, you can register the plugin as follows:</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="rouge highlight"><code data-lang="xml"><span class="nt">&lt;bean</span> <span class="na">class=</span><span class="s">"org.apache.ignite.configuration.IgniteConfiguration"</span><span class="nt">&gt;</span>

    <span class="nt">&lt;property</span> <span class="na">name=</span><span class="s">"pluginProviders"</span><span class="nt">&gt;</span>
        <span class="nt">&lt;bean</span> <span class="na">class=</span><span class="s">"org.apache.ignite.snippets.plugin.MyPluginProvider"</span><span class="nt">&gt;</span>
           <span class="nt">&lt;property</span> <span class="na">name=</span><span class="s">"interval"</span> <span class="na">value=</span><span class="s">"100"</span><span class="nt">/&gt;</span>
        <span class="nt">&lt;/bean&gt;</span>
    <span class="nt">&lt;/property&gt;</span>

<span class="nt">&lt;/bean&gt;</span></code></pre>
</div>
</div>
<div class="paragraph">
<p>When you start the node, you should see the following message in the console:</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="rouge highlight"><code data-lang="text">[11:00:49] Initial heap size is 248MB (should be no less than 512MB, use -Xms512m -Xmx512m).
[11:00:49] Configured plugins:
[11:00:49]   ^-- MyPlugin 1.0
[11:00:49]   ^-- MyCompany
[11:00:49]</code></pre>
</div>
</div>
</div>
<div class="sect2">
<h3 id="4-access-the-plugin-at-runtime">4. Access the Plugin at Runtime</h3>
<div class="paragraph">
<p>You can access the instance of the plugin by calling <code>Ignite.plugin(pluginName)</code>.
The <code>pluginName</code> argument must be equal to the plugin name returned in <code>MyPluginProvider.name()</code>.</p>
</div>
<div class="listingblock">
<div class="content">
<pre class="rouge highlight"><code data-lang="java"><span class="c1">//get an instance of the plugin</span>
<span class="nc">MyPlugin</span> <span class="n">p</span> <span class="o">=</span> <span class="n">ignite</span><span class="o">.</span><span class="na">plugin</span><span class="o">(</span><span class="s">"MyPlugin"</span><span class="o">);</span>

<span class="c1">//print the cache size information</span>
<span class="n">p</span><span class="o">.</span><span class="na">printCacheInfo</span><span class="o">();</span></code></pre>
</div>
</div>
</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="#overview">Overview</a></li>
<li><a href="#example-plugin">Example Plugin</a>
<ul class="sectlevel2">
<li><a href="#1-implement-pluginprovider">1. Implement PluginProvider</a></li>
<li><a href="#2-implement-igniteplugin">2. Implement IgnitePlugin</a></li>
<li><a href="#3-register-your-plugin">3. Register your Plugin</a></li>
<li><a href="#4-access-the-plugin-at-runtime">4. Access the Plugin at Runtime</a></li>
</ul>
</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?1609302723' async crossorigin></script>
<script type='module' src='/assets/js/versioning.js?1609302723' async crossorigin></script>
</body>

</html>
