Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >AI驱动TDSQL-C Serverless 数据库技术实战营-融合智能体与TDSQL-C技术,高效实现二手房数据查询与分析应用

AI驱动TDSQL-C Serverless 数据库技术实战营-融合智能体与TDSQL-C技术,高效实现二手房数据查询与分析应用

作者头像
全栈若城
发布于 2024-09-28 06:55:13
发布于 2024-09-28 06:55:13
13800
代码可运行
举报
文章被收录于专栏:若城技术专栏若城技术专栏
运行总次数:0
代码可运行

什么是TDSQL-C

TDSQL-C MySQL版(TDSQL-C for MySQL)——腾讯云自主研发的新一代云原生关系型数据库,完美融合了传统数据库的成熟经验、云计算的灵活便捷以及新硬件技术的强大性能。它全面兼容MySQL,致力于为用户提供极致弹性的伸缩能力、卓越的性能表现、高度可用的服务、坚如磐石的数据可靠性以及全方位的安全保障。TDSQL-C能够轻松实现超百万QPS的高并发处理能力,支持PB级数据量的分布式智能存储,以及Serverless模式的秒级自动伸缩,助力企业快速推进数字化转型,迈向业务发展的新高度。

技术创新

本篇博客 我们基于 TDSQL-C Mysql ServerlessHAI llama 大模型结合,实现自然语言操作数据库并进行统计分析功能,开启大模型应用时代。

主要实现思路:

算力服务器与数据库服务器申请与部署

购买 TDSQL-C Mysql Serverless 实例
  1. 访问腾讯云官网申请 TDSQL-C Mysql 服务器点击链接 进行访问, 如下图所示,点击立即选购
  1. 选购

如下图所示,选购我们所需的Serverless

  1. 设置数据库密码与配置信息

按照上述操作完成之后点击立即购买即可

购买HAI高算力服务器
  1. 点击链接 访问腾讯云 HAI 官网,如下图所示点击立即使用
  1. 点击新建按钮,新建服务器(费用会在新建服务器并使用后才开始计费)
  1. 根据配置需求选择算力服务器
  1. 查看 HAI算力服务器的 llama对外端口

检查是否已经默认开放 6399端口,如果没有开放的话需要手动点击端口配置在入站规则中添加协议端口

配置完成之后可以在浏览器中输入 ip:6399 进行访问,查看浏览器页面中是否有 ollama is running 的输出, 如果有输出的话,则表示此时的配置没有问题,外部链接是可以访问的。

准备工作

准备数据

如下图所示我们准备的是南京二手房的部分csv数据, 目前准备了1000条数据,用于我们本次的测试使用

下载依赖

如下图所示在终端输入指令,下载所需的依赖

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
pip install openai 
pip install langchain 
pip install langchain-core 
pip install langchain-community 
pip install mysql-connector-python 
pip install streamlit 
pip install plotly 
pip install numpy
pip install pandas
pip install watchdog
pip install matplotlib
pip install kaleido

好啦到目前为止,我们前期的环境准备工作就已经完成了, 接下来我们进入项目开发阶段

案例研发

创建数据库
  1. 如下图所示在我们创建好的TDSQL-C的集群列表页面点击开启外网访问
  1. 登录tdsql-c 或者通过Navicat 来链接TDSQL-C
  1. 创建一个数据库命名 mysqlflex
  1. 执行sql语句创建数据表,代码如下:
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 CREATE TABLE test_table (
    id INT AUTO_INCREMENT PRIMARY KEY,
    community_name VARCHAR(255),
    location_area VARCHAR(100),
    total_price DECIMAL(10, 2),
    unit_price DECIMAL(10, 2),
    house_type VARCHAR(100),
    floor_level VARCHAR(100),
    built_area DECIMAL(10, 2),
    house_structure VARCHAR(100),
    inside_area DECIMAL(10, 2),
    building_type VARCHAR(100),
    orientation VARCHAR(50),
    construction_structure VARCHAR(100),
    decoration_status VARCHAR(100),
    elevator_ratio VARCHAR(50),
    has_elevator VARCHAR(50),
    property_years TEXT,
    listing_time DATE,
    transaction_ownership VARCHAR(100),
    last_transaction DATE,
    house_usage VARCHAR(100),
    house_age VARCHAR(100),
    property_ownership VARCHAR(100),
    mortgage_info VARCHAR(255),
    house_certificate_backup VARCHAR(255)
);

sql 语句执行完成之后创建如下图所示的数据表

