<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>大数据 - 标签 - 逆向工程 Cookbook</title><link>https://overkazaf.github.io/reverse_engineering/tags/%E5%A4%A7%E6%95%B0%E6%8D%AE/</link><description>Android 与 Web 逆向工程实战手册</description><generator>Hugo 0.147.7 &amp; FixIt v0.4.0-alpha.3-20251224074056-4fec1cda</generator><language>zh-CN</language><managingEditor>overkazaf@gmail.com (+5)</managingEditor><webMaster>overkazaf@gmail.com (+5)</webMaster><lastBuildDate>Tue, 16 Sep 2025 00:00:00 +0000</lastBuildDate><atom:link href="https://overkazaf.github.io/reverse_engineering/tags/%E5%A4%A7%E6%95%B0%E6%8D%AE/index.xml" rel="self" type="application/rss+xml"/><item><title>HBase 分布式 NoSQL 数据库</title><link>https://overkazaf.github.io/reverse_engineering/android/04-reference/engineering/data-analysis/hbase/</link><pubDate>Tue, 16 Sep 2025 00:00:00 +0000</pubDate><author>overkazaf@gmail.com (+5)</author><guid>https://overkazaf.github.io/reverse_engineering/android/04-reference/engineering/data-analysis/hbase/</guid><description>&lt;h1 class="heading-element" id="hbase-分布式-nosql-数据库">&lt;span>HBase 分布式 NoSQL 数据库&lt;/span>
 &lt;a href="#hbase-%e5%88%86%e5%b8%83%e5%bc%8f-nosql-%e6%95%b0%e6%8d%ae%e5%ba%93" class="heading-mark">
 &lt;svg class="octicon octicon-link" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true">&lt;path d="m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z">&lt;/path>&lt;/svg>
 &lt;/a>
&lt;/h1>&lt;p>Apache HBase 是一个分布式、面向列的开源数据库，基于 Google Bigtable 论文实现，运行在 HDFS 之上。&lt;/p></description></item><item><title>数据仓库与计算引擎</title><link>https://overkazaf.github.io/reverse_engineering/android/04-reference/engineering/data-analysis/data_warehousing_and_processing/</link><pubDate>Sun, 17 Aug 2025 00:00:00 +0000</pubDate><author>overkazaf@gmail.com (+5)</author><guid>https://overkazaf.github.io/reverse_engineering/android/04-reference/engineering/data-analysis/data_warehousing_and_processing/</guid><description>&lt;h1 class="heading-element" id="数据仓库与计算引擎">&lt;span>数据仓库与计算引擎&lt;/span>
 &lt;a href="#%e6%95%b0%e6%8d%ae%e4%bb%93%e5%ba%93%e4%b8%8e%e8%ae%a1%e7%ae%97%e5%bc%95%e6%93%8e" class="heading-mark">
 &lt;svg class="octicon octicon-link" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true">&lt;path d="m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z">&lt;/path>&lt;/svg>
 &lt;/a>
&lt;/h1>&lt;h2 class="heading-element" id="当通过逆向和爬虫采集到海量数据后例如数亿条用户行为日志商品信息如何存储管理和分析这些数据就成了大数据领域的核心问题本节将介绍主流的数据仓库和分布式计算引擎技术">&lt;span>当通过逆向和爬虫采集到海量数据后（例如，数亿条用户行为日志、商品信息），如何存储、管理和分析这些数据，就成了大数据领域的核心问题。本节将介绍主流的数据仓库和分布式计算引擎技术。&lt;/span>
 &lt;a href="#%e5%bd%93%e9%80%9a%e8%bf%87%e9%80%86%e5%90%91%e5%92%8c%e7%88%ac%e8%99%ab%e9%87%87%e9%9b%86%e5%88%b0%e6%b5%b7%e9%87%8f%e6%95%b0%e6%8d%ae%e5%90%8e%e4%be%8b%e5%a6%82%e6%95%b0%e4%ba%bf%e6%9d%a1%e7%94%a8%e6%88%b7%e8%a1%8c%e4%b8%ba%e6%97%a5%e5%bf%97%e5%95%86%e5%93%81%e4%bf%a1%e6%81%af%e5%a6%82%e4%bd%95%e5%ad%98%e5%82%a8%e7%ae%a1%e7%90%86%e5%92%8c%e5%88%86%e6%9e%90%e8%bf%99%e4%ba%9b%e6%95%b0%e6%8d%ae%e5%b0%b1%e6%88%90%e4%ba%86%e5%a4%a7%e6%95%b0%e6%8d%ae%e9%a2%86%e5%9f%9f%e7%9a%84%e6%a0%b8%e5%bf%83%e9%97%ae%e9%a2%98%e6%9c%ac%e8%8a%82%e5%b0%86%e4%bb%8b%e7%bb%8d%e4%b8%bb%e6%b5%81%e7%9a%84%e6%95%b0%e6%8d%ae%e4%bb%93%e5%ba%93%e5%92%8c%e5%88%86%e5%b8%83%e5%bc%8f%e8%ae%a1%e7%ae%97%e5%bc%95%e6%93%8e%e6%8a%80%e6%9c%af" class="heading-mark">
 &lt;svg class="octicon octicon-link" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true">&lt;path d="m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z">&lt;/path>&lt;/svg>
 &lt;/a>
