2016-07-19 29 views
0

In DataStax Treiber, die wir haben api wieWie clientseitige Zeitstempel im Frühjahr Daten Cassandra setzen?

withTimestampGenerator (neu AtomicMonotonicTimestampGenerator())

die Funktion zu Einstellung Zeitstempel pro Abfrage auf Client-Seite zu ermöglichen. Wie können wir dasselbe mit Federdaten cansandra erreichen.

Ich bin mir bewusst, dass ich kann in cql „TIMESTAMP-Wert weiter verwenden“, aber es ist etwas, das Federdatum cassandra zur Verfügung stellen? Ich finde solche API in CassandraClusterFactoryBean nicht.

Antwort

2

Sie haben Recht!

Leider scheint es SD Cassandra ist eine Konfigurationsoption auf der CassandraCqlClusterFactoryBean Klasse fehlt die withTimestampGenerator(:TimestampGenerator) Konfigurationseinstellung mit dem DataStax Java-Treiber Cluster.Builder API unterstützt.

Genauso unglücklich ist auch, dass es im Moment keine andere Problemumgehung gibt (als die USING TIMESTAMP in CQL).

Es scheint auch die CassandraCqlClusterFactoryBean fehlt Konfigurationsoptionen für:

  1. Cluster.Builder.withAddressTranslator(:AddressTranslator)
  2. Cluster.Builder.withClusterName(:String)
  3. Cluster.Builder.withCodeRegistry(:CodecRegistry)
  4. Cluster.Builder.withMaxSchemaAgreementWaitSeconds(:int)
  5. Cluster.Builder.withSpeculativeExecutionPolicy(:SpeculativeExecutionPolicy)

Allerdings, die withTimestampGenerator(..) wird nur in Version 3 des DataStax Java Driver unterstützt, die die nächste Version (d. H. 1.5.0) von SD Cassandra unterstützen ...

Diese Funktion ist nur mit der Version V3 oder oberhalb des nativen Protokoll zur Verfügung. Bei früheren Versionen werden Zeitstempel immer serverseitig generiert, und das Festlegen eines Generators über diese Methode hat keine Auswirkungen.

+0

HINWEIS: Da die SD * Cassandra * API (d. H. 'CassandraCqlClusterFactoryBean') diese Konfigurationsoptionen nicht unterstützt, werden auch die SD * Cassandra * XML-Namespace-Konfigurations-Metadaten (offensichtlich) nicht verwendet. –

+0

HINWEIS: siehe auch ... https://jira.spring.io/browse/DATACASS-238 –

+0

Danke für die Antwort John. Also werde ich jetzt nur TIMESTAMP verwenden. – Laxmikant