写入数据

如下图是我们项目的目录结构:

接下来我们通过读取csv 数据将其写入到TDSQL-C 中,代码如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 数据库连接信息
config = {
    'user': 'root',
    'password': 'your_password’,
    'host': 'bj***************com',
    'database': 'mysqlflex',
    'port':24863,
    'raise_on_warnings': True
}

# CSV文件路径
file_path = '南京二手房数据集.csv'

 

def insert_csv_data_to_db(config, file_path):
    # 创建连接
    creatConnector = mysql.connector.connect(**config)
    # 获取游标
    cursor = creatConnector.cursor()

    try:
        # 读取csv 数据, 并将数据插入到数据库
        with open(file_path, mode='r', encoding='utf-8') as csv_file:
            reader = csv.DictReader(csv_file)
            rows = list(reader)  # 将CSV行转换为列表,以便批量插入

        # 定义SQL插入语句模板
        query_template = """
        INSERT INTO test_table (
            id,
            community_name,
            location_area,
            total_price,
            unit_price,
            house_type,
            floor_level,
            built_area,
            house_structure,
            inside_area,
            building_type,
            orientation,
            construction_structure,
            decoration_status,
            elevator_ratio,
            has_elevator,
            property_years,
            listing_time,
            transaction_ownership,
            last_transaction,
            house_usage,
            house_age,
            property_ownership,
            mortgage_info,
            house_certificate_backup
        ) VALUES (
            %s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,
            )
        """

        # 将每行数据转换成元组格式,并处理空字段
        values_tuples = []
        for row in rows:
            # 将空字符串转换为None
            values = [None if value == ''  or value == '暂无数据' else value for value in row.values()]
            values_tuples.append(tuple(values))

        # 打印前几个元组进行调试
        # print(values_tuples[:5])
        cursor.executemany(query_template, values_tuples)

        # 提交事务
        creatConnector.commit()

    except mysql.connector.Error as err:
        print(f"Database error: {err}")
    except Exception as e:
        print(f"An error occurred: {e}")
    finally:
        # 关闭游标
        cursor.close()
        # 关闭连接
        creatConnector.close()


if __name__ == '__main__':
    # 调用函数执行插入操作
    insert_csv_data_to_db(config, file_path)

执行代码后查看数据是否插入到数据库,如下图所示

登录TD-SQL-C 查看数据

智能体与TDSQL-C 的结合应用

到目前为止我们已经将数据导入到数据库了, 接下来我们将会正式体验基于大语言模型与LangChain的智能应用构建

第一步配置llama3.1

在项目文件下创建config.yaml文件 , 并编写hai 和TDSQL-C 的基本链接信息, 如下图所示

第二步代码开发

代码开发部分完整代码如下, 需要注意的是 , 代码中我已经将读取csv 的数据写入到数据库部分写成函数模式,在构建项目的过程中该部分代码不会执行, 如果需要执行该部分代码则直接调用insert_csv_data_to_db 函数即可

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import csv
from langchain_community.utilities import SQLDatabase
from langchain_core.prompts import ChatPromptTemplate
from langchain_community.chat_models import ChatOllama
from langchain_core.output_parsers import StrOutputParser
from langchain_core.runnables import RunnablePassthrough
import streamlit as st
from wordcloud import WordCloud
import matplotlib.pyplot as plt
import yaml
import mysql.connector
from decimal import Decimal
import plotly.graph_objects as go
import plotly
import pkg_resources
import matplotlib
# Streamlit app code
import streamlit as st
import mysql.connector
import csv

# 数据库连接信息
config = {
    'user': 'root',
    'password': 'Ruo*****',
    'host': 'bj-************ncentcdb.com',
    'database': 'mysqlflex',
    'port': 24863,
    'raise_on_warnings': True
}




