Отвечая на мои собственные вопросы: Кассандра будет кэшировать все столбцы этой строки.
Из «Руководства Кассандры» (2-е издание) Джеффа Карпентера и Эбена Хьюитта:
Кэш строк кэширует целые строки и может ускорить доступ для чтения к часто используемым строкам за счет увеличения использования памяти.
Эксперимент:
abc@cqlsh:test> SELECT pk1, ck1, read_heavy_col1 FROM tb1 WHERE pk1=2 and ck1=1;
pk1 | ck1 | read_heavy_col1
-----+-----+-----------------
2 | 1 | 1
(1 rows)
Tracing session: 53aac630-11be-11e9-9cb3-fbffb1c1e13b
activity | timestamp | source | source_elapsed
--------------------------------------------------------------------------------------------------------+----------------------------+--------------+----------------
Execute CQL3 query | 2019-01-06 22:21:15.667000 | x.x.x.x | 0
Parsing SELECT pk1, ck1, read_heavy_col1 FROM tb1 WHERE pk1=2 and ck1=1; [Native-Transport-Requests-1] | 2019-01-06 22:21:15.668000 | x.x.x.x | 310
Preparing statement [Native-Transport-Requests-1] | 2019-01-06 22:21:15.668000 | x.x.x.x | 568
Executing single-partition query on roles [ReadStage-2] | 2019-01-06 22:21:15.669000 | x.x.x.x | 1259
Acquiring sstable references [ReadStage-2] | 2019-01-06 22:21:15.669000 | x.x.x.x | 1345
Key cache hit for sstable 2 [ReadStage-2] | 2019-01-06 22:21:15.669000 | x.x.x.x | 1475
Skipped 0/1 non-slice-intersecting sstables, included 0 due to tombstones [ReadStage-2] | 2019-01-06 22:21:15.669000 | x.x.x.x | 1569
Merged data from memtables and 1 sstables [ReadStage-2] | 2019-01-06 22:21:15.669000 | x.x.x.x | 1768
Read 1 live rows and 0 tombstone cells [ReadStage-2] | 2019-01-06 22:21:15.669000 | x.x.x.x | 1869
Executing single-partition query on roles [ReadStage-3] | 2019-01-06 22:21:15.672000 | x.x.x.x | 4579
Acquiring sstable references [ReadStage-3] | 2019-01-06 22:21:15.672000 | x.x.x.x | 4701
Key cache hit for sstable 2 [ReadStage-3] | 2019-01-06 22:21:15.672000 | x.x.x.x | 4812
Skipped 0/1 non-slice-intersecting sstables, included 0 due to tombstones [ReadStage-3] | 2019-01-06 22:21:15.672000 | x.x.x.x | 4891
Merged data from memtables and 1 sstables [ReadStage-3] | 2019-01-06 22:21:15.672000 | x.x.x.x | 5001
Read 1 live rows and 0 tombstone cells [ReadStage-3] | 2019-01-06 22:21:15.673000 | x.x.x.x | 5081
Row cache miss [ReadStage-3] | 2019-01-06 22:21:15.674000 | x.x.x.x | 6227
Executing single-partition query on tb1 [ReadStage-3] | 2019-01-06 22:21:15.674000 | x.x.x.x | 6387
Acquiring sstable references [ReadStage-3] | 2019-01-06 22:21:15.674000 | x.x.x.x | 6445
Skipped 0/0 non-slice-intersecting sstables, included 0 due to tombstones [ReadStage-3] | 2019-01-06 22:21:15.674001 | x.x.x.x | 6514
Caching 3 rows [ReadStage-3] | 2019-01-06 22:21:15.674001 | x.x.x.x | 6647
Merged data from memtables and 0 sstables [ReadStage-3] | 2019-01-06 22:21:15.675000 | x.x.x.x | 7231
Read 1 live rows and 0 tombstone cells [ReadStage-3] | 2019-01-06 22:21:15.675000 | x.x.x.x | 7443
Request complete | 2019-01-06 22:21:15.676482 | x.x.x.x | 9482
Затем строки кэшируютсявыборка обычного столбца: abc @ cqlsh: test> SELECT pk1, ck1, normal_col2 ОТ tb1 WHERE pk1 = 2 и ck1 = 1;
pk1 | ck1 | normal_col2
-----+-----+-------------
2 | 1 | 1
(1 rows)
Tracing session: a178ae90-11be-11e9-9cb3-fbffb1c1e13b
activity | timestamp | source | source_elapsed
----------------------------------------------------------------------------------------------------+----------------------------+--------------+----------------
Execute CQL3 query | 2019-01-06 22:23:26.201000 | x.x.x.x | 0
Parsing SELECT pk1, ck1, normal_col2 FROM tb1 WHERE pk1=2 and ck1=1; [Native-Transport-Requests-1] | 2019-01-06 22:23:26.202000 | x.x.x.x | 205
Preparing statement [Native-Transport-Requests-1] | 2019-01-06 22:23:26.202000 | x.x.x.x | 393
Executing single-partition query on roles [ReadStage-3] | 2019-01-06 22:23:26.202000 | x.x.x.x | 968
Acquiring sstable references [ReadStage-3] | 2019-01-06 22:23:26.203000 | x.x.x.x | 1413
Key cache hit for sstable 2 [ReadStage-3] | 2019-01-06 22:23:26.203000 | x.x.x.x | 1564
Skipped 0/1 non-slice-intersecting sstables, included 0 due to tombstones [ReadStage-3] | 2019-01-06 22:23:26.203000 | x.x.x.x | 1685
Merged data from memtables and 1 sstables [ReadStage-3] | 2019-01-06 22:23:26.203000 | x.x.x.x | 1841
Read 1 live rows and 0 tombstone cells [ReadStage-3] | 2019-01-06 22:23:26.203000 | x.x.x.x | 1930
Executing single-partition query on roles [ReadStage-5] | 2019-01-06 22:23:26.204000 | x.x.x.x | 2307
Acquiring sstable references [ReadStage-5] | 2019-01-06 22:23:26.204000 | x.x.x.x | 2375
Key cache hit for sstable 2 [ReadStage-5] | 2019-01-06 22:23:26.204000 | x.x.x.x | 2475
Skipped 0/1 non-slice-intersecting sstables, included 0 due to tombstones [ReadStage-5] | 2019-01-06 22:23:26.204000 | x.x.x.x | 2584
Merged data from memtables and 1 sstables [ReadStage-5] | 2019-01-06 22:23:26.204000 | x.x.x.x | 2691
Read 1 live rows and 0 tombstone cells [ReadStage-5] | 2019-01-06 22:23:26.204000 | x.x.x.x | 2761
Row cache hit [ReadStage-3] | 2019-01-06 22:23:26.205000 | x.x.x.x | 3301
Read 1 live rows and 0 tombstone cells [ReadStage-3] | 2019-01-06 22:23:26.205000 | x.x.x.x | 3489
Request complete | 2019-01-06 22:23:26.204726 | x.x.x.x | 3726
Ясно, что C * будет кэшировать всю строку, а не конкретные столбцы.