一般的なCassandraデータ型のバイトサイズはどれくらいですか-パーティションディスクの使用量を計算するときに使用されますか?

nicgul

Datastax Academyデータモデリングコースの式を使用して、任意の数の列とタイプを持つテーブルの各行のパーティションサイズを計算しようとしています。

そのためには、いくつかの一般的なCassandraデータ型の「バイト単位のサイズ」を知る必要があります。私はこれをググってみましたが、たくさんの提案があり、困惑しています。

私が知りたいデータ型は次のとおりです。

  • 単一のCassandraTEXT文字(2〜4バイトの回答をグーグルで検索しました)
  • カサンドラDECIMAL
  • Cassandra INT(4バイトだと思います)
  • Cassandra BIGINT(8バイトだと思います)
  • Cassandra BOOELAN(1バイト、..または1ビットだと思います)

もちろん、Cassandraのデータ型サイズに関して他の考慮事項もありがたいです。

カサンドラが舞台裏で行った圧縮やその他の最適化を行わずにデータが占める「最悪のシナリオのディスク使用量」を推定しようとしているだけだと理解するのは混乱しているように思われるため、さらに情報を追加します。

私はDatastaxAcademyコースDS220(最後のリンクを参照)に従って式を実装し、ここでの回答からの情報をその式の変数として使用します。

https://academy.datastax.com/courses/ds220-data-modeling/physical-partition-size

ジェームズフレーメン

実用的な観点から、設計時にds220コースの式を使用して、最悪の場合のエンベロープの裏側の見積もりを取得するのが賢明だと思います。圧縮の効果は、多くの場合、データのアルゴリズムとパターンによって異なります。ds220およびhttp://cassandra.apache.org/doc/latest/cql/types.htmlから

uuid: 16 bytes
timeuuid: 16 bytes
timestamp: 8 bytes
bigint: 8 bytes
counter: 8 bytes
double: 8 bytes
time: 8 bytes
inet: 4 bytes (IPv4) or 16 bytes (IPV6)
date: 4 bytes
float: 4 bytes
int 4 bytes
smallint: 2 bytes
tinyint: 1 byte
boolean: 1 byte (hopefully.. no source for this)
ascii: equires an estimate of average # chars * 1 byte/char
text/varchar: requires an estimate of average # chars * (avg. # bytes/char for language)
map/list/set/blob: an estimate

それが役に立てば幸い

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

Related 関連記事

ホットタグ

アーカイブ