Dal momento che Cassandra si basa sulla carta Dynamo (tabella hash distribuita, autoequilibrante) + BigTable e ci sono indici spaziali che si adattano bene a quel paradigma (quadkey o geohash). C'è una ragione per cui il supporto di Geospatial non è stato implementato?C'è una ragione per cui Cassandra non ha il supporto geospaziale?
È possibile aggiungere un tipo di dati GeoPoint come tupla con geohash interno e specificare un CF come contenente dati geografici. Da lì puoi scegliere il comportamento in base al fatto che i dati geografici sono un indice secondario o un SCF denormalizzato. Ciò potrebbe gettare le basi per lo sviluppo geospaziale e si potrebbe iniziare implementando alcuni frutti a basso impatto come .nearby() che potrebbero semplicemente restituire colonne che condividono lo stesso geohash. (So che non ti darebbe il "più vicino", dovresti fare una passeggiata di geohashes circostanti o usare una forma e una curva di riempimento dello spazio per quella che potrebbe essere implementata in seguito, ma è un'operazione generale per trovarne alcuni colonne vicine)
So che SimpleGeo/Urban Airship ha costruito il supporto geografico in Cassandra, ma non sembra che sia mai stato aperto. Inoltre, fammi sapere se c'è un posto migliore per chiedere questo (quora, mailing list, ecc ...)
Ecco un'implementazione python di una quadkey se questo aiuta https://github.com/buckheroux/QuadKey – agentargo
Sono curioso di sapere perché un DB supporterà qualcosa che è utile solo in un particolare dominio problematico. Alcuni lo fanno, quindi ci deve essere una buona ragione. Ma questo non è analogo al supporto di tipi di dati specifici per, diciamo, la genomica? –