我打算使用ElasticSearch索引我的Cassandra数据库.我想知道是否有人看过ElasticSearch的实际限制.在PB级范围内,事情会变慢吗?另外,有没有人使用ElasticSearch索引Cassandra有什么问题?
我们正在使用Cassandra数据库,该数据库将存储PB级数据.我们正在考虑使用ElasticSearch或Solandra,但我们正在享受一个有趣的时间来决定使用哪个.我想知道我们的数据库是否会变得太大.我知道ElasticSearch是可扩展的,但在多大程度上 - 特别是对于Cassandra数据库.
另一方面,Solandra是为Cassandra制作的,具有很高的可扩展性,但又在多大程度上?
两者都是可扩展的,但使用Cassandra的可扩展性如何?
我正在使用Cassandra-0.8.2.我正在使用最新版本的Hector&My java版本是1.6.0_26
我对Cassandra&Hector很新.
我正在尝试做的事情:1.在另一台服务器上连接到正在运行的cassandra实例.我知道它正在运行b/c我可以通过我的终端进入运行此Cassandra实例的服务器并运行具有完整功能的CLI.2.然后我想连接到一个键空间并创建一个列族,然后通过Hector为该列族添加一个值.
我认为我的问题是,此服务器上运行的Cassandra实例可能未配置为获取非本地命令.我认为我的下一步将是在我正在处理的cpu上添加Cassandra的本地实例并尝试在本地执行此操作.你怎么看?
这是我的Java代码:
import me.prettyprint.cassandra.serializers.StringSerializer;
import me.prettyprint.cassandra.service.CassandraHostConfigurator;
import me.prettyprint.hector.api.Cluster;
import me.prettyprint.hector.api.Keyspace;
import me.prettyprint.hector.api.ddl.ColumnFamilyDefinition;
import me.prettyprint.hector.api.ddl.ComparatorType;
import me.prettyprint.hector.api.factory.HFactory;
import me.prettyprint.hector.api.mutation.Mutator;
public class MySample {
public static void main(String[] args) {
Cluster cluster = HFactory.getOrCreateCluster("Test Cluster", "xxx.xxx.x.41:9160");
Keyspace keyspace = HFactory.createKeyspace("apples", cluster);
ColumnFamilyDefinition cf = HFactory.createColumnFamilyDefinition("apples","ColumnFamily2",ComparatorType.UTF8TYPE);
StringSerializer stringSerializer = StringSerializer.get();
Mutator<String> mutator = HFactory.createMutator(keyspace, stringSerializer);
mutator.insert("jsmith", "Standard1", HFactory.createStringColumn("first", "John"));
}
}
Run Code Online (Sandbox Code Playgroud)
我的错误是:
16:22:19,852 INFO CassandraHostRetryService:37 - Downed Host Retry service started with queue size -1 and retry delay 10s …Run Code Online (Sandbox Code Playgroud) 我在OS 10.11.1上运行Xcode 7.1.我有几个静态单元格的表格视图.对于低于视图控制器大小的单元格,不会出现静态单元格的数据(标签,文本字段等).静态单元格不会显示任何已保存的数据.如果我滚动或做任何其他事情,静态单元格都是空的.
我在运行模拟器时仍然可以看到静态单元格,我无法在界面构建器中编辑单元格.
有没有人找到解决这个问题的方法?
我正在使用Cassandra 0.8.0.
我无法弄清楚如何使用Cassandra-Cli为当前存在的SuperColumn添加值.例如:我已将以下内容添加到我的密钥空间
create column family authors
with comparator = UTF8Type and subcomparator = UTF8Type
and default_validation_class = UTF8Type
and column_metadata = [{
column_name: tags, validation_class: UTF8Type},
{column_name: url, validation_class:UTF8Type},
{column_name: title, validation_class: UTF8Type},
{column_name: publisher, validation_class: UTF8Type},
{column_name: email, validation_class: UTF8Type}];
Run Code Online (Sandbox Code Playgroud)
我尝试在这个超级列中添加一行:(输入)[default@testspace] set authors[1]['1']['url'] = 'www.henry.com';
(输出)[default@testspace] null
这是一个错误^
我也试过这个:
[default@testspace] set authors['henry']['url']['1'] = 'www.henry.com';
Run Code Online (Sandbox Code Playgroud)
得到:
org.apache.cassandra.db.marshal.MarshalException: cannot parse 'henry' as hex bytes
Run Code Online (Sandbox Code Playgroud)
在Cassandra-Cli中操作SuperColumns的正确语法是什么?您能否提供一个使用cassandra-cli中的超级列来设置/获取值的示例?
谢谢