ホームページ データベース mysql チュートリアル 探究DB2中RDF数据的特征并描述创建优化存储的流程

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

Jun 07, 2016 pm 05:54 PM
db2 プロセス 特徴

资源描述框架 (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 数据。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

複数の Toutiao アカウントを開くにはどうすればよいですか? Toutiao アカウントを申請するプロセスはどのようなものですか? 複数の Toutiao アカウントを開くにはどうすればよいですか? Toutiao アカウントを申請するプロセスはどのようなものですか? Mar 22, 2024 am 11:00 AM

モバイルインターネットの人気により、Toutiao は私の国で最も人気のあるニュース情報プラットフォームの 1 つになりました。多くのユーザーは、さまざまなニーズを満たすために Toutiao プラットフォームで複数のアカウントを持つことを望んでいます。では、複数の Toutiao アカウントを開くにはどうすればよいでしょうか?この記事ではToutiaoアカウントを複数開設する方法と申請手順を詳しく紹介します。 1. 複数の Toutiao アカウントを開くにはどうすればよいですか?複数の Toutiao アカウントを開設する方法は次のとおりです。 Toutiao プラットフォームでは、ユーザーはさまざまな携帯電話番号を使用してアカウントを登録できます。各携帯電話番号で登録できる Toutiao アカウントは 1 つだけです。つまり、ユーザーは複数の携帯電話番号を使用して複数のアカウントを登録できます。 2. 電子メール登録: 別の電子メール アドレスを使用して Toutiao アカウントを登録します。携帯電話番号の登録と同様に、各メール アドレスでも Toutiao アカウントを登録できます。 3. サードパーティのアカウントでログインします

Douyin スリープアンカーは儲かりますか?睡眠ライブストリーミングの具体的な手順は何ですか? Douyin スリープアンカーは儲かりますか?睡眠ライブストリーミングの具体的な手順は何ですか? Mar 21, 2024 pm 04:41 PM

今日のペースの速い社会では、睡眠の質の問題に悩まされる人がますます増えています。ユーザーの睡眠の質を向上させるために、特別な睡眠アンカーのグループがDouyinプラットフォームに登場しました。ライブ配信を通じてユーザーと交流し、睡眠のヒントを共有し、視聴者が安らかに眠りにつくのを助けるリラックスできる音楽やサウンドを提供します。では、このスリープアンカーは儲かるのだろうか?この記事ではこの問題に焦点を当てます。 1.Douyin スリープアンカーは儲かりますか? Douyin スリープアンカーは確かに一定の利益を得ることができます。まず、ライブ配信ルームの投げ銭機能を通じてギフトや送金を受け取ることができ、これらの特典はファンの数と視聴者の満足度によって異なります。次に、Douyin プラットフォームは、生放送の視聴数、いいね、シェア、その他のデータに基づいてアンカーに一定のシェアを与えます。一部のスリープアンカーは、

db2 と oracle の構文の違いは何ですか db2 と oracle の構文の違いは何ですか Jul 05, 2023 am 10:39 AM

db2 と oracle の構文の違い: 1. SQL 構文の違い: db2 と oracle は両方とも構造化照会言語を使用しますが、構文にいくつかの違いがあります; 2. db2 と oracle のデータ型は異なります; 3. 外部キー制約の定義、db2 は次のことができます。テーブルの作成時に定義するか、「ALTER TABLE」ステートメントを使用して追加する必要があります。Oracle はテーブルの作成時に一緒に定義する必要があります。4. db2 と oracle のストアド プロシージャおよび関数の構文にもいくつかの違いがあります。

死の影を越えて崩壊したスタードーム鉄道のミッション攻略ガイド 死の影を越えて崩壊したスタードーム鉄道のミッション攻略ガイド Mar 28, 2024 pm 01:10 PM

崩壊したスタードーム鉄道で死の影を通過する場合はどうすればよいですか? Walking through the Shadow of Death は、メイン クエスト [Cat between Doves] の 1 つであり、メイン クエストの最終段階でもあります。以下では、編集者がこの Shadow of Death のミッションについて詳しく説明します。崩壊したスタードーム鉄道、興味のある方はぜひ見に来てください。 1. 前段階のプロットを完了すると、自動的に下の写真の場所に移動します。3 月 7 と会話した後、ダンジョンに入場します。チームを結成することを忘れないでください。 2. バックアッププランは戦うことです。 [ストーン ハート テン] 奇妙な砂金、4 つのチームで構成されます。最高のキャラクター戦術とフィニッシュ スキルはグループ攻撃であり、盾と牛乳を持参するのが最善です。この [ストーン ハート テン] 奇妙な砂金はヒットするのが困難です。サイコロを振って、得点が砂金より多ければ負けません、終了後は必殺技の量が全回復します、それ以下だと負けますので頑張ってください。グループ攻撃キャラクターを連れてポイントを獲得します。上司で

崩壊した星鉄道の悲しい物語のすべて ミッション攻略ガイド 崩壊した星鉄道の悲しい物語のすべて ミッション攻略ガイド Mar 28, 2024 pm 01:26 PM

崩壊したスタードーム鉄道の悲しい物語をどうするか? All Sad Stories はメイン クエスト [Cat between Pigeons] の一部です。この段階のプロセスは比較的長いです。以下では、編集者が崩壊したスター ドーム鉄道の All Sad Stories クエストについて詳しく説明します。友達、ぜひ参加してください。一見。 1. 前のステージを完了すると、自動的に 2 番目の新しいマップ [クローク映画テレビ公園] に移動します。1 [ピンボール マシン] から 2 の場所までミッションを進め、3 番目のキャラクターをフォローします。プロットを作成し、4番目の位置の子供に話しかけ、ミニゲーム[スピードとナッツ]を完了します。天天クールランに似たミニゲームは非常に簡単です。 3. 次に、追跡タスクは、下の写真の位置 1 [ピンボール マシン] から位置 2 まで飛行することです 4. 下の写真の位置に到着したら、迷路を歩く必要があります。右に歩くとタスクポイント 15 に到達します。

php-fpmリクエスト処理プロセスの詳細な説明と最適化戦略 php-fpmリクエスト処理プロセスの詳細な説明と最適化戦略 Jul 07, 2023 pm 01:52 PM

php-fpm リクエスト処理プロセスの詳細な説明と最適化戦略 1. はじめに Web アプリケーション開発において、PHP は非常に人気のあるサーバーサイド スクリプト言語です。 php-fpm (FastCGIProcessManager) は PHP のマネージャーであり、PHP リクエストを処理するために使用されます。この記事では、php-fpm のリクエスト処理プロセスを詳しく紹介し、php-fpm を最適化して Web アプリケーションのパフォーマンスを向上させる方法について説明します。 2. php-fpmリクエスト処理プロセス クライアントがリクエストを開始したとき

Scikit-learn の IRIS データセットを Python の 2 つの特徴だけを持つデータセットに変換するにはどうすればよいですか? Scikit-learn の IRIS データセットを Python の 2 つの特徴だけを持つデータセットに変換するにはどうすればよいですか? Aug 30, 2023 pm 09:49 PM

多変量の花のデータセットである Iris は、最も有用な pyhtonscikit-learn データセットの 1 つです。これは 3 つのカテゴリに分けられ、それぞれ 50 個のインスタンスがあり、3 種類のアイリスの花 (アイリス マウンテナ、アイリス バージニア、アイリス バーシカラー) のがく片と花びらの部分の測定値が含まれています。これに加えて、アヤメのデータセットには 3 種それぞれのインスタンスが 50 個含まれており、がく片長 (cm)、がく片幅 (cm)、花びら長さ (cm)、花びら幅 (cm) という 4 つのフィーチャで構成されています。主成分分析 (PCA) を使用して、IRIS データセットを 2 つの特徴を持つ新しい特徴空間に変換できます。私たちが従うことができる手順

Vue 開発経験の共有: 開発プロセスと作業効率の最適化に関する経験 Vue 開発経験の共有: 開発プロセスと作業効率の最適化に関する経験 Nov 22, 2023 am 10:53 AM

Vue.js は、ユーザー インターフェイスやシングルページ アプリケーションを構築するための人気のある JavaScript フレームワークです。その簡潔な構文、柔軟性、強力な機能により、多くの開発者の最初の選択肢となっています。最近のプロジェクト開発において、私のチームと私は開発プロセスと作業効率の最適化に関して経験を蓄積してきましたので、それを皆さんと共有したいと思います。まず、Vue.js 開発の基礎として、Vue.js のエコシステムと中心となる概念を完全に理解する必要があります。 Vue.js の中核となる概念には、データ駆動型システムとコンポーネント システムが含まれます

See all articles