SELECT data_key, data_value
FROM xf_data_registry
WHERE data_key IN ('options', 'languages', 'contentTypes', 'codeEventListeners', 'deferredRun', 'simpleCache', 'addOns', 'defaultStyleProperties', 'routeFiltersIn', 'routeFiltersOut', 'routesPublic', 'nodeTypes', 'bannedIps', 'discouragedIps', 'styles', 'displayStyles', 'userBanners', 'smilies', 'bbCode', 'threadPrefixes', 'userTitleLadder', 'reportCounts', 'moderationCounts', 'userModerationCounts', 'notices', 'userFieldsInfo')
Run Time: 0.000583
Select Type | Table | Type | Possible Keys | Key | Key Len | Ref | Rows | Extra |
---|
SIMPLE | xf_data_registry | range | PRIMARY | PRIMARY | 27 | | 26 | Using where |
SELECT data_key, data_value
FROM xf_data_registry
WHERE data_key IN ('brListenerClasses', 'brBriviumAddOns')
Run Time: 0.000349
Select Type | Table | Type | Possible Keys | Key | Key Len | Ref | Rows | Extra |
---|
SIMPLE | xf_data_registry | range | PRIMARY | PRIMARY | 27 | | 2 | Using where |
SELECT *
FROM xf_brivium_addon
ORDER BY addon_id
Run Time: 0.000189
Select Type | Table | Type | Possible Keys | Key | Key Len | Ref | Rows | Extra |
---|
SIMPLE | xf_brivium_addon | index | | PRIMARY | 77 | | 1 | |
INSERT INTO xf_data_registry
(data_key, data_value)
VALUES
(?, ?)
ON DUPLICATE KEY UPDATE
data_value = VALUES(data_value)
Params: brBriviumAddOns, a:0:{}
Run Time: 0.000147
SELECT cache_value
FROM xf_permission_combination
WHERE permission_combination_id = ?
Params: 1
Run Time: 0.000198
Select Type | Table | Type | Possible Keys | Key | Key Len | Ref | Rows | Extra |
---|
SIMPLE | xf_permission_combination | const | PRIMARY | PRIMARY | 4 | const | 1 | |
SELECT thread.*
,
user.gender, user.avatar_date, user.gravatar,
NULL AS thread_read_date,
0 AS thread_reply_banned,
0 AS thread_is_watched,
'' AS draft_message, NULL AS draft_extra
FROM xf_thread AS thread
LEFT JOIN xf_user AS user ON
(user.user_id = thread.user_id)
WHERE thread.thread_id = ?
Params: 165979
Run Time: 0.000657
Select Type | Table | Type | Possible Keys | Key | Key Len | Ref | Rows | Extra |
---|
SIMPLE | thread | const | PRIMARY | PRIMARY | 4 | const | 1 | |
SIMPLE | user | const | PRIMARY | PRIMARY | 4 | const | 1 | |
SELECT node.*, forum.*
,
permission.cache_value AS node_permission_cache,
NULL AS forum_read_date
FROM xf_forum AS forum
INNER JOIN xf_node AS node ON (node.node_id = forum.node_id)
LEFT JOIN xf_permission_cache_content AS permission
ON (permission.permission_combination_id = 1
AND permission.content_type = 'node'
AND permission.content_id = forum.node_id)
WHERE node.node_id = ?
Params: 38
Run Time: 0.000425
Select Type | Table | Type | Possible Keys | Key | Key Len | Ref | Rows | Extra |
---|
SIMPLE | forum | const | PRIMARY | PRIMARY | 4 | const | 1 | |
SIMPLE | node | const | PRIMARY | PRIMARY | 4 | const | 1 | |
SIMPLE | permission | const | PRIMARY | PRIMARY | 35 | const,const,const | 1 | |
SELECT post.*
,
thread.*, thread.user_id AS thread_user_id, thread.username AS thread_username,
thread.post_date AS thread_post_date,
post.user_id, post.username, post.post_date,
bb_code_parse_cache.parse_tree AS message_parsed, bb_code_parse_cache.cache_version AS message_cache_version,
user.*, IF(user.username IS NULL, post.username, user.username) AS username,
user_profile.*,
user_privacy.*,
signature_parse_cache.parse_tree AS signature_parsed, bb_code_parse_cache.cache_version AS signature_cache_version,
session_activity.view_date AS last_view_date,
0 AS like_date
FROM xf_post AS post
INNER JOIN xf_thread AS thread ON
(thread.thread_id = post.thread_id)
LEFT JOIN xf_bb_code_parse_cache AS bb_code_parse_cache ON
(bb_code_parse_cache.content_type = 'post' AND bb_code_parse_cache.content_id = post.post_id)
LEFT JOIN xf_user AS user ON
(user.user_id = post.user_id)
LEFT JOIN xf_user_profile AS user_profile ON
(user_profile.user_id = post.user_id)
LEFT JOIN xf_user_privacy AS user_privacy ON
(user_privacy.user_id = post.user_id)
LEFT JOIN xf_bb_code_parse_cache AS signature_parse_cache ON
(signature_parse_cache.content_type = 'signature' AND signature_parse_cache.content_id = post.user_id)
LEFT JOIN xf_session_activity AS session_activity ON
(post.user_id > 0 AND session_activity.user_id = post.user_id AND session_activity.unique_key = CAST(post.user_id AS BINARY))
WHERE (
(post.thread_id = ? AND (post.position >= 0 AND post.position < 10) )
)
AND (post.message_state IN ('visible'))
ORDER BY post.position ASC, post.post_date ASC
Params: 165979
Run Time: 0.001841
Select Type | Table | Type | Possible Keys | Key | Key Len | Ref | Rows | Extra |
---|
SIMPLE | thread | const | PRIMARY | PRIMARY | 4 | const | 1 | Using filesort |
SIMPLE | post | ref | thread_id_post_date,thread_id_position | thread_id_post_date | 4 | const | 1 | Using index condition; Using where |
SIMPLE | bb_code_parse_cache | eq_ref | content_type_id | content_type_id | 31 | const,xenforo.cc.post.post_id | 1 | Using where |
SIMPLE | user | eq_ref | PRIMARY | PRIMARY | 4 | xenforo.cc.post.user_id | 1 | |
SIMPLE | user_profile | eq_ref | PRIMARY | PRIMARY | 4 | xenforo.cc.post.user_id | 1 | |
SIMPLE | user_privacy | eq_ref | PRIMARY | PRIMARY | 4 | xenforo.cc.post.user_id | 1 | |
SIMPLE | signature_parse_cache | eq_ref | content_type_id | content_type_id | 31 | const,xenforo.cc.post.user_id | 1 | Using where |
SIMPLE | session_activity | eq_ref | PRIMARY | PRIMARY | 22 | xenforo.cc.post.user_id,func | 1 | Using where |
INSERT INTO xf_thread_view
(thread_id)
VALUES
(?)
Params: 165979
Run Time: 0.000086
INSERT INTO `xf_session` (`session_id`, `session_data`, `expiry_date`) VALUES (?, ?, ?)
Params: 16a6a759a1dd54c5fa25edffa7d7301e, , 1716318698
Run Time: 0.000700
INSERT INTO xf_session_activity
(user_id, unique_key, ip, controller_name, controller_action, view_state, params, view_date, robot_key)
VALUES
(?, ?, ?, ?, ?, ?, ?, ?, ?)
ON DUPLICATE KEY UPDATE
ip = VALUES(ip),
controller_name = VALUES(controller_name),
controller_action = VALUES(controller_action),
view_state = VALUES(view_state),
params = VALUES(params),
view_date = VALUES(view_date),
robot_key = VALUES(robot_key)
Params: 0, , , XenForo_ControllerPublic_Thread, Index, valid, thread_id=165979, 1716315098,
Run Time: 0.000102
INSERT INTO xf_bb_code_parse_cache
(content_type, content_id, parse_tree, cache_version, cache_date)
VALUES (?, ?, ?, ?, ?)
ON DUPLICATE KEY UPDATE parse_tree = VALUES(parse_tree),
cache_version = VALUES(cache_version),
cache_date = VALUES(cache_date)
Params: post, 170518, a:31:{i:0;a:4:{s:3:"tag";s:4:"size";s:6:"option";s:1:"5";s:8:"original";a:2:{i:0;s:8:"[SIZE=5]";i:1;s:7:"[/SIZE]";}s:8:"children";a:1:{i:0;a:4:{s:3:"tag";s:1:"b";s:6:"option";N;s:8:"original";a:2:{i:0;s:3:"[B]";i:1;s:4:"[/B]";}s:8:"children";a:1:{i:0;s:57:"专业的啤酒品酒师是如何品鉴一款啤酒的?";}}}}i:1;s:2:"
";i:2;a:4:{s:3:"tag";s:3:"img";s:6:"option";N;s:8:"original";a:2:{i:0;s:5:"[IMG]";i:1;s:6:"[/IMG]";}s:8:"children";a:1:{i:0;s:61:"http://pic2.zhimg.com/12ac968a91e05314c0efc4f6a4be54fd_is.jpg";}}i:3;s:1280:" 王梦雨,微信公众号:猎酒党 原创为主的酒类知识科普账号
此文针对的是精酿啤酒。
先说国外通行的啤酒鉴定法吧。
一般来说,精酿文化发展比较好的地区,会首先按照不同分的分类进行品鉴。比如今儿要评的是 IPA(印度淡色啤酒啊)或者 Stout(世涛啤酒)啊,分类完之后;拿到一款啤酒后,从 off-flavor 开始,大意是啤酒不该有的味道、香气,比如有日光臭(阳光照到透明啤酒瓶所产生的类似于臭鼬一样的臭味)、异戊酸(啤酒花坏掉产生的奶酪般的臭味)、金属臭(酿造过程中机器生锈、或破碎产生的金属臭味)的等等,有的话就要标出来。
然后根据啤酒分类再进一步排除,比如评比 Pale Ale(淡色艾尔啤酒)你拿个 Stout(世涛啤酒)来,那肯定也是要排除。
排除掉之后,剩下的就是大体上没问题的啤酒,对这些进一步进行品鉴。
通常来说,最主流的分类是五个项目(在 ratebber 等啤酒网站上也是这五个分类)
AROMA(香气) APPEARANCE(外观) TASTE(味道) PALATE(口感) OVERALL(整体)
每一个单项满分的数值,不同的比赛、标准有细微的差距。
";i:4;a:4:{s:3:"tag";s:1:"b";s:6:"option";N;s:8:"original";a:2:{i:0;s:3:"[B]";i:1;s:4:"[/B]";}s:8:"children";a:1:{i:0;s:36:"1.香气(一般满分是 10 分)";}}i:5;s:35:"
其中香气主要评测项包括";i:6;a:4:{s:3:"tag";s:1:"b";s:6:"option";N;s:8:"original";a:2:{i:0;s:3:"[B]";i:1;s:4:"[/B]";}s:8:"children";a:1:{i:0;s:6:"麦香";}}i:7;s:3:"、";i:8;a:4:{s:3:"tag";s:1:"b";s:6:"option";N;s:8:"original";a:2:{i:0;s:3:"[B]";i:1;s:4:"[/B]";}s:8:"children";a:1:{i:0;s:12:"啤酒花香";}}i:9;s:3:"和";i:10;a:4:{s:3:"tag";s:1:"b";s:6:"option";N;s:8:"original";a:2:{i:0;s:3:"[B]";i:1;s:4:"[/B]";}s:8:"children";a:1:{i:0;s:12:"其他香气";}}i:11;s:338:",但是,并非麦香、啤酒花香越浓就得分越高,而是应该根据啤酒的特征来评比,比如,IPA(印度淡色艾尔啤酒),啤酒花香气越浓郁则应该得分越高,但是一瓶 Brown Ale(棕色艾尔啤酒)则应该啤酒花越淡得分越高。具体每一类的特征,可参考我这个答案 ";i:12;a:4:{s:3:"tag";s:3:"url";s:6:"option";s:54:"http://www.zhihu.com/question/30191317/answer/47553983";s:8:"original";a:2:{i:0;s:62:"[URL='http://www.zhihu.com/question/30191317/answer/47553983']";i:1;s:6:"[/URL]";}s:8:"children";a:1:{i:0;s:51:"世界上的啤酒有几种? - 王梦雨的回答";}}i:13;s:172:"
其他香气则比较多,比较常见的有水果香气、烘焙麦芽的香气、坚果的香气甚至于药草、花卉等小众味道。这些都算是加分项。
";i:14;a:4:{s:3:"tag";s:1:"b";s:6:"option";N;s:8:"original";a:2:{i:0;s:3:"[B]";i:1;s:4:"[/B]";}s:8:"children";a:1:{i:0;s:35:"2.外观(一般满分是 5 分)";}}i:15;s:29:"
外观主要评测项包括";i:16;a:4:{s:3:"tag";s:1:"b";s:6:"option";N;s:8:"original";a:2:{i:0;s:3:"[B]";i:1;s:4:"[/B]";}s:8:"children";a:1:{i:0;s:6:"颜色";}}i:17;s:3:"、";i:18;a:4:{s:3:"tag";s:1:"b";s:6:"option";N;s:8:"original";a:2:{i:0;s:3:"[B]";i:1;s:4:"[/B]";}s:8:"children";a:1:{i:0;s:6:"泡沫";}}i:19;s:3:"和";i:20;a:4:{s:3:"tag";s:1:"b";s:6:"option";N;s:8:"original";a:2:{i:0;s:3:"[B]";i:1;s:4:"[/B]";}s:8:"children";a:1:{i:0;s:6:"挂壁";}}i:21;s:499:",同上一样,并非是颜色越重得分应该越高,而是应该根据啤酒的分类来,比如 Stout(世涛啤酒)、Porter(波特啤酒)就是越黑越好;皮尔森则应该是越金黄越好;泡沫一般应该持久、不宜太厚或太薄,挂壁则是国人比较陌生的词,他英文原单词是 Lacing 大意是啤酒泡沫褪去后,留在杯子上的泡沫痕迹,像蕾丝边一样,越好看约好(其实我也不懂为什么这个要作为测评项)。
";i:22;a:4:{s:3:"tag";s:1:"b";s:6:"option";N;s:8:"original";a:2:{i:0;s:3:"[B]";i:1;s:4:"[/B]";}s:8:"children";a:1:{i:0;s:36:"3.味道(一般满分是 20 分)";}}i:23;s:364:"
味道测评评测想比较多,主要就是麦芽味、啤酒花味、其他味道、平衡、后味等。这就要求品鉴人要很熟悉各类啤酒的味道。比如什么啤酒应该是麦芽味重、什么啤酒应该是啤酒花重、什么啤酒应该有果香;几种味道平衡的是否好,会不会过酸或过苦;后味是否绵长等等。
";i:24;a:4:{s:3:"tag";s:1:"b";s:6:"option";N;s:8:"original";a:2:{i:0;s:3:"[B]";i:1;s:4:"[/B]";}s:8:"children";a:1:{i:0;s:35:"4.口感(一般满分是 5 分)";}}i:25;s:35:"
这个比较简单,主要就是";i:26;a:4:{s:3:"tag";s:1:"b";s:6:"option";N;s:8:"original";a:2:{i:0;s:3:"[B]";i:1;s:4:"[/B]";}s:8:"children";a:1:{i:0;s:27:"酒体强度、杀口感。";}}i:27;s:2:"
";i:28;a:4:{s:3:"tag";s:1:"b";s:6:"option";N;s:8:"original";a:2:{i:0;s:3:"[B]";i:1;s:4:"[/B]";}s:8:"children";a:1:{i:0;s:36:"5.整体(一般满分是 10 分)";}}i:29;s:117:"
品鉴完之后,对其整体印象再进行一个打分。
累计的总分,就是一款啤酒的得分了。
";i:30;a:4:{s:3:"tag";s:3:"url";s:6:"option";s:38:"http://www.zhihu.com/question/30968665";s:8:"original";a:2:{i:0;s:46:"[URL='http://www.zhihu.com/question/30968665']";i:1;s:6:"[/URL]";}s:8:"children";a:1:{i:0;s:18:"查看知乎原文";}}}, 1621686945, 1716315098
Run Time: 0.000634