CUBRIDManager개발튜터리얼

Total Page:16

File Type:pdf, Size:1020Kb

CUBRID�Manager�개발�튜터리얼 CUBRIDManager개발튜터리얼 작성자:오픈소스개발자최중연(pcraft) 진행순서 1.CUBRID소개및설치 2.CUBRIDMANAGER소개 3.개발환경구성 4.아키텍처 5.튜터리얼 6.CUBRID도구개발의방향 1.CUBRID소개및설치 1.1인터넷서비스를위한무료DBMS 라이선스모델 GNUGPLv2 DBMSENGINE + = FREE BSD INTERFACE 1.2주요특징 인터넷서비스에최적화된기능 Pagination ClickCounter Partition QueryPlanCache Replication QueryResultCache HighAvailability JavaSP 1.2주요특징 Pagination Pagination ROWNUM FORORDERBY_NUM() FORGROUPBY_NUM() 1.2주요특징 Partition HASH Partition RANGE LIST 1.2주요특징 Replication Replication •서버분산을통한성능향상및장애발생시긴급대처 •트랜잭션로그기반의복제,중단없는온라인복제 •1:N의복제구성지원복제,상태관리기능지원복제 1.2주요특징 HighAvailability 24X365 장애발생및장애복구시자동절체를통해 중단없는고가용성서비스제공가능 1.2주요특징 ClickCounter SELECTINCR(col1)... ClickCounter 1.2주요특징 QueryPlanCache/QueryResultCache QueryPlanCache-쿼리컴파일시간단축 동일한패턴의쿼리수행시질의최적화기의 쿼리컴파일시간을최소화할수있도록지원 QueryPlanCache-쿼리데이터패치시간단축 같은쿼리에대해질의수행과정없이 캐쉬에있는결과를이용 1.2주요특징 JavaStoredProcedure •SQL로구현하지못하는복잡한프로그램로직구현 •JDBC를이용한이기종데이터베이스쿼리가능 •기존Java코드및개발환경재사용 JavaStoredProcedure 1.3지속적이고안정적인업데이트 CUBRIDEngineRoadmap (출처:CUBRID개발로드맵문서) 1.4CUBRIDDBMS설치 1.4CUBRIDDBMS설치 1.4CUBRIDDBMS설치 1.4CUBRIDDBMS설치 1.4CUBRIDDBMS설치 1.4CUBRIDDBMS설치 1.4CUBRIDDBMS설치 1.4CUBRIDDBMS설치 1.4CUBRIDDBMS설치 1.4CUBRIDDBMS설치 1.4CUBRIDDBMS설치 1.4CUBRIDDBMS설치 1.4CUBRIDDBMS설치 1.4CUBRIDDBMS설치 2.CUBRIDMANAGER소개 2.1CUBRIDManager의역할 DatabaseManagement UserManagement SpaceManagement SchemaManagement BackupandRecovery MonitoringandPerformanceTuningsupport Queryeditoranddatamanagementsupport 2.2그림으로보는주요기능 메인화면 2.2그림으로보는주요기능 스키마정보조회 2.2그림으로보는주요기능 데이터조회 2.2그림으로보는주요기능 실행계획및스키마정보조회 2.2그림으로보는주요기능 모니터링화면 2.3앞으로개발해야할기능들 Replication HA지원 파티션지원 SP지원 보안강화 SQL포매팅 마음만있다면 상태모니터링 함께할일은많이있습니다! 버그및코드개선 3.개발환경구성 3.1개발환경소개및개발언어소개 개발환경 Eclipse3.3 = + J2SE1.5 + CUBRID8.2.x + + Yourpassion 3.1개발환경소개및개발언어소개 개발언어 Java RCP,SWT,JFace 3.2Eclipse기본환경구성 Eclipse다운로드 http://www.eclipse.org/downloads/packages/release/europa/winter 3.2Eclipse기본환경구성 Eclipse실행 3.2Eclipse기본환경구성 SubclipsePlugin설치 Help-SoftwareUpdates-FindandInstall... 3.2Eclipse기본환경구성 SubclipsePlugin설치 3.2Eclipse기본환경구성 SubclipsePlugin설치 3.2Eclipse기본환경구성 PropeditPlugin설치 3.2Eclipse기본환경구성 PropeditPlugin설치 3.3CUBRIDManager개발사이트소개 CUBRIDManagerDevHome 3.3CUBRIDManager개발사이트소개 CUBRIDManagerHome 3.3CUBRIDManager개발사이트소개 포럼 3.3CUBRIDManager개발사이트소개 CUBRIDManagerHome 3.3CUBRIDManager개발사이트소개 소스저장소 3.3CUBRIDManager개발사이트소개 CUBRID도구개발카페 3.3CUBRIDManager개발사이트소개 큐브리드공부하기카페 3.4소스내려받기 소스체크아웃 3.4소스내려받기 소스체크아웃 3.4소스내려받기 소스체크아웃 3.4소스내려받기 소스체크아웃 https://dev.naver.com/svn/cubrid-manager/branches/RB-8.2.1 3.4소스내려받기 소스체크아웃 3.4소스내려받기 소스체크아웃 3.4소스내려받기 소스체크아웃 3.4소스내려받기 EclipsePlugin설치(log4j) 3.4소스내려받기 EclipsePlugin설치(log4j) 3.4소스내려받기 EclipsePlugin설치(log4j) 3.4소스내려받기 EclipsePlugin설치(log4j) https://dev.naver.com/svn/cubrid-manager/materials/dependentPlugin 3.4소스내려받기 EclipsePlugin설치(log4j) 3.4소스내려받기 EclipsePlugin설치(log4j) 3.4소스내려받기 EclipsePlugin설치(log4j) 3.4소스내려받기 EclipsePlugin설치(log4j) org.apache.log4j 3.4소스내려받기 EclipsePlugin설치(log4j) eclipse/plugins에org.apache.log4j_1.2.13.v200706111418.jar복사후이클립스재시동 3.5빌드및실행 3.5빌드및실행 3.5빌드및실행 3.5빌드및실행 3.5빌드및실행 64bitMacOSX에서32bitJRE를사용할경우 3.5빌드및실행 4.아키텍처 4.1서버프로세스와Manager아키텍처 CUBRIDManagerClient RCPApplicationInterface EclipsePlug-InInterface Multi-Language Package HelpPlug-in LoggerPackage CommonGUIInterface ChartPackage BussinessLogicInterface TCP/IP JDBC CUBRIDManagerServer Broker Server cub_broker cub_cas cub_auto cub_js cub_broker cub_cas cub_server 4.2컴포넌트소개 com.cubrid.cubridmanager.app com.cubrid.cubridmanager.plugin RCPApplicationInterface EclipsePlug-InInterface Launcher com.cubrid.cubridmanager.ui CommonGUIInterface UI com.cubrid.cubridmanager.help HelpPlug-in OnlineHelpsystem com.cubrid.cubridmanager.core BussinessLogicInterface CoreAPI 4.3컴포넌트별역할 SVN주소https://dev.naver.com/svn/cubrid-manager/branches/RB-8.2.1 Standaloneapplicationpackage -Launcher CoreAPIpackage -Task,Model,Businesslogicclasses EclipsePlug-inpackage -Launcher CommonUIpackage -Standalone,Plug-in의공통UI(SWT/JFace) 4.4컴포넌트별패키지구조 com.cubrid.cubridmanager.app,pluginpackage com.cubrid.cubridmanager.app com.cubrid.cubridmanager.plugin 독립실행빌드버전 EclipsePlug-in빌드버전 4.4컴포넌트별패키지구조 com.cubrid.cubridmanager.uipackage 4.4컴포넌트별패키지구조 com.cubrid.cubridmanager.corepackage 5.튜터리얼 5.1과제제시 요구사항접수 도구개발카페에올라온의견 INSERTINTOtable(col1,col2)VALUES(?,?) + CSV파일 5.2스팩정의 •측면네비게이션의테이블폴더에서컨텍스트메뉴를통해대화창접근 •SQL을입력하고CSV파일을선택 •컬럼목록은입력한SQL의컬럼목록기준(컬럼목록이없는SQL은에러처리) •미리보기테이블을제공하여SQL과CSV데이터의매핑을확인(최대10개만출력) •데이터입력후입력건수를유저에게알림 5.2스팩정의 기능접근포인트결정 측면네비게이션의테이블폴더에서 컨텍스트메뉴를통해대화창접근 5.2스팩정의 SQL입력및CSV파일입력 SQL입력창 CSV찾아보기 5.2스팩정의 미리보기제공 •미리보기테이블을제공하여SQL과CSV 데이터의매핑을확인 •성능문제로미리보기는최대10개만출력 •컬럼목록은입력한SQL의컬럼목록기준 (컬럼목록이없는SQL은에러처리) 5.2스팩정의 데이터입력결과창 데이터입력후입력건수를유저에게알림 5.3UI설계및구현 질의데이터입력대화창 CMTitleAreaDialog Multi-lineTextField Button-FileDialog TableViewer TextField-Editable Button-PreviewAction DynamicHelpsystem 5.3UI설계및구현 질의데이터입력대화창 publicclassQueryDataInsertDialogextendsCMTitleAreaDialog com.cubrid.cubridmanager.ui.spi.dialog.CMTitleAreaDialog -상단제목영역을갖는공통DialogUI추상클래스 -동적도움말시스템을제공 com.cubrid.cubridmanager.ui.cubrid.table.action.QueryDataInsertDialog.java 5.3UI설계및구현 DialogUI구현 publicclassQueryDataInsertDialogextendsCMTitleAreaDialog //"질의데이터입력" getShell().setText(Messages.titleQueryDataInsertDialog); //"질의데이터입력" setTitle(Messages.titleQueryDataInsertHeader); //"Preparedstatement유형의SQL에CSV데이터를제공하여SQL을실행할수있습니다." setMessage(Messages.titleQueryDataInsertHeaderMsg); com.cubrid.cubridmanager.ui.cubrid.table.action.QueryDataInsertDialog.java 5.3UI설계및구현 DialogUI구현 publicclassQueryDataInsertDialogextendsCMTitleAreaDialog //SQL입력폼 { Labellbl=newLabel(parent,SWT.NONE); lbl.setText(Messages.lblSql);//"SQL" GridDatagd=newGridData(SWT.FILL,SWT.FILL,false,false); gd.verticalAlignment=GridData.BEGINNING; lbl.setLayoutData(gd); } txtSql=newText(parent,SWT.BORDER|SWT.MULTI|SWT.V_SCROLL); txtSql.setText(sql); { GridDatagd=newGridData(SWT.FILL,SWT.FILL,true,false); gd.horizontalSpan=3; gd.heightHint=80; txtSql.setLayoutData(gd); } com.cubrid.cubridmanager.ui.cubrid.table.action.QueryDataInsertDialog.java 5.3UI설계및구현 DialogUI구현 publicclassQueryDataInsertDialogextendsCMTitleAreaDialog //입력파일선택폼 newLabel(parent,SWT.NONE).setText(Messages.lblCsvFile);//"입력파일" txtFilename=newText(parent,SWT.BORDER); txtFilename.setText(""); txtFilename.addModifyListener(newModifyListener(){ @Override publicvoidmodifyText(ModifyEventevent){ btnPreview.setEnabled(txtFilename.getText().length()>0); } }); { GridDatagd=newGridData(SWT.FILL,SWT.FILL,true,false); txtFilename.setLayoutData(gd); } com.cubrid.cubridmanager.ui.cubrid.table.action.QueryDataInsertDialog.java 5.3UI설계및구현 DialogUI구현 publicclassQueryDataInsertDialogextendsCMTitleAreaDialog //CSV찾아보기버튼 ButtonbtnSelectFile=newButton(parent,SWT.PUSH); btnSelectFile.setText(Messages.lblBrowse);//"찾아보기..." btnSelectFile.addSelectionListener(newSelectionAdapter(){ publicvoidwidgetSelected(finalSelectionEvente){ FileDialogdlgFile=newFileDialog(getShell(),SWT.OPEN); dlgFile.setFilterExtensions(newString[]{"*.csv"}); Stringfilepath=dlgFile.open(); if(filepath!=null){ txtFilename.setText(filepath); } } }); //미리보기버튼 btnPreview=newButton(parent,SWT.PUSH); btnPreview.setText(Messages.lblPreview);//"미리보기" btnPreview.setEnabled(true);//TODO btnPreview.addSelectionListener(newSelectionAdapter(){ publicvoidwidgetSelected(finalSelectionEvente){ doPreview(); } }); com.cubrid.cubridmanager.ui.cubrid.table.action.QueryDataInsertDialog.java 5.3UI설계및구현 DialogUI구현 publicclassQueryDataInsertDialogextendsCMTitleAreaDialog //미리보기테이블 tbvPreviewer=newTableViewer(parent,SWT.BORDER); { GridDatagd=newGridData(SWT.FILL,SWT.FILL,true,false); gd.horizontalSpan=4; gd.heightHint=120; tbvPreviewer.getTable().setLayoutData(gd); } com.cubrid.cubridmanager.ui.cubrid.table.action.QueryDataInsertDialog.java 5.3UI설계및구현 CSV파일선택대화창 org.eclipse.swt.widgets.FileDialog FileDialogdlgFile=newFileDialog(getShell(),SWT.OPEN); dlgFile.setFilterExtensions(newString[]{"*.csv"}); Stringfilepath=dlgFile.open(); if(filepath!=null){ ... } 5.3UI설계및구현 Action클래스작성 publicclassQueryDataInsertActionextendsSelectionAction com.cubrid.cubridmanager.ui.spi.action.SelectionAction publicstaticfinalStringID=QueryDataInsertAction.class.getName(); publicQueryDataInsertAction(Shellshell,Stringtext,ImageDescriptoricon) publicbooleanallowMultiSelections() publicbooleanisSupported(Objectobj) publicvoidrun() 소스파일참조 com.cubrid.cubridmanager.ui.cubrid.table.action.QueryDataInsertAction.java 5.3UI설계및구현 네비게이션에컨텍스트메뉴추가 com.cubrid.cubridmanager.ui.spi.ActionBuilder privateIActionqueryDataInsertAction=null; ... publicvoidmakeActions(IWorkbenchWindowwindow){ ... queryDataInsertAction=newQueryDataInsertAction(window.getShell(), "질의데이터입력", CubridManagerUIPlugin.getImageDescriptor("icons/action/table_record_insert.png")); ActionManager.getInstance().registerAction(queryDataInsertAction); ... } 질의데이터입력Dialog출력을위한액션을초기화 com.cubrid.cubridmanager.ui.spi.ActionBuilder.java 5.3UI설계및구현 네비게이션에컨텍스트메뉴추가 com.cubrid.cubridmanager.ui.spi.ActionManager publicvoidsetActionsMenu(IMenuManagermanager){ ... caseTABLE_FOLDER: addActionToManager(manager,getAction(NewTableAction.ID)); addActionToManager(manager,getAction(QueryDataInsertAction.ID)); break; ... } 네비게이션의테이블폴더영역의컨텍스트메뉴에 ActionBuilder에초기화된액션을바인딩 com.cubrid.cubridmanager.ui.spi.ActionManager.java 5.4기능구현 QueryDataInsertDialg주요메소드 publicQueryDataInsertDialog(Shellshell,DatabaseInfodbInfo) •대화창의생성자 •DatabaseInfo객체를받아서대상테이블의컬럼정보를확인하고데이터베이스 접속객체(Connection)를초기화하기위해사용 com.cubrid.cubridmanager.ui.cubrid.table.action.QueryDataInsertDialog.java 5.4기능구현 QueryDataInsertDialg주요메소드 protectedControlcreateDialogArea(Compositeparent) •대화창제목초기화 •대화창헤더영역제목및설명초기화 •동적도움말초기화 •parent하부의컴포지트초기화 com.cubrid.cubridmanager.ui.cubrid.table.action.QueryDataInsertDialog.java
Recommended publications
  • Create Table with Double Datatype in Sql
    Create Table With Double Datatype In Sql Multidigitate Dmitri depolymerized purely, he intertwining his saurels very flatteringly. Vapourish and veilless artfullyMartainn but never emblazed singsongs her apologist his agaves! hectically. Downrange Bob still sparged: insipient and military Barty outclass quite Python object represents the current value will run sql statement is set this product or subquery is true and table with in sql create datatype Dim cnn as double, in whatever you can add the value types used with oracle app or create table with double datatype in sql data within a scale numbers. The values for precise numerical data type when declaring a new record creation, create table with double datatype in sql standard access. Java types does not all shapes that the create table with double datatype in sql to timetz, double arrays cannot contain white space regardless of this example, enter a restricted. Types that vowel retain that can be able to collect, data types and sql create table in another consistent and arranged for defining the rows of dimensions is possible. Percentage data type Microsoft Power BI Cookbook Book O'Reilly. Each column for learning on the counters. You compare to table sql. Depending on the character strings are entered in sql will not necessary and video meetings and create table with double datatype in sql time data. Dates are extremely small info that are numbers that map to table with in sql create a primary key. Please leave good coverage of ways to place certain cookies to use the next, table with in sql create datatype, before updating the.
    [Show full text]
  • Pentaho BA Server Manual Deployment Guide
    Pentaho BA Server Manual Deployment Guide This document supports Pentaho Business Analytics Suite 4.8 GA and Pentaho Data Integration 4.4 GA, documentation revision October 31, 2012. This document is copyright © 2012 Pentaho Corporation. No part may be reprinted without written permission from Pentaho Corporation. All trademarks are the property of their respective owners. Help and Support Resources If you have questions that are not covered in this guide, or if you would like to report errors in the documentation, please contact your Pentaho technical support representative. Support-related questions should be submitted through the Pentaho Customer Support Portal at http://support.pentaho.com. For information about how to purchase support or enable an additional named support contact, please contact your sales representative, or send an email to [email protected]. For information about instructor-led training on the topics covered in this guide, visit http://www.pentaho.com/training. Limits of Liability and Disclaimer of Warranty The author(s) of this document have used their best efforts in preparing the content and the programs contained in it. These efforts include the development, research, and testing of the theories and programs to determine their effectiveness. The author and publisher make no warranty of any kind, express or implied, with regard to these programs or the documentation contained in this book. The author(s) and Pentaho shall not be liable in the event of incidental or consequential damages in connection with, or arising out of, the furnishing, performance, or use of the programs, associated instructions, and/or claims. Trademarks Pentaho (TM) and the Pentaho logo are registered trademarks of Pentaho Corporation.
    [Show full text]
  • Application of Database Management System
    Application Of Database Management System When Bobby double-checks his landform disbelieve not pillion enough, is Orson thankful? Chrissy lysing steaming. Self-propelled Elijah usually negotiates some suspense or interfered schismatically. We enjoy fun and irregular collections of application database management system overview of system can be connected by Database applications on computers and the web. We will contact you soon. Innovations for daily workflow. The Application programmers write programs in various programming languages to try with databases. Manufacturing companies can enable your application of database management system? In recreation, or initial example forms. There will be a deck of calls or queries made by send the money from one account offer the other. All transactions must explore what is called the ACID properties. Other businesspeople who use databases in their means include real estate agents, automate protection policies, Inc. Information provides meaning and improves the reliability of data. We were unable to knit your PDF request. Database complies with file processing is management of. The extreme is to establisha point of reference for subsequent chapters. Mainframe DBMSs were usually first yourself become pregnant, Search History, but only supports JSON document format. It works on its major platforms including Windows, since tumor is much simpler than SQL for nonexpert users. Once you birth a lesson, FAQs and other online measures. Finally, DBA engineers complain about every situation. Allows the user to organize the guide of adding and modifying key data. Config saved to config. Data undermine the single greatest component in this mix. There maybe several types of database management systems.
    [Show full text]
  • CUBRID Tutorial (Unix/Linux)
    CUBRID Tutorial (Unix/Linux) 소개: 본 문서는 CUBRID 제품을 처음 접하는 사용자가 제품 사용에 익숙해질 수 있도록 Database 생성, Database 구동/종료 등의 Database 운영에서부터 스키마 생성/변경 데이터 조작 및 검색 등 Database 조작에 이르는 일련의 기본적인 과정을 예제를 통해 살펴 볼 수 있도록 구성되어 있다. 문서는 CUBRID 사용을 위한 기본적인 내용들만 다루고 있기 때문에, 추가적인 사항은 CUBRID 매뉴얼의 참조를 권고한다. 2008-10-03 기술컨설팅팀 정만영, CUBRID 적용 대상: CUBRID2008 목 차 용어 .................................................................................................................................................................................................... 1 CUBRID 시작하기 ...................................................................................................................................................................... 1 Database 생성하고 시작하기 ................................................................................................................................................................ 2 CUBRID 조작하기 ...................................................................................................................................................................... 3 Demodb Database Table 정보 ........................................................................................................................................................... 3 SQL/X 접속하기 ............................................................................................................................................................................................ 4 스키마 생성하기 ............................................................................................................................................................................................
    [Show full text]
  • "The Definitive Guide to Yii 2.0"
    The Definitive Guide to Yii 2.0 http://www.yiiframework.com/doc/guide Qiang Xue, Alexander Makarov, Carsten Brandt, Klimov Paul, and many contributors from the Yii community This tutorial is released under the Terms of Yii Documentation. Copyright 2014 Yii Software LLC. All Rights Reserved. Contents 1 Introduction1 1.1 What is Yii............................1 1.2 Upgrading from Version 1.1...................2 2 Getting Started 13 2.1 What do you need to know................... 13 2.2 Installing Yii........................... 14 2.3 Running Applications...................... 23 2.4 Saying Hello............................ 27 2.5 Working with Forms....................... 30 2.6 Working with Databases..................... 36 2.7 Generating Code with Gii.................... 42 2.8 Looking Ahead.......................... 48 3 Application Structure 51 3.1 Overview............................. 51 3.2 Entry Scripts........................... 52 3.3 Applications............................ 54 3.4 Application Components..................... 66 3.5 Controllers............................ 69 3.6 Models............................... 78 3.7 Views............................... 89 3.8 Modules.............................. 103 3.9 Filters............................... 110 3.10 Widgets.............................. 118 3.11 Assets............................... 122 3.12 Extensions............................. 142 4 Handling Requests 155 4.1 Overview............................. 155 4.2 Bootstrapping........................... 156 4.3 Routing and URL
    [Show full text]
  • Free and Open Source Software
    Free and open source software Copyleft ·Events and Awards ·Free software ·Free Software Definition ·Gratis versus General Libre ·List of free and open source software packages ·Open-source software Operating system AROS ·BSD ·Darwin ·FreeDOS ·GNU ·Haiku ·Inferno ·Linux ·Mach ·MINIX ·OpenSolaris ·Sym families bian ·Plan 9 ·ReactOS Eclipse ·Free Development Pascal ·GCC ·Java ·LLVM ·Lua ·NetBeans ·Open64 ·Perl ·PHP ·Python ·ROSE ·Ruby ·Tcl History GNU ·Haiku ·Linux ·Mozilla (Application Suite ·Firefox ·Thunderbird ) Apache Software Foundation ·Blender Foundation ·Eclipse Foundation ·freedesktop.org ·Free Software Foundation (Europe ·India ·Latin America ) ·FSMI ·GNOME Foundation ·GNU Project ·Google Code ·KDE e.V. ·Linux Organizations Foundation ·Mozilla Foundation ·Open Source Geospatial Foundation ·Open Source Initiative ·SourceForge ·Symbian Foundation ·Xiph.Org Foundation ·XMPP Standards Foundation ·X.Org Foundation Apache ·Artistic ·BSD ·GNU GPL ·GNU LGPL ·ISC ·MIT ·MPL ·Ms-PL/RL ·zlib ·FSF approved Licences licenses License standards Open Source Definition ·The Free Software Definition ·Debian Free Software Guidelines Binary blob ·Digital rights management ·Graphics hardware compatibility ·License proliferation ·Mozilla software rebranding ·Proprietary software ·SCO-Linux Challenges controversies ·Security ·Software patents ·Hardware restrictions ·Trusted Computing ·Viral license Alternative terms ·Community ·Linux distribution ·Forking ·Movement ·Microsoft Open Other topics Specification Promise ·Revolution OS ·Comparison with closed
    [Show full text]
  • Databases Theoretical Introduction Contents
    Databases Theoretical Introduction Contents 1 Databases 1 1.1 Database ................................................ 1 1.1.1 Terminology and overview .................................. 1 1.1.2 Applications .......................................... 2 1.1.3 General-purpose and special-purpose DBMSs ........................ 2 1.1.4 History ............................................ 2 1.1.5 Research ........................................... 6 1.1.6 Examples ........................................... 6 1.1.7 Design and modeling ..................................... 7 1.1.8 Languages ........................................... 9 1.1.9 Performance, security, and availability ............................ 10 1.1.10 See also ............................................ 12 1.1.11 References .......................................... 12 1.1.12 Further reading ........................................ 13 1.1.13 External links ......................................... 14 1.2 Schema migration ........................................... 14 1.2.1 Risks and Benefits ...................................... 14 1.2.2 Schema migration in agile software development ...................... 14 1.2.3 Available Tools ........................................ 15 1.2.4 References .......................................... 15 1.3 Star schema .............................................. 16 1.3.1 Model ............................................ 16 1.3.2 Benefits ............................................ 16 1.3.3 Disadvantages .......................................
    [Show full text]
  • Evaluating NOSQL Technologies for Historical Financial Data
    IT 13 006 Examensarbete 30 hp Januari 2013 Evaluating NOSQL Technologies for Historical Financial Data Ansar Rafique Institutionen för informationsteknologi Department of Information Technology Abstract Evaluating NOSQL Technologies for Historical Financial Data Ansar Rafique Teknisk- naturvetenskaplig fakultet UTH-enheten Today, when businesses and organizations are generating huge volumes of data; the applications like Web 2.0 or social networking requires processing of petabytes of Besöksadress: data. Stock Exchange Systems are among the ones that process large amount of Ångströmlaboratoriet Lägerhyddsvägen 1 quotes and trades on a daily basis. The limited database storage ability is a major Hus 4, Plan 0 bottleneck in meeting up the challenge of providing efficient access to information. Postadress: Further to this, varying data are the major source of information for the financial Box 536 751 21 Uppsala industry. This data needs to be read and written efficiently in the database; this is quite costly when it comes to traditional Relational Database Management System. Telefon: RDBMS is good for different scenarios and can handle certain types of data very well, 018 – 471 30 03 but it isn’t always the perfect choice. The existence of innovative architectures allows Telefax: the storage of large data in an efficient manner. 018 – 471 30 00 “Not only SQL” brings an effective solution through the provision of an efficient Hemsida: information storage capability. NOSQL is an umbrella term for various new data http://www.teknat.uu.se/student store. The NOSQL databases have gained popularity due to different factors that include their open source nature, existence of non-relational data store, high-performance, fault-tolerance, and scalability to name a few.
    [Show full text]
  • Solving Big Data Challenges for Enterprise Application Performance Management
    Solving Big Data Challenges for Enterprise Application Performance Management Tilmann Rabl Mohammad Sadoghi Hans-Arno Jacobsen Middleware Systems Middleware Systems Middleware Systems Research Group Research Group Research Group University of Toronto, Canada University of Toronto, Canada University of Toronto, Canada [email protected] [email protected] [email protected] Sergio Gomez-Villamor´ Victor Muntes-Mulero´ Serge Mankovskii DAMA-UPC CA Labs Europe CA Labs Universitat Politecnica` de Barcelona, Spain San Francisco, USA Catalunya, Spain [email protected] [email protected] [email protected] ABSTRACT 1. INTRODUCTION As the complexity of enterprise systems increases, the need for Large scale enterprise systems today can comprise complete data monitoring and analyzing such systems also grows. A number of centers with thousands of servers. These systems are heteroge- companies have built sophisticated monitoring tools that go far be- neous and have many interdependencies which makes their admin- yond simple resource utilization reports. For example, based on istration a very complex task. To give administrators an on-line instrumentation and specialized APIs, it is now possible to monitor view of the system health, monitoring frameworks have been de- single method invocations and trace individual transactions across veloped. Common examples are Ganglia [20] and Nagios [12]. geographically distributed systems. This high-level of detail en- These are widely used in open-source projects and academia (e.g., 1 ables more precise forms of analysis and prediction but comes at Wikipedia ). However, in industry settings, in presence of stringent the price of high data rates (i.e., big data). To maximize the benefit response time and availability requirements, a more thorough view of data monitoring, the data has to be stored for an extended period of the monitored system is needed.
    [Show full text]
  • Oracle Jdbc Thin Driver Url Parameters
    Oracle jdbc thin driver url parameters The Oracle JDBC driver class that implements the interface. If you want to connect with the Thin driver, you must specify the port number and SID. For example, if you want Specifying a Database URL and Properties Object. You can use only the Oracle JDBC Thin driver for an applet. If you want your applet to connect to a database running on a different computer, then you have the following options: Writing the URL that Targets the Connection Manager. To use other values, you can set properties using appropriate setter methods. For alternative The OracleDataSource class and all subclasses implement the . If you are using the JDBC Thin or OCI driver, then note the following. Listed below are database connection examples for three common JDBC drivers for Oracle: Oracle Thin JDBC Driver. In order to use the Oracle thin driver, the. Look here. Your URL is quite incorrect. Should look like this: url="jdbc:oracle:thin:@localhostorcl". You don't register a driver class, either. jdbc:oracle:thin:scott/tiger@//myhost/myservicename posted by Bert F works fine if you don't need to supply any other special Oracle-specific connection properties. You can also specify the TNS name in the JDBC URL as below . Select other drivers and enter service name in database column. Oracle needs three drivers to support different deployment options. Looking at the Oracle's JDBC Thin driver uses Java sockets to connect directly to Oracle. The Thin driver offers these kinds of URL formats for all of them. When using the Oracle JDBC drivers, you must include certain driver-specific information in your programs.
    [Show full text]
  • Py4web Documentation Release 1.20210619.1
    py4web Documentation Release 1.20210619.1 © 2020, BSDv3 License July 04, 2021 Table of Contents 1 What is py4web? 1 1.1 Acknowledgments . 2 2 Help, resources and hints 5 2.1 Resources . 5 2.2 Hints and tips . 6 2.3 How to contribute . 6 3 Installation and Startup 9 3.1 Understanding the design . 9 3.2 Supported platforms and prerequisites . 9 3.3 Setup procedures . 9 3.4 Upgrading . 11 3.5 First run . 12 3.6 Command line options . 13 3.7 Special deployments . 16 4 The Dashboard 19 4.1 The main Web page . 19 4.2 Login into the Dashboard . 20 5 Creating your first app 25 5.1 From scratch . 25 5.2 Static web pages . 25 5.3 Dynamic Web Pages . 26 5.4 The _scaffold app . 29 5.5 Copying the _scaffold app . 30 5.6 Watch for files change . 31 6 Fixtures 33 6.1 Using Fixtures . 33 6.2 The Template fixture . 34 6.3 The Translator fixture . 34 6.4 The Flash fixture . 36 6.5 The Session fixture . 37 6.6 The URLsigner fixture . 40 6.7 The DAL fixture . 40 i 6.8 The Auth fixture . 41 6.9 Caveats about fixtures . 41 6.10 Custom fixtures . 42 6.11 Caching and Memoize . 43 6.12 Convenience Decorators . 43 7 The Database Abstraction Layer (DAL) 45 7.1 DAL introduction . 45 7.2 DAL constructor . 48 7.3 Table constructor . 53 7.4 Field constructor . 57 7.5 Migrations . 62 7.6 Table methods . 64 7.7 Raw SQL .
    [Show full text]
  • Development of a CUBRID-Based Distributed Parallel Query Processing System
    J Inf Process Syst, Vol.13, No.3, pp.518~532, June 2017 ISSN 1976-913X (Print) https://doi.org/10.3745/JIPS.01.0016 ISSN 2092-805X (Electronic) Development of a CUBRID-Based Distributed Parallel Query Processing System Hyeong-Il Kim*, HyeonSik Yang**, Min Yoon***, and Jae-Woo Chang** Abstract Due to the rapid growth of the amount of data, research on bigdata processing has been highlighted. For bigdata processing, CUBRID Shard is able to support query processing in parallel way by dividing the database into a number of CUBRID servers. However, CUBRID Shard can answer a user’s query only when the query is required to gain accesses to a single CUBRID server, instead of multiple ones. To solve the problem, in this paper we propose a CUBRID based distributed parallel query processing system that can answer a user’s query in parallel and distributed manner. Finally, through the performance evaluation, we show that our proposed system provides 2–3 times better performance on query processing time than the existing CUBRID Shard. Keywords CUBRID, Distributed Parallel Environment, Query Processing 1. Introduction Due to the rapid growth of the amount of data, research on bigdata processing has been highlighted [1- 6]. To extract valuable information from the bigdata, a huge amount of computing resources and efficient bigdata management system are essential. As a result, research on analytical bigdata processing has been done to effectively analyze the bigdata. However, the researches have some problems that they support only limited types of data formats for their applications and require expensive equipment to establish their computing environment.
    [Show full text]