Cassandra através de javahibernate

Comecei a aprender Cassandra usando java, depois de completar hibernar. Estou realmente surpreso com a forma como os dados são inseridos/retirados de cassandra através de java, enquanto java está se movendo para trás nos dias de hoje. Porque, hibernate dá uma maneira muito fácil de se comunicar com o banco de dados, um desenvolvedor java não tem necessidade de saber a sintaxe da consulta de banco de dados,etc. É principalmente operações baseadas em métodos que são usados para se comunicar com o banco de dados. Mas se eu quiser comunicar com cassandra através de java, tudo está em um formato SQL quero dizer que eles o chamaram de CQL, mas eu estou realmente surpreso com a forma como as coisas estão acontecendo quando eu comparo com o hibernado.

A minha pergunta é: Existe alguma forma de comunicar / fazer operações CRUD em cassandra através de java no estilo de mapeamento O-R ou o hibernar suporta a conectividade da cassandra?

Author: Nayantara Jeyaraj, 2016-07-21

3 answers

A Cassandra não é uma base de dados relacional, usar um mapeador relacional não vai ser tão directo. Não há junções e não suporta SQL.

O controlador de objectos java é provavelmente mais próximo daquilo que procura. Para mapeamentos básicos nas mesas da Cassandra. Veja a documentação aqui: https://docs.datastax.com/en/developer/java-driver/3.0/supplemental/manual/object_mapper

Ie

@Table(name = "posts")
public static class Post {

    private String title;
    private String content;
    private InetAddress device;

    @ClusteringColumn
    @Column(name = "post_id")
    private UUID postId;

    @PartitionKey
    @Column(name = "user_id")
    private UUID userId;


    private Set<String> tags;
    ...
}
 3
Author: Chris Lohfink, 2016-07-21 06:56:21

Podes fazer uma operação estúpida com a Cassandra usando Solr ou faísca. Exemplo
Não compare a Cassandra com nenhum RDBMS. Não há nenhum conceito de relacional em Cassandra. Por isso, tem cuidado. Se você quiser obter dados de Cassandra sem muito conhecimento de Cassandra (semelhante ao hibernado), você pode tentar Spark:

JavaRDD<Student> studentObj = CassandraJavaUtil.javaFunctions(sc).cassandraTable("schema", "student_table",CassandraJavaUtil.mapRowTo(Student.class)).where("id=1");
Lembrem-se, a faísca é principalmente para fins analíticos. Também encontrei novas ferramentas de OGM. tente:
  1. Http://hibernate.org/ogm/

  2. Https://github.com/impetus-opensource/Kundera

 1
Author: Dip, 2016-07-21 19:39:00
Sim, o Hibernate está a apoiar a cassandra, mas ainda está em fase experimental!!

Leia atentamente as notas abaixo antes de As utilizar.

Esta implementação usa o CQL3 sobre o protocolo native wire com java-driver. A versão atualmente suportada é Cassandra 2.1.

Para adicionar as dependências via Maven, adicione o seguinte Módulo:

<dependency>
<groupId>org.hibernate.ogm</groupId>
<artifactId>hibernate-ogm-cassandra</artifactId>
<version>5.0.4.Final</version>

Para começar, terá de configurar o seguinte propriedades:

Hibernar.ogm.armazenamento.fornecedor Hibernar.ogm.armazenamento.host Hibernar.ogm.armazenamento.base de dados

Origem

 0
Author: Mateen, 2018-05-17 00:25:40