标签: nosql

将值传递给map函数 - CouchDB

我想知道是否可以将值传递给couchDB设计文档中的map函数.

例如:

在下面的代码中,可以传递用户输入的值并使用该值来运行map函数.也许我可以在用户登录时传递用户,然后根据地图功能显示视图.

function(doc) {
   if(doc.name == data-Entered-By-User) {
   emit(doc.type, doc);
  }
}
Run Code Online (Sandbox Code Playgroud)

先感谢您.问候

javascript couchdb mapreduce nosql map-function

2
推荐指数
1
解决办法
1061
查看次数

Cassandra:单节点集群中没有足够的副本错误

在周末,我们开始在Cassandra看到错误.从本质上讲,抱怨它无法获得足够的节点以实现SERIAL一致性.

这似乎是AWS vpn跨地区的问题.因此,为了简化,我删除了另一个节点(当时只有两个节点).我通过从最后剩下的节点的cassandra.yaml中删除种子来做到这一点:

seed_provider:
...
- seeds: "single node ip"
Run Code Online (Sandbox Code Playgroud)

我也跑nodetool removenode了旧节点(显示死态).

所以拓扑很简单.Application是一个Java应用程序,它通过Java API连接到Cassandra节点.

以下是我现在看到的错误:

Caused by: com.datastax.driver.core.exceptions.UnavailableException: Not enough replica available for query at consistency QUORUM (2 required but only 1 alive)
        at com.datastax.driver.core.Responses$Error$1.decode(Responses.java:45)
        at com.datastax.driver.core.Responses$Error$1.decode(Responses.java:34)
        at com.datastax.driver.core.Message$ProtocolDecoder.decode(Message.java:182)
        at org.jboss.netty.handler.codec.oneone.OneToOneDecoder.handleUpstream(OneToOneDecoder.java:66)
        ... 21 more
Run Code Online (Sandbox Code Playgroud)

哪个是与以前完全相同的错误,除了QUORUM我们SERIAL之前拥有的节点.


我刚刚尝试将复制因子设置为1:

ALTER KEYSPACE my_keyspace WITH REPLICATION = { 'class' : 'SimpleStrategy', 'replication_factor' : 1 };

并重新启动cassandra.没变.

nodetool cleanup keyspace_name根据下面的答案运行.也没有变化.


为了清楚起见,拓扑是这样的:

Java App - >单个Cassandra节点

还在看: Not enough …

java cassandra nosql

2
推荐指数
1
解决办法
7892
查看次数

DB中的用户提要(可能是DynamoDb)

我正在考虑使用DynamoDB来生成用户Feed.我将使用PostId(Range)存储UserId(Hash).但我需要在数据库中保留最后3000个帖子.所以我正在考虑有一个后台任务来清理表格.这样做有道理吗?我不确定这种类型的范围查询是否能够合理地快速运行,因为我有大约25mln用户记录.

请建议可能有效的任何其他选项(redis中的扇出除外).

database amazon-web-services nosql amazon-dynamodb

2
推荐指数
1
解决办法
665
查看次数

Cassandra - 数据建模时间序列 - 避免"热点"?

我正在研究Cassandra数据模型来存储用户上传的记录.

潜在的问题是,一些用户可能在5分钟内上传50-100k行,这可能导致分区键(user_id)的"热点".(如果每个分区超过10k行,Datastax建议重新考虑数据模型).

如何避免在短时间内在分区键上记录太多?

我尝试过使用Datastax时间序列建议,但即使我有年,月,日,小时列,也可能会出现热点.

CREATE TABLE uploads (
    user_id text
   ,rec_id timeuuid
   ,rec_key text
   ,rec_value text
   ,PRIMARY KEY (user_id, rec_id)
);   
Run Code Online (Sandbox Code Playgroud)

用例是:

  • 通过user_id获取所有上传记录
  • 按日期范围范围搜索上传记录

data-modeling cassandra nosql datastax

2
推荐指数
1
解决办法
775
查看次数

使用ArangoDb/OrientDb进行分层数据模型和文档搜索:是正确的解决方案吗?

我正在开发一个文档管理软件,我正在评估存储和搜索数据的noSql数据库.

总结当项目在目录和子目录中组织时,软件就像文件系统一样.

树的每个项目都可以有n个属性用于过滤和排序.

物品也可以最终与某种其他关系(父母除外)相互联系.

