Articles of 数据库

后端API与数据库(作为服务)

在一个假设的安排中,一些用户需要共同编辑数据,这个策略会产生最好的结果: 1,一个同步数据库,如pouchdb / couchdb。 这些提供了支持多个客户端的潜在脱机数据的支持,但是更多的工作必须由客户端应用程序完成数据和权限。 2,实时托pipe的数据库,如rethinkDb或深水。 这些提供更多服务器逻辑。 3,数据库服务api这样的地平线或deployd提供了一个快速的方法来build立数据库之上的后端apis 4,把你自己的东西像帆/羽毛/循环回来,让后端的全部力量。 对我来说,这似乎是一个select范围,但重要的事情是: 易于开发数据pipe理和实时同步 用户pipe理 支持的客户端范围(is / swift / java) 最初的发展将是基于networking(浏览器/电子)的范围移动到iOS / Android应用程序。 最终,我相信我不确定是否可以使用数据库或应用程序的其余api来实现最佳结果。 非常感谢

儿童杂项模式的数据库devise

我想知道保持数据库尽可能整洁的最佳做法。 数据库是由express.js / node访问的postgresql。 这是一个孩子应用程序,我正在工作,它有以下架构: CHILDREN id name points rate created_at updated_at user_id TASKS id description value days (boolean array – eg. [0,0,0,0,0,0,0]) periods (boolean array – eg. [0,0]) created_at updated_at user_id FINISHED TASKS id task_id child_id completed (boolean) created_at updated_at period (boolean) day (int (0-6)) 对于每个完成的任务,在数据库中创build一行。 只有400个孩子在那里做家务,每天已经有大约800行被添加到FINISHED TASKS表格。 我有两个问题: 是否有一个更有效的方式来存储完成的FINISHED TASKS ,每个孩子或类似的一整天? 随着规模,我将最终每天可能成千上万的行 – […]

在一个Cloudant noSQL数据库中search许多参数

我正在使用Bluemix上的Cloudant数据库将产品存储在Node.js服务器中。 这些产品将按类别search。 要查找只有一个类别的产品,将不会成为问题,因为通过将作为search参数发送的string与保存在数据库中的类别string进行比较来进行search。 产品有两个或更多类别时会出现问题。 在进行string与string的比较时,它不会重合。 产品可以有他们需要的种类。 有任何想法吗?

数据库OR数组

如果我有简单的关系(95%查询依赖于ID),使用数据库的确切点是什么? 我正在存储用户和他们的统计资料。 为什么我会使用外部数据库,如果我可以有如下整洁的结构: db.users[32] = something 500K用户arrays对于RAM来说并不是那么大的努力 优点是: 没有问题的asynchronous性(即时结果) 方便出口/import 像LITERALLY本地对象一样处理数据库 PS。 和考虑事项: 会做更快或更慢的collection[3]比db.query("select … 我将把它作为一个文件存储 只有一个应用程序/进程访问这个数据,并且代码逐行执行 – 请不要详细说明locking。 请不要回答数据库命题,但为什么要使用外部数据库本地数组/对象 – 我有一些数据库的经验 – 事实并非如此。 我正在构build的是客户端/网关/服务器(S)游戏。 网关处理所有用户的数据,处理,authentication,写入统计数据等。软件的其他部分不需要直接访问这个数据/数据库。

node.js关于商店数据的一些问题

我想了解node.js是如何工作的。 1)我想存储数据,但我不知道哪种方法更快:-using sql -using json files(如果这是一个很好的解决scheme,你有一个最佳实践教程) 2)多语言网站,这是一个很好的解决scheme,将翻译存储在JSON文件或有一个最佳做法?

如何通过Node.js服务器接收http请求,然后将该请求传递给另一台服务器?

