Console経由でのデータインポート
このガイドでは、Console可視化インターフェースを使用してオブジェクトストレージ(AWS S3、Google Cloud Storage、Azure Blob Storage)からVeloDBにデータをインポートする方法を説明します。
前提条件
開始前に、以下を準備してください:
- データファイルを含むオブジェクトストレージバケット
- アクセス認証情報(Access Key IDおよびSecret Access Key)
- アクティブなクラスターを持つVeloDB Cloudアカウント(クイックスタートを参照)
サンプルデータで試す
サンプルデータセットでS3インポートを試すには、以下の認証情報を使用してください:
| フィールド | 値 |
|---|---|
| AK | AKIA3AUKURBS74337SNB |
| SK | ygbR1HGNvMZDTo4DNUWJx0mblpMTF+QpBCCBfxFF |
| Object Storage Path | https://velodb-import-data-us-east-1.s3.us-east-1.amazonaws.com/ssb-flat-sf1/*.parquet |
このサンプルデータセットには**SSB(Star Schema Benchmark)**データが含まれています - 分析データベース用に広く使用されているベンチマークです。データセットには、注文、顧客、サプライヤー、製品を含む42列の非正規化された売上データの約600万行が含まれています。
SSBデータセットスキーマ(42列)
| 列グループ | 列 |
|---|---|
| Order | lo_orderkey, lo_linenumber, lo_orderdate, lo_commitdate, lo_orderpriority, lo_shippriority, lo_shipmode, lo_year, lo_month, lo_weeknum |
| Metrics | lo_quantity, lo_extendedprice, lo_discount, lo_revenue, lo_supplycost, lo_tax |
| Date | d_datekey, d_dayofweek, d_month, d_yearmonth |
| Customer | c_custkey, c_name, c_nation, c_region, c_city, c_mktsegment |
| Supplier | s_suppkey, s_name, s_nation, s_region, s_city |
| Product | p_partkey, p_name, p_brand, p_category, p_mfgr, p_color, p_type, p_size, p_container |
これは読み取り専用のサンプルデータです。以下のチュートリアル手順に従って使用できます。
ステップ1:接続
VeloDB ConsoleサイドバーのData > Importに移動し、Create newをクリックしてObject Storage S3を選択します。

設定
| フィールド | 説明 |
|---|---|
| Task Name | このインポートタスクの一意な名前(例:sales_data、user_logs) |
| Comment | *(オプション)*インポートタスクの説明 |
| Authentication | Access Key認証を選択 |
| AK | Access Key ID(例:AKIAIOSFODNN7EXAMPLE) |
| SK | Secret Access Key |
| Object Storage Path | データへのURL(以下の形式を参照) |
Object Storage Pathの形式
https://<bucket-name>.s3.<region>.amazonaws.com/<path>/<filename>
例:
- 単一ファイル:
https://my-bucket.s3.us-west-1.amazonaws.com/data/orders.csv - ワイルドカードを使用した複数ファイル:
https://my-bucket.s3.us-west-1.amazonaws.com/data/*.csv - Parquetファイル:
https://my-bucket.s3.us-west-1.amazonaws.com/warehouse/*.parquet
最適なパフォーマンスを得るために、オブジェクトストレージバケットはVeloDBクラスターと同じリージョンにある必要があります。
Nextをクリックして続行します。
ステップ2: 受信データ
VeloDBがデータファイルを解析する方法を設定します。

ファイル設定
| フィールド | 説明 |
|---|---|
| File Type | ファイル形式を選択: CSV、Parquet、ORC、またはJSON |
| File Compression | 自動検出または指定: GZ、BZ2、LZ4、LZO、DEFLATE、ZSTD、ZLIB |
| Specify Delimiter | 列区切り文字(CSVの場合は,、TSVの場合は\t) |
| Enclose | テキストフィールドの引用文字(通常は空のまま) |
| Escape | エスケープ文字(通常は空のまま) |
| Trim Double Quotes | 値からクオートを削除するかどうか |
| File Size | サイズ制限を設定するか、Unlimitedのまま |
ロード設定
| フィールド | 説明 |
|---|---|
| Strict Mode | ON = エラーのある行を拒否、OFF = 不正な行をスキップ |
標準的なCSVファイルの場合、デフォルト設定で通常問題ありません。解析エラーを避けるためにEncloseとEscapeは空のままにしてください。
Nextをクリックして続行します。
ステップ3: テーブル設定
データをプレビューし、保存先テーブルを設定します。

