Enum StreamingMode

  • All Implemented Interfaces:
    java.io.Serializable, java.lang.Comparable<StreamingMode>

    public enum StreamingMode
    extends java.lang.Enum<StreamingMode>
    Options that control the way the Java binding performs range reads. These options can be passed to Transaction.getRange(...).
    • Enum Constant Summary

      Enum Constants 
      Enum Constant Description
      EXACT
      Infrequently used.
      ITERATOR
      The default.
      LARGE
      Infrequently used.
      MEDIUM
      Infrequently used.
      SERIAL
      Transfer data in batches large enough that an individual client can get reasonable read bandwidth from the database.
      SMALL
      Infrequently used.
      WANT_ALL
      Client intends to consume the entire range and would like it all transferred as early as possible.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      int code()
      Gets the FoundationDB native-level constant code for a StreamingMode.
      static StreamingMode valueOf​(java.lang.String name)
      Returns the enum constant of this type with the specified name.
      static StreamingMode[] values()
      Returns an array containing the constants of this enum type, in the order they are declared.
      • Methods inherited from class java.lang.Enum

        compareTo, equals, getDeclaringClass, hashCode, name, ordinal, toString, valueOf
      • Methods inherited from class java.lang.Object

        getClass, notify, notifyAll, wait, wait, wait
    • Enum Constant Detail

      • WANT_ALL

        public static final StreamingMode WANT_ALL
        Client intends to consume the entire range and would like it all transferred as early as possible.
      • ITERATOR

        public static final StreamingMode ITERATOR
        The default. The client doesn't know how much of the range it is likely to used and wants different performance concerns to be balanced. Only a small portion of data is transferred to the client initially (in order to minimize costs if the client doesn't read the entire range), and as the caller iterates over more items in the range larger batches will be transferred in order to minimize latency. After enough iterations, the iterator mode will eventually reach the same byte limit as WANT_ALL.
      • EXACT

        public static final StreamingMode EXACT
        Infrequently used. The client has passed a specific row limit and wants that many rows delivered in a single batch. Because of iterator operation in client drivers make request batches transparent to the user, consider WANT_ALL StreamingMode instead. A row limit must be specified if this mode is used.
      • SMALL

        public static final StreamingMode SMALL
        Infrequently used. Transfer data in batches small enough to not be much more expensive than reading individual rows, to minimize cost if iteration stops early.
      • MEDIUM

        public static final StreamingMode MEDIUM
        Infrequently used. Transfer data in batches sized in between small and large.
      • LARGE

        public static final StreamingMode LARGE
        Infrequently used. Transfer data in batches large enough to be, in a high-concurrency environment, nearly as efficient as possible. If the client stops iteration early, some disk and network bandwidth may be wasted. The batch size may still be too small to allow a single client to get high throughput from the database, so if that is what you need consider the SERIAL StreamingMode.
      • SERIAL

        public static final StreamingMode SERIAL
        Transfer data in batches large enough that an individual client can get reasonable read bandwidth from the database. If the client stops iteration early, considerable disk and network bandwidth may be wasted.
    • Method Detail

      • values

        public static StreamingMode[] values()
        Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:
        for (StreamingMode c : StreamingMode.values())
            System.out.println(c);
        
        Returns:
        an array containing the constants of this enum type, in the order they are declared
      • valueOf

        public static StreamingMode valueOf​(java.lang.String name)
        Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
        Parameters:
        name - the name of the enum constant to be returned.
        Returns:
        the enum constant with the specified name
        Throws:
        java.lang.IllegalArgumentException - if this enum type has no constant with the specified name
        java.lang.NullPointerException - if the argument is null
      • code

        public int code()
        Gets the FoundationDB native-level constant code for a StreamingMode.
        Returns:
        the native code for a FoundationDB StreamingMode constant.