&lt;/h2>&lt;h2 class="heading-element" id="1-数据仓库-data-warehouse">&lt;span>1. 数据仓库 (Data Warehouse)&lt;/span>
 &lt;a href="#1-%e6%95%b0%e6%8d%ae%e4%bb%93%e5%ba%93-data-warehouse" class="heading-mark">
 &lt;svg class="octicon octicon-link" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true">&lt;path d="m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z">&lt;/path>&lt;/svg>
 &lt;/a>
&lt;/h2>&lt;p>数据仓库是一个用于存储和分析海量结构化、半结构化数据的系统。它与业务数据库（OLTP）不同，其核心目标是支持复杂的分析查询（OLAP）。&lt;/p></description></item><item><title>Apache Flink 实时流处理</title><link>https://overkazaf.github.io/reverse_engineering/android/04-reference/engineering/data-analysis/flink/</link><pubDate>Sat, 09 Aug 2025 00:00:00 +0000</pubDate><author>overkazaf@gmail.com (+5)</author><guid>https://overkazaf.github.io/reverse_engineering/android/04-reference/engineering/data-analysis/flink/</guid><description>&lt;h1 class="heading-element" id="apache-flink-实时流处理">&lt;span>Apache Flink 实时流处理&lt;/span>
 &lt;a href="#apache-flink-%e5%ae%9e%e6%97%b6%e6%b5%81%e5%a4%84%e7%90%86" class="heading-mark">
 &lt;svg class="octicon octicon-link" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true">&lt;path d="m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z">&lt;/path>&lt;/svg>
 &lt;/a>
&lt;/h1>&lt;p>Apache Flink 是一个分布式流处理框架，专为低延迟、高吞吐量的实时数据处理而设计。&lt;/p></description></item><item><title>Apache Spark 大数据处理</title><link>https://overkazaf.github.io/reverse_engineering/android/04-reference/engineering/data-analysis/spark/</link><pubDate>Tue, 10 Jun 2025 00:00:00 +0000</pubDate><author>overkazaf@gmail.com (+5)</author><guid>https://overkazaf.github.io/reverse_engineering/android/04-reference/engineering/data-analysis/spark/</guid><description>&lt;h1 class="heading-element" id="apache-spark-大数据处理">&lt;span>Apache Spark 大数据处理&lt;/span>
 &lt;a href="#apache-spark-%e5%a4%a7%e6%95%b0%e6%8d%ae%e5%a4%84%e7%90%86" class="heading-mark">
 &lt;svg class="octicon octicon-link" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true">&lt;path d="m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z">&lt;/path>&lt;/svg>
 &lt;/a>
