Tag: tsql

如何在连接池中比较Node.js SQL Server扩展?

我只是进入节点,并寻找连接到SQL Server的一些选项。 我见过的很多演示很简单,“这里是如何连接这个查询…”。 但是,我没有发现如何pipe理连接池。 繁琐和节点tdsbuild立在TDS协议上。 我阅读了FreeTDS的文档,以及它如何pipe理连接池。 这些有关系吗? 我还发现了另一个扩展,用C#编写的T-SQL FTW ,它是一个C ++包装器,允许它与Node进行通信。 由于它使用ADO .NET托pipe代码,所以我想知道这是否是通过Node实现稳定连接池的更好select,以及是否有基准testing和更精细文档的其他可用选项?

高内存/性能关键计算 – 架构方法观点

我需要一个架构观点和方法来解决以下问题: 介绍: 我们有一个~4M行的表称为Purchases 。 我们也有一个~5k行的表,称为Categories 。 另外,我们有一个~4k SubCategories的表。 我们正在使用T-SQL来存储数据。 在用户请求(在运行期间),服务器接收到大约10-15个可能参数的请求。 根据参数,我们采购,按类别和子类别进行分类,并进行一些计算。 “计算”的一些过程包括过滤,分类,重新安排采购领域,相互减less采购,增加一些其他采购,find储蓄等等。 这个过程是用户特定的,因此每个用户将根据他们的angular色获得不同的数据。 问题: 这个过程大约需要3-5分钟,我们希望把它裁掉。 以前,这个过程是通过webworkers(JS)在浏览器中完成的。 随着内存开始变大,大多数浏览器开始加载失败,我们已经离开了它。 然后,我们将服务移动到服务器(NodeJS),通过subprocess即时处理请求。 subprocess的原因:计算进程经过for循环大约5000倍(对于每个类别)并执行上述“计算”。 通过subprocess,我们能够将工作分配到#ofsubprocess中,如果我们运行了至less16个内核(16个subprocess),则可以获得更好的结果。 目前的处理时间下降到大约1.5-2分钟,但我们想看看我们是否有更好的select。 我明白它很难完全理解我们的目标,而没有看到任何代码,而是专门提出问题。 在运行时对半大数据进行计算的方法有哪些? 我们有一些想法: 使用SQL内存表,并在SQL中进行计算 使用azure色批处理服务 使用更大的机器(〜32-64内核,如果我们不能得到任何其他的想法,这可能是我们最好的select,但是当然,成本增加了很多,但是我们接受成本会增加的事实) 步入hadoop生态系统(或其他大数据生态系统) 其他一些有用的事实: 我们的购买量约为1GB (对于内存计算来说有点过大) 我们正在考虑在redis上进行预计算和caching,以便为客户端准备好一些数据(我们将使用他们的帐户中的参数设置每天预先计算,但客户端往往会频繁更改这些参数,因此我们有有一些有效的方式来处理未caching和预先计算的数据) 如果我们可以提供更多的信息来更好地理解我们的困境,请发表评论,我将尽可能提供更多的信息。 如果可能的话,将会有太多的代码粘贴到这里来完全理解algorithm,因此我想尝试用单词来提供我们的问题。