Packages

package cql

Contains a cql.CassandraConnector object which is used to connect to a Cassandra cluster and to send CQL statements to it. CassandraConnector provides a Scala-idiomatic way of working with Session object and takes care of connection pooling and proper resource disposal.

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. cql
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. trait AuthConf extends Serializable

    Stores credentials used to authenticate to a Cassandra cluster and uses them to configure a Cassandra connection.

    Stores credentials used to authenticate to a Cassandra cluster and uses them to configure a Cassandra connection. This driver provides implementations NoAuthConf for no authentication and PasswordAuthConf for password authentication. Other authentication configurators can be plugged in by setting cassandra.authentication.conf.factory.class option. See AuthConfFactory.

  2. trait AuthConfFactory extends AnyRef

    Obtains authentication configuration by reading SparkConf object.

  3. trait CassandraConnectionFactory extends Serializable

    Creates both native and Thrift connections to Cassandra.

    Creates both native and Thrift connections to Cassandra. The connector provides a DefaultConnectionFactory. Other factories can be plugged in by setting spark.cassandra.connection.factory option.

  4. class CassandraConnector extends Serializable with Logging

    Provides and manages connections to Cassandra.

    Provides and manages connections to Cassandra.

    A CassandraConnector instance is serializable and can be safely sent over network, because it automatically reestablishes the connection to the same cluster after deserialization. Internally it saves a list of all nodes in the cluster, so a connection can be established even if the host given in the initial config is down.

    Multiple CassandraConnectors in the same JVM connected to the same Cassandra cluster will share a single underlying Cluster object. CassandraConnector will close the underlying Cluster object automatically whenever it is not used i.e. no Session or Cluster is open for longer than spark.cassandra.connection.keepAliveMS property value.

    A CassandraConnector object is configured from CassandraConnectorConf object which can be either given explicitly or automatically configured from SparkConf. The connection options are:

    • spark.cassandra.connection.host: contact points to connect to the Cassandra cluster, defaults to spark master host
    • spark.cassandra.connection.port: Cassandra native port, defaults to 9042
    • spark.cassandra.connection.factory: name of a Scala module or class implementing CassandraConnectionFactory that allows to plugin custom code for connecting to Cassandra
    • spark.cassandra.connection.keepAliveMS: how long to keep unused connection before closing it (default 250 ms)
    • spark.cassandra.connection.timeoutMS: how long to wait for connection to the Cassandra cluster (default 5 s)
    • spark.cassandra.connection.reconnectionDelayMS.min: initial delay determining how often to try to reconnect to a dead node (default 1 s)
    • spark.cassandra.connection.reconnectionDelayMS.max: final delay determining how often to try to reconnect to a dead node (default 60 s)
    • spark.cassandra.auth.username: login for password authentication
    • spark.cassandra.auth.password: password for password authentication
    • spark.cassandra.auth.conf.factory: name of a Scala module or class implementing AuthConfFactory that allows to plugin custom authentication configuration
    • spark.cassandra.query.retry.count: how many times to reattempt a failed query (default 10)
    • spark.cassandra.read.timeoutMS: maximum period of time to wait for a read to return
    • spark.cassandra.connection.ssl.enabled: enable secure connection to Cassandra cluster
    • spark.cassandra.connection.ssl.trustStore.path: path for the trust store being used
    • spark.cassandra.connection.ssl.trustStore.password: trust store password
    • spark.cassandra.connection.ssl.trustStore.type: trust store type (default JKS)
    • spark.cassandra.connection.ssl.protocol: SSL protocol (default TLS)
    • spark.cassandra.connection.ssl.enabledAlgorithms: SSL cipher suites (default TLS_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_256_CBC_SHA)
  5. case class CassandraConnectorConf(contactInfo: ContactInfo, localDC: Option[String] = ..., keepAliveMillis: Int = ..., minReconnectionDelayMillis: Int = ..., maxReconnectionDelayMillis: Int = ..., localConnectionsPerExecutor: Option[Int] = ..., remoteConnectionsPerExecutor: Option[Int] = ..., compression: String = ..., queryRetryCount: Int = ..., connectTimeoutMillis: Int = ..., readTimeoutMillis: Int = ..., connectionFactory: CassandraConnectionFactory = DefaultConnectionFactory, quietPeriodBeforeCloseMillis: Int = ..., timeoutBeforeCloseMillis: Int = ..., resolveContactPoints: Boolean = ...) extends Product with Serializable

    Stores configuration of a connection to Cassandra.

    Stores configuration of a connection to Cassandra. Provides information about cluster nodes, ports and optional credentials for authentication.

  6. case class CloudBasedContactInfo(path: String, authConf: AuthConf) extends ContactInfo with Product with Serializable
  7. sealed trait ContactInfo extends AnyRef
  8. class DefaultScanner extends Scanner
  9. case class IpBasedContactInfo(hosts: Set[InetSocketAddress], authConf: AuthConf = NoAuthConf, cassandraSSLConf: CassandraSSLConf = ...) extends ContactInfo with Product with Serializable
  10. case class PasswordAuthConf(user: String, password: String) extends AuthConf with Product with Serializable

    Performs plain-text password authentication.

    Performs plain-text password authentication. Use with PasswordAuthenticator in Cassandra.

  11. case class ProfileFileBasedContactInfo(path: String) extends ContactInfo with Product with Serializable
  12. class RefCountMap[T] extends AnyRef

    Atomically counts references to objects of any type

  13. final class RefCountedCache[K, V] extends AnyRef

    A lockless cache that caches values for multiple users and destroys them once all users release them.

    A lockless cache that caches values for multiple users and destroys them once all users release them. One value can be associated with many keys. Useful for sharing a costly resource.

  14. case class ScanResult(rows: Iterator[Row], metadata: CassandraRowMetadata) extends Product with Serializable
  15. trait Scanner extends AnyRef

    Object which will be used in Table Scanning Operations.

    Object which will be used in Table Scanning Operations. One Scanner will be created per Spark Partition, it will be created at the beginning of the compute method and Closed at the end of the compute method.

  16. class SessionProxy extends InvocationHandler with CloseHandler

    Wraps a Session and intercepts:

    Wraps a Session and intercepts:

    • close method to invoke afterClose handler
    • prepare methods to cache PreparedStatement objects.