&lt;/h1>&lt;p>Apache Spark 是一个统一的大数据处理引擎，支持批处理、流处理、机器学习和图计算。&lt;/p></description></item><item><title>框架、工具与中间件</title><link>https://overkazaf.github.io/reverse_engineering/android/04-reference/engineering/frameworks_and_middleware/</link><pubDate>Fri, 23 May 2025 00:00:00 +0000</pubDate><author>overkazaf@gmail.com (+5)</author><guid>https://overkazaf.github.io/reverse_engineering/android/04-reference/engineering/frameworks_and_middleware/</guid><description>&lt;h1 class="heading-element" id="框架工具与中间件">&lt;span>框架、工具与中间件&lt;/span>
 &lt;a href="#%e6%a1%86%e6%9e%b6%e5%b7%a5%e5%85%b7%e4%b8%8e%e4%b8%ad%e9%97%b4%e4%bb%b6" class="heading-mark">
 &lt;svg class="octicon octicon-link" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true">&lt;path d="m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z">&lt;/path>&lt;/svg>
 &lt;/a>
&lt;/h1>&lt;p>在复杂的逆向工程和数据采集中，单纯依靠基础工具往往效率低下。为了处理大规模的任务、管理复杂的依赖和保证流程的稳定性，我们需要引入&amp;quot;工程化&amp;quot;的思维，利用成熟的框架和中间件来构建健壮、可扩展的分析系统。&lt;/p></description></item><item><title>Hive 数据仓库</title><link>https://overkazaf.github.io/reverse_engineering/android/04-reference/engineering/data-analysis/hive/</link><pubDate>Fri, 25 Apr 2025 00:00:00 +0000</pubDate><author>overkazaf@gmail.com (+5)</author><guid>https://overkazaf.github.io/reverse_engineering/android/04-reference/engineering/data-analysis/hive/</guid><description>&lt;h1 class="heading-element" id="hive-数据仓库">&lt;span>Hive 数据仓库&lt;/span>
 &lt;a href="#hive-%e6%95%b0%e6%8d%ae%e4%bb%93%e5%ba%93" class="heading-mark">
 &lt;svg class="octicon octicon-link" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true">&lt;path d="m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z">&lt;/path>&lt;/svg>
 &lt;/a>
&lt;/h1>&lt;p>Apache Hive 是基于 Hadoop 的数据仓库工具，可以将结构化的数据文件映射为数据库表，并提供类 SQL 查询功能。&lt;/p></description></item><item><title>消息队列 (Message Queue)</title><link>https://overkazaf.github.io/reverse_engineering/android/04-reference/engineering/message_queues/</link><pubDate>Fri, 25 Apr 2025 00:00:00 +0000</pubDate><author>overkazaf@gmail.com (+5)</author><guid>https://overkazaf.github.io/reverse_engineering/android/04-reference/engineering/message_queues/</guid><description>&lt;h1 class="heading-element" id="消息队列-message-queue">&lt;span>消息队列 (Message Queue)&lt;/span>
 &lt;a href="#%e6%b6%88%e6%81%af%e9%98%9f%e5%88%97-message-queue" class="heading-mark">
 &lt;svg class="octicon octicon-link" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true">&lt;path d="m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z">&lt;/path>&lt;/svg>
 &lt;/a>
&lt;/h1>&lt;h2 class="heading-element" id="消息队列mq是大型分布式系统中用于服务间异步通信的核心组件在规模化的逆向分析和数据采集中它扮演着缓冲池和解耦器的关键角色确保数据流的稳定高效和可靠">&lt;span>消息队列（MQ）是大型分布式系统中用于服务间异步通信的核心组件。在规模化的逆向分析和数据采集中，它扮演着&amp;quot;缓冲池&amp;quot;和&amp;quot;解耦器&amp;quot;的关键角色，确保数据流的稳定、高效和可靠。&lt;/span>
 &lt;a href="#%e6%b6%88%e6%81%af%e9%98%9f%e5%88%97mq%e6%98%af%e5%a4%a7%e5%9e%8b%e5%88%86%e5%b8%83%e5%bc%8f%e7%b3%bb%e7%bb%9f%e4%b8%ad%e7%94%a8%e4%ba%8e%e6%9c%8d%e5%8a%a1%e9%97%b4%e5%bc%82%e6%ad%a5%e9%80%9a%e4%bf%a1%e7%9a%84%e6%a0%b8%e5%bf%83%e7%bb%84%e4%bb%b6%e5%9c%a8%e8%a7%84%e6%a8%a1%e5%8c%96%e7%9a%84%e9%80%86%e5%90%91%e5%88%86%e6%9e%90%e5%92%8c%e6%95%b0%e6%8d%ae%e9%87%87%e9%9b%86%e4%b8%ad%e5%ae%83%e6%89%ae%e6%bc%94%e7%9d%80%e7%bc%93%e5%86%b2%e6%b1%a0%e5%92%8c%e8%a7%a3%e8%80%a6%e5%99%a8%e7%9a%84%e5%85%b3%e9%94%ae%e8%a7%92%e8%89%b2%e7%a1%ae%e4%bf%9d%e6%95%b0%e6%8d%ae%e6%b5%81%e7%9a%84%e7%a8%b3%e5%ae%9a%e9%ab%98%e6%95%88%e5%92%8c%e5%8f%af%e9%9d%a0" class="heading-mark">
 &lt;svg class="octicon octicon-link" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true">&lt;path d="m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z">&lt;/path>&lt;/svg>
 &lt;/a>
