Show HN: オブジェクトストレージ上に構築されたグラフデータベース HelixDB

2026/06/11 0:47

Show HN: オブジェクトストレージ上に構築されたグラフデータベース HelixDB

RSS: https://news.ycombinator.com/rss

要約

Japanese Translation:

HelixDB は、グラフ、ベクトル、KV、ドキュメント、および関係データモデルを 1 つのレイヤーに統合して個別のデータベースレイヤーを不要にする、AI アプリケーション向けに一貫性を備えたデータベースプラットフォームです。本プラットフォームは、ビルドやデプロイの手順を必要とせずに Rust または TypeScript でクエリを書けるようにすることで開発を簡素化します:Rust 版では

helix-db
クレートを使用し、TypeScript 版では
fetch
を通じてサービスと対話します。初歩的な設定には CLI のインストールが含まれ、その後インタラクティブな
helix chef
ツールを実行してワンショットでのブートストラップとコーディングエージェント(Claude Code や Codex など)に適したプロジェクトのスケルデンを生成したり、
helix init
helix start dev
helix query
などのコマンドを用いて手動でローカル環境をセットアップしたりできます。ローカル開発ではデフォルトとしてメモリ内ストレージが使用され、必要に応じて
--disk
フラグまたはログストリーミング用の
--foreground
フラグによってパシスtent ディスクモードへの切り替えやログのストリーミングが可能です。HelixDB はさらに、オブジェクトストレージで裏付けられたマネージド型の高可用性クラウドサービスを提供し、自動スケーリングリーダーノードと完全な ACID トランザクションを備えています。本番環境での設定には認証の実施、ワークスペース/プロジェクトの切り替え、
helix init cloud
によるクラスタ初期化、本番 URL の同期、および本番エンドポイントからのクエリ実行が含まれます。商取引サポートは創設者または当社のウェブサイトを通じて利用可能であり、さらに詳細なガイダンスについてはドキュメントおよび Discord と X / Twitter のコミュニティチャネルで入手できます。

本文

HelixDB: 全コンポーネントを統合した AI アプリケーション用データベース

HelixDB は、AI アプリケーション構築に必要なあらゆるコンポーネントを単一のプラットフォーム上で提供するデータベースです。

主な特徴

  • 一元化管理: 分離された DB やアプリ層を別途用意せず、以下の機能を包括的にサポートします。
    • アプリケーション DB(エージェンツの記憶機能、企業知見への連合アクセス対応)
    • リレーショナル DB
    • ベクター DB
    • グラフ DB
  • 多様なデータモデル: メインは「グラフ + ベクター」ですが、KV ストア、ドキュメント、リレーショナルデータにも対応。

インストールとセットアップ手順

1. CLI のインストール

Helix CLI を使用してローカルインスタンスを管理し、Helix Cloud と通信します。

curl -sSL "https://install.helix-db.com" | bash

バージョン更新:

もし既にインストール済みの場合は、最新版へアップデートしてください:

helix update

2. 「helix chef」による素早いセットアップ

対話型のワンショット型ブートストラッパーです。以下を自動構築します。

  • HelixDB クエリスキルのインストール
  • ドキュメント MCP のインストール
  • プロジェクトの足場作成
  • ローカルインスタンスの起動
  • サンプルデータのシード(初期化)
  • HELIX_CHEF_PROMPT.md
    の作成

対応するコーディングエージェント: Claude Code、Codex、OpenCode など。

手順: 特別なフラグは不要です。「何を構築したいか」という一行の記述を受け付け、フロントエンドを含む動作するアプリケーションを引き継ぎます。表示されるプロンプトに従って進めてください。

3. 手動によるローカル環境のセットアップ

ご自身で構成を行いたい場合は以下の手順を実行します。

ステップ A: プロジェクト初期化

mkdir my-helix-app && cd my-helix-app
helix init

これで

helix.toml
.helix/
ワークスペースディレクトリ、および
examples/request.json
が生成されます。

ステップ B: ローカルインスタンスの起動

ポート 6969 でバックグラウンドコンテナを実行します。クエリを受け付けるまで待機してください。

helix start dev

注意点:

  • デフォルトのストレージモードは**「メモリ内」**です。
  • インスタンス停止時にデータが失われます。
  • 再起動後にデータを保持したい場合は
    --disk
    フラグを使用します。
  • ログをリアルタイムで表示したい場合は
    --foreground
    フラグを使用します。

ステップ C: クエリの送信

helix query dev --file examples/request.json

ステップ D: 完了時の終了

使用が完了したらインスタンスを終了してください。


SDK によるクエリ作成

