Skip to content

AUTO: Docs repo sync - ScalarDB #1109

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Apr 11, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ import TranslationBanner from '/src/components/_translation-ja-jp.mdx';

ScalarDB は当初、多様なデータベース間の統一された抽象化と、そのようなデータベース間のトランザクションを提供するために設計されました。ただし、複数の、場合によっては多様なデータベースを使用するアプリケーションを簡素化するために、統一された抽象化のみが必要な場合があります。

ScalarDB は、トランザクション機能なしで統一された抽象化のみを提供するように構成できるため、基盤となるデータベースとストレージで非トランザクション操作のみを実行します。この構成の ScalarDB は複数の操作間で ACID を保証しないため、より優れたパフォーマンスで操作を実行できます。
ScalarDB は、トランザクション機能なしで統一された抽象化のみを提供するように設定することで、基盤となるデータベースとストレージで非トランザクション操作のみを実行できます。この設定の ScalarDB は複数の操作間で ACID を保証しませんが、より優れたパフォーマンスで操作を実行できます。

このサブカテゴリでは、このような非トランザクションストレージ操作を実行する方法を学習できます。

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ cd scalardb-benchmarks
- **ScalarDB コアライブラリ (コミュニティエディション) を使用する場合:** 使用している ScalarDB のバージョンに応じて `scalardb-schema-loader-<VERSION>.jar` を選択します。次に、`.jar` ファイルを `scalardb-benchmarks` ルートディレクトリに保存します。
- **ScalarDB Cluster (エンタープライズエディション) を使用する場合:** 使用している ScalarDB Cluster のバージョンに応じて `scalardb-cluster-schema-loader-<VERSION>-all.jar` を選択します。次に、`.jar` ファイルを `scalardb-benchmarks` ルート ディレクトリに保存します。

