当前位置: 首页 > news >正文

上海品质网站建设新媒体运营主要做什么

上海品质网站建设,新媒体运营主要做什么,诸暨市建设局行业管理网站,网网站建设站建设目录 一、概述 二、实现思路与注意点 三、Java Demo 1、直接调用 2、读写异步 一、概述 对于 Oracle Rac 环境下,数据文件大多默认存放在 ASM 共享存储上,当我们需要读取 ASM 上存储的数据文件时可以使用 Oracle 提供的一些方法,比如 ASMCMD CP。但是,对于一些备份场景…目录 一、概述 二、实现思路与注意点 三、Java Demo 1、直接调用 2、读写异步 一、概述 对于 Oracle Rac 环境下,数据文件大多默认存放在 ASM 共享存储上,当我们需要读取 ASM 上存储的数据文件时可以使用 Oracle 提供的一些方法,比如ASMCMD CP。但是,对于一些备份场景,我们需要能够随机读取 ASM 共享存储上的数据文件,此时再使用 ASMCDM CP 的读写性能较差,需要先把文件缓存到本地,再从本地获取文件的数据流。 DBMS_DISKGROUP 是 Oracle 官方提供的内部包,该包提供了一系列的文件操作接口,可以通过调用他提供的存储过程直接获取 ASM 共享存储上的文件数据流,实现无缓存的数据备份。 但是由于DBMS_DISKGROUP 属于内部包,Oracle 并没有提供任何文档对其详细描述,网络上的资源也相较稀少。本篇博客的内容,是博主在实现过程中的一些经验总结,可以实现 Java 通过 JDBC 调用DBMS_DISKGROUP 包,将 ASM 共享存储内的数据文件备份出去,像备份本地文件一样。 但是需要提前声明的是,每次随机读取 ASM 文件都需要调用DBMS_DISKGROUP.READ 的存储过程,性能较差,在我测试的虚机环境下只能达到 10 MB/s(每次调用的buff只有30KB左右)。期间使用了读写异步、多线程读等方法提升性能,效果也不是很大。而且由于调用DBMS_DISKGROUP 存储过程需要 SYSASM 角色,无法自定义数据类型和存储过程,也无法调用其他的包,所以暂没有想到好的办法提升性能。如果您有什么好的建议,可以留言评论。 下面是从网上总结的DBMS_DISKGROUP 包内的存储过程。 dbms_diskgroup.abortfile(:handle) dbms_diskgroup.addcreds(:osuname,:clusid,:uname,:passwd); dbms_diskgroup.asmcopy (:src_path, :dst_name, :spfile_number,:fileType, :blkSz, :spfile_number2,:spfile_type, :client_mode) dbms_diskgroup.checkfile (v_AsmFileName,v_FileType,v_lbks,v_offstart,v_FileSize) dbms_diskgroup.close (:handle); dbms_diskgroup.commitfile (:handle); dbms_diskgroup.copy ('', '', '', :src_path, :src_ftyp, :src_blksz,:src_fsiz, '','','', :dst_path, 1) dbms_diskgroup.createclientcluster (:clname, :direct_access) dbms_diskgroup.createdir(:NAME); dbms_diskgroup.createfile(:NAME,:type,:lblksize,:fsz,:handle,:pblksz,:genfname); dbms_diskgroup.dropdir(:DIRNAME) dbms_diskgroup.dropfile(:NAME,:type); dbms_diskgroup.getfileattr (:src_path, :fileType, :fileSz, :blkSz) dbms_diskgroup.getfileattr(:NAME,:type,:fsz,:lblksize, 1,:hideerr); dbms_diskgroup.getfilephyblksize (:fileName, :flag, :pblksize) dbms_diskgroup.gethdlattr(:handle,:attr,:nval,:sval); dbms_diskgroup.gpnpsetsp(:spfile_path) dbms_diskgroup.mapau (:gnum, :disk, :au, :file, :extent, :xsn) dbms_diskgroup.mapextent(:NAME,:xsn,:mapcount,:extsize,:disk1,:au1,:disk2,:au2,:disk3,:au3); dbms_diskgroup.mkdir (:DIRNAME) dbms_diskgroup.open(:NAME,:fmode,:type,:lblksize,:handle,:pblksz,:fsz); dbms_diskgroup.openpwfile(:NAME,:lblksize,:fsz,:handle,:pblksz,:fmode,:genfname,:dbname); dbms_diskgroup.patchfile (v_AsmFilename,v_filetype,v_lbks,v_offstart,0,v_numblks,v_FsFilename,v_filetype,1,1) dbms_diskgroup.read(:handle,:offset,:length,:buffer,:reason,:mirr); dbms_diskgroup.remap (:gnum, :fnum, :vxn) dbms_diskgroup.renamefile(:NAME,:tname,:type,:genfname); dbms_diskgroup.resizefile(:handle,:fsz); dbms_diskgroup.write(:handle,:offset,:length,:buffer,:reason); 二、实现思路与注意点 使用 DBMS_DISKGROUP 包和使用 C 读取文件一样,需要先定义文件句柄,之后使用句柄读写文件,最后别忘了关闭句柄。 下面是一段 PL/SQL 脚本,展示了如何读取 ASM 文件并打印出来,期间还打印了一些文件属性,包括文件名、文件类型、文件块数和文件块大小等。 /* block(512 Byte) - unit( 60 blocks, 30KB ) - batch ( 70 * unit, 2100KB ) */ set serveroutput on; declarev_filename varchar2(4000);v_filesize number;v_filetype number;v_lbks number;v_handle number;v_pblksize number;v_length number default 512;v_offset number default 1;file_handle number := 0;batch_size number := 209715200;block_size number := 8192;block_start number := 1;block_end number := 25600;unit_size_limit number := 24576;unit_block_size number;unit_count number;unit_buffer raw(32767);/* loop parameters */block_read_this number;size_read_this number;block_start_index number; BEGIN/* 10 MB */dbms_output.enable(null);dbms_output.put_line('start read');v_filename := '+data/orcl/datafile/SYSTEM.257.1142181233';dbms_diskgroup.getfileattr(v_filename, v_filetype, v_filesize, v_lbks);dbms_diskgroup.open(v_filename, 'r', v_filetype, v_lbks, v_handle, v_pblksize, v_filesize);batch_size := v_filesize * v_lbks;batch_size := v_filesize * v_lbks;block_size := v_lbks;block_end := v_filesize;unit_block_size := unit_size_limit / block_size;unit_count := (batch_size / unit_size_limit) + 1;
http://www.w-s-a.com/news/802911/