クエリは Rust または TypeScript の DSL で記述し、ビルドやデプロイを経ずに動的なリクエスト(

POST /v1/query
)として直接送信されます。両方の SDK は同一の JSON AST を生成します。

詳細は「クエリングガイド」を参照してください。

Rust SDK

インストール

パッケージ名

helix-db
(インポート時:
helix_db
)を使用します。

cargo init && cargo add helix-db tokio sonic-rs

実装例

#[register]
アノテーション付き関数として定義し、クライアントで直接実行します。

use helix_db::Client;
use helix_db::dsl::prelude::*;

// ユーザー追加のロジック
#[register]
pub fn add_user(name: String) {
    write_batch()
        .var_as(
            "user",
            g().add_n("User", vec![("name", name)])
                .value_map(None::<Vec<String>>),
        )
        .returning(["user"])
}

// ユーザー取得のロジック
#[register]
pub fn get_user(name: String) {
    read_batch()
        .var_as(
            "user",
            g().n_with_label("User")
                .where_(Predicate::eq("name", name))
                .value_map(None::<Vec<String>>),
        )
        .returning(["user"])
}

#[tokio::main]
async fn main() {
    let client = Client::new(None).unwrap(); // デフォルト:http://localhost:6969

    // ユーザーを追加
    let new_user = client
        .query::<sonic_rs::Value>()
        .dynamic(add_user("John Doe".to_string()))
        .send()
        .await
        .unwrap();
    println!("新しいユーザー:{:#}", sonic_rs::to_string_pretty(&new_user).unwrap());

    // ユーザーを取得
    let user = client
        .query::<sonic_rs::Value>()
        .dynamic(get_user("John Doe".to_string()))
        .send()
        .await
        .unwrap();
    println!("ユーザー:{:#}", sonic_rs::to_string_pretty(&user).unwrap());
}

TypeScript SDK

インストール

Node.js 20 以降が必要です。

npm init -y && npm install @helix-db/helix-db

実装例

クエリを関数として定義し、インスタンスに対して

POST
送信します。

import {
  Predicate, PropertyInput, PropertyProjection,
  defineParams, g, param, readBatch, writeBatch,
} from "@helix-db/helix-db";

const addUserParams = defineParams({ name: param.string() });
function addUser(p = addUserParams) {
  return writeBatch()
    .varAs("user",
      g().addN("User", { name: PropertyInput.param("name") })
        .project([PropertyProjection.new("name")]),
    )
    .returning(["user"]);
}

const getUserParams = defineParams({ name: param.string() });
function getUser(p = getUserParams) {
  return readBatch()
    .varAs("user",
      g().nWithLabel("User")
        .where(Predicate.eqParam("name", "name"))
        .project([PropertyProjection.new("name")]),
    )
    .returning(["user"]);
}

const HELIX_URL = "http://localhost:6969/v1/query";

// ユーザーを追加
const newUser = await fetch(HELIX_URL, {
  method: "POST",
  headers: { "content-type": "application/json" },
  body: addUser().toDynamicJson(addUserParams, { name: "John Doe" }),
}).then((r) => r.json());
console.log("新しいユーザー:", newUser);

// ユーザーを取得
const user = await fetch(HELIX_URL, {
  method: "POST",
  headers: { "content-type": "application/json" },
  body: getUser().toDynamicJson(getUserParams, { name: "John Doe" }),
}).then((r) => r.json());
console.log("ユーザー:", user);

HelixDB Cloud

HelixDB Cloud は、オブジェクトストレージを基盤としたマネージドサービスです。

提供機能

  • 統合されたベクター検索およびフルテキスト検索
  • 完全な ACID トランザクション保証
  • 自動スケーリング対応:単一書き込みノードと多数の読み取りノード構成
  • 高可用性: 3 つ以上のゲートウェイおよびデータベースノードで実現

クラスタ管理コマンド

ローカルインスタンスとは別々の展開パスを使用します。

helix auth login                                # 認証
helix workspace switch <workspace>               # ワークスペース+プロジェクトの選択
helix project switch <project>
helix init cloud --cluster-id <cluster-id>       # クラスタ初期化
# または
helix add cloud --name production --cluster-id <id>

helix sync production                            # ゲートウェイ URL と認証契約を helix.toml に引き下ろす
helix query production --file examples/request.json

商用サポート

HelixDB は分散型で高可用性なマネージドサービスとして提供されています。ご開始については以下のいずれかをお選びください。

  • 公式サイトを通じて直接ご契約いただく
  • 創業者との個別相談(お問い合わせより)

ドキュメントとコミュニティ