def insert_csv_data_to_db(config, file_path):
    # 创建连接
    creatConnector = mysql.connector.connect(**config)
    # 获取游标
    cursor = creatConnector.cursor()

    try:
        # 读取csv 数据, 并将数据插入到数据库
        with open(file_path, mode='r', encoding='utf-8') as csv_file:
            reader = csv.DictReader(csv_file)
            rows = list(reader)  # 将CSV行转换为列表,以便批量插入

        # 定义SQL插入语句模板
        query_template = """
        INSERT INTO test_table (
            id,
            community_name,
            location_area,
            total_price,
            unit_price,
            house_type,
            floor_level,
            built_area,
            house_structure,
            inside_area,
            building_type,
            orientation,
            construction_structure,
            decoration_status,
            elevator_ratio,
            has_elevator,
            property_years,
            listing_time,
            transaction_ownership,
            last_transaction,
            house_usage,
            house_age,
            property_ownership,
            mortgage_info,
            house_certificate_backup
        ) VALUES (
            %s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s
            )
        """

        # 将每行数据转换成元组格式,并处理空字段
        values_tuples = []
        for row in rows:
            # 将空字符串转换为None
            values = [None if value == '' or value == '暂无数据' else value for value in row.values()]
            values_tuples.append(tuple(values))

        # 打印前几个元组进行调试
        # print(values_tuples[:5])
        cursor.executemany(query_template, values_tuples)

        # 提交事务
        creatConnector.commit()

    except mysql.connector.Error as err:
        print(f"Database error: {err}")
    except Exception as e:
        print(f"An error occurred: {e}")
    finally:
        # 关闭游标
        cursor.close()
        # 关闭连接
        creatConnector.close()



yaml_file_path = 'config.yaml'

with open(yaml_file_path, 'r') as file:
  config_data = yaml.safe_load(file)


# 获取所有的已安装的pip包
def get_piplist(p):
  return [d.project_name for d in pkg_resources.working_set]


# 获取llm用于提供AI交互
ollama = ChatOllama(model=config_data['hai']['model'], base_url=config_data['hai']['base_url'])

db_user = config_data['database']['db_user']
db_password = config_data['database']['db_password']
db_host = config_data['database']['db_host']
db_port = config_data['database']['db_port']
db_name = config_data['database']['db_name']


# 获得schema
def get_schema(db):
  schema = mysql_db.get_table_info()
  return schema


def getResult(content):
  global mysql_db
  # 数据库连接
  mysql_db = SQLDatabase.from_uri(f"mysql+mysqlconnector://{db_user}:{db_password}@{db_host}:{db_port}/{db_name}")
  # 获得 数据库中表的信息
  # mysql_db_schema = mysql_db.get_table_info()
  # print(mysql_db_schema)
  template = """基于下面提供的数据库schema, 根据用户提供的要求编写sql查询语句,要求尽量使用最优sql,每次查询都是独立的问题,不要收到其他查询的干扰:
    {schema}
    Question: {question}
    只返回sql语句,不要任何其他多余的字符,例如markdown的格式字符等:
    如果有异常抛出不要显示出来
    """
  prompt = ChatPromptTemplate.from_template(template)
  text_2_sql_chain = (
    RunnablePassthrough.assign(schema=get_schema)
    | prompt
    | ollama
    | StrOutputParser()
  )

  # 执行langchain 获取操作的sql语句
  sql = text_2_sql_chain.invoke({"question": content})

  print(sql)
  # 连接数据库进行数据的获取
  # 配置连接信息
  conn = mysql.connector.connect(

    host=db_host,
    port=db_port,
    user=db_user,
    password=db_password,
    database=db_name
  )
  # 创建游标对象
  cursor = conn.cursor()
  # 查询数据
  cursor.execute(sql.strip("```").strip("```sql"))
  info = cursor.fetchall()
  # 打印结果
  # for row in info:
  # print(row)
  # 关闭游标和数据库连接
  cursor.close()
  conn.close()
  # 根据数据生成对应的图表
  print(info)
  template2 = """
    以下提供当前python环境已经安装的pip包集合:
    {installed_packages};
    请根据data提供的信息,生成是一个适合展示数据的plotly的图表的可执行代码,要求如下:
        1.不要导入没有安装的pip包代码
        2.如果存在多个数据类别,尽量使用柱状图,循环生成时图表中对不同数据请使用不同颜色区分,
        3.图表要生成图片格式,保存在当前文件夹下即可,名称固定为:图表.png,
        4.我需要您生成的代码是没有 Markdown 标记的,纯粹的编程语言代码。
        5.生成的代码请注意将所有依赖包提前导入,
        6.不要使用iplot等需要特定环境的代码
        7.请注意数据之间是否可以转换,使用正确的代码
        8.不需要生成注释
    data:{data}

    这是查询的sql语句与文本:

    sql:{sql}
    question:{question}
    返回数据要求:
    仅仅返回python代码,不要有额外的字符
    """
  prompt2 = ChatPromptTemplate.from_template(template2)
  data_2_code_chain = (
    RunnablePassthrough.assign(installed_packages=get_piplist)
    | prompt2
    | ollama
    | StrOutputParser()
  )

  # 执行langchain 获取操作的sql语句
  code = data_2_code_chain.invoke({"data": info, "sql": sql, 'question': content})

  # 删除数据两端可能存在的markdown格式
  print(code.strip("```").strip("```python"))
  exec(code.strip("```").strip("```python"))
  return {"code": code, "SQL": sql, "Query": info}


