问题标签 [data-processing]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
regex - 任何人都可以建议一个匹配 4 个连续文本行的正则表达式模式吗?
我正在尝试解析一个大型数据文件。在文件中,有 3 行或 4 行数据组,由空行分隔。例如:
我正在寻找一种快速的方法来提取具有 4 行的所有数据组(忽略所有 3 行组)。正则表达式有没有办法在文本文件中查找所有 4 行组?或者任何其他建议的(可能使用 awk 或 sed 的)方法来做到这一点?
mysql - 在不使用临时表的情况下选择不同的记录
我有一个第三方表,其中填充了一些杂乱的数据,我需要从中获取最新的不同记录。每年或每次“Person”更改时,都会为该表提供一个新行。该表的工作基于最近的 ActiveDate 是正确的人。我创建了一个模拟表和数据来显示这一点。
还有一些模拟数据:
该表还具有由最终用户实际设置的 ExpireDate 列,并不总是让我感到沮丧。目前我正在使用一个虚拟表将不同的记录拉出来并存储一天。我会使用临时表,但我不是 100% 确定如何在 MySQL 中使用,而且我不喜欢它们。我这样做的方式只是暂时的,希望获得更好的 SQL。
然后必须将数据与许多其他表连接才能获得最终产品。但是我仍然需要处理最初的一组不同的数据。从一开始就加入另一张桌子是行不通的。
所以这就是我如何提取数据、存储它,然后稍后再提取它并将其连接到其他表:
我怎样才能写这个来避免使用临时表(以任何形式)处理重复行的成本?希望我已经说得很清楚了,如果不是,我可以很高兴地补充或澄清。
database-design - 用于计算 0 年至第 n 年的数据和软件架构
例如,我们的应用程序跟踪农场的动物活动和价格。要获得当前的库存数量,最简单的解决方案是有一个起始编号,然后将所有进出的移动相加,直到我们得到一个当前编号。但这是内存密集型的,并且随着移动数量的逐年增长而变得越来越慢。
我们没有“冻结”一年的奢侈,所以它不能再接受变化,系统必须能够随时处理机芯的变化,然后实时显示更新的数字。
这不仅仅是股票数量;我们必须跟踪大量这样的变量,并为每个时期(日、周、月、年)编写报告,其中包括基于这些变量的汇总计算。
为了计算和报告目的,处理跨越多年的数据流的最常见、首选、“最佳”、最快、优雅的方法是什么?在这种情况下,数据库设计和架构将如何关联(即,只要数据库模式设计良好,使用 ORM 就可以了吗?)。这里的关键要求是最佳性能和实时可用性。
我已经在大型系统中看到过这样的工作被分成时间片,例如周、月、年汇总表。如果有解决这个问题的通用设计模式,我特别感兴趣。
r - 相关性失败 - Pearson
我想写入有关相关性的数据文件信息,如下所示:
结果对我来说很奇怪 - Pearson 相关性非常高(始终等于 1),但 Kendall 和 Spearman 非常低。我创建了散点图,但看不到线性相关性。
nosql - 大规模数据处理 Hbase vs Cassandra
在研究了大规模数据存储解决方案之后,我差一点就来到了 Cassandra。但它普遍认为 Hbase 是大规模数据处理和分析的更好解决方案。
虽然两者都是相同的键/值存储并且两者都是/可以运行(最近是 Cassandra)Hadoop 层,但是当需要对大数据进行处理/分析时,是什么让 Hadoop 成为更好的候选者。
我还在 http://ria101.wordpress.com/2010/02/24/hbase-vs-cassandra-why-we-moved/找到了关于两者的详细信息
但我仍在寻找 Hbase 的具体优势。
虽然我更相信 Cassandra,因为它添加节点和无缝复制的简单性以及无故障点功能。而且它还保留了二级索引功能,所以它是一个很好的加分项。
c - (C) 虚拟网络适配器
linux中有没有办法以编程方式创建一个可以监听的虚拟网络适配器,以便每当尝试通过适配器发送数据时,都会调用一个方法?
我正在尝试将所有数据包转发到单个 IP 地址,然后将它们的原始位置包含在数据包中。
像这样的东西:
因此,如果我通过虚拟网络适配器 ping google.com,该方法将像这样调用sendPacket("GooglesIp","Whatever data a ping sends")
data-processing - 数据操作环境
我正在寻找一些东西*来帮助我处理和解释数据。姓名、地址等数据。
目前,我大量使用 Python 来查找一条信息是否与另一条信息相关,但我注意到我的很多代码可以很容易地用某种查询语言代替。
主要是,我需要一个可以导入任何格式的数据的环境,无论是 xml、html、csv 还是 excel 或数据库文件。我希望软件能够阅读它并告诉我有哪些列等等,这样我就可以只担心编写解释它的代码了。
这听起来是否足够具体,如果是的话,是否有人拥有如此优雅的软件?
*可以是编程语言,IDE,它们的组合。
c++ - Lua vs Embedded Lisp 和潜在的其他候选人。用于基于集合的数据处理
当前选择: lua-jit。令人印象深刻的基准测试,我已经习惯了这种语法。编写高性能 ABI 需要仔细考虑我将如何构建我的 C++。
其他感兴趣的问题
- Gambit-C 和 Guile 作为可嵌入语言
- Lua 性能提示(可以选择使用禁用的收集器运行,并在处理运行结束时调用收集器始终是一个选项)。
背景
我正在开发一个实时大容量(复杂)事件处理系统。我有一个 DSL,它在源头表示事件结构的模式、存储格式、某些特定于域的构造、触发内部事件(以构建和驱动通用处理),以及对总是发生的某些处理步骤进行编码。
DSL 看起来与 SQL 非常相似,事实上我正在使用 berkeley db(通过 sqlite3 接口)来长期存储事件。这里重要的部分是事件的处理是基于集合完成的,比如 SQL。然而,我得出的结论是,我不应该向 DSL 添加通用处理逻辑,而是嵌入 lua 或 lisp 来处理这个问题。
处理核心是围绕 boost::asio 构建的,它是多线程的,rpc 是通过协议缓冲区完成的,事件使用协议缓冲区 IO 库进行编码——即,事件不是使用协议缓冲区对象构造的,它们只是使用相同的编码/解码库。我将创建一个包含行的数据集对象,这与数据库引擎在内存集中的存储方式非常相似。DSL 中的处理步骤将首先得到处理,然后提交给通用处理逻辑。
无论我使用什么可嵌入脚本环境,我的处理核心中的每个线程都可能需要它自己的嵌入式语言环境(如果你正在做多线程工作,lua 至少需要它)。
问题
目前的选择是在 lisp ECL 和 lua 之间。请记住,性能和吞吐量是一项强大的要求,这意味着非常需要最小化内存分配:
如果你处于我的位置,你会选择哪种语言?
有没有我应该考虑的替代方案(不要建议没有可嵌入实现的语言)。也许是 Javascript v8?
lisp 是否更适合域?我不认为 lua 和 lisp 在它们提供的方面有什么不同。叫我出来 :D
我应该考虑其他任何属性(如下面的属性)吗?
我断言任何形式的嵌入式数据库 IO(请参阅下面的示例 DSL 了解上下文)都会使脚本语言调用相形见绌,而且选择其中任何一种都不会给整体吞吐量增加太多开销。我在正确的轨道上吗?:D
所需属性
我想将我的数据集映射到一个 lisp 列表或 lua 表上,并且我想最小化冗余数据副本。例如,如果两个表具有相同的形状,则从一个数据集中将一行添加到另一个应尝试使用引用语义。
我可以保证在进行 lua/lisp 调用时,作为输入传递的数据集不会改变。如果可能,我希望 lua 和 lisp 强制不更改数据集。
在嵌入式调用结束后,数据集应该被销毁,创建的任何引用都需要替换为副本(我猜)。
DSL 示例
为了您的观看乐趣,我附上了一个 DSL,这样您就可以了解我想要实现的目标。注意:DSL 不显示通用处理。
该项目是博士研究项目的一个组成部分,并且是/将是免费软件。如果您有兴趣与我合作(或贡献)这个项目,请发表评论:D
haskell - 将数据处理表示为管道的框架
大多数数据处理可以设想为组件的管道,一个组件的输出馈入另一个组件的输入。一个典型的处理管道是:
作为开始这个讨论的陪衬,让我们考虑这个管道的面向对象的实现,其中每个段都是一个对象。该handler
对象包含对reader
和writer
对象的引用,并具有run
如下所示的方法:
示意性地,依赖项是:
现在假设我想在阅读器和处理程序之间插入一个新的管道段:
同样,在这个 OO 实现中,tweaker
将是reader
对象的包装器,并且tweaker
方法可能看起来像(在一些伪命令式代码中):
我发现这不是一个非常可组合的抽象。一些问题是:
tweaker
只能在 的左侧使用handler
,即我不能使用上面的实现tweaker
来形成这个管道:读者 | 处理程序 | 调整器 | 作家
我想利用管道的关联属性,以便该管道:
读者 | 处理程序 | 作家
可以表示为:
p
管道在哪里handler | writer
。在这个 OO 实现中,我必须部分实例化handler
对象
- 有点重述(1),对象必须知道它们是“推”还是“拉”数据。
我正在寻找一个框架(不一定是 OO)来创建解决这些问题的数据处理管道。
我用Haskell
和标记了它,functional programming
因为我觉得函数式编程概念在这里可能有用。
作为一个目标,能够创建这样的管道会很好:
从某种角度来看,Unix shell 管道通过以下实现决策解决了很多这些问题:
管道组件在不同的进程中异步运行
管道对象在“推动者”和“拉动者”之间调解传递数据;即,它们阻止写入数据过快的写入器和尝试读取过快的读取器。
您使用特殊的连接器
<
并将>
无源组件(即文件)连接到管道
我对在代理之间不使用线程或消息传递的方法特别感兴趣。也许这是最好的方法,但如果可能的话,我想避免线程。
谢谢!
php - 在 PHP 中处理内存中的数据
我正在编写一个 PHP 框架,可用于可视化大量数据。我无法将所有数据提取到内存中并对其进行处理(如排序、过滤等)。所以我有一个 sql 查询生成器,它构造 sql 查询并将所有处理部分推送到 sql server。有没有办法用 PHP 做到这一点?或者是否有某种可用的 C 库以二进制形式存储数据并减少处理时的内存使用量?