添加产品规格文档并优化项目结构
Made-with: Cursor
This commit is contained in:
@@ -12,6 +12,7 @@
|
||||
### 方案1:SQLite(⭐ 推荐)
|
||||
|
||||
**优点:**
|
||||
|
||||
- ✅ Python 内置支持(`sqlite3`),无需安装额外依赖
|
||||
- ✅ 单文件数据库,易于备份和迁移
|
||||
- ✅ 查询性能好,支持复杂查询
|
||||
@@ -20,6 +21,7 @@
|
||||
- ✅ 适合 MVP 到生产环境的平滑升级
|
||||
|
||||
**缺点:**
|
||||
|
||||
- ⚠️ 需要学习基本的 SQL(但很简单)
|
||||
- ⚠️ 多进程写入需要处理锁(Streamlit 单进程,无此问题)
|
||||
|
||||
@@ -32,11 +34,13 @@
|
||||
### 方案2:JSON 文件
|
||||
|
||||
**优点:**
|
||||
|
||||
- ✅ 最简单,无需学习 SQL
|
||||
- ✅ 人类可读,易于调试
|
||||
- ✅ 无需数据库知识
|
||||
|
||||
**缺点:**
|
||||
|
||||
- ❌ 查询性能差(需要加载整个文件)
|
||||
- ❌ 数据量大时很慢
|
||||
- ❌ 并发写入可能丢失数据
|
||||
@@ -53,19 +57,16 @@
|
||||
### 为什么推荐 SQLite?
|
||||
|
||||
1. **其实很简单**:只需要几行代码
|
||||
```python
|
||||
```python
|
||||
import sqlite3
|
||||
conn = sqlite3.connect('data.db')
|
||||
cursor = conn.cursor()
|
||||
cursor.execute("INSERT INTO table VALUES (?)", (value,))
|
||||
conn.commit()
|
||||
conn.close()
|
||||
```
|
||||
|
||||
```
|
||||
2. **性能好**:即使数据量增长到几万条,依然很快
|
||||
|
||||
3. **功能强大**:支持统计、查询、分析,为后续功能扩展打好基础
|
||||
|
||||
4. **零依赖**:Python 内置,无需安装任何包
|
||||
|
||||
---
|
||||
@@ -163,12 +164,14 @@ with tab5:
|
||||
|
||||
## 性能对比(参考)
|
||||
|
||||
| 数据量 | SQLite | JSON文件 |
|
||||
|--------|--------|----------|
|
||||
| 100条 | <10ms | <10ms |
|
||||
| 1000条 | <50ms | ~100ms |
|
||||
| 10000条 | ~200ms | ~5秒 |
|
||||
| 100000条 | ~1秒 | 很慢 |
|
||||
|
||||
| 数据量 | SQLite | JSON文件 |
|
||||
| ------- | ------ | ------ |
|
||||
| 100条 | <10ms | <10ms |
|
||||
| 1000条 | <50ms | ~100ms |
|
||||
| 10000条 | ~200ms | ~5秒 |
|
||||
| 100000条 | ~1秒 | 很慢 |
|
||||
|
||||
|
||||
---
|
||||
|
||||
@@ -191,4 +194,4 @@ with tab5:
|
||||
2. 查看 `modules/storage_example.py` 了解使用方法
|
||||
3. 在 `modules/geo_tool.py` 中集成(参考上面的最小改动示例)
|
||||
|
||||
需要我帮你直接集成到 `modules/geo_tool.py` 吗?
|
||||
需要我帮你直接集成到 `modules/geo_tool.py` 吗?
|
||||
Reference in New Issue
Block a user