这里有很多事情要做,所以我将把它简化成一个伪示例。 忘记安全和不在这里一分钟。 重点是了解function。 比方说,我运行一个本地web服务器与node.js开发一个网站。 在网站上,用户应该能够创build一个新的帐户。 帐户信息将通过ajax提交给节点服务器。 然后,我需要节点服务器接收传入的请求,并将其传递给另一个服务器,使我可以访问数据库。 例如,CouchDB。 所以这里是我想要发生的一个伪示例。 在客户端的浏览器中: $.ajax({ url: './database_stuff/whatever', // points to the node web server method: 'POST', data: {name: 'Billy', age: 24} }); 在Node web服务器中: var http = require('http'), dbServer = 'http://127.0.0.1:5984/database_url'; http.createServer(function (req, res) { /* figure out that we need to access the database then… */ // magically […]

了解NoSQL数据build模 – 博客应用程序

我正在Node.js + MongoDB数据库中创build一个博客应用程序。 我曾经使用像MySQL这样的关系数据库,但是这是我第一次使用NoSQL数据库。 所以我想在继续前进之前遵循我的MongoDB数据模型。 我已经决定我的blogDB有3个集合 post_collection – 存储关于该文章的信息 comment_collection – 存储关于文章评论的信息 user_info_collection – 包含用户信息 PostDB { _"id" : ObjectID(…), "author": "author_name", "Date": new Date(….), "tag" : ["politics" , "war"], "post_title": "My first Article", "post_content": "Big big article" "likes": 23 "access": "public" } CommentDB { "_id" : Objectid(…), "POST": "My First Article", "comment_by": "User_name", "comment": […]

Node.js + Oracle – 在每个请求之后保持连接打开或closures?

我有一个使用Node.js和连接到Oracle数据库的Web应用程序。 目前,我的Node和DB之间的架构使用一个连接,保持打开状态。 问题是一些查询需要很长时间才能返回,从而阻塞后续查询,直到第一次返回。 如果我在每个请求上打开一个新的连接,这不会发生,并且后续的查询将在第一个(长)之前返回。 问题是什么是最佳实践? 每个请求是否值得在callback时closures数据库的新连接,我是否应该优先考虑我知道要花费大量时间用自己的连接进行的查询,还是一个连接是正确的? 非常感谢您的想法。

喜欢在mongoDB

在这里我的问题:我想创build一个networking,允许用户上传post和喜欢他们。 我想我可以将每篇文章存储在一个名为“post”的集合中,而且我没有这个问题。 但我在哪里可以存储每个post与相关数据(时间,用户等)喜欢? 我不能这样做后文件,因为一个文件的最大大小是16MB,想象我将不得不logging每个post相关数据的数千喜欢我不能这样做。 我可以将每个post关联到一个集合,其中包括文档和每个文档是相似的。 但是,如果可能的话,我真的不想创造数百万和数百万的collections。 post文档示例: {_id: blabla, userfrom: {}, txt: "i am the post", time: {}, geo: {}, likes: {here i have to add as many likes as users clicks, and it can exceed 16MB}} 现在在'喜欢'我可以把一个集合的参考,但这是我不想做的。 我读了MongoDB的gridstore,但是我没有明白。 我可以使用它作为大小可以趋于无限的文件? 所以我可以添加尽可能多的logging,我想要的? 所以与网格商店我可以做一些事情: {_id: blabla, userfrom: {}, txt: "i am the post", time: {}, geo: {}, […]

在社交networking中的“喜欢”数据库devise(MongoDB)

我正在使用MongoDB构build一个照片/video共享社交networking。 社交networking有一个Feed,个人资料和一个追随者模型。 我基本上采用了类似的方法来为我的“社交饲料”devise这篇文章 。 具体来说,当用户发布故事时,我使用了采用桶式方法的扇出。 我的问题是当用户“喜欢”一个故事。 我目前也在使用写扇出的方式,基本上增加/减less每个用户的feed的故事“喜欢计数”。 我认为这可能是一个糟糕的devise,因为用户“喜欢”比他们发布更频繁。 用户可以通过喜欢和不喜欢stream行的post来快速饱和服务器。 你们在这里推荐什么devise模式? 我应该使用扇形阅读吗? 继续与后台工作人员一起使用扇出? 如果解决scheme是“后台工作人员”,您推荐使用什么方法为后台工作人员? 使用Node.js 任何帮助表示赞赏! 谢谢,亨利