&lt;/h2>&lt;h2 class="heading-element" id="1-核心概念与作用">&lt;span>1. 核心概念与作用&lt;/span>
 &lt;a href="#1-%e6%a0%b8%e5%bf%83%e6%a6%82%e5%bf%b5%e4%b8%8e%e4%bd%9c%e7%94%a8" class="heading-mark">
 &lt;svg class="octicon octicon-link" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true">&lt;path d="m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z">&lt;/path>&lt;/svg>
 &lt;/a>
&lt;/h2>&lt;h3 class="heading-element" id="a-为什么需要消息队列">&lt;span>a) 为什么需要消息队列？&lt;/span>
 &lt;a href="#a-%e4%b8%ba%e4%bb%80%e4%b9%88%e9%9c%80%e8%a6%81%e6%b6%88%e6%81%af%e9%98%9f%e5%88%97" class="heading-mark">
 &lt;svg class="octicon octicon-link" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true">&lt;path d="m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z">&lt;/path>&lt;/svg>
 &lt;/a>
&lt;/h3>&lt;p>想象一个场景：你有 100 台爬虫节点（生产者）在高速抓取数据，同时有 10 个数据处理节点（消费者）负责清洗和入库。如果让生产者直接调用消费者的 API，会产生几个问题：&lt;/p></description></item><item><title>Redis 常用命令备忘录</title><link>https://overkazaf.github.io/reverse_engineering/android/04-reference/engineering/redis/</link><pubDate>Mon, 14 Apr 2025 00:00:00 +0000</pubDate><author>overkazaf@gmail.com (+5)</author><guid>https://overkazaf.github.io/reverse_engineering/android/04-reference/engineering/redis/</guid><description>&lt;h1 class="heading-element" id="redis-常用命令备忘录">&lt;span>Redis 常用命令备忘录&lt;/span>
 &lt;a href="#redis-%e5%b8%b8%e7%94%a8%e5%91%bd%e4%bb%a4%e5%a4%87%e5%bf%98%e5%bd%95" class="heading-mark">
 &lt;svg class="octicon octicon-link" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true">&lt;path d="m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z">&lt;/path>&lt;/svg>
 &lt;/a>
&lt;/h1>&lt;p>Redis 是一个开源的、基于内存的、高性能的键值存储系统。它支持多种数据结构，如字符串、哈希、列表、集合和有序集合。本备忘录旨在提供常用命令的快速参考。&lt;/p></description></item><item><title>风控 SDK 架构设计</title><link>https://overkazaf.github.io/reverse_engineering/android/04-reference/engineering/risk_control_sdk_build_guide/</link><pubDate>Tue, 04 Mar 2025 00:00:00 +0000</pubDate><author>overkazaf@gmail.com (+5)</author><guid>https://overkazaf.github.io/reverse_engineering/android/04-reference/engineering/risk_control_sdk_build_guide/</guid><description>&lt;h1 class="heading-element" id="风控-sdk-架构设计">&lt;span>风控 SDK 架构设计&lt;/span>
 &lt;a href="#%e9%a3%8e%e6%8e%a7-sdk-%e6%9e%b6%e6%9e%84%e8%ae%be%e8%ae%a1" class="heading-mark">
 &lt;svg class="octicon octicon-link" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true">&lt;path d="m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z">&lt;/path>&lt;/svg>
 &lt;/a>
