Contenu connexe
Similaire à Workshop desarrollo Cassandra con el driver Java (20)
Workshop desarrollo Cassandra con el driver Java
- 5. Conexión
Cluster
Cluster cluster = Cluster.builder()
.addContactPoint(“10.202.203.105")
.addContactPoint(“10.202.203.106")
.build();
Auto – discover
New Cassandra host /10.202.203.108
New Cassandra host /10.202.203.109
New Cassandra host /10.202.203.111
…
- 8. Statements
Conectar a un keyspace
Session session = cluster.connect("webinar");
DDL
session.execute("create table usuarios
( id uuid , nombre text, primary key (id)) ");
- 9. Statements
Conectar a un keyspace
Session session = cluster.connect("webinar");
DDL
session.execute("create table usuarios
( id uuid , nombre text, primary key (id)) ");
DML
session.execute("insert into usuarios (id, nombre)
values (18c8dfee-…, 'Juan')");
- 12. Query
ResultSet resultSet = session.execute("select * from usuarios");
for (Row row : resultSet){
LOGGER.info(row.getUUID("id")+" - "+
row.getString("nombre"));
}
- 18. Async queries
ResultSetFuture resultSet1 = session.executeAsync("select …
ResultSetFuture resultSet2 = session.executeAsync("select …
ResultSetFuture resultSet3 = session.executeAsync("select …
for (Row row : resultSet1.getUninterruptibly()){
...
}
- 19. Async queries
ResultSetFuture resultSet1 = session.executeAsync("select …
ResultSetFuture resultSet2 = session.executeAsync("select …
ResultSetFuture resultSet3 = session.executeAsync("select …
for (Row row : resultSet1.getUninterruptibly()){
...
}
for (Row row : resultSet2
.getUninterruptibly(1000, TimeUnit.MILLISECONDS)){
...
}
- 23. Query builder
Statement stmt1 = QueryBuilder
.select()
.from("usuarios")
.where(eq("id", UUID.fromString("0bd4f5c9…")));
session.execute(stmt1);
- 26. Query builder
Statement stmt = QueryBuilder.insertInto(“usuarios")
.value("id", UUID.randomUUID())
.value(“nombre", “Felipe")
.setConsistencyLevel(ConsistencyLevel.ANY)
- 27. Query builder
Statement stmt = QueryBuilder.insertInto(“usuarios")
.value("id", UUID.randomUUID())
.value(“nombre", “Felipe")
.setConsistencyLevel(ConsistencyLevel.ANY);
session.execute(stmt);
- 30. Load balancing policy
RoundRobinPolicy
DCAwareRoundRobinPolicy
TokenAware
Ejemplo: DCAwareRoundRobinPolicy
Cluster cluster = Cluster.builder()
…
.withLoadBalancingPolicy(
new DCAwareRoundRobinPolicy("localDC"))