Rumah pangkalan data tutorial mysql 探究DB2中RDF数据的特征并描述创建优化存储的流程

探究DB2中RDF数据的特征并描述创建优化存储的流程

Jun 07, 2016 pm 05:54 PM
db2 proses ciri

资源描述框架 (Resource Description Framework, RDF) 是一系列 W3 规范标准,主要支持数据和元数据的交换。凭借 IBM DB2 10 for Linux, UNIX, and Windows Enterprise Server Edition,应用程序可以存储和查询 RDF 数据。

本探究 RDF 数据的特征并描述创建优化存储的流程。此外,还将介绍如何使用 DB2 引擎或该应用程序对 RDF 存储提供细粒度访问控制。本文包含一个样例应用程序。

本教程是由三部分组成的系列文章 “RDB2 10 for Linux, UNIX, and Windows 中的资源描述框架应用程序开发” 的第 2 部分,让您在实际操作中体验 DB2 for Linux, UNIX, and Windows 软件和资源描述框架 (RDF) 技术的使用:

  • 本系列 第 1 部分 介绍了一个 RDF 应用程序的示范用用例,引导您完成构建这个应用程序的步骤,包括创建一个 RDF 存储、使用 SPARQL 查询进行数据查询,以及维护统计数据。第 1 部分提供了将 RDF 存储迁移到 DB2 软件的流程。
  • 第 2 部分涵盖以下高级主题:
    • 提供 RDF 数据特性以及 DB2 软件如何优化 RDF 数据存储的概述。
    • 描述创建优化存储的流程。
    • 将优化存储与您在第 1 部分为样例应用程序创建的默认存储进行比较,以便了解优化存储的优势。
    • 描述如何为 RDF 存储提供更细粒度的访问控制。本教程将引导您使用 DB2 引擎和样例应用程执行访问控制。

在第 2 部分中,我们将在第 1 部分的样例应用程序用例基础上进行构建。如果您尚未构建,查阅 第 1 部分 获取相关内容。

第 3 部分将介绍更多特定于 SPARQL 的特性,比如 DESCRIBE 和 CONSTRUCT 查询表单以及指定图表的联合。

默认存储和优化存储

回顾第 1 部分,DB2 软件支持两类 RDF 存储的创建:

  • 默认 RDF 存储 — 如果您没有正在加载的 RDF 数据相关信息或者如果没有合适的样例可用时,创建一个默认 RDF 存储。要创建这类存储,使用 createrdfstore RDF 命令。
  • 优化 RDF 存储 — 如果 RDF 数据集有代表性样例数据时,创建一个优化存储。优化存储可以根据您提供的 RDF 数据集提供一种优化模式。

本教程主要关注优化存储的创建。

RDF 数据的特征

无模式数据模型

RDF 数据模型是无模式的。不同于关系模型,每个表中列的数量是固定的,RDF 数据集没有固定数量的谓词。一个特定 RDF 主题可以有任意数量的谓词。此外,一个 RDF 数据集可以跨任意数量的域来存储数据,这进一步增强了该模型的 “无模式性”。因此,当将 RDF 数据映射到一个关系模式时,必须使用一种机制来支持 RDF 数据的无模式特性。

当映射 RDF 数据到关系模式时,处理无模式特性的最常见的机制是利用一个包含 3 列的表(三个列分别对应主题、谓词和对象)。使用该方法,每个三 元组位于该表中的一个新行中,因此,可以处理数目不定的谓词。然而,该映射伸缩性不是很好,有点性能问题,因为查询数据需要许多自联接以及无用的关系索引应用。例如,检索一个主题的两个谓词的一个简单查询涉及到一个自联接和两行获取。相比之下,同一数据的传统关系建模一行中有两个谓词,不需要任何联接,使用一个 fetch 语句就可以检索到数据。

无模式特性的处理

查询 RDF 数据时,DB2 软件在表中一行或者很少几行中存储关于一个主题的所有谓词和对象,从而减少了大量自联接需求。因为一个关系表必须有固定数量的列(由页面大小和列长度控制),该机制根据表中谓词分配给列的方式处理可变数量谓词。

DB2 软件使用两个机制来将谓词分配给表中的列:

  • 散列法 — 为减少散列冲突,使用一组散列函数而不是一个散列函数。散列法是随机的,尽管使用多个散列函数,仍然很容易出现冲突。如果出现冲突,将在表中创建一个新行。默认存储中使用的是散列机制。
  • 谓词关联 — 如果 RDF 数据的一个代表性样例可用,DB2 软件将计算 RDF 数据集中各种资源类型谓词之间的相关性。该软件使用这种相关性来分配谓词到表中的列。这将使我们能够更好地利用表中的空间,以及减少冲突几率。多个关联函数被用于进一步减少冲突几率。优化存储中使用谓词关联机制。

创建优化存储