项目数量可能相对较大(数百万),并且应用程序的杀手级功能必须在检索数据(使用过滤器和按属性排序)方面具有恒定的性能,而不依赖于数据库增长.

我需要3个关键功能:

  • 获取文件夹的直接子项.结果必须是每个文档属性的可分页,可排序和可过滤的

  • 获取文件夹的所有子项(子树的所有项).结果必须是每个文档属性的可分页,可排序和可过滤的

  • 获取文件夹的所有父母

我是noSql中的新手,实际上我使用的是rdbms(Sql Server),但我遇到了性能问题以及由文档属性的固定架构引起的所有限制.我正在评估OrangoDb或OrientDb,因为我认为它的功能(面向文档和面向图形)可能是我设计需求的最佳解决方案.

你能帮助我,给我一个关于设计数据库和查询这个3任务的建议吗?

铌.我需要查询的结果返回一个数据集,其中包含每个属性的列:

Es. doc1: p1: v1, p2: v2
    doc2: p1: v1, p3: v3

result:
    name | p1 | p2 | p3
    doc1   v1   v2   null
    doc2   v1   null v3
Run Code Online (Sandbox Code Playgroud)

我在想设计一个项目:

{ 
  "_id": "_myItemId",
  "name`enter code here`" : "Item1",
  "itemType": "root / folder / file"   
  "parentItemId": "",
  "properties" : [ 
    { name: "Property1", formatType: 0, formatMask: "", value: "Value1" }, 
    { name: "Property2", formatType: 0, formatMask: "", value: "Value2" }, …
Run Code Online (Sandbox Code Playgroud)

nosql graph-databases document-database orientdb arangodb

2
推荐指数
1
解决办法
868
查看次数

如何处理noSQL数据库中的标记

我有一个带有产品的noSQL数据库.这些产品显然具有一些特性,我可以根据其属性过滤产品.

这如何与标签一起使用?更具体地说,我应该如何构建节点,以便我可以过滤掉具有特定标签的项目?

火力地堡

如果您熟悉Firebase .equalTo(),请跟进:如何构建我的FB数据库以及如何查询带有特定标记的项目?

我想到的一件事是为节点提供单独的属性,例如:

   $productId
       /tag_1
       /tag_2
Run Code Online (Sandbox Code Playgroud)

但后来我必须多次过滤或查询.如何克服或有其他方法?

database database-design nosql firebase firebase-realtime-database

2
推荐指数
1
解决办法
1668
查看次数

是否可以仅从Firebase检索密钥列表?

我有这种形式的节点:

index
   $categoryId
     $productId
Run Code Online (Sandbox Code Playgroud)

我希望主要检索一个键的列表index,因此一个对象填充了$categoryId索引中的所有可用内容.

有没有办法在Firebase中检索此列表?我假设检索密钥列表比包含所有数据的列表更有效$categoryId.

我知道另一种方法是维护所有类别的索引列表,但这需要更多编码(当编辑和删除类别时).

javascript nosql firebase

2
推荐指数
1
解决办法
886
查看次数

数据存储量:HDFS与NoSQL

在互联网上的几个来源中,它解释了HDFS的构建是为了处理比NoSQL技术更多的数据(例如Cassandra).一般来说,当我们超过1TB时,我们必须开始考虑Hadoop(HDFS)而不是NoSQL.

除了体系结构和HDFS支持批处理以及大多数NoSQL技术(例如Cassandra)执行随机I/O这一事实,除了架构设计差异之外,为什么NoSQL解决方案(再次,例如Cassandra)不能处理尽可能多的数据作为HDFS?

为什么我们不能将NoSQL技术用作Data Lake?为什么我们只应将它们用作大数据架构中的热存储解决方案?

hadoop cassandra nosql hdfs

2
推荐指数
1
解决办法
237
查看次数

用于在Redis中存储关系数据的Java框架

是否有一个Java框架来存储Redis中的关系数据?用于简单用例的东西,例如:

  • 1篇文章到N条评论 - 按评论创建日期排序.

java architecture nosql redis

2
推荐指数
1
解决办法
170
查看次数

**警告:软限制太低。文件数为256,应至少为1000

我在Mac OSX capitan上运行,每次运行mongo shell时,都会弹出此警告。我试过了:

须藤ulimit -n 1024

ulimit -n 1024

它仍然不起作用。有任何想法吗?

database mongodb nosql

2
推荐指数
1
解决办法
5770
查看次数