Interface IndexingSpi

  • All Superinterfaces:
    IgniteSpi
    All Known Implementing Classes:
    NoopIndexingSpi

    public interface IndexingSpi
    extends IgniteSpi
    Indexing SPI allows user to index cache content. Using indexing SPI user can index data in cache and run queries.

    NOTE: this SPI (i.e. methods in this interface) should never be used directly. SPIs provide internal view on the subsystem and is used internally by Ignite kernal. In rare use cases when access to a specific implementation of this SPI is required - an instance of this SPI can be obtained via Ignite.configuration() method to check its configuration properties or call other non-SPI methods. Note again that calling methods from this interface on the obtained instance can lead to undefined behavior and explicitly not supported. NOTE: Key and value arguments of IgniteSpi methods can be BinaryObject instances. BinaryObjects can be deserialized manually if original objects needed. Here is a Java example on how to configure SPI.

     IndexingSpi spi = new MyIndexingSpi();
    
     IgniteConfiguration cfg = new IgniteConfiguration();
    
     // Overrides default indexing SPI.
     cfg.setIndexingSpi(spi);
    
     // Starts grid.
     Ignition.start(cfg);
     
    Here is an example of how to configure SPI from Spring XML configuration file.
     <property name="indexingSpi">
         <bean class="com.example.MyIndexingSpi">
         </bean>
     </property>
     


    For information about Spring framework visit www.springframework.org

    • Method Detail

      • store

        void store​(@Nullable
                   @Nullable String cacheName,
                   Object key,
                   Object val,
                   long expirationTime)
            throws IgniteSpiException
        Updates index. Note that key is unique for cache, so if cache contains multiple indexes the key should be removed from indexes other than one being updated.
        Parameters:
        cacheName - Cache name.
        key - Key.
        val - Value.
        expirationTime - Expiration time or 0 if never expires.
        Throws:
        IgniteSpiException - If failed.