相关文章:

  • 网站建设了解眉山网站优化
  • 做网站用php还是node如何申请网站域名流程
  • 销售公司怎么做网站删除wordpress
  • 毕节网站怎么做seohtml代码特效银河系
  • 淄博品质网站建设网站引导页案例
  • 网站建设虚拟空间小豹子韬韬是哪个网站做的
  • 网络司网站如何建立公司网站建议和规则
  • 织梦网站模板后台密码找回企业vi设计公司性价比高
  • php 爬取网站所有链接传奇手游发布网站
  • 免费软文网站wordpress中文名注册
  • 企业网站建设研究目的意义怎样设计一个公司网站
  • 怎么架构网站便民信息发布平台
  • 网站 建设 现状网站推广合同需要缴纳印花税吗
  • 熊猫头表情包制作网站wordpress 缺省目录
  • 网站浏览图片怎么做的群晖wordpress升级5.0
  • 25个优秀个人网站设计模板网站建设定位分析论文
  • 在线网站备案站长seo综合查询工具
  • 网站根 html网站建设行业数据
  • 网站公司做的网站有最字设计说明室内设计
  • 在线网站代码生成我想做个百度网站怎么做
  • 网站的建设费用分为长治市建设厅官方网站
  • 做网站都有哪些费用建设免费手机网站
  • 网站 组成代码做网站图片怎么插
  • 2020中国企业500强榜单南宁seo标准
  • 北美购物网站排名烟台专业的网站建站公司
  • 门户网站设计特点营销策划咨询机构
  • 天津做网站就到徽信xiala5中国营销型网站
  • 外汇网站建设制作深圳三站合一网站建设
  • 深圳坂田网站设计公司有哪些学校网站建设管理办法
  • 太原建设银行网站中山营销型网站设计