7)Versant数据库的对象查询
Versant数据库可以支持SQL查询和NOSQL查询两种模式,以下为在查到第一个目标对象,之后采用NOSQL方式,自动执行朋友圈子遍历的例子:
VQLQuery q = new VQLQuery(
session,
DistributedDatabaseManager.getInstance().HPC_DEMO_NETWORK_NAME,
"select selfoid from com.versant.domain.Person where firstName='AAF1' and lastName='AAL1'");
//"select * from com.versant.domain.Person");
System.out.println("About to execute query, and load root object.");
VEnumeration results = q.execute();
// 创建已经走过的朋友路径,避免回环
System.out
.println("--------------------------------------------------------------------------");
long middleTime = System.currentTimeMillis();
HashSet<Person> friendSet = new HashSet<Person>();
if (results.hasMoreElements()) {
Person person = (Person) results.nextElement();
friendSet.add(person);
System.out.println("Start Person found:" + person.getFirstName()
+ "/" + person.getLastName()
+ ", about to print friend path.");
Iterator ite = person.getFriends().iterator();
System.out.print("<<< -> " + person.getFirstName() + "/"
+ person.getLastName());
while (ite.hasNext()) {
Person aFriend = (Person) ite.next();
if (!inFriendCircle(aFriend, friendSet)) {
System.out.print("--> " + aFriend.getFirstName() + "/"
+ aFriend.getLastName());
printFriendPath("--> ", aFriend, friendSet);
}
}
System.out.println(" >>>");
} else {
System.out.println("No root person found.");
}
long endTime = System.currentTimeMillis();
分享到:
相关推荐
【Cassandra 分布式模型与源代码分析】 Cassandra 是一个开源的分布式数据库系统,源自 Facebook,后来成为了 Apache 项目的一部分。它的设计灵感来源于 Dynamo 和 Bigtable,融合了两者的关键特性。Cassandra 提供...
分布式AI系统源代码.zip是一个包含有关分布式人工智能系统开发的源代码集合。...通过对这些源代码的深入理解和修改,开发者可以定制自己的分布式AI解决方案,适应特定业务需求,并提升系统的性能和效率。
7. **高性能与优化**:Chapter 11可能涵盖了性能分析和优化技巧,例如内存管理、缓存策略、算法优化以及代码性能基准测试。 8. **测试与持续集成**:在Chapter 13中,可能介绍了单元测试、集成测试的实施,以及如何...
分布式系统是现代软件架构的核心组成部分,它通过将单一业务拆分成多个子业务并部署在不同的服务器上,以提升系统的处理能力和可用性。集群和分布式是两种常见的分布式系统形态。 集群是指将同一业务逻辑部署在多台...
TCC(Try/Confirm/Cancel)机制是一种用于处理分布式事务的补偿型事务模式,旨在提供高性能和低延迟的解决方案。本文将深入探讨基于TCC机制的分布式事务管理器——ByteTCC。 ByteTCC是一个开源项目,其核心目标是...
Java基于Netty实现的高性能分布式IM即时通信系统源码+项目说明.tar 介绍 `RIM`是基于Netty实现的面相开发者的高性能分布式即时通信系统,保证消息的实时性、有序性、可靠性。 ## 技术栈 | 名称 | 作用 | | -------...
Cloudera Impala 是一款用于查询存储在 Hadoop 分布式文件系统 (HDFS) 和 HBase 中的数据的高性能 MPP (Massively Parallel Processing) SQL 引擎。它能够提供与传统商业数据仓库相当的性能,同时具备 Hadoop 的扩展...
图书管理系统采用分布式设计,可以提高系统的可扩展性和可用性,允许在多台机器上部署服务以应对高并发和大量数据处理。 - 分布式系统的关键挑战包括一致性、容错性和性能优化,RPC在此扮演了关键角色,使得不同...
FastDFS是一款开源的高性能、轻量级的分布式文件系统,主要设计目标是为互联网应用提供大规模的文件存储解决方案。在本示例中,"fastDFSDemo" 是一个基于FastDFS开发的应用演示,用于帮助开发者理解和实践FastDFS的...
总的来说,这个项目提供了一个完整的高性能分布式爬虫解决方案,通过Flask、MongoDB和Redis的组合,实现了高效的数据抓取、存储和分布式处理。对于学习Python爬虫、分布式系统和数据库管理的开发者来说,这是一个...
分布式航空订票系统,作为一项先进的IT应用,基于分布式计算技术构建,旨在通过多个节点协同工作,提供高可用性、高扩展性和高性能的航空票务服务。分布式系统通过将数据和处理逻辑分布在不同的计算机上,能够有效...
综上所述,"分布式地质灾害协同预警系统源代码"涵盖了后端开发、数据库管理、串口通讯等多个关键技术领域,每个环节都对系统的性能、稳定性和实用性起着决定性作用。通过对这些技术的深入理解和应用,可以构建出一个...
MooseFS,全称为“Moose File System”,是一款开源的分布式文件系统,旨在提供高可用性、可扩展性和性能。它的设计目标是处理大规模的数据存储需求,尤其适合那些需要大量读取操作和对数据持久性有高要求的应用场景...
在当今的互联网时代,商城系统的复杂性和规模日益增大,传统的单体架构已经无法满足高并发、高性能以及可扩展性的需求。因此,采用分布式架构来开发商城系统成为了一种主流趋势。本篇将详细介绍如何使用Eclipse这一...
Seata(Simple Extensible Autonomous Transaction Architecture)是一个开源的分布式事务框架,旨在提供高性能和简单易用的企业级分布式事务服务。InfiniVision公司为Seata开源社区贡献了Go-TaaS这一组件,使得...
在"surging-master"这个压缩包中,包含了Surging框架的源代码,这为开发者提供了深入学习和定制的机会。你可以通过阅读源码了解其内部的工作原理,或者根据自己的需求对其进行扩展。 总的来说,Surging是一个功能...
《Tigase Server 7.0.1 源代码详解》 Tigase Server,作为一款基于Java语言开发的轻量级、可伸缩...通过对源代码的学习和研究,开发者可以深入理解Jabber/XMPP服务器的工作原理,进而创建出符合自己需求的IM解决方案。
1. MySQL:作为项目的数据库,MySQL以其高性能、易用性以及开源特性,被广泛应用于各种Web应用中。在电子商城项目中,可能包含用户信息表、商品信息表、订单信息表、购物车表等多个数据库表,用于存储和管理商城的...
在大规模部署中,Pentaho支持分布式和集群配置,以提高性能和可用性。源代码中包含了对Hadoop等大数据技术的集成,实现了数据的并行处理。 8. **安全性与权限管理** Pentaho内置了用户管理和权限控制功能,源码...
《分布式Java应用:基础与实践》这本书很可能会涵盖以上这些主题,并且可能提供了源代码和案例来辅助读者理解和实践。通过学习和掌握这些知识,开发者将能够设计和实现复杂的企业级分布式Java应用,应对各种挑战,如...