Value Members

  1. def getRowBinarySize(row: Row): Int
  2. object AuthConf extends Serializable

    Entry point for obtaining AuthConf object from SparkConf, used when establishing connections to Cassandra.

    Entry point for obtaining AuthConf object from SparkConf, used when establishing connections to Cassandra. The actual AuthConf creation is delegated to the AuthConfFactory pointed by spark.cassandra.auth.conf.factory property.

  3. object AuthConfFactory
  4. object CassandraConnectionFactory extends Serializable

    Entry point for obtaining CassandraConnectionFactory object from SparkConf, used when establishing connections to Cassandra.

  5. object CassandraConnector extends Logging with Serializable
  6. object CassandraConnectorConf extends Logging with Serializable

    A factory for CassandraConnectorConf objects.

    A factory for CassandraConnectorConf objects. Allows for manually setting connection properties or reading them from SparkConf object. By embedding connection information in SparkConf, SparkContext can offer Cassandra specific methods which require establishing connections to a Cassandra cluster.

  7. object DefaultAuthConfFactory extends AuthConfFactory

    Default AuthConfFactory that supports no authentication or password authentication.

    Default AuthConfFactory that supports no authentication or password authentication. Password authentication is enabled when both spark.cassandra.auth.username and spark.cassandra.auth.password options are present in SparkConf.

  8. object DefaultConnectionFactory extends CassandraConnectionFactory

    Performs no authentication.

    Performs no authentication. Use with AllowAllAuthenticator in Cassandra.

  9. object NoAuthConf extends AuthConf with Product with Serializable

    Performs no authentication.

    Performs no authentication. Use with AllowAllAuthenticator in Cassandra.

  10. object QueryUtils
  11. object SessionProxy extends Logging

Inherited from AnyRef

Inherited from Any

Ungrouped