📚 ドキュメント · 📘 クエリングガイド
💬 Discord
🐦 X / Twitter

Simply Helix をお使いください。

同じ日のほかのニュース

一覧に戻る →

2026/06/11 3:54

ΠFS

## Japanese Translation: πfs は、物理的なストレージを節約するためにユーザーデータを π(円周率)の無限数列に埋め込むことを目的とした実験的なファイルシステムを導入する。この革新的なアプローチは、「π が『正規数』である」という数学的仮説に基づいており、これは π の数列の中にあらゆる可能な有限の情報シーケンスがどこかに含まれていることを意味する。従来のドライブ上にファイルを保存するのではなく、システムはこの定数内に隠された任意のファイルコンテンツを特定するために特定のインデックスを計算する。この方法は、既存の数学的定数を新規にストレージスペースを生成することなく使用することで、歴史的なデータ保存の制限と潜在的な著作権問題を解決する。現在では遅いプロトタイプとして動作しているが、ハードウェアが進歩するにつれて並列処理、算術符号化、クラウドベースの計算などの技術を通じて、将来的には劇的な速度向上が約束されている。最終的に、πfs は極めてストレージ制約の高い環境向けにユニークなソリューションを提供し、場所に関するメタデータが失われても実際のデータは π そのものの不変の数列内に永久に埋め込まれていることを保証する。

2026/06/11 1:42

Anthropic の新言語モデル「Fable」に対する規制策に対し、サイバーセキュリティ研究者たちが不満を示している

## 日本語訳: 火曜日に、Anthropic はセキュリティ専門のモデル「Mythos」の公開版かつ制限付き版である「Fable」を、プロジェクト・グラスウィングベータ(2025年4月限定)から15カ国に跨る数百家の組織へと拡大されたアクセスプログラムを通じてリリースしました。研究者によると、マルウェアの開発やソフトウェアへの侵害、生物学的兵器の作成といった悪用を防ぐことを目的とした Fable のガードレール(制限措置)は過度に積極的であり、ブログ記事の閲覧や標準的なコードレビューなど無害なタスクを含むサイバー関連活動と間接的に関連する正当なリクエストさえブロックします。トリガーされると、モデルは「セキュリティまたは生物学トピックに関するメッセージが安全性の措置によってフラグされた」というメッセージと共に会話を一時停止し、そのプロンプトに対しては Claude Opus 4.8 にフォールバックします。サイバーセキュリティ専門家であるマット・シュイチェ(Tolmo)は、Fable がキーワードベースの制限によりソフトウェアエンジニアリングタスクを頻繁に「安全なコードを書く」という書き換えに変換していると指摘し、「安全なコードを書く」や「コードレビュー」といったリクエストを誤って解釈していると述べました。業界アナリストからはこうしたキーワードフィルタリングが時間経過とともに改善されるとの見方がありますが、IBM X-Force のヴァレンティナ・パルミオッティ(Chompie)ら専門家は、現在の過度に制限的な展開を批判しています。Anthropic はこれらの懸念に対して直ちにコメントしていません。関連として、Anthropic もサイバーセキュリティ専門家に対して、Claude を使用する際にかかる制限を少なくするための「Cyber Verification Program」への別途申請を義務付けており、これは OpenAI の「Trusted Access for Cyber」に類似しています。

2026/06/11 2:30

JPL が 13 歳のキュリオシティ探査機をどう科学活動に導いているか

## 日本語翻訳: # ルール - 元の意味を正確に保ってください(追加も省略も行わないでください)。 - ドキュメントの構造(見出し、箇条書きなど)を維持してください。 - 技術用語は正確に扱いください(API、LLM、zero-trust は自然な日本語が存在しない限りそのままにしてください)。 - トーンと確信度を保ってください。 - まとめたり、説明したり、再書き換えを行わないでください — ただ翻訳のみ行ってください。 ## 翻訳すべきテキスト: # ルール - 元の意味を正確に保ってください(追加も省略も行わないでください)。 - ドキュメントの構造(見出し、箇条書きなど)を維持してください。 - 技術用語は正確に扱いください(API、LLM、zero-trust は自然な日本語が存在しない限りそのままにしてください)。 - トーンと確信度を保ってください。 - まとめたり、説明したり、再書き換えを行わないでください — ただ翻訳のみ行ってください。 # 出力形式 ## 日本語翻訳: (ここに日本語の翻訳を書きます) ## 翻訳すべきテキスト: (必要に応じて;そうでない場合は元のテキストを繰り返します)

Show HN: オブジェクトストレージ上に構築されたグラフデータベース HelixDB | そっか~ニュース