Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache spark Spark比CQL有哪些额外的好处?_Apache Spark_Cassandra_Cql3_Spark Cassandra Connector - Fatal编程技术网

Apache spark Spark比CQL有哪些额外的好处?

Apache spark Spark比CQL有哪些额外的好处?,apache-spark,cassandra,cql3,spark-cassandra-connector,Apache Spark,Cassandra,Cql3,Spark Cassandra Connector,我们正在探索cassandra的SPARK,以克服CQL的局限性 我们最初仅限于CQL,但在RDBMS方面几乎没有遇到障碍。举几个例子如下 为了在列上比较>(大于)和

我们正在探索cassandra的SPARK,以克服CQL的局限性

我们最初仅限于CQL,但在RDBMS方面几乎没有遇到障碍。举几个例子如下

  • 为了在列上比较>(大于)<(小于),我们限制在集群键中包含列。即使我在集群中有一列,我仍然应该提供分区键,以便在集群键上执行
  • 无法检查任何列值是否为NULL
  • 为了查询除分区键之外的任何列,我们必须在该列上创建索引
  • 按不是群集键的列排序
  • 按限制分组
  • 联接表
  • 我是cassandra的新手,经常因为局限性而重新访问我的模式


    因此,与HDFS的HIVE/PIG类似,Spark比CQL有哪些其他好处?

    CQL不能替代SQL。它实际上是为从几个(通常是一个)分区键中提取值而设计的,正如您所指出的,它不做任何类型的聚合、分组、非常有限的排序等(尽管Cassandra 3.0将有UDF和UDA)

    以下是Spark通过CQL提供的服务:

    • 通过数据帧和SQL进行常规聚合和查询,包括联接、分组依据、排序依据和UDF
    • 如果使用sqlContext.cacheTable将Cassandra数据缓存在内存中,则查询速度会显著加快(快几个数量级)
    • 使用Scala、Java、Python和R API集成了机器学习、统计、图形处理和几乎任何您可以想象的分布式计算
    • 能够从许多其他数据源(包括各种HDFS格式、Amazon S3、DBMS、Mongo和当今大多数其他数据库)中进出Cassandra表
    Spark与CQL完全不同。它提供了大量数据的复杂分析,CQL没有。但是,也存在一些限制:

    • Spark不擅长高度并发的查询。为此,您希望保持查询简单,并使用CQL提取非常少量的数据
    • Spark中的缓存数据不是HA,在将新数据写入C时无法更新*
    如果您想要通过Cassandra进行非常快速的分析查询,并且支持更新,并且不需要缓存,那么请查看我的项目