Unstructured data, such as images and videos, are growing stringently, and the unprecedented growth of interconnected unstructured data could be viewed as graphs. Thus, the node properties of Graph would be the unstructured data, and querying such data in a graph is widespread in different real-world applications. Some systems and techniques are proposed to query unstructured data in a graph to meet such demand. However, current query unstructured data in a graph is executed by various tasks in different systems and loses the possibility to optimize such queries in an engine. In this work, we build a graph database namely PandaDB to support querying unstructured data in the graph. We at first introduce CypherPlus, a query language to enable users to express complex graph queries for understanding the semantic of unstructured data. Next, we develop a cost model and related query optimization techniques to speed up the unstructured data processing. In addition, we optimize the data storage and index to speed up the query processing in a distributed setting. The implementation of PandaDB is open source based on Neo4j. The results show PandaDB can support a large scale of unstructured data query processing in a graph e.g., more than a billion unstructured data items. We would present the best of practice while deploying the system into real applications.
翻译:无结构化数据,如图像和视频,正在严格增长,相互关联的无结构化数据史无前例的增长可被视为图表。因此,图的节点属性将是非结构化数据,在不同的现实世界应用程序中,在图表中查询这些数据是广泛的。一些系统和技术提议在图表中查询无结构化数据以满足这种需求。但是,图表中的当前查询无结构化数据是由不同系统的不同任务执行的,并且失去了在引擎中优化查询的可能性。在这项工作中,我们建立了一个图形数据库,即PandaDB,以支持在图表中查询非结构化数据。我们首先引入了CypherPlus,这是一种查询语言,使用户能够表达复杂的图表查询,以了解非结构化数据的语义。接下来,我们开发了一个成本模型和相关查询优化技术,以加快未结构化数据处理的速度。此外,我们优化了数据存储和索引,以加速在分布式设置中进行查询。PandaDB的落实是建立在NEEE4j上的开放源。我们首先引入了CypherPadPadplus, 一种查询语言,使用户能够表达复杂的图表中的非结构化数据程序,而我们则在不进行更大规模的数据结构化的数据处理。