Mais ou menos exatamente dois meses após a segunda prévia para desenvolvedores, tenho o prazer de anunciar que lançamos a primeira (e, espero, única) versão beta do Couchbase Spark Connector. É um grande passo à frente, trazendo Spark 1.4 bem como a documentação oficial e vários aprimoramentos menores. Em particular:
- Suporte para Spark 1.4
- Suporte revisado ao Spark SQL DataFrame
- APIs Java
- saveToCouchbase() suporta StoreModes
Você pode obtê-lo imediatamente no repositório Maven do Couchbase:
A documentação já está oficialmente disponível aqui!
Suporte ao Spark 1.4
O Spark 1.4 foi selecionado como a versão de destino do Spark para a versão 1.0 GA. Como resultado, todas as dependências do Spark foram alteradas. Como a versão 1.4 traz uma nova API para DataFrames, o Connector também modificou sua API para se integrar perfeitamente a ela.
A API do DataFrame foi alterada para que a fonte subjacente funcione por meio do DataFrameReader e do DataFrameWriter. Fora isso, ela é muito semelhante à API anterior.
Aqui está um exemplo de como ler os dados do bucket de amostras de viagem:
Você também pode gravar um DataFrame no couchbase:
APIs Java
Muitas pessoas usam o Spark por meio de sua API Java, portanto, é claro que também queremos oferecer suporte a ele. Como a exposição da API do conector é, por definição, muito pequena, não é necessário converter muita API. A API Java reside no namespace com.couchbase.spark.java e pode ser usada desta forma:
StoreModes
Anteriormente, o método saveToCouchbase() usava apenas o método upsert subjacente para armazenar seus dados. Como pode haver cenários em que você não queira (ou apenas) substituir documentos, é necessária mais flexibilidade. É por isso que introduzimos o enum StoreMethod, que suporta os seguintes valores:
- UPSERT: Insira se não existir e substitua se existir.
- INSERT_AND_FAIL: Tenta inserir e falha se existir.
- INSERT_AND_IGNORE: Tenta inserir e ignora as falhas se elas existirem.
- REPLACE_AND_FAIL: Tenta substituir e falha se não existir.
- REPLACE_AND_IGNORE: Tenta substituir e ignorar as falhas se elas não existirem.
Usá-lo é muito fácil, mas o procedimento a seguir falha corretamente, pois o documento já existe:
O caminho para a GA
A versão 1.0.0 GA do conector está planejada para daqui a um mês, deixando espaço para corrigir bugs e melhorar a documentação. Ajude-nos a testar o máximo possível para que possamos enviar uma versão GA incrível!