Join us Sept 17 at .local NYC! Use code WEB50 to save 50% on tickets. Learn more >
MongoDB Event
Menu Docs
Página inicial do Docs
/ / /
Driver Scala
/ /

Compressão

O driver Scala suporta compressão de mensagens de e para servidores MongoDB . O driver implementa os três algoritmos suportados pelos servidores MongoDB :

O driver negociará qual algoritmo de compressão, se houver, é usado com base nos recursos informados pelo servidor na resposta de comando hello .

Inclua as seguintes declarações de importação:

import org.mongodb.scala._

Para especificar compressão dentro de um ConnectionString, especifique compressores como parte da string de conexão.

O seguinte código especifica o algoritmo de compressão Snappy:

val mongoClient: MongoClient = MongoClient("mongodb://localhost/?compressors=snappy")

O seguinte código especifica o algoritmo de compressão zlib :

val mongoClient: MongoClient = MongoClient("mongodb://localhost/?compressors=zlib")

O seguinte código especifica o algoritmo de compressão padrão Z:

val mongoClient: MongoClient = MongoClient("mongodb://localhost/?compressors=zstd")

O seguinte código especifica vários algoritmos de compressão:

val mongoClient: MongoClient = MongoClient("mongodb://localhost/?compressors=snappy,zlib,zstd")

Em todos os casos, o driver usa o primeiro compressor da lista para o qual o servidor oferece suporte.

Inclua as seguintes declarações de importação:

import org.mongodb.scala._
import scala.collection.JavaConverters._

Para especificar a compressão em uma instância MongoClientSettings , defina a propriedade compressors como uma lista de instâncias MongoCompressor .

O seguinte código especifica o algoritmo de compressão Snappy:

val settings = MongoClientSettings.builder()
.compressorList(List(MongoCompressor.createSnappyCompressor).asJava)
.build()
val client = MongoClient(settings)

O seguinte código especifica o algoritmo de compressão zlib :

val settings = MongoClientSettings.builder()
.compressorList(List(MongoCompressor.createZlibCompressor).asJava)
.build()
val client = MongoClient(settings)

O seguinte código especifica o algoritmo de compressão padrão Z:

val settings = MongoClientSettings.builder()
.compressorList(List(MongoCompressor.createZstdCompressor).asJava)
.build()
val client = MongoClient(settings)

O seguinte código especifica vários algoritmos de compressão:

val settings = MongoClientSettings.builder()
.compressorList(List(MongoCompressor.createSnappyCompressor,
MongoCompressor.createZlibCompressor,
MongoCompressor.createZstdCompressor).asJava)
.build()
val client = MongoClient(settings)

Assim como na configuração que usa a string de conexão, o driver usa o primeiro compressor da lista para o qual o servidor oferece suporte.

As the JDK has no built-in support for Snappy or Zstandard, the driver takes a dependency on existing open-source Snappy and Zstandard implementations. See the snappy-java GitHub repository and the zstd-java GitHub repository for details.

Voltar

Autenticação

Nesta página