# 构建展示页面
import streamlit

# 设置页面标题
streamlit.title('智能体与TDSQL-C 的结合应用之二手房信息查询')
# 设置对话框
content = streamlit.text_area('请输入想查询的信息', value='', max_chars=None)
# 提问按钮 # 设置点击操作
if streamlit.button('提问'):
  # 开始ai及langchain操作
  if content:
    # 进行结果获取
    result = getResult(content)
    # 显示操作结果
    streamlit.write('AI生成的SQL语句:')
    streamlit.write(result['SQL'])
    streamlit.write('SQL语句的查询结果:')
    streamlit.write(result['Query'])
    streamlit.write('plotly图表代码:')
    streamlit.write(result['code'])
    # 显示图表内容(生成在getResult中)
  streamlit.image('./图表.png', width=800)
运行应用

如下图所示在终端执行命令 streamlit run tdsqlAitest.py 来启动应用

访问链接在浏览器中效果如下图所示

测试应用

接下来我们输入查询一下数据库中每个小区的房屋总价 来测试应用

注意我们点击提问的时候,执行的操作如下:

  1. 连接SQL并执行SQL操作,获取查询结果
  2. 基于大语言模型生成PLOTLY图表代码并执行
  3. 生成Plotly图表并在Web中展示

效果如下图所示

总结

本篇博客中,我们成功从无到有构建了基于LangChain的Text2SQL服务,这一创新性进展的关键步骤包括:

  1. 成功对接了Llama3.1大型模型;
  2. 构建了SQL-Chain,将数据库架构信息导入大型语言模型;
  3. 构建了User-Chain,用于将用户的查询需求传递给模型,并生成相应的SQL查询语句。

