データパーティションとは、ログデータをグループ化したり整理したりすることで、クエリを高速かつ効率的に実行する方法です。クエリが単一のパーティションを対象とする場合、New Relic の Logs UI:
- 関連性の低いデータをスキャンします。
- より早く結果を返すことができます。
アカウントは複数のパーティションを持つことができ、複数のパーティションを同時に照会することができます。
また、データパーティションでは、30日間の固定保持期間を持つ代替の「セカンダリ」ネームスペースにデータをマッピングすることができます。この機能は、一般データ保護規則(GDPR)のようなプライバシーを重視した規制や基準に準拠するために役立ちます。
パーティションの計画
パーティションの作成を始める前に、適切な権限とパーティションプランがあることを確認してください。
重要
ログは、データがNRDBに書き込まれる前の取り込みプロセス中に、パーティションにルーティングされます。パーティション・ルールは、ルールが作成される前にインジェストされたログには影響しません。
パーティションのサイズと構成
データ・パーティションを適切に使用することで、パフォーマンスを大幅に向上させることができます。データを個別のパーティションに整理することで、それらを別々に、またはまとめて照会することができます。データをパーティショニングする目的は以下の通りです。
- 環境や組織の中で、固定的であったり、変化の頻度が低い概念に合わせてデータパーティションを作成します(例:ビジネスユニット、チーム、環境、サービスなど)。
- 最適なパフォーマンスを得るためには、各パーティションが1日の取り込み量が1TB以下であることを確認してください。
パーティションの数が多ければ、より的を絞った検索が可能になりますが、あまりにも多くのパーティションを作ると、ログが見つけにくくなったり、管理者のオーバーヘッドが増えたりします。適切なバランスをとることが重要です。当社では1アカウントあたり最大100パーティションをサポートしていますが、ほとんどのアカウントでは10~15パーティションが最適な数です。
ネームスペースの選択
パーティションのネームスペースは、その保存期間を決定します。2つの保存方法を用意しています。
- 標準: New Relic のサブスクリプションによって決定されるアカウントのデフォルトの保持期間です。これは、アカウントで利用可能な最大の保持期間であり、ほとんどのパーティションに選択する名前空間です。
- Secondary: 30日間の保持。セカンダリネームスペースのメンバーであるパーティションに送られたすべてのログは、取り込まれてから30日後にローリングベースでパージされます。
セカンダリー・リテンションはコストコントロールのメカニズムではなく、データはインジェストで課金されます。
パーティションルールの作成
Logs UIの左のナビから、 Data partitions を選択し、保持の名前空間、オプションの説明、マッチングの基準でLog_パーティション名を作成します。
新しいパーティションルールを作成するには
- one.newrelic.com > Logs にアクセスしてください。
- Logs UIの左ナビの Manage Data から、 Data partitions をクリックし、 Create partition rule をクリックします。
- パーティション名 を、
Log_
で始まる英数字の文字列として定義します。 - 任意の説明を追加します。
- パーティションに リテンション・ネームスペース を選択します。
- ルールの設定 マッチング基準: 基準に完全に一致するログを対象とするには EQUALS を、曖昧なマッチを適用するには LIKE を選択します。
- Enable Rule スライダーをクリックして、 Create をクリックします。
データパーティションのリストを表示するには、以下の手順に従います。Logs UIの左ナビの Manage Data から、 Data partitions をクリックします。
データ・パーティションの検索
すべてのLogsアカウントのデフォルトパーティションは Log
です。パーティションルールの影響を受けないログは、デフォルトで Log
パーティションに保存されます。
複数のパーティションを同時に照会することができます。最高のパフォーマンスを得るためには、可能な限り少ない数のパーティションを選択してください。
データパーティションを検索するには
- Logs UIの左ナビのViews and Attributes から、 Select partitions をクリックします。
- 照会したい1つまたは複数のパーティションをクリックするか、またはパーティション名を検索します。
- Query logs をクリックして、選択したパーティションを検索します。
NerdGraphでデータ・パーティションをプログラムで管理
データパーティションをプログラムで管理したい場合は、 NerdGraph 、GraphQL形式のAPIを使用することができます。 このチュートリアル では、APIを使用してデータパーティションを照会、作成、削除する方法を説明します。