さらに、Java CRUD インターフェースを介して ScalarDB にアクセスするためのプロパティファイルも必要です。ScalarDB プロパティファイルの設定の詳細については、[ScalarDB 設定](../configurations.mdx)または [ScalarDB Cluster クライアント構成](../scalardb-cluster/developer-guide-for-scalardb-cluster-with-java-api.mdx#クライアント構成)を参照してください。
さらに、Java CRUD インターフェースを介して ScalarDB にアクセスするためのプロパティファイルも必要です。ScalarDB プロパティファイルの設定の詳細については、[ScalarDB 設定](../configurations.mdx)または [ScalarDB Cluster クライアント設定](../scalardb-cluster/developer-guide-for-scalardb-cluster-with-java-api.mdx#クライアント設定)を参照してください。

スキーマを適用してプロパティファイルを設定したら、ベンチマークを選択し、指示に従ってテーブルを作成します。

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -127,7 +127,7 @@ builder.Services.AddScalarDbContext<MyDbContext>(options =>
});
```

この構成を使用すると、ラムダ式に渡される `ScalarDbOptions` オブジェクト (上記の例では `options` という名前) が、JSON ファイル、環境変数、およびその他のソースからの値で初期化されます。
この設定を使用すると、ラムダ式に渡される `ScalarDbOptions` オブジェクト (上記の例では `options` という名前) が、JSON ファイル、環境変数、およびその他のソースからの値で初期化されます。

### 使用可能なオプション

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ ABAC は ScalarDB Cluster のきめ細かいアクセス制御メカニズムで

エンタープライズデータベースでは、多くの場合、行レベルのセキュリティまたは同様の代替手段が提供され、データベーステーブル内の行へのアクセスを制御できます。ただし、システムが複数のデータベースで構成されている場合は、各データベースを1つずつ同じ方法で設定する必要があります。異なる種類のデータベースを使用する場合は、各データベースの機能の違いを理解した上で各データベースを設定する必要があります。このような設定は負担が大きすぎ、エラーが発生しやすくなります。ABAC を使用すると、ScalarDB で複数のデータベースを管理する場合でも、1回設定するだけで済みます。

ほとんどのデータベースの行レベルのセキュリティ機能では、ストアドプロシージャなどの関数を使用してマッチングロジックを実装する必要があります。これにより、必要なロジックを実現するために大量のコードを記述することになり、負担が大きくなることがあります。対照的に、ABAC では、タグと呼ばれる属性を使用してマッチングロジックを構成できます。ABAC では、これらのタグを定義してユーザーとレコードに割り当てるだけでよいため、コーディングの必要がありません。タグは、柔軟かつ簡単な方法でマッチングロジックを指定できる複数のコンポーネントで構成されています。
ほとんどのデータベースの行レベルのセキュリティ機能では、ストアドプロシージャなどの関数を使用してマッチングロジックを実装する必要があります。これにより、必要なロジックを実現するために大量のコードを記述することになり、負担が大きくなることがあります。対照的に、ABAC では、タグと呼ばれる属性を使用してマッチングロジックを設定できます。ABAC では、これらのタグを定義してユーザーとレコードに割り当てるだけでよいため、コーディングの必要がありません。タグは、柔軟かつ簡単な方法でマッチングロジックを指定できる複数のコンポーネントで構成されています。

## 追加の詳細

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -85,13 +85,13 @@ ScalarDB Cluster Java Client SDK は、アプリケーションが ScalarDB Clus
+----+
```

ScalarDB Cluster Java API の使用は、クライアント構成と Schema Loader が異なることを除いて、ScalarDB Java API の使用とほぼ同じです。詳細については、[ScalarDB Java API ガイド](../api-guide.mdx) を参照してください。
ScalarDB Cluster Java API の使用は、クライアント設定と Schema Loader が異なることを除いて、ScalarDB Java API の使用とほぼ同じです。詳細については、[ScalarDB Java API ガイド](../api-guide.mdx) を参照してください。

次のセクションでは、ScalarDB Cluster Java API とクラスター用 Schema Loader のクライアント構成について説明します
次のセクションでは、ScalarDB Cluster Java API とクラスター用 Schema Loader のクライアント設定について説明します

### クライアント構成
### クライアント設定

次の表は、ScalarDB Cluster Java API のクライアント構成を示しています
次の表は、ScalarDB Cluster Java API のクライアント設定を示しています

| 名前 | 説明 | デフォルト |
|----------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------|
Expand All @@ -102,14 +102,14 @@ ScalarDB Cluster Java API の使用は、クライアント構成と Schema Load
| `scalar.db.cluster.grpc.max_inbound_message_size` | 単一の gRPC フレームに許可される最大メッセージサイズ。 | gRPCのデフォルト値 |
| `scalar.db.cluster.grpc.max_inbound_metadata_size` | 受信できるメタデータの最大サイズ。 | gRPCのデフォルト値 |

たとえば、`indirect` クライアントモードを使用し、ロードバランサーの IP アドレスが `192.168.10.1` の場合、クライアントを次のように構成できます
たとえば、`indirect` クライアントモードを使用し、ロードバランサーの IP アドレスが `192.168.10.1` の場合、クライアントを次のように設定できます

```properties
scalar.db.transaction_manager=cluster
scalar.db.contact_points=indirect:192.168.10.1
```

または、エンドポイントの名前空間を `ns`、エンドポイント名を `scalardb-cluster` として `direct-kubernetes` クライアントモードを使用する場合は、次のようにクライアントを構成できます
または、エンドポイントの名前空間を `ns`、エンドポイント名を `scalardb-cluster` として `direct-kubernetes` クライアントモードを使用する場合は、次のようにクライアントを設定できます

```properties
scalar.db.transaction_manager=cluster
Expand Down Expand Up @@ -234,23 +234,23 @@ Maven を使用して依存関係を追加するには、以下を使用しま
| `scalar.db.cluster.grpc.max_inbound_message_size` | 単一の gRPC フレームに許可される最大メッセージサイズ。 | gRPCのデフォルト値 |
| `scalar.db.cluster.grpc.max_inbound_metadata_size` | 受信できるメタデータの最大サイズ。 | gRPCのデフォルト値 |

たとえば、`indirect` クライアントモードを使用し、ロードバランサーの IP アドレスが `192.168.10.1` の場合、クライアントを次のように構成できます
たとえば、`indirect` クライアントモードを使用し、ロードバランサーの IP アドレスが `192.168.10.1` の場合、クライアントを次のように設定できます

```properties
scalar.db.sql.connection_mode=cluster
scalar.db.sql.cluster_mode.contact_points=indirect:192.168.10.1
```

または、エンドポイントの名前空間を `ns`、エンドポイント名を `scalardb-cluster` として `direct-kubernetes` クライアントモードを使用する場合は、次のようにクライアントを構成できます
または、エンドポイントの名前空間を `ns`、エンドポイント名を `scalardb-cluster` として `direct-kubernetes` クライアントモードを使用する場合は、次のようにクライアントを設定できます

```properties
scalar.db.sql.connection_mode=cluster
scalar.db.sql.cluster_mode.contact_points=direct-kubernetes:ns/scalardb-cluster
```

ScalarDB JDBC の構成方法の詳細については、[JDBC 接続 URL](../scalardb-sql/jdbc-guide.mdx#jdbc-接続-url) を参照してください。
ScalarDB JDBC の設定方法の詳細については、[JDBC 接続 URL](../scalardb-sql/jdbc-guide.mdx#jdbc-接続-url) を参照してください。

Spring Data JDBC for ScalarDB の構成方法の詳細については、[構成](../scalardb-sql/spring-data-guide.mdx#構成) を参照してください。
Spring Data JDBC for ScalarDB の設定方法の詳細については、[設定](../scalardb-sql/spring-data-guide.mdx#設定) を参照してください。

### SQL CLI

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ ScalarDB Cluster は、[ScalarDB](../overview.mdx) のクラスタリングソ

マイクロサービストランザクションなど、複数のクライアント要求にまたがるトランザクションを実行する場合、トランザクション処理のステートフルな性質のため、トランザクションのすべての要求は同じサーバーで処理する必要があります。ただし、分散環境では、スケーラビリティと可用性のためにサービスは通常複数のサーバー (またはホスト) で実行されるため、同じサーバーに要求をルーティングするのは簡単ではありません。このシナリオでは、トランザクション内のすべての要求を同じサーバーにルーティングする必要があり、負荷分散を確実にするために異なるトランザクションを分散する必要があります。

この課題に対処するには、セッションアフィニティ (スティッキーセッションとも呼ばれます) などのルーティングメカニズムを構成する必要があります。この戦略により、トランザクション内のリクエストが一貫して同じサーバーにルーティングされるようになります。または、gRPC を使用して双方向ストリーミング RPC を活用することもできます。ただし、これらの構成を実装するには通常、かなりの時間と労力が必要であることに注意してください。さらに、使用しているロードバランサー製品によっては、特定の構成調整が必要になる場合があります
この課題に対処するには、セッションアフィニティ (スティッキーセッションとも呼ばれます) などのルーティングメカニズムを設定する必要があります。この戦略により、トランザクション内のリクエストが一貫して同じサーバーにルーティングされるようになります。または、gRPC を使用して双方向ストリーミング RPC を活用することもできます。ただし、これらの構成を実現するには通常、かなりの時間と労力が必要であることに注意してください。さらに、使用しているロードバランサー製品によっては、特定の設定調整が必要になる場合があります

このトピックの詳細については、[2フェーズコミットインターフェイスを使用したトランザクションでのリクエストルーティング](../two-phase-commit-transactions.mdx#2フェーズコミットインターフェイスを使用したトランザクションでのリクエストルーティング) を参照してください。

Expand Down Expand Up @@ -60,7 +60,7 @@ ScalarDB Cluster Helm Chart の詳細については、以下を参照してく

For details about the configurations for ScalarDB Cluster, refer to the following:

* [ScalarDB Cluster の構成](scalardb-cluster-configurations.mdx)
* [ScalarDB Cluster の設定](scalardb-cluster-configurations.mdx)

Java API で ScalarDB Cluster を使用するアプリケーションの開発の詳細については、以下を参照してください。

Expand Down
Loading