使用 DB2 创建优化存储有多种方法。第 1 部分中的迁移场景使用 createrdfstoreandloader 命令创建优化存储。该命令将 RDF 数据批量加载到一个 DB2 。在批量加载情况下,可以料到输入数据是谓词跨不同资源类型相关联的范例。但是,您可能会在没有代表性数据来创建优化存储的情况下开始应用程序开发。在本例中,您有两种选择:

  • 首先开始创建默认存储,正如第 1 部分所述,使用默认存储直至生成足够数据(例如在应用程序系统 QA 周期中)。然后,您可以使用 DB2 数据库引擎计算默认存储的谓词相关性,并使用这些相关性信息来创建一个优化存储用于生产。在第 2 部分中我们将引导您完成这一机制。
  • 首先创建一个默认存储,然后使用 REORG 系列 DB2 RDF 命令将该存储重组为一个优化存储。更多信息,参阅 DB2 Information Center 主题 “Converting a default store to an optimized store”。

要使用谓词关联重新创建您在第 1 部分中创建的默认 staffing 存储作为一个优化存储:

  1. 使用现有存储,生成谓词映射。
  2. 使用谓词映射创建优化存储。

谓词映射 是数据集中的谓词和 DB2 RDF 存储(谓词存储在其中)的底层关系表中的列之间的一个映射。谓词映射是根据其中出现的各个 RDF 资源类型之间的谓词相关性决定的。这样做是为了在最少数量的列中包装 RDF 数据。

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Bagaimana untuk membuka berbilang akaun Toutiao? Apakah proses untuk memohon akaun Toutiao? Bagaimana untuk membuka berbilang akaun Toutiao? Apakah proses untuk memohon akaun Toutiao? Mar 22, 2024 am 11:00 AM

Dengan populariti Internet mudah alih, Toutiao telah menjadi salah satu platform maklumat berita paling popular di negara saya. Ramai pengguna berharap untuk mempunyai berbilang akaun pada platform Toutiao untuk memenuhi keperluan yang berbeza. Jadi, bagaimana untuk membuka berbilang akaun Toutiao? Artikel ini akan memperkenalkan secara terperinci kaedah dan proses permohonan membuka berbilang akaun Toutiao. 1. Bagaimana untuk membuka berbilang akaun Toutiao? Kaedah membuka berbilang akaun Toutiao adalah seperti berikut: Pada platform Toutiao, pengguna boleh mendaftar akaun melalui nombor telefon mudah alih yang berbeza. Setiap nombor telefon mudah alih hanya boleh mendaftar satu akaun Toutiao, yang bermaksud pengguna boleh menggunakan berbilang nombor telefon mudah alih untuk mendaftar berbilang akaun. 2. Pendaftaran e-mel: Gunakan alamat e-mel yang berbeza untuk mendaftar akaun Toutiao. Sama seperti pendaftaran nombor telefon mudah alih, setiap alamat e-mel juga boleh mendaftar akaun Toutiao. 3. Log masuk dengan akaun pihak ketiga

Adakah sauh tidur Douyin menguntungkan? Apakah prosedur khusus untuk penstriman langsung tidur? Adakah sauh tidur Douyin menguntungkan? Apakah prosedur khusus untuk penstriman langsung tidur? Mar 21, 2024 pm 04:41 PM

Dalam masyarakat yang serba pantas hari ini, masalah kualiti tidur melanda semakin ramai orang. Untuk meningkatkan kualiti tidur pengguna, sekumpulan sauh tidur khas telah muncul di platform Douyin. Mereka berinteraksi dengan pengguna melalui siaran langsung, berkongsi petua tidur dan menyediakan muzik dan bunyi yang menenangkan untuk membantu penonton tidur dengan tenang. Jadi, adakah sauh tidur ini menguntungkan? Artikel ini akan memberi tumpuan kepada isu ini. 1. Adakah sauh tidur Douyin menguntungkan? Douyin sleep anchor memang boleh mendapat keuntungan tertentu. Pertama, mereka boleh menerima hadiah dan pemindahan melalui fungsi pemberian tip dalam bilik siaran langsung, dan faedah ini bergantung pada bilangan peminat dan kepuasan penonton mereka. Kedua, platform Douyin akan memberikan sauh bahagian tertentu berdasarkan bilangan tontonan, suka, perkongsian dan data lain siaran langsung. Beberapa sauh tidur juga akan

Apakah perbezaan antara db2 dan sintaks oracle Apakah perbezaan antara db2 dan sintaks oracle Jul 05, 2023 am 10:39 AM

Perbezaan dalam sintaks antara db2 dan oracle: 1. Perbezaan sintaks SQL Walaupun db2 dan oracle kedua-duanya menggunakan bahasa pertanyaan berstruktur, mereka mempunyai beberapa perbezaan dalam sintaks 2. db2 dan oracle mempunyai jenis data yang berbeza, db2 boleh; ditakrifkan semasa mencipta jadual atau ditambah selepas menggunakan pernyataan "ALTER TABLE" Oracle perlu ditakrifkan bersama semasa mencipta jadual 4. Terdapat juga beberapa perbezaan dalam sintaks db2 dan prosedur dan fungsi yang disimpan.

Honkai Star Rail Melalui proses panduan misi Shadow of Death Honkai Star Rail Melalui proses panduan misi Shadow of Death Mar 28, 2024 pm 01:10 PM