我认为,这一成就标志着人工智能与数据库领域的深度融合,实现了划时代的突破。它不仅大幅提升了生产力,也为智能科技在未来的应用打开了新的可能性。展望未来,我们将继续探索智能科技在更多领域的创新应用。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-09-27,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
AI驱动TDSQL-C Serverless 数据库技术实战营-颠覆传统分析模式:智能体与TDSQL-C结合实现人才的可视化数据分析
TDSQL-C MySQL 版(TDSQL-C for MySQL)是腾讯云自研的新一代云原生关系型数据库。融合了传统数据库、云计算与新硬件技术的优势,为用户提供具备高弹性、高性能、海量存储、安全可靠的数据库服务。TDSQL-C MySQL 版100%兼容 MySQL 5.7、8.0。实现超百万级 QPS 的高吞吐,最高 PB 级智能存储,保障数据安全可靠。
@兔然暴富@
2024/09/28
1280
小白从零开始:AI驱动TDSQL-C Serverless数据库技术实战
TDSQL-C是腾讯自研的新一代高性能高可用的企业级分布式数据库。今天的实例是结合AI进行电商数据分析。
我是满满
2024/09/29
2020
小白从零开始:AI驱动TDSQL-C Serverless数据库技术实战
AI驱动TDSQL-C Serverless 数据库技术实战营-ai学生选课系统数据分析
以前用过腾讯的TDSQL-MYSQL,TBASE,最近了解到TDSQL-C serverless,本次试验结合的AI大模型驱动来学习实战TDSQL-C serverless,体验服务化的数据库,和一句简单描述进行学生选课系统数据分析;
banjin
2024/09/23
930
AI驱动TDSQL-C Serverless 数据库技术实战营-10分钟做一个旅游攻略分析小助手
许多人已经习惯了通过AI交互来完成更多的日常任务,苹果的Siri、小米的小爱同学、华为的小艺,AI助手们利用自然语言处理技术,通过指令帮助用户查询天气、设置闹钟、发送短信等。所以就导致这次国庆原本期待的悠闲度假变成了在人海中的艰难穿梭,毕竟AI提供的旅行规划,往往是基于大数据搜索总结出的大多数人的推荐。一些小众或新奇的体验,由于信息过少,AI很难把它们作为“标准答案”提供出来。当所有人都按照 AI 的规划走时,就会出现网红景点变成了人挤人的 ‘打卡’,一些同样美不胜收的小众景点却无人问津。
AI天选之子
2024/10/20
1870
AI驱动TDSQL-C Serverless 数据库技术实战营-10分钟做一个旅游攻略分析小助手
【AI驱动TDSQL-C Serverless数据库技术实战营】结合AI进行电商数据分析
在去年TDSQL-C serverless,其实已经有写过文章介绍过,并且做过相关压测及实验,今天这篇文章主要是结合目前大火的AI大模型相关,继续去对该产品实验。
大侠之运维
2024/09/09
1570
TDSQL-C电商小助手,AI驱动的智能化数据洞察新纪元
在数字经济蓬勃发展的今天,电商行业作为数字化转型的先锋,正以前所未有的速度积累着海量数据。这些数据不仅是交易记录的简单堆砌,更是企业洞察市场趋势、优化运营策略、提升用户体验的宝贵财富。然而,如何从这些数据海洋中高效提取有价值的信息,并将其转化为可指导决策的洞见,成为了电商企业面临的一大挑战。在此背景下,TDSQL-C电商可视化分析小助手应运而生,它凭借强大的AI技术,为电商企业打造了一个智能化、高效化的数据分析平台。
用户11297217
2024/10/08
1710
TDSQL-C电商小助手,AI驱动的智能化数据洞察新纪元
TDSQL-C,电商可视化分析小助手的技术深度剖析
在数字经济的大潮中,电商行业作为数字化转型的排头兵,正以前所未有的速度积累着海量数据。这些数据,如同隐藏在数字海洋中的珍珠,等待着被发掘和利用。然而,如何从这些数据中挖掘出有价值的洞察,以指导业务决策,成为电商企业面临的一大挑战。为此,腾讯云推出的TDSQL-C电商可视化分析小助手,凭借其强大的AI驱动能力,为电商企业提供了一个高效、智能的数据分析解决方案。本文将深入探讨TDSQL-C电商可视化分析小助手的技术架构、核心功能以及其在电商领域的应用实践。
用户11300949
2024/10/09
1060
TDSQL-C,电商可视化分析小助手的技术深度剖析
TDSQL-C电商可视化,驱动电商业务智能化转型
随着互联网技术的飞速发展,电商行业迎来了前所未有的繁荣。从商品推荐、库存管理到物流追踪,每一个环节都离不开数据的支持。然而,数据的爆炸式增长也带来了新的问题:如何快速准确地处理这些数据,并挖掘其中的价值以指导业务决策?传统的数据分析方法已难以满足电商企业的需求,他们迫切需要一种能够自动化、智能化处理数据,并提供直观可视化报告的工具。在此背景下,TDSQL-C电商可视化分析小助手应运而生,它凭借强大的AI技术和数据处理能力,为电商企业打造了一个智能化、高效化的数据分析平台。
用户11300958
2024/10/09
1160
TDSQL-C电商可视化,驱动电商业务智能化转型
TDSQL-C电商可视化,重塑电商决策新纪元
在数字化浪潮席卷全球的今天,电子商务行业以其独特的魅力和无限潜力,成为了推动全球经济增长的重要引擎。然而,随着业务规模的急剧扩张,海量数据的涌现给电商企业带来了前所未有的挑战与机遇。如何高效地处理、分析这些数据,从中挖掘出有价值的信息,以指导企业的精准营销、供应链优化及用户体验提升,成为了电商企业亟需解决的关键问题。在此背景下,结合AI技术的TDSQL-C电商可视化分析小助手应运而生,它以其强大的数据处理能力、智能分析算法以及直观的可视化展示,为电商企业打开了一扇通往数据驱动决策的新大门。
用户10229114
2024/10/08
2050
TDSQL-C电商可视化,重塑电商决策新纪元
TDSQL-C电商可视化分析小助手,引领电商数据洞察新时代
在当今的数字经济时代,电商行业无疑是数字化转型的排头兵。每天,电商平台都在生成大量的交易数据、用户行为数据以及市场趋势数据。这些数据不仅仅是冰冷的数字,而是电商企业理解市场动态、优化运营策略、提升用户体验的关键资源。然而,如何从这些海量的数据中快速提取有价值的信息,并转化为能够指导决策的洞见,是电商企业面临的一项重大挑战。在此背景下,TDSQL-C电商可视化分析小助手应运而生,它以AI技术为核心,为电商企业提供了一个高效、智能的数据分析平台,帮助企业深入挖掘数据价值,提升业务竞争力。
用户11300946
2024/10/09
1620
TDSQL-C电商可视化分析小助手,引领电商数据洞察新时代
腾讯云TDSQL-C MySQL Serverless和HAI应用助力电商企业AI海报文案和“数据飞轮”分析方案最佳实践落地
近年来,随着深度学习、大数据、人工智能、AI等技术领域的不断发展,机器学习是目前最火热的人工智能分支之一,是使用大量数据训练计算机程序,以实现智能决策、语音识别、图像处理等任务,各种AI技术与产品层出不穷,怎么样结合自身公司业务打造一个AI智能平台呢?
用户10585271
2024/10/18
3060
腾讯云TDSQL-C MySQL Serverless和HAI应用助力电商企业AI海报文案和“数据飞轮”分析方案最佳实践落地
AI驱动TDSQL-C Serverless 数据库技术实战营-Vanna配合ollama分析TDSQL-C Serverless 数据库
经过这么长时间的迭代,大模型种类繁多,使用也越来越简单了,今天我们使用Vanna配合ollama本地大模型,基于TDSQL-C MYSQL Serverless构建智能数据库分析系统
用户11291471
2024/10/08
4590
腾讯云TDSQL-C Serverless 产品体验
它融合了传统数据库、云计算和新硬件技术的优势,100%兼容 MySQL,为用户提供具有极致弹性、高性能、高可用性、高可靠性和安全性的数据库服务。
大侠之运维
2023/08/30
2510
腾讯云TDSQL-C Serverless 产品体验
AI驱动TDSQL-C Serverless 数据库技术实战营-AI销售分析师
目前,AI 大模型,以其强大的语言理解和生成能力,正深刻地改变着我们的生活和工作方式。在语言处理领域,它可以精准地理解人类的自然语言,无论是复杂的问题咨询,还是细腻的情感表达,都能迅速给出恰当的回应。
用户5665900
2024/09/27
1530
【腾讯云 TDSQL-C Serverless 产品体验】以TDSQL-C Mysql Serverless 作为数据中心爬取豆瓣图书数据
最近我一直在研究 python 爬虫,公司需要很多数据源的数据,但遇到一个很大的障碍,就是没有合适的数据库储存这些数据,因为普通的机器的性能瓶颈非常明显,而且爬虫数据性能的要求也不是非常稳定,如果购买一台高配按月付费的机器,那无疑浪费了没有使用到的性能,最近不小心看到了CSDN首页的推荐,发现正在在进行"腾讯云TDSQL-C Serverless Mysql 数据库体验活动",我发现 Serverless 这个特性非常符合这个场景,它的serverless 数据库可以按需启动,不需要时可关闭,而且缩放对应用程序无影响,接下来让我们一起来体验一下 TDSQL-C Serverless Mysql 吧。
用户10842428
2023/11/15
3230
【腾讯云 TDSQL-C Serverless 产品体验】以TDSQL-C Mysql Serverless 作为数据中心爬取豆瓣图书数据
【腾讯云 TDSQL-C Serverless 产品体验】 使用 Python 向 TDSQL-C 添加读取数据 实现词云图
TDSQL-C MySQL 版(TDSQL-C for MySQL)是腾讯云自研的新一代云原生关系型数据库。融合了传统数据库、云计算与新硬件技术的优势,为用户提供具备高弹性、高性能、海量存储、安全可靠的数据库服务。TDSQL-C MySQL 版100%兼容 MySQL 5.7、8.0。实现超百万级 QPS 的高吞吐,最高 PB 级智能存储,保障数据安全可靠。TDSQL-C MySQL 版采用存储和计算分离的架构,所有计算节点共享一份数据,提供秒级的配置升降级、秒级的故障恢复,单节点可支持百万级 QPS,自动维护数据和备份,最高以GB/秒的速度并行回档。TDSQL-C MySQL 版既融合了商业数据库稳定可靠、高性能、可扩展的特征,又具有开源云数据库简单开放、高效迭代的优势。TDSQL-C MySQL 版引擎完全兼容原生 MySQL,您可以在不修改应用程序任何代码和配置的情况下,将 MySQL 数据库迁移至 TDSQL-C MySQL 版引擎。
全栈若城
2023/11/15
4570
推荐阅读
相关推荐
AI驱动TDSQL-C Serverless 数据库技术实战营-颠覆传统分析模式:智能体与TDSQL-C结合实现人才的可视化数据分析
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验