数据处理的三种方式

1、单条SQL语句一次性的执行数据处理

2、采用游标一条一条的逐步循环处理

3、采用Oracle的BULK COLLECT程序批量处理

 

一般性的原则是:

如果可以通过单条SQL实现,而且单条SQL语句的数据处理量不是非常庞大,则采用单条SQL一次性执行的方法是最好的,因为这时打开数据库的次数和处理数据的次数都最少,操作简单而且性能良好,那么,这个数据量如何把握呢,最好的办法是尝试,看看在当前数据库服务器资源确定情况下,多少数据执行起来效率最好,经验上来讲,数万条数据用单条SQL都是没有问题的,超过了10万,就需要斟酌是否会消耗过多内存或者是回滚段。

采用游标逐条处理数据的方法,是在单条SQL语句无法实现数据处理情况下的最常用方法,在不必要通过批处理来提高性能的情况下,我们没有必要摒弃这种方法,而全部使用批处理。那么,在什么情况下使用批处理,如何使用呢

1、在使用批处理效果很好时再使用它

有几层含义,首先,我们要在处理的数据量比较庞大,使用批处理可以提高性能的情况下才使用,至少,这个庞大的数据,是要数万行以上的;其次,批量处理,也包含分批分量的意思,因为批量,并不意味着更多就表示更好,应该尽量做到平衡,我们可以结合数据库的内存等资源情况,测试了解系统的吞吐量,如果一次处理50条数据,一次处理200条数据以及一次处理500条数据等几种情况相比,一次处理200条数据的性能最好,说明我们的系统在批次处理200条数据的资源耗用时达到良好平衡。

2、在使用ETL数据处理的情况下,推荐使用

批量处理的一种主要应用是ETL数据处理,可以通过BULK COLLECT批量实现数据的抽取,转换和装载操作,即使这时需要增加稍多一些的代码,从提高性能和资源耗费等方面来讲,也是非常值得的,此时数据库会生成更少的重做数据,产生更少的内部锁,因而节省ETL操作的时间。

 

forall:

forall i in 1..100--指明循环器的上限和下限

insert into table_name()values();

forall i in indices of row_num_tab--引用特定集合中单个元素的下标

insert into table_name()values();

 

转载于:https://my.oschina.net/u/729507/blog/78910

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Python中有三种常见的数据持久化方式: 1. 文件存储: 可以使用 Python 的内置函数 `open()` 和 `write()` 将数据写入文件, 使用 `read()` 读取文件中的数据。这种方法适用于将数据保存在本地磁盘上, 但是如果数据量比较大, 读写效率可能会比较低。 2. 数据库存储: 可以使用 Python数据库模块, 如 `sqlite3` 或者 `MySQLdb` 操作数据库。这种方法适用于将数据保存在远程服务器上, 并且可以方便地进行数据的查询和修改。 3. 序列化: 可以使用 Python 的序列化模块, 如 `pickle` 或者 `json` 将数据转换成字符串形式并保存在文件中。这种方法适用于将数据保存在本地磁盘上, 并且可以方便地进行数据的读取和反序列化。 ### 回答2: Python数据持久化的三种方式分别是使用pickle模块、使用json模块和使用数据库。 1. 使用pickle模块:pickle是Python标准库中的一个模块,可以将Python对象序列化为二进制数据并进行持久化。通过pickle模块,可以将Python对象存储到磁盘上,然后在需要的时候将其从磁盘上读取出来。这种方式适用于需要保持数据结构完整性并能够快速存储和读取的场景。 2. 使用json模块:json是一种轻量级的数据交换格式,在Python中可以使用json模块将Python对象序列化为json格式的字符串,并进行保存。与pickle不同,json可以与其他编程语言进行数据交换。这种方式适用于需要跨平台、跨语言进行数据存储和传递的场景。 3. 使用数据库Python可以通过使用数据库进行数据的持久化。Python提供了许多数据库驱动程序,如MySQL、SQLite、PostgreSQL等,开发者可以选择适合自己需求的数据库进行数据的存储和读取。通过使用数据库,可以实现数据的高效、灵活、安全的存储和查询。这种方式适用于大量数据的处理和复杂数据关系的存储和管理。 综上所述,Python数据持久化的三种方式分别是使用pickle模块、使用json模块和使用数据库。具体选取哪种方式取决于业务需求和数据特点。 ### 回答3: Python数据持久化可以通过以下三种方式实现: 1. 使用文件存储:这是一种常见的数据持久化方法。Python提供了多种操作文件的方法,可以方便地将数据存储在文件中,并在需要时读取出来。可以使用文件的读写操作来实现数据的保存和读取,例如使用`open`函数打开文件,使用`write`方法将数据写入文件,使用`read`方法读取文件中的数据。 2. 使用数据库存储:Python也支持通过数据库实现数据的持久化。通过使用数据库模块(如MySQLdb、psycopg2等),可以连接到数据库,创建表格,并把数据存储到表格中。这种方式可以通过SQL语句进行数据的增删改查操作,并提供了更方便的数据管理功能,如索引、事务处理等。 3. 使用缓存存储:缓存是一种将数据暂时存储在内存中的方式,可以减少对磁盘IO的操作。Python中有多种缓存库可供选择,例如Redis、Memcached等。使用缓存存储可以提高数据访问的速度,适用于需要频繁读写的场景。数据可以以键值对的形式存储在缓存中,通过键来获取数据。 这三种方式在不同的场景下有不同的应用,可以根据具体的需求选择合适的方法进行数据的持久化处理。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值