Datasette について
Datasette はSQLite データベースおよび他の構造化データを検査・クエリするコマンドラインツールです。データ探索用のインタラクティブな Web インターフェイスを生成しながら、自動化されたデータワークフロー向けにスクリプト化可能なクエリとエクスポート機能をサポートしています。
主な機能
- 01インタラクティブな Web インターフェイス経由でデータベースレコードをクエリ・フィルタリング
- 02inspect コマンドでデータベーススキーマ、テーブルサイズ、メタデータを検査
- 03JSON や CSV を含む複数形式でクエリ結果をエクスポート
活用シーン
- 01コーディングエージェントがデータ構造を理解する必要があるときにデータベース内容を迅速に検査
- 02チーム向けにデータセットを共有・公開してアクセスと分析を実現
- 03自動化されたデータ探索ワークフローにデータ検査ステップを統合
インストール
OS またはパッケージマネージャーを選び、コマンドをターミナルで実行します。
インストール後にdatasette --versionを実行して確認します。
コマンド例
よく使うコマンドを使う順に並べています。
詳細
データを探索・公開するためのオープンソースのマルチツール
Datasetteは、データを探索・公開するためのツールです。あらゆる形や規模のデータを、インタラクティブに探索できるウェブサイトと、それに付随するAPIとして公開できます。
Datasetteは、データジャーナリスト、博物館の学芸員、アーキビスト、地方自治体、科学者、研究者など、世界と共有したいデータを持つすべての人を対象としています。
デモを試す、プロジェクトの紹介動画を見る、またはGitHub Codespacesで試す。
- datasette.ioは公式プロジェクトサイトです
- 最新のDatasetteニュース
- 詳細なドキュメント:https://docs.datasette.io/
- 例:https://datasette.io/examples
- 現在の
mainブランチのライブデモ:https://latest.datasette.io/ - 質問やフィードバックがある方、プロジェクトについて話したい方は、Discordにご参加ください
プロジェクトの最新情報を受け取りたいですか?Datasetteニュースレターに登録して、Datasetteエコシステムのヒントやコツ、新着情報をご覧ください。
インストール
Macをお使いの場合、DatasetteをインストールするにはHomebrewが最も簡単です。
brew install datasette
pipまたはpipxを使ってインストールすることもできます。
pip install datasette
DatasetteにはPython 3.11以降が必要です。Dockerなどの選択肢を含む詳細なインストール手順も用意しています。
基本的な使い方
datasette serve path/to/database.db
これによりポート8001でウェブサーバーが起動します。http://localhost:8001/ にアクセスすると、ウェブインターフェースを利用できます。
serveはデフォルトのサブコマンドなので、省略してもかまいません。
OS XでChromeをお使いですか?次のようにして、ブラウザーの履歴に対してdatasetteを実行できます。
datasette ~/Library/Application\ Support/Google/Chrome/Default/History --nolock
http://localhost:8001/History/downloads にアクセスすると、ダウンロードデータを閲覧できるウェブインターフェースが表示されます。

metadata.json
生成される Datasette のウェブサイトにライセンスとソースの情報を含める場合は、次のような JSON ファイルを使用できます。
{
"title": "Five Thirty Eight",
"license": "CC Attribution 4.0 License",
"license_url": "http://creativecommons.org/licenses/by/4.0/",
"source": "fivethirtyeight/data on GitHub",
"source_url": "https://github.com/fivethirtyeight/data"
}
これを metadata.json に保存し、次のように Datasette を実行します。
datasette serve fivethirtyeight.db -m metadata.json
ライセンスとソースの情報は、インデックスページとフッターに表示されます。また、API が生成する JSON にも含まれます。
datasette publish
Heroku または Google Cloud Run を設定している場合、Datasette では単一のコマンドで 1 つ以上の SQLite データベースをインターネットにデプロイできます。
datasette publish heroku database.db
または
datasette publish cloudrun database.db
これにより、Datasette アプリケーションと指定した SQLite データベースファイルの両方を含む Docker イメージが作成されます。その後、そのイメージが Heroku または Cloud Run にデプロイされ、生成されたウェブサイトと API にアクセスするための URL が提供されます。
詳しくは、ドキュメントのデータの公開をご覧ください。
Datasette Lite
Datasette Lite は、WebAssembly を使用してパッケージ化された Datasette です。Python のウェブアプリケーションサーバーを必要とせず、ブラウザー内で完全に動作します。詳しくは、Datasette Lite のドキュメントをご覧ください。