&lt;/h1>&lt;blockquote>
&lt;p>&lt;strong>说明&lt;/strong>: 本案例是笔者根据实际风控 SDK 逆向分析经验，构建的一个&lt;strong>精简版客户端风控 SDK Demo&lt;/strong>。
旨在帮助读者理解风控 SDK 的核心架构和设计思路，而非生产级实现。&lt;/p></description></item><item><title>群控技术 vs API 逆向：技术路线选择指南</title><link>https://overkazaf.github.io/reverse_engineering/android/04-reference/engineering/automation_vs_api_reverse/</link><pubDate>Sat, 01 Mar 2025 00:00:00 +0000</pubDate><author>overkazaf@gmail.com (+5)</author><guid>https://overkazaf.github.io/reverse_engineering/android/04-reference/engineering/automation_vs_api_reverse/</guid><description>&lt;h1 class="heading-element" id="群控技术-vs-api-逆向技术路线选择指南">&lt;span>群控技术 vs API 逆向：技术路线选择指南&lt;/span>
 &lt;a href="#%e7%be%a4%e6%8e%a7%e6%8a%80%e6%9c%af-vs-api-%e9%80%86%e5%90%91%e6%8a%80%e6%9c%af%e8%b7%af%e7%ba%bf%e9%80%89%e6%8b%a9%e6%8c%87%e5%8d%97" class="heading-mark">
 &lt;svg class="octicon octicon-link" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true">&lt;path d="m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z">&lt;/path>&lt;/svg>
 &lt;/a>
&lt;/h1>&lt;p>在移动端数据采集和自动化领域，&lt;strong>群控技术&lt;/strong>和 &lt;strong>API 逆向&lt;/strong>是两条主流的技术路线。本文将从多个维度对比分析两者的优劣，帮助你根据实际场景选择合适的方案。&lt;/p></description></item><item><title>消息队列</title><link>https://overkazaf.github.io/reverse_engineering/android/04-reference/engineering/data-analysis/message_queues/</link><pubDate>Sat, 09 Aug 2025 00:00:00 +0000</pubDate><author>overkazaf@gmail.com (+5)</author><guid>https://overkazaf.github.io/reverse_engineering/android/04-reference/engineering/data-analysis/message_queues/</guid><description>&lt;h1 class="heading-element" id="消息队列">&lt;span>消息队列&lt;/span>
 &lt;a href="#%e6%b6%88%e6%81%af%e9%98%9f%e5%88%97" class="heading-mark">
 &lt;svg class="octicon octicon-link" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true">&lt;path d="m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z">&lt;/path>&lt;/svg>
 &lt;/a>
&lt;/h1>&lt;p>消息队列（Message Queue）是分布式系统中实现异步通信、解耦组件的核心中间件，在逆向工程数据管线中扮演着至关重要的角色。&lt;/p></description></item><item><title>工程实践</title><link>https://overkazaf.github.io/reverse_engineering/android/04-reference/engineering/</link><pubDate>Fri, 05 Sep 2025 00:00:00 +0000</pubDate><author>overkazaf@gmail.com (+5)</author><guid>https://overkazaf.github.io/reverse_engineering/android/04-reference/engineering/</guid><description>&lt;p>本章聚焦逆向工程中的工程化实践，涵盖技术选型、工具链搭建、数据处理等内容。在实际项目中，逆向分析只是第一步，如何将分析结果工程化落地、如何高效处理海量数据、如何设计稳定的系统架构，才是决定项目成败的关键。&lt;/p></description></item><item><title>数据分析</title><link>https://overkazaf.github.io/reverse_engineering/android/04-reference/engineering/data-analysis/</link><pubDate>Wed, 09 Apr 2025 00:00:00 +0000</pubDate><author>overkazaf@gmail.com (+5)</author><guid>https://overkazaf.github.io/reverse_engineering/android/04-reference/engineering/data-analysis/</guid><description>&lt;p>本章介绍大数据技术栈中的核心组件，帮助读者掌握从数据采集、存储到计算分析的完整链路。在大规模逆向工程项目中，高效的数据处理能力是不可或缺的基础设施。&lt;/p></description></item></channel></rss>