信息架构师面临的最有趣挑战之一是,需要大型、专有、广泛分布的数据存储来处理特定研究问题的情况。了解挖掘分布式数据源所涉及到的困难和已确定的用来处理这些问题的策略。
拥有分布式数据的组织所面临的挑战
数据存储能力的爆炸式增长和快速的网络通信协议已使得组织能够收集和存储有关特定主题的超大信息量。这些数据库的大小可能达到 PB(1 x 10^15 字节,或百万兆字节)以上——真正是令人瞠目结舌的数据量!这样的大规模信息存储通常出现在研究应用领域(例如生物学、医学、物理学和天文学)和政府机构(例如美国国税局、国防部和劳工部)中。它们也可能出现在商业中:例如,针对承保风险的保险计算。
政府机构通常需要共享数据,但是不同的数据模式、接口和通信技术使得这些数据的传输变得复杂化。对于敏感信息来说尤其是如此,例如国防部或国土安全部使用的信息。这些机构通常拥有遗留系统,那些系统是专有的,难于扩展,或以其他方式对外部系统是封闭的。存储在这些系统中的信息可能具有各种各样的二进制格式,其中某些格式不再具有适当的文档说明。使这种情况进一步复杂化的是,相关数据可能散布在多个系统之中,承载在不同的网络上,或者驻留在各种各样的物理位置。
企业在收购另一家公司时,通常面临着广泛分布的数据问题。在这种情况下,两家公司的系统很少会兼容,从而在挖掘合并后的公司以获取常见的利润、损失、风险和成本问题的答案时,会产生大量难题。还可能会出现产品或服务供应、配送、库存管理、调度等方面的问题。集成这些不同数据源所需的成本对新合并的公司来说是一项非常大的开支。
研究人员重点关注新知识的发现。为了获取新知识,他们通常需要查找并了解其他研究人员以前的发现。现在存在着包含有关整个人类基因组(以及其他物种的基因组)、天文观察、粒子物理学、药物发明和其他许多领域的信息的大规模数据库。人们面临的挑战不再是收集信息,而是挖掘数据以回答特定研究问题——例如人类基因组比果蝇的基因组小如此多的矛盾。这些数据库位于全世界的研究中心,每个数据库具有自己的独特存储结构、访问接口和通信协议。希望与同事协作的研究人员必须能够容易地在数据存储之间来回传递信息,并拥有高效的数据处理机制。
提供了这些数据存储的大规模散布性质,挑战在于组织如何发现、访问和有效地使用分布式数据。
技能和能力
分布式数据挖掘的问题有许多考虑因素,但是主要存在三个关注事项:发现信息、安全地访问信息和足够高效地传输数据以满足处理需要。
数据挖掘
分布式数据源数据挖掘的第一个问题是发现。除非您能够找到感兴趣的数据,否则您能够使用该数据源的可能性是非常低的。发现机制各不相同,但是可将它们归入两个主要类别:静态发现和动态发现。静态发现 是手动确定数据源系统,并预先配置处理系统以在其处理中使用所确定的源。此方法最常见但是最不灵活。如果较新的源变得可用,则无法保证合并新的源。可能的情况是,除非某人注意到了新的源,否则新的源将不会被使用。较灵活(但是更难于实现)的机制是动态发现适当的数据源。动态发现 是统一描述、发现和集成(Universal Description Discovery and Integration,UDDI)以及开放网格服务基础结构(Open Grid Service Infrastructure,OGSI)背后的基本思想。数据源将其功能和内容注册到中央注册中心,在运行时可以查询中央注册中心以寻找与您的处理需要相匹配的数据源(例如,用于巡天搜索的天文数据库)。
在发现数据源以后,下一步是获得对该信息的访问权限。获得访问权限涉及到两个安全问题中的第一个问题(请参阅安全性部分):对许可用户进行身份验证。存在许多对远程用户进行身份验证的协议,例如来自受信任来源的证书或安全令牌。但是对于分布式数据库,每个源可能使用单独的机制。请考虑在获得对多个数据存储(其中所有数据存储都需要不同的身份验证技术)的访问权限时所存在的困难。这是分布式处理模型的一个主要问题,并且是一个重要的研究和标准化领域。
一旦获得了对远程数据源的访问权限,下一个问题就是数据传输。此步骤中的困难源自于相关数据源的大小——通常在 TB 或 PB 的范围内——使得通过远程连接检索数据变得不切实际。在此情况下,您有两种可能的选择:批量检索数据以便在本地处理,或者在远程平台上执行处理。第一种情况的示例是 SETI_cnnew1@HOME 项目(请参阅参考资料),其中数据包被分发到志愿者处理站点,在本地执行转换,然后传回中央服务器进行合并和分析。第二种情况的示例是执行与特定 DNA、RNA 或蛋白序列匹配的基因基本序列搜索 (BLAST)。
最后,在完成处理之后,您需要合并源信息或处理结果以便分析。正如前面指出的,可能需要从远程数据源检索数据或在本地合并处理结果。合并信息要求以共同的方式对数据进行组织。否则,将每个数据条目从一个源数据系统映射到另一个源数据系统将非常耗时。
安全性
分布式处理的安全性受到以下情况的影响:需要通过可能不安全的介质(例如 Internet)将信息从一个站点传输到另一个站点。除了提及所涉及的问题和某些可用的技术之外,本文将不讨论安全性。对于许多交互方彼此之间可能直接了解也可能不了解的情况,解决分布式安全管理问题的一种方法是使用联合网络模型(请参见图 1)。
本文转自IBM Developerworks中国
请点击此处查看全文