エンジニアが毎日スノーフレークIDジェネレーターを使いたくなる本当のボトルネックをご紹介します。
ユニークなプライマリキーが必要な50,000行のモックデータをMySQLやPostgreSQLテーブルに入れるのは、専用ツールなしでは苦痛です。スノーフレークIDジェネレーターなら、サーバー・スクリプト・CLI不要で、10万件のスノーフレークIDやUUIDを数秒でエクスポートできます。
分散システムによってエポック・マシンIDの範囲・ビットレイアウトが異なります。ライブプレビューなしでは、スノーフレークID生成設定が正しいかどうかを確認するのは困難です。このスノーフレークIDジェネレーターはすべてのビットレベルパラメータを可視化し、本番環境に出荷する前に出力を検証できます。
生のIDバッチはほぼ必ずポストプロセスが必要です——SQL IN()句用の引用符付け、JSON配列への変換、UUIDからのハイフン削除など。スノーフレークIDジェネレーターはすべてのフォーマット変換を自動的に処理するので、結果をクエリやコードに直接貼り付けられます。
スノーフレーID・UUID・ULIDを一括生成。すべての計算はローカルで実行 — ゼロネットワークリクエスト。
スノーフレー設定
ビットレイアウト:1 符号 + 41 タイムスタンプ + 5 データセンター + 5 マシン + 12 シーケンス(Twitterスタンダード)
フォーマットオプション
「今すぐ生成」をクリックしてIDを作成してください
ほとんどのIDジェネレーターは1つのアルゴリズムと基本的な出力しか提供しません。スノーフレークIDジェネレーターは必要なすべてのフォーマット・設定・エクスポートをカバーします。
UUID v1、UUID v4、ULID、スノーフレークをワンクリックで切り替え。スノーフレークIDジェネレーターはすべてのアルゴリズムを一か所に集約しているため、別のツールは必要ありません。
1〜10万件のIDをミリ秒で生成。スノーフレークIDジェネレーターはブラウザネイティブの暗号APIと軽量JSアルゴリズムを使用——最大バッチサイズでも遅延やフリーズはありません。
独自のエポック(Twitterデフォルト・Discord・カスタムタイムスタンプ)、マシンID(0〜31)、データセンターID(0〜31)を設定できます。スノーフレークIDジェネレーターはブラウザ内で直接、真の64ビットビットシフト演算を実行します。
プレーンリスト・JSON配列・SQL IN(...)形式から選択できます。ハイフン・大文字・引用符の有無を切り替えられます。スノーフレークIDジェネレーターは手動編集不要の本番対応出力を提供します。
すべての結果をクリップボードにコピーするか、ブラウザのBlob APIを使って.txtまたは.csvでダウンロード。スノーフレークIDジェネレーターはファイルをローカルでストリーム処理——サーバーアップロードなし、即時ダウンロード。
スノーフレークIDジェネレーターはブラウザ内で完全に動作します。生成中はネットワークリクエストが一切発生しません。テストキー・マシンID・データセンター設定がデバイスの外に出ることは絶対にありません。
スノーフレークIDジェネレーターでIDを生成・設定・エクスポートするための3ステップ。
スノーフレークIDジェネレーター上部のタブバーからUUID v1・UUID v4・ULID・スノーフレークを選択します。各アルゴリズムには固有のユースケースがあります:スノーフレークは分散システムに、ULIDは辞書順ソート可能なIDに、UUID v4は最大のランダム性に、UUID v1は時間順識別子に最適です。
必要な数量(1〜10万)を入力し、出力フォーマットを選択します。スノーフレークの場合、設定パネルを展開してカスタムエポック・マシンID・データセンターIDを設定できます。スノーフレークIDジェネレーターは最初の1,000件の結果をリアルタイムでプレビューするので、すぐに出力を確認できます。
「全てコピー」をクリックして生成したすべてのIDをクリップボードに送るか、「.txtダウンロード」/「.csvダウンロード」でバッチ全体をファイルとして保存します。スノーフレークIDジェネレーターのすべてのエクスポート操作はブラウザのBlob APIを使用——サーバー関与なしにデータがローカルでディスクに書き込まれます。
スノーフレークIDジェネレーターが開発者やQAエンジニアに選ばれる3つの核心機能に迫ります。
スノーフレークIDジェネレーターはUUIDとULIDの生成にブラウザネイティブのcrypto.getRandomValues()を使用し、スノーフレークIDにはBigIntビットシフト演算を使用します。10万件のIDバッチはクライアントサイドで生成され、往復遅延を回避します。結果はメモリに保持され、最初の1,000件がライブレンダリング——フルセットはファイルとしてダウンロードされます。

