Skip to content

ナレッジストア

SQLite と Obsidian Vault のデュアルストレージアーキテクチャです。

デュアルストア構成

mermaid
flowchart TB
    subgraph Input["入力"]
        Analyzer["AI分析パイプライン"]
        OSSVerifier["OSS検証エンジン"]
    end

    subgraph Primary["プライマリストア: SQLite"]
        DB["SQLite + FTS5"]
        Search["全文検索"]
        API["API クエリ"]
        Stats["統計・分析"]
    end

    subgraph Secondary["セカンダリストア: Obsidian"]
        Vault["Obsidian Vault"]
        MOC["MOC\n(Map of Content)"]
        Notes["個別ノート"]
        Graph["Graph View"]
    end

    Analyzer --> DB
    OSSVerifier --> DB
    DB --> Search
    DB --> API
    DB --> Stats
    DB -->|"エクスポート\n(定期実行)"| Vault
    Vault --> MOC
    Vault --> Notes
    MOC --> Graph

SQLite ストア

FTS5 全文検索

SQLite の FTS5 拡張を使用して高速な全文検索を実現します。

sql
-- FTS5 仮想テーブル
CREATE VIRTUAL TABLE bookmark_fts USING fts5(
  text,
  authorName,
  authorHandle,
  tags,
  content=Bookmark
);

クエリ例

sql
-- キーワード検索
SELECT * FROM bookmark_fts WHERE bookmark_fts MATCH 'AI agent';

-- フレーズ検索
SELECT * FROM bookmark_fts WHERE bookmark_fts MATCH '"vector database"';

-- AND/OR 検索
SELECT * FROM bookmark_fts WHERE bookmark_fts MATCH 'rust AND wasm';

Obsidian エクスポート

ディレクトリ構造

Vault/
  Bookmarks/
    AI-Tools/
      @openai - GPT-4 is now... (1234567890).md
      @anthropic - Claude 3.5... (9876543210).md
      AI-Tools.md                ← MOC
    DevOps/
      @github - Actions now... (1111111111).md
      DevOps.md                  ← MOC
    OSS-Reports/
      example-tool.md            ← OSS検証レポート
      OSS-Reports.md             ← MOC

ノートフォーマット

markdown
---
tags:
  - ai
  - llm
  - gpt4
categories:
  - AI-Tools
author: "@openai"
tweetId: "1234567890"
url: "https://x.com/openai/status/1234567890"
date: 2025-01-15
sentiment: positive
confidence: 0.92
---

# @openai - GPT-4 is now available...

ツイート本文がここに入る。

## 関連リンク

- [元ツイート](https://x.com/openai/status/1234567890)

## AI分析

- **アクション**: read_later
- **トピック**: AI/ML, LLM
- **感情**: positive

MOC (Map of Content)

各カテゴリの MOC ファイルは、そのカテゴリに属するノートへのリンク一覧です:

markdown
# AI-Tools

## ノート一覧

- [[AI-Tools/@openai - GPT-4 is now... (1234567890)]]
- [[AI-Tools/@anthropic - Claude 3.5... (9876543210)]]

## 統計

- ノート数: 42
- 最終更新: 2025-01-15

同期戦略

mermaid
sequenceDiagram
    participant DB as SQLite
    participant Export as エクスポーター
    participant Vault as Obsidian Vault

    Note over Export: 定期実行(daily-sync.sh の最後)
    Export->>DB: 前回エクスポート以降の更新を取得
    DB-->>Export: 新規・更新ブックマーク
    loop 各ブックマーク
        Export->>Export: Markdown 生成
        Export->>Vault: ファイル書き込み
    end
    Export->>Vault: MOC 再生成
    Export->>DB: エクスポート日時を記録

競合解決

  • SQLite が信頼できる唯一のソース (Single Source of Truth)
  • Obsidian 側での編集は次回エクスポートで上書きされる
  • ユーザーの手動メモは ## ユーザーメモ セクションに書くことで保持される(エクスポーターがこのセクションを保護)