Apa yang perlu dilakukan apabila melalui Bayangan Kematian di Kereta Api Kubah Bintang Runtuh? Walking through the Shadow of Death ialah salah satu pencarian utama [Cat among Doves], dan ia juga merupakan peringkat akhir pencarian utama Di bawah, editor akan memberikan penjelasan terperinci tentang misi Walking through the Shadow of Death Kereta Api Kubah Bintang Runtuh, bagi mereka yang berminat Mari lihat. 1. Selepas menyelesaikan plot sebelumnya, anda akan dipindahkan secara automatik ke lokasi dalam gambar di bawah. Selepas bercakap dengan 7 Mac, anda akan masuk ke dalam penjara [Stone Heart Ten] Weird Placer Gold, dengan empat pasukan dadu, jika mata anda lebih besar daripada emas pasir, anda tidak akan dipukul dan selepas tamat, jumlah kemahiran penamat akan dipulihkan sepenuhnya. Jika kurang daripada itu, anda akan dipukul watak serangan kumpulan untuk mendapatkan mata. dalam bos

Penjelasan terperinci dan strategi pengoptimuman proses pemprosesan permintaan php-fpm Penjelasan terperinci dan strategi pengoptimuman proses pemprosesan permintaan php-fpm Jul 07, 2023 pm 01:52 PM

Penjelasan terperinci dan strategi pengoptimuman proses pemprosesan permintaan php-fpm 1. Pengenalan Dalam pembangunan aplikasi web, PHP ialah bahasa skrip sebelah pelayan yang sangat popular. Dan php-fpm (FastCGIProcessManager) ialah pengurus PHP, digunakan untuk memproses permintaan PHP. Artikel ini akan memperkenalkan proses pemprosesan permintaan php-fpm secara terperinci, dan membincangkan cara mengoptimumkan php-fpm dan meningkatkan prestasi aplikasi web. 2. proses pemprosesan permintaan php-fpm Apabila pelanggan memulakan permintaan

Honkai Star Rail Semua kisah sedih proses panduan misi Honkai Star Rail Semua kisah sedih proses panduan misi Mar 28, 2024 pm 01:26 PM

Apa yang perlu dilakukan dengan semua kisah sedih Kereta Api Kubah Bintang Runtuh? Semua Kisah Sedih adalah sebahagian daripada pencarian utama [Kucing di antara Burung Merpati]. pandangan. 1. Selepas melengkapkan peringkat sebelumnya, anda akan secara automatik dipindahkan ke peta baharu kedua [Taman Filem dan Televisyen Jubah]. plot, pergi ke Bercakap dengan kanak-kanak di kedudukan ke-4 dan selesaikan permainan mini [Speed ​​​​and Nuts]. 3. Kemudian tugas menjejak adalah untuk terbang dari kedudukan 1 [mesin pinball] dalam gambar di bawah ke kedudukan 2 4. Selepas tiba di kedudukan dalam gambar di bawah, anda perlu berjalan melalui maze Selepas masuk dari kiri, teruskan berjalan ke kanan untuk mencapai titik tugas 15.

Bagaimana untuk menukar dataset IRIS Scikit-learn kepada dataset dengan hanya dua ciri dalam Python? Bagaimana untuk menukar dataset IRIS Scikit-learn kepada dataset dengan hanya dua ciri dalam Python? Aug 30, 2023 pm 09:49 PM

Iris, set data bunga berbilang variasi, ialah salah satu set data pembelajaran pyhtonscikit yang paling berguna. Ia dibahagikan kepada 3 kategori, dengan 50 contoh setiap satu, dan mengandungi ukuran bahagian sepal dan kelopak tiga jenis bunga iris (Iris mountaina, Iris virginia dan Iris versicolor). Di samping itu, set data Iris mengandungi 50 kejadian bagi setiap satu daripada tiga spesies dan terdiri daripada empat ciri, iaitu sepal_length(cm), sepal_width(cm), petal_length(cm), petal_width(cm). Kami boleh menggunakan Analisis Komponen Utama (PCA) untuk mengubah set data IRIS menjadi ruang ciri baharu dengan 2 ciri. Langkah yang boleh kita ikuti

Perkongsian pengalaman pembangunan Vue: pengalaman dalam mengoptimumkan proses pembangunan dan kecekapan kerja Perkongsian pengalaman pembangunan Vue: pengalaman dalam mengoptimumkan proses pembangunan dan kecekapan kerja Nov 22, 2023 am 10:53 AM

Vue.js ialah rangka kerja JavaScript yang popular untuk membina antara muka pengguna dan aplikasi satu halaman. Sintaksnya yang ringkas, fleksibiliti dan fungsi yang berkuasa menjadikannya pilihan pertama bagi banyak pembangun. Dalam pembangunan projek baru-baru ini, saya dan pasukan saya telah mengumpul beberapa pengalaman dalam mengoptimumkan proses pembangunan dan kecekapan kerja, yang kami ingin kongsikan dengan anda. Pertama sekali, sebagai asas untuk pembangunan Vue.js, kita mesti memahami sepenuhnya ekosistem dan konsep teras Vue.js. Konsep teras Vue.js termasuk sistem dipacu data dan komponen

See all articles