Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/257.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用1000个变量处理数据,最好使用SQL_Php_Mysql_Sql_Entity Attribute Value_Storing Data - Fatal编程技术网

Php 使用1000个变量处理数据,最好使用SQL

Php 使用1000个变量处理数据,最好使用SQL,php,mysql,sql,entity-attribute-value,storing-data,Php,Mysql,Sql,Entity Attribute Value,Storing Data,基本上,我有很多文件和一些数据。每个都不同,有些缺少一些变量(null)等等,经典的东西 有趣的是,由于每个文件最多可以有1000个变量,并且至少有800个非空值,我想:“嘿,我需要1000列”。还有一件事要提的是,它们是整数、布尔、文本等等。它们因大小和类型而异。每个变量在所有文件中都小于100字节,尽管如此。它们各不相同 我发现了这个问题 我不熟悉sql Server的功能和表设计,但问题是:回答这个问题的人说他们应该重新考虑设计,但我不能这样做。但是,我可以转换我已经拥有的,只要我还有10

基本上,我有很多文件和一些数据。每个都不同,有些缺少一些变量(null)等等,经典的东西

有趣的是,由于每个文件最多可以有1000个变量,并且至少有800个非空值,我想:“嘿,我需要1000列”。还有一件事要提的是,它们是整数、布尔、文本等等。它们因大小和类型而异。每个变量在所有文件中都小于100字节,尽管如此。它们各不相同

我发现了这个问题 我不熟悉sql Server的功能和表设计,但问题是:回答这个问题的人说他们应该重新考虑设计,但我不能这样做。但是,我可以转换我已经拥有的,只要我还有1000个变量

我愿意使用任何sql server,但我不知道什么最适合我的要求。如果做其他事情更好,请告诉我

我需要对这些数据做的是查看、比较和搜索。我不需要修改这些文件。我只想按原样使用它们,并将它们作为纯文本文件保存并从中读取,这需要“秒”的php运行时来查看“少数”文件中的数据,这太多了。甚至没有考虑到我需要检查1000个或更多这样的文件来进行任何搜索


所以问题是,拥有1000个++实体(每个实体有1000个变量)并搜索/比较其中任何我想要的变量的最快方法是什么?如果是SQL,那么哪种SQL server最适合这种类型的东西?

听起来您需要一种不同类型的数据库来完成您的工作。考虑一个文档数据库,如MunGDB,或者其他SQL数据库的一种味道,允许以不同的方式操作数据,而不是传统的表结构。
我刚看到便条上说你也在读书。我在一个类似的数据集上很幸运地使用了Solr。

听起来你需要一个不同类型的数据库来完成你的工作。考虑一个文档数据库,如MunGDB,或者其他SQL数据库的一种味道,允许以不同的方式操作数据,而不是传统的表结构。
我刚看到便条上说你也在读书。我在一个类似的数据集上很幸运地使用了Solr。

对于存储,XML可能是最好的方法。SQL中对XML的支持非常好。 对于查询,如果它们是直接SQL查询,那么1000多行并不多,XML将非常快。如果您正朝着一百万行以上的方向发展,您可能会希望从XML中提取最具选择性的数据,并分别对其进行索引


链接:

对于存储,XML可能是最好的方式。SQL中对XML的支持非常好。 对于查询,如果它们是直接SQL查询,那么1000多行并不多,XML将非常快。如果您正朝着一百万行以上的方向发展,您可能会希望从XML中提取最具选择性的数据,并分别对其进行索引


链接:

您想使用。这是非常常见的

您想要使用的。这是很常见的

你要求的最好的,我可以给出一个答案(我是如何解决的),但不能说这是不是最好的方式(在你的环境中),我有问题收集许多千台PC的库存数据(不是NSA-开玩笑)

我的想法是:

每台电脑一张桌子(你的文件?)

表文件: 每个文件一行,PK文件\u ID

表文件\u数据 文件中每列一行,PK file\u ID,ATTR\u ID,ATTR\u NAME,ATTR\u VALUE,(ATTR\u类型)

表文件_数据有点大(>1e6行),但是数据库处理得那么快

编辑:

最近,我的头发很短;我想为我的(仍在工作的)解决方案添加一些附加信息:

表“每个信息源”有两个以上的字段
PK,FILE_ID
ie.
isoource,ittype
,其中isoource和ITYPE数据来自何处(我有许多来源)以及它是什么基本信息类型。这有助于在查询中获得结构。搜索USB设备时,我不需要包含来自“开关”或“监视器”的数据(编辑:今天可能是)

属性表也有更多的字段。我在这里提到这两个文件:
isoource,ITYPE
,是的,与上面相同,但含义稍有不同,背后的想法相同

您必须在这些字段中输入什么,这完全取决于您的数据


我确信,如果你仔细看看,你必须收集什么信息,你会发现一些你要求的最好的“关键值”,我可以给出一个答案(我是如何解决的),但不能说这是不是最好的方式(在你的环境中),我有问题收集许多千台PC的库存数据(不是NSA-开玩笑)

我的想法是:

每台电脑一张桌子(你的文件?)

表文件: 每个文件一行,PK文件\u ID

表文件\u数据 文件中每列一行,PK file\u ID,ATTR\u ID,ATTR\u NAME,ATTR\u VALUE,(ATTR\u类型)

表文件_数据有点大(>1e6行),但是数据库处理得那么快

编辑:

最近,我的头发很短;我想为我的(仍在工作的)解决方案添加一些附加信息:

表“每个信息源”有两个以上的字段
PK,FILE_ID
ie.
isoource,ittype
,其中isoource和ITYPE数据来自何处(我有许多来源)以及它是什么基本信息类型。这有助于在查询中获得结构。搜索USB设备时,我不需要包含来自“开关”或“监视器”的数据(编辑:今天可能是)

属性表也有更多的字段。我在这里提到这两个文件:
ISOURCE,