データプレビュー
コンソールには以下の内容でデータのプレビューが表示されます:
- 自動検出された列名(c1、c2、c3、...またはCSVヘッダー行から)
- サンプルデータ行
- 推測された列の型
データロード先
| オプション | 説明 |
|---|---|
| New Table | 自動生成されたスキーマで新しいテーブルを作成 |
| Existing Table | 既存のVeloDBテーブルにロード |
テーブル設定
| フィールド | 説明 |
|---|---|
| Database | ドロップダウンからターゲットデータベースを選択 |
| Table Name | 新しいテーブルの名前(例: orders、user_events、products) |
ステップ4: 詳細設定
テーブルモデルと分散設定を設定します。

テーブルモデル
| モデル | 用途 | 例 |
|---|---|---|
| DUPLICATE | 生データ、アドホッククエリ - 書き込まれたすべての行を保持 | イベントログ、クリックストリーム、生トランザクション |
| UNIQUE | 更新を伴うデータ - キーごとに最新の行のみを保持 | ユーザープロファイル、商品カタログ、ディメンションテーブル |
| AGGREGATE | 事前集計されたメトリクス - キー列で自動集計 | 売上サマリ、時系列メトリクス、カウンター |
分散設定
| フィールド | 説明 |
|---|---|
| Sorting Key | データ順序付け用の列 - WHERE句やJOINで頻繁に使用される列を選択 |
| Partition | 時間ベースのパーティショニングを有効化(時系列データに推奨) |
| Bucket Key | ノード間でのハッシュ分散用の列 |
| Bucket Number | データバケットの数(ほとんどの場合AUTOを推奨) |
| Properties | 追加のテーブルプロパティ(通常は空のまま) |
適切な設定の選択
- テーブルモデル:
- 生データの保持と柔軟なアドホッククエリにはDUPLICATE
- レコードの更新が必要な場合はUNIQUE(キーごとに最新を保持)
- 事前計算されたサマリにはAGGREGATE(ストレージを削減、クエリを高速化)
- Sorting Key: WHERE句やJOINで頻繁に使用される列
- Bucket Key: データの均等分散のための高カーディナリティ列
Nextをクリックして続行し、Submitをクリックしてインポートを開始します。
ステップ5: インポートの監視
送信後、インポートリストでインポートタスクを確認できます。

インポートの確認
インポート完了後、SQL Editorでデータを確認します:
-- Check row count
SELECT COUNT(*) FROM your_database.your_table;
-- Preview data
SELECT * FROM your_database.your_table LIMIT 10;
-- Check table schema
DESC your_database.your_table;
SSBデータのサンプルクエリ
サンプルSSBデータセットをインポートした場合は、以下の分析クエリを試してください:
-- Total revenue by year
SELECT
lo_year,
SUM(lo_revenue) as total_revenue
FROM ssb_flat
GROUP BY lo_year
ORDER BY lo_year;
-- Top 10 customers by revenue
SELECT
c_name,
c_nation,
SUM(lo_revenue) as total_revenue
FROM ssb_flat
GROUP BY c_name, c_nation
ORDER BY total_revenue DESC
LIMIT 10;
-- Revenue by region and year
SELECT
c_region,
lo_year,
SUM(lo_revenue) as revenue,
COUNT(*) as order_count
FROM ssb_flat
GROUP BY c_region, lo_year
ORDER BY c_region, lo_year;
-- Product category performance
SELECT
p_category,
p_brand,
SUM(lo_revenue) as revenue,
AVG(lo_discount) as avg_discount
FROM ssb_flat
GROUP BY p_category, p_brand
ORDER BY revenue DESC
LIMIT 20;
トラブルシューティング
| 問題 | 解決策 |
|---|---|
| "Can not found files" | オブジェクトストレージのパス形式と末尾のスラッシュを確認してください |
| "Access Denied" | AK/SK認証情報とIAM権限を確認してください |
| Connection timeout | バケットがVeloDBと同じリージョンにあることを確認してください |
| Parsing errors | EncloseとEscapeフィールドを空のままにしてください |
| Wrong column types | 事前定義されたスキーマでExisting Tableを使用してください |