我正在使用Datastax Cassandra JDBC驱动程序将Logstash与cassandra连接。驱动程序正在尝试将类型为latitude
的列float
转换为double
。抛出以下异常:
Exception when executing JDBC query {:exception=>#<Sequel::DatabaseError: Java::ComDatastaxDriverCoreExceptions::CodecNotFoundException: Codec not found for requested operation: [float <-> java.lang.Double]>}
如果cassandra中的列类型为double
,则效果很好,但如果使用float
,它将引发此错误。
但是问题是,我无法更改列的类型,因为表中有很多数据,并且移动到新表对于该应用程序是不可行的。
有没有一种方法可以修改JDBC驱动程序中的某些内容以使其正常工作?
答案 0 :(得分:0)
您可以尝试使用我们的驱动程序:https://www.progress.com/jdbc/apache-cassandra。如您在我们的文档中看到的,我们通过我们的Cassandra JDBC驱动程序支持float。