English 中文(简体)
数据关系或寻找更好的业绩?
原标题:DataSet Relations or linq searching for better performance?

We have two tables:
Parent
ID: Integer //Primary Key
Name: String

Child
FK: Integer //Reference to Parent.ID
MoreInfo: String

父母有10万个牢房,儿童有10 000个牢房(父母的许多牢房没有用于儿童)

目前,我们确实:

MyDS.Relations.Add("PC", MyDS.Tables["Parent"].Columns["ID"],
                         MyDS.Tables["Child"].Columns["FK"]);
foreach (DataRow drChild in MyDS.Tables["Child"].AsEnumerable())
  DataRow drParent = drChild.GetParentRows(MyDS.Relations["PC"]).FirstOrDefault();

我们正想与林克进行手工搜查:

foreach (DataRow drChild in MyDS.Tables["Child"].AsEnumerable())
  DataRow drParent = MyDS.Tables["Parent"].AsEnumerable().FirstOrDefault(
                                   drParent => drParent["ID"] == drChild["FK"]);

该表只经过一次,然后处理数据集。 任何人在使用一种方法或另一种方法时,都会在方法1中形成一种时间浪费的关系,如果只是一次使用的话?

最佳回答

建立这种关系肯定会浪费时间。

每当评估两个潜在的解决问题办法时,你应始终比较每个选择的成本/时间。 你们通常可以呼吁哪一个选择更好。 需要牢记的是,存在数据校正,以优化这些类型的调查。

如果将数据计算列入现有表格,则需要增加约125个数字(通过数据基绘制父母/子女行程所需的斜线)。

使用数据校对10 000个儿童行中的每个只需要70万个孩子,如果只使用上文所记载的林克办法,则需要超过4分钟。

当你想到这一点时,这是第一次将超过10 000个孩子的牢房,并利用数据校正数据基来研究家长的成长(所有10万父母都不需要洗手)。 然而,第二种解决办法必须绕过每个儿童行(10 000)和通过100 000个母行搜寻,以找到适当的配对(10 000×100 000=1 000 000 000 000)。

问题回答

暂无回答




相关问题
Anyone feel like passing it forward?

I m the only developer in my company, and am getting along well as an autodidact, but I know I m missing out on the education one gets from working with and having code reviewed by more senior devs. ...

NSArray s, Primitive types and Boxing Oh My!

I m pretty new to the Objective-C world and I have a long history with .net/C# so naturally I m inclined to use my C# wits. Now here s the question: I feel really inclined to create some type of ...

C# Marshal / Pinvoke CBitmap?

I cannot figure out how to marshal a C++ CBitmap to a C# Bitmap or Image class. My import looks like this: [DllImport(@"test.dll", CharSet = CharSet.Unicode)] public static extern IntPtr ...

How to Use Ghostscript DLL to convert PDF to PDF/A

How to user GhostScript DLL to convert PDF to PDF/A. I know I kind of have to call the exported function of gsdll32.dll whose name is gsapi_init_with_args, but how do i pass the right arguments? BTW, ...

Linqy no matchy

Maybe it s something I m doing wrong. I m just learning Linq because I m bored. And so far so good. I made a little program and it basically just outputs all matches (foreach) into a label control. ...

热门标签