スノーフレークアルゴリズムはミリ秒タイムスタンプに41ビット、データセンターIDに5ビット、マシンIDに5ビット、シーケンスカウンターに12ビットを割り当てます。スノーフレークIDジェネレーターは直感的なコントロールパネルですべてのパラメータを公開——プリセットエポック(Twitter 2010、Discord 2015、またはカスタムUTC日付)から選択し、マシンとデータセンターIDを0〜31で設定できます。

生のIDリストはコードやクエリで使用する前に再フォーマットが必要です。スノーフレークIDジェネレーターは表示またはエクスポートの前に、選択したフォーマット——JSON配列・SQL IN()句・改行区切りのシンプルなリスト——をすべての生成IDに適用します。ハイフン・大文字・引用符のラップをワンクリックで切り替えられます。

分散システムにユニークID生成を統合する開発者向けクイックリファレンス。
スノーフレークアルゴリズムは2010年にTwitterが最初に作成し、壁時計の時刻・データセンター座標・ワーカー座標・ティック当たりのシーケンス番号を埋め込んだ64ビットIDを生成します。タイムスタンプが最上位ビットを占めるため、スノーフレークIDは二次インデックスなしで自然に時間順にソートされます。
ULIDはCrockfordのBase32を使用して、URLセーフかつ作成時刻で辞書順ソート可能な26文字の文字列を生成します。UUID v4とは異なり、ULID IDは最初の10文字に生成タイムスタンプが露出します——余分なcreated_atフィールドなしにデバッグやログの相関付けに役立ちます。
UUID v1はidentifierに60ビットのタイムスタンプをエンコードし、部分的に追跡可能で時間順になりますが、ジェネレーターのMACアドレスが漏洩する可能性があります。UUID v4は構造なしの122ビットの暗号的ランダム性を使用し、最大の衝突耐性と情報漏洩ゼロを提供します。
スノーフレークID・UUID vs ULID、そしてスノーフレークIDジェネレーターの仕組みに関するよくある質問。
スノーフレークIDは分散システムで使用される64ビット整数のユニーク識別子です。ミリ秒精度のタイムスタンプ・データセンターID・マシンID・ミリ秒ごとのシーケンスカウンターを1つの整数にエンコードします。Twitterは2010年に、数千のサーバー間で調整なしにユニークIDを大規模生成するために、スノーフレークアルゴリズムを設計しました。
スノーフレークIDジェネレーターはブラウザ内で直接64ビットBigIntビットシフト演算を実行します。ミリ秒タイムスタンプ(選択したエポックを基準)をビット63〜22に、データセンターIDをビット21〜17に、マシンIDをビット16〜12に、シーケンスカウンターをビット11〜0にシフトします。サーバーは一切関与しません——すべての計算はローカルで行われます。
スノーフレークIDジェネレーターのデフォルトはTwitterエポック(1288834974657 ms、2010-11-04 UTC)で、最も広く文書化されています。システムがDiscordエポック(1420070400000 ms、2015-01-01 UTC)またはカスタム内部エポックを使用している場合は、設定パネルで直接入力できます。IDの範囲が一致するよう、バックエンドと同じエポックを使用してください。
UUID v1は時間ベース:現在のタイムスタンプとノード識別子をエンコードし、v1 UUIDは作成時刻で部分的にソートできます。UUID v4は完全にランダム:122ビットが暗号的に安全なランダムソースから生成されます。UUID v4は情報漏洩がないため広く使われており、挿入順序が重要な場合はv1が好まれます。
ULID(Universally Unique Lexicographically Sortable Identifier)は48ビットのミリ秒タイムスタンププレフィックスと80ビットのランダム性を組み合わせ、すべてCrockfordのBase32でエンコードされます。タイムスタンプが先頭に来るため、ULIDは余分なソートカラムなしに文字列として正しくソートされます——UUID v4とは異なります。データベースやログシステムが辞書順ソートの恩恵を受ける場合はULIDを使用してください。
スノーフレークIDジェネレーターは1生成サイクルで1〜10万件のIDのバッチサイズをサポートします。すべてのIDはブラウザメモリで生成・保持されます。最初の1,000件は出力パネルに表示され、フルセットは.txtまたは.csvファイルとしてダウンロードできます。
いいえ。スノーフレークIDジェネレーターはブラウザ内で完全に動作します。すべてのID生成・フォーマット変換・ファイルエクスポートはローカルで行われます。生成中・後を問わずネットワークリクエストは発生しません。エポック設定・マシンID・生成出力はデバイスの外に出ることは一切ありません。
はい。必要な量を生成し、SQL IN(...)またはプレーンリスト形式を選択して.csvとしてダウンロードします。その後、CSVをMySQL・PostgreSQL・または一括データシードをサポートするツールに直接インポートできます。スノーフレークIDジェネレーターはまさにこのワークフローのために設計されています。