我使用下面的命令从Docker文件构建了一个Docker镜像.
$ docker build -t u12_core -f u12_core .
Run Code Online (Sandbox Code Playgroud)
当我尝试使用相同的命令重建它时,它正在使用构建缓存,如:
Step 1 : FROM ubuntu:12.04
---> eb965dfb09d2
Step 2 : MAINTAINER Pavan Gupta <pavan.gupta@gmail.com>
---> Using cache
---> 4354ccf9dcd8
Step 3 : RUN apt-get update
---> Using cache
---> bcbca2fcf204
Step 4 : RUN apt-get install -y openjdk-7-jdk
---> Using cache
---> 103f1a261d44
Step 5 : RUN apt-get install -y openssh-server
---> Using cache
---> dde41f8d0904
Step 6 : RUN apt-get install -y git-core
---> Using cache
---> 9be002f08b6a
Step …Run Code Online (Sandbox Code Playgroud) 任何人都可以说Aerospike是否像他们声称的一样好?我有点怀疑,因为它是一个商业企业.据我所知,他们刚刚发布了一个开源版本,但他们网站上的声明仍然可能被夸大了.
我对Aerospike与MongoDB的比较特别感兴趣.
Aerospike和Cassandra都说他们在各自的基准测试中都比其他人好.
参考:http://java.dzone.com/articles/benchmarking-cassandra-right 和其他几个.
有没有人同时使用它们?
Aerospike和声称的一样好吗?
最后是否建议用Aerospike取代Cassandra?
我正在寻找数据库/机制来存储我可以写入数据的数据,并以高性能读取数据.
此存储用于将记录存储为跨多个系统的重要信息.Since it's critical data which will be logged, read performance should be pretty fast as these data will be used to show history. Since we never do update on them/delete on them/or do any kinda joins, I am looking for right solution.可能我们可能会在很长一段时间内存档数据,但这是可以处理的.
我试着看不同来源了解不同的NoSql数据库,专家意见总是更好:)
Must Have:
1. Fast Read without fail
2. Fast Write without fail
3. Random access Performance
4. Replication kinda feature, one goes down, immediately another should be up and working
5. Concurrent write/read data …Run Code Online (Sandbox Code Playgroud) Aerospike客户端具有scanAll方法,用于从其存储中读取所有行.我在下面的代码中使用它:
ScanPolicy policy = new ScanPolicy();
policy.concurrentNodes = true;
policy.priority = Priority.DEFAULT;
policy.includeBinData = true;
policy.scanPercent = 100;
client.scanAll(policy, "namespaceName", "setName", new ScanCallback() {
@Override
public void scanCallback(Key key, Record record) throws AerospikeException {
STORE.put(key.userKey.toLong(), record.getValue("binName").toString());
}
});
Run Code Online (Sandbox Code Playgroud)
但它已完成NullPointerException,因为userKey为null.所有其他字段均按预期有效.用户密钥是Long值,用于保存数据:
client.put(writePolicy, new Key("namespaceName", "setName", userKey), new Bin("binName", value));
Run Code Online (Sandbox Code Playgroud)
一切都很好,如果我这样做单一请求:
client.get(readPolicy, new Key("namespaceName", "setName", userKey));
Run Code Online (Sandbox Code Playgroud)
可能有什么不对?为什么userKey为空?
我正在使用 aerospike 并使用 vagrant virtual box 安装它。
安装后,当我尝试启动虚拟机时,出现以下错误:
. 执行时出错
VBoxManage,这是 Vagrant 用于控制 VirtualBox 的 CLI。命令和标准错误如下所示。命令:["startvm", "dff6693e-52c8-4c9e-922a-243d18c7f666", "--type", "headless"]
Stderr:VBoxManage:错误:VM 会话在任何尝试打开 VBoxManage 之前已关闭:错误:详细信息:代码 NS_ERROR_FAILURE (0x80004005),组件 SessionMachine,接口 ISession
我正在使用 mac 机器进行此设置。
有什么建议吗?
Aerospike数据库说,它是
[...]架构有三个关键目标:
创建一个灵活,可扩展的平台,以满足当今Web规模应用程序的需求
提供传统数据库所期望的稳健性和可靠性(即ACID).
提供运营效率(最少的人工参与)
而在其他地方:
Aerospike经过优化,可与最新的存储和数据库技术配合使用,以尽可能多地挤压事务吞吐量,同时仍保证强一致性(ACID).
首先,我没有在Aerospike中找到任何交易定义.通常我将它作为数据库上的一系列操作.但是稍后阅读我没有看到交易是ACID:
在阅读详细的Aerospike ACID描述时,我发现它只是假装 ACID保证.
让我们考虑修改文档A和B的两个并发事务.在开头A = 0和B = 0:
A和B 我希望我们总能最终得到A==B- 结果将是:
A=1 & B=1 当T2首先锁定/取得文件A和B的所有权时A=2 & B=2 当T2首先锁定/取得文件A和B的所有权时这个结果有什么保证?
你能证实我的例子结果吗?
2. 用户定义的功能在某种程度上有帮助吗?
要清楚 - 我不想说Aerospike很糟糕.我在那里看到了很棒的好作品.当ACID保证在那里失败时,我只是错过了一个很好的澄清.
我试图在aerospike集中使用aql(Aerospike查询语言)进行查询.
假设有1000条记录,我想读取任何10条记录.通常我会查询类似于:
select * from test.demo limit 10;
Run Code Online (Sandbox Code Playgroud)
如何使用aql查询相同的内容?
我正在使用Aerospike Python CLient放置并获得一些键值对:
aerospike_dca_client.put(key,bin)
...
...
bls_key_a = (AEROSPIKE_NAMESPACE,SET_NAME,bls_key)
hp_bid_str_a = aerospike_dca_client.get(bls_key_a)[3];
#Terminates at the line above
Run Code Online (Sandbox Code Playgroud)
但是在put之后,我的程序在Get命令期间以SEGFAULT终止.以下是我得到的堆栈跟踪GDB:
Program received signal SIGSEGV, Segmentation fault.
as_shm_node_get (cluster=0x353bd90508, ns=0x7fffffffc851 "test", digest=0x7fffffffc8e1 "/\231!\221h\223\240\021KX\377\357O\346u\214q\356\267#\177", write=false, replica=AS_POLICY_REPLICA_MASTER)
at src/main/aerospike/as_shm_cluster.c:431
431 src/main/aerospike/as_shm_cluster.c: No such file or directory.
in src/main/aerospike/as_shm_cluster.c
Missing separate debuginfos, use: debuginfo-install blas-3.2.1-4.el6.x86_64
(gdb) bt
#0 as_shm_node_get (cluster=0x353bd90508, ns=0x7fffffffc851 "test", digest=0x7fffffffc8e1 "/\231!\221h\223\240\021KX\377\357O\346u\214q\356\267#\177", write=false, replica=AS_POLICY_REPLICA_MASTER)
at src/main/aerospike/as_shm_cluster.c:431
#1 0x00007fffdf219ce5 in as_node_get (cluster=0x353bd90508, err=0x7fffffffc920, cn=0x7fffffffc7c0, command=0x7fffffffc740 "\002\003", command_len=82, timeout_ms=1000, retry=1,
parse_results_fn=0x7fffdf21a97b <as_command_parse_result>, …Run Code Online (Sandbox Code Playgroud)