GithubHelp home page GithubHelp logo

binders-cassandra's People

Contributors

kulikov avatar maqdev avatar vkuptcov avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Forkers

kulikov

binders-cassandra's Issues

Documentation

Need more clean description of:

  • case converters
  • statements cache
  • batch statements
  • IfApplied results

Syntax sugar for batch statements

Something like

object Batch {
    def apply(cqls: Statements*) = {
        val bs = new BatchStatement()
        cqls.foreach(bs.add)
        bs
    }
}

That could be used like

Batch(cql"abcde....", cql"....")

Also think about BatchStatement type (LOGGED, UNLOGGED, etc)

Возможность получения нижележащих структур datastax драйвера

В классе eu.inn.binders.cassandra.Row параметр row, который является экземпляром datastax row, сделан приватным. В некоторых случаях бывает удобно получить базовые структуры для обработки.
Тоже самое касается и класса eu.inn.binders.cassandra.Rows

Serializable Cassandra session

When using the binder-cassandra all work fine but if i try to use it e.g. as a map function in spark which needs to be serializable i get
Exception in thread "main" org.apache.spark.SparkException: Task not serializable
....
....
Caused by: java.io.NotSerializableException: com.datastax.driver.core.SessionManager

Any suggestions or is there any serializable session to be used?

Thanks

DD

Возможность динамического формирования запросов

Необходимо дать возможность динамически формировать запросы, как минимум - дать возможность подставлять конкретные значения, определяемые в рантайме в cql перед тем, как будет осуществляться процедура разбора строки на плейсхолдеры.
Это нужно из-за того, что специфика работы с C* подразумевает максимальную денормализацию данных с затачиванием под каждый конкретный запрос.
Соотв., возникает ситуация, когда у нас есть таблицы, в которых одинаковый набор полей, но разные PK, хотелось бы не писать полностью почти идентичные запросы несколько раз.

Conditional update/insert support

Possibility to recognize and to handle this two situations

cqlsh:cqltest> INSERT INTO test (id, key) VALUES (1, 'adsd') IF NOT EXISTS;

[applied]

  True

cqlsh:cqltest> INSERT INTO test (id, key) VALUES (1, 'adsd') IF NOT EXISTS;

[applied] | id | key
-----------+-------------+------
False | 1 | adsd

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.