请总结一下这段代码的主要功能。
```python
import pandas as pd
import matplotlib.pyplot as plt

def process_data(file_path):
    data = pd.read_csv(file_path)
    data['date'] = pd.to_datetime(data['date'])
    data['year'] = data['date'].dt.year
    data['month'] = data['date'].dt.month
    return data

def analyze_sales(data):
    yearly_sales = data.groupby('year')['sales'].sum()
    monthly_sales = data.groupby(['year', 'month'])['sales'].sum()
    return yearly_sales, monthly_sales

def plot_sales(yearly_sales, monthly_sales):
    yearly_sales.plot(kind='bar', title='Yearly Sales')
    plt.show()
    monthly_sales.plot(kind='line', title='Monthly Sales')
    plt.show()

def main(file_path):
    data = process_data(file_path)
    yearly_sales, monthly_sales = analyze_sales(data)
    plot_sales(yearly_sales, monthly_sales)

if __name__ == "__main__":
    main("sales_data.csv")
```
user
这段代码的主要功能是处理销售数据，分析并可视化年销售总额和月销售总额。具体包括：
1. `process_data` 函数读取并处理CSV文件，提取日期中的年份和月份。
2. `analyze_sales` 函数计算每年的销售总额和每月（按年分组）的销售总额。
3. `plot_sales` 函数分别以柱状图和折线图展示年销售总额和月销售总额。
4. `main` 函数整合以上功能，从CSV文件中读取数据，进行分析并绘制图表。
assistant