Roi in xy plot
how do I plot xy data between two cursor (a ROI) in another xy plot?
Daquiry,
There is no specific way to specify an ROI filtration in LabVIEW. The only way I know to accomplish this would be to pass your data though your own code that would keep the data points of interested and reject the others. This is a good question. I would be curious to know if other NI customers need this kind of functionality.
Charlie M. CLD
Similar Messages
-
Hello,
Would some one please help me?
I have a loop which continuously aquire images from a camera and saves it to a video . I would like to crop a region of this video by passing the co-ordinates of a rectangle.After I have the cropped video, I would like to do a intensity profile of the whole video and display it using a single graph ( intesnity changes for diffferent frames in the y axis and the the number of the frame in x - axis.
Joyce JoyHi,
You can implement image cropping following the example:
https://decibel.ni.com/content/docs/DOC-11222
You would have to programmatically generate the ROI rectangle if you do not wish to have user interaction in the code.
I am not quite sure what kind of intensity profile you want, but here is a good example that performs it along a line, so you could just build an array of those and plot it.
https://decibel.ni.com/content/docs/DOC-20840
Hope this helps!
Applications Engineer
National Instruments UK & Ireland -
Region of Interest (ROI) on Intensity Graph
Hello,
I hope somebody can help me. I have read the other posts available regarding choosing ROIs on intensity graphs but they don't really answer my question.
I am taking a series of still images. Having stored the image as an array and displayed it on the intensity graph, I need some way of selecting a rectangular ROI (preferably with mouse) to define an array subset and performing max/min/mean/standard deviation measurements on this region. I am aware that the array would need reshaping to work with the in built VI for mean and standard deviation but cannot seem to find a way to may the selection of the array subset in the first place.
I would be very grateful for any pointers
Sarah BohndiekHi,
since you're using an intensity graph, you could use an event structure to capture for the mouse down and mouse up events.
They both give you the coords of where the mouse was. The nex trick would be to convert that into array position co-ordinates, which requires knowing how the data is presented in the graph (actual graph area size, and the amount of data passed to it.) It's easy enough to get the size of the plot area, and you can get the position of the control itself, however calculating exactly where the plot area is inside of the control is not available.
If you plot area size is fixed, you could use a picture control, set to transparent over the top of the plot area. Then use the same trick for the event returning co-ordinates. If you change the values on the scale however, the actual plot area can change in size too (since the renumbering on an auto-scale can cause the scale on the axis to move if the text increases or decreases in length)
By far the easiest route would be to buy the vision development module and use the image control which has the built in ROI capabilities (and editing of the ROI).
Hope that helps
Sacha Emery
National Instruments (UK)
// it takes almost no time to rate an answer
Attachments:
roi on intensity (picture).vi 73 KB -
Plotting data in a 3d surface graph
I�m having trouble plotting data correctly on a 3d surface graph in my routine.
The goal of the vi is to plot a 3d image of a region of interest (ROI) from an intensity graph. The user selects the ROI with the cursor from the Intensity Graph (top left plot). The vi shows the region of interest in the ROI intensity graph (lower left plot). The goal is to create a 3d plot from this ROI. The 3d plot appears on the right.
The problem is that the 3d plot seems to shift the values of the data if data is selected anywhere other than from the 0,0 region of the Intensity Graph. If the user selects data from 0 upwards along the y-axis or to the right along the x-axis, the data plots fine. When the user selects data from the
center of the plot the data shifts off the 3d plot. The data is not missing. It is shifted. You can actually see the values when you left click and change the view of the 3d plot. The data appears as individual points off the surface graph. Each data point is the correct z data value. The scale on the 3d axes adjust correctly.
I've attached the routine below in the form of an llb file. The correct version of the main file is "mouse_to_select_area_hamilton4_laura". Do not run the main "mouse_to_select_area_hamilaton4" as it contains an error.
Attachments:
Mouse_t1.llb 557 KBI have the same problem with one of these graphs. I have a surface plot that has been normalized to zero. However, the data is not centered on zero when plotted. I have an X and y vector input to the graph, it doesn't help. I have looked at each column of data and verified programmatically that the mean is zero of each column. There are gobs of data (some are 1 - 2 Mbytes big). Can that cause this? I use other graphs and a polar plot within the same application, they all look fine. I did get the 3D graph to plot correctly once, but the X vector values weren't displayed correctly (my X vector range is from .5 to 240 inches, the graph displayed 0 to 117 - which was the number of inch positions, not the inches positions themselves).
-
SAMPLE RECEIVING OPEN INTERFACE SCRIPT(ROI 이용자를 위한 SCRIPT)
제품: MFG_PO
작성날짜 : 2006-05-11
SAMPLE RECEIVING OPEN INTERFACE SCRIPT(ROI 이용자를 위한 SCRIPT)
================================================================
PURPOSE
Receiving Open Interface(ROI)를 좀더 쉽게 사용할 수 있도록 만들어진
tool이라고 할 수 있다. 이 script를 이용을 통해 user는 PO no, user id,
Org id를 입력하면 script는 PO에서 최소한의 data를 가져와 receiving
transaction을 생성하기 위해 ROI에 data를 입력한다.
Receiving Transaction Processor는 insert 된 data를 실행한다.
Explanation
Instructions:
1.Script exroi.sql을 local computer에 copy 하거나 sqlplus 환경의 text
edior에 script 내용을 cut&paste 한다.
2.사용가능한 PO no, User id, Org id를 결정한다.
3.sqlplus prompt에서 아래와 같이 입력한다.
SQL> @ezroi.sql
4.PO no, User id, Org id를 입력하라는 prompt를 볼 수 있을 것이다.
5.exroi.sql script를 관련된 PO data를 가져와 rcv_headers_interface 및
rcv_transactions_interface tables에 insert 한다.
만일 PO shipment lind이 closed, cancelled, fully received 되었다면
ROI table에 data를 insert 하지 않는다.
Note: 이 script가 data를 validate 하진 않으며,ROI API 자체 validation
이 실행될 뿐이다.
6.Script가 끝나면 Receiving Transaction Processor를 실행하여 insert 된
lines을 처리할 수 있다. Transaction Status Summary 화면을 통해 실행된
line이 pending 인지 error 상태인지 확인할 수 있다.
Notes:
1.Org_id parameter 값을 찾는법:
a) Application에 접속, Help> Diagnostics> Examine으로 이동.
Block:$Profile$, Field: ORG_ID 를 선택한다.
b) ORG_ID 값을 note 해 놓고 ORG_ID prompt시 이 값을 입력한다.
2.User_Name parameter 값을 찾는법:
a) Application에 접속, Help> Diagnostics> Examine으로 이동.
Block:$Profile$, Field: USER_NAME 를 선택한다.
b) USER_NAME 값을 note 해 놓고 USER_NAME prompt시 이 값을 입력한다.
Example
"eZROI.sql' script...
--*** eZROI ***
--*** by ***
--*** Preston D. Davenport ***
--*** Oracle Premium Applications Support ***
--*** Oracle Worldwide Global Support Services ***
--*** Date: 23-JUL-2003 - Beta release ***
--*** Date: 09-SEP-2003 - Rev A Added multi- ***
--*** shipment line capability ***
--*** Parameters: ***
--*** ORG_ID Organization ID ***
--*** USER_NAME FND User Name ***
--*** PO_NUMBER Purchase Order Number ***
--*** This script intended for a standard Purchase ***
--*** Order document to be inserted into the Oracle ***
--*** Receiving Open Interface (ROI) via the standard ***
--*** Oracle open interface api for a simple Receive ***
--*** transaction. ***
--*** Note: This script only considers open Purchase ***
--*** Orders. This script will not allow over- ***
--*** receipt, cancelled or closed PO's to be ***
--*** inserted into the ROI and received ***
CLEAR BUFFER
SET VERIFY OFF
SET LINESIZE 140
SET PAGESIZE 60
SET ARRAYSIZE 1
SET SERVEROUTPUT ON SIZE 100000
SET FEEDBACK OFF
SET ECHO OFF
DECLARE
X_USER_ID NUMBER;
X_PO_HEADER_ID NUMBER;
X_VENDOR_ID NUMBER;
X_SEGMENT1 NUMBER;
X_ORG_ID NUMBER;
X_LINE_NUM NUMBER;
BEGIN
DBMS_OUTPUT.PUT_LINE('***ezROI RCV API Insert Script***');
SELECT PO_HEADER_ID , VENDOR_ID , SEGMENT1 , ORG_ID
INTO X_PO_HEADER_ID , X_VENDOR_ID , X_SEGMENT1 , X_ORG_ID
FROM PO_HEADERS_ALL
WHERE SEGMENT1 = '&PO_NUMBER'
AND ORG_ID = &ORG_ID;
SELECT USER_ID INTO X_USER_ID
FROM FND_USER
WHERE USER_NAME = UPPER('&USER_NAME');
INSERT INTO RCV_HEADERS_INTERFACE
HEADER_INTERFACE_ID ,
GROUP_ID ,
PROCESSING_STATUS_CODE ,
RECEIPT_SOURCE_CODE ,
TRANSACTION_TYPE ,
LAST_UPDATE_DATE ,
LAST_UPDATED_BY ,
LAST_UPDATE_LOGIN ,
VENDOR_ID ,
EXPECTED_RECEIPT_DATE ,
VALIDATION_FLAG
SELECT
RCV_HEADERS_INTERFACE_S.NEXTVAL ,
RCV_INTERFACE_GROUPS_S.NEXTVAL ,
'PENDING' ,
'VENDOR' ,
'NEW' ,
SYSDATE ,
X_USER_ID ,
0 ,
X_VENDOR_ID ,
SYSDATE ,
'Y'
FROM DUAL;
DECLARE
CURSOR PO_LINE IS
SELECT PL.ITEM_ID , PL.PO_LINE_ID , PL.LINE_NUM ,
PLL.QUANTITY , PL.UNIT_MEAS_LOOKUP_CODE ,
MP.ORGANIZATION_CODE , PLL.LINE_LOCATION_ID ,
PLL.CLOSED_CODE , PLL.QUANTITY_RECEIVED ,
PLL.CANCEL_FLAG, PLL.SHIPMENT_NUM
FROM PO_LINES_ALL PL ,
PO_LINE_LOCATIONS_ALL PLL ,
MTL_PARAMETERS MP
WHERE PL.PO_HEADER_ID = X_PO_HEADER_ID
AND PL.PO_LINE_ID = PLL.PO_LINE_ID
AND PLL.SHIP_TO_ORGANIZATION_ID = MP.ORGANIZATION_ID;
BEGIN
FOR CURSOR1 IN PO_LINE LOOP
IF CURSOR1.CLOSED_CODE IN ('APPROVED','OPEN')
AND CURSOR1.QUANTITY_RECEIVED < CURSOR1.QUANTITY
AND NVL(CURSOR1.CANCEL_FLAG,'N') = 'N'
THEN
INSERT INTO RCV_TRANSACTIONS_INTERFACE
INTERFACE_TRANSACTION_ID ,
GROUP_ID ,
LAST_UPDATE_DATE ,
LAST_UPDATED_BY ,
CREATION_DATE ,
CREATED_BY ,
LAST_UPDATE_LOGIN ,
TRANSACTION_TYPE ,
TRANSACTION_DATE ,
PROCESSING_STATUS_CODE ,
PROCESSING_MODE_CODE ,
TRANSACTION_STATUS_CODE ,
PO_LINE_ID ,
ITEM_ID ,
QUANTITY ,
UNIT_OF_MEASURE ,
PO_LINE_LOCATION_ID ,
AUTO_TRANSACT_CODE ,
RECEIPT_SOURCE_CODE ,
TO_ORGANIZATION_CODE ,
SOURCE_DOCUMENT_CODE ,
DOCUMENT_NUM ,
HEADER_INTERFACE_ID ,
VALIDATION_FLAG
SELECT
RCV_TRANSACTIONS_INTERFACE_S.NEXTVAL ,
RCV_INTERFACE_GROUPS_S.CURRVAL ,
SYSDATE ,
X_USER_ID ,
SYSDATE ,
X_USER_ID ,
0 ,
'RECEIVE' ,
SYSDATE ,
'PENDING' ,
'BATCH' ,
'PENDING' ,
CURSOR1.PO_LINE_ID ,
CURSOR1.ITEM_ID ,
CURSOR1.QUANTITY ,
CURSOR1.UNIT_MEAS_LOOKUP_CODE ,
CURSOR1.LINE_LOCATION_ID ,
'RECEIVE' ,
'VENDOR' ,
CURSOR1.ORGANIZATION_CODE ,
'PO' ,
X_SEGMENT1 ,
RCV_HEADERS_INTERFACE_S.CURRVAL ,
'Y'
FROM DUAL;
DBMS_OUTPUT.PUT_LINE('PO line: '||CURSOR1.LINE_NUM||' Shipment: '||CURSOR1.SHIPMENT_NUM||' has been inserted into ROI.');
ELSE
DBMS_OUTPUT.PUT_LINE('PO line '||CURSOR1.LINE_NUM||' is either closed, cancelled, received.');
END IF;
END LOOP;
DBMS_OUTPUT.PUT_LINE('*** ezROI COMPLETE - End ***');
END;
COMMIT;
END;
SET VERIFY ON
Reference Documents
Note 245334.1I have the same problem on ESXI 5.5 for over a month now, tried the patches, tried the LTS kernel which others say results in an immediate result without patches, nothing seems to work and nobody seems to be able to offer a solution.
Did you make any progress ??
Error! Build of vmblock.ko failed for: 3.10.25-1-lts (x86_64)
Consult the make.log in the build directory
/var/lib/dkms/open-vm-tools/2013.09.16/build/ for more information.
make[2]: *** No rule to make target '/var/lib/dkms/open-vm-tools/2013.09.16/build/vmblock/linux/inode', needed by '/var/lib/dkms/open-vm-tools/2013.09.16/build/vmblock/vmblock.o'. Stop.
Makefile:1224: recipe for target '_module_/var/lib/dkms/open-vm-tools/2013.09.16/build/vmblock' failed
make[1]: *** [_module_/var/lib/dkms/open-vm-tools/2013.09.16/build/vmblock] Error 2
make[1]: Leaving directory '/usr/src/linux-3.10.25-1-lts'
Makefile:120: recipe for target 'vmblock.ko' failed
Last edited by crankshaft (2014-01-10 11:32:32) -
How can I represent more than one plot in an only one chart?
Hello everyone,
i got a code where I don't understand how to represent more than two plots, with different scales each, in the same waveform chart.
As brief review:
* 2 adquisition data wired to Bundle
* wire from Bundle to waveform chart.
* options of th chart: stack plots.
I've tried to expand the Bundle but the problem is that I'm wiring a 3 element cluster to a 2element cluster chart. I don't understand how to upgrade the chart...
(there's the two plots in each chart)
(there's the code, where I've already tried expanding any bundle and wiring other signals, then wiring the bundle's output to the chart)
I think if I could add more scales, it will be possible to plot three plots on the same chart.
Thank you for your time
Marcelo A JSince you are dealing with waveforms already, I think you actually want to have an array of waveforms to go into your chart. You also need to map the plots to the scale that you want to use. You can do that in the plot tab of the properties window.
There are only two ways to tell somebody thanks: Kudos and Marked Solutions
Unofficial Forum Rules and Guidelines -
How to get lab view to display my plot in DB
hi guys
i desigED n an operational amplifier to determine the gain product band width using a 741 chip and the gain of the circuit is 1000, meaning that the gain bandwidth PRODUCT will occur at a frequency of 100hz. but i have a problem, when i start the frequency sweep from the function generator from 10 hz to 100Khz which IS the final frequency value i have set for the program. when the lab view program stops and i export the data to excel sheet i will be getting the DB axis value in a SMALL VALUES AND IN DIFFERENT UNITES WHEN I PLOT THE GRAPH USING EXCEL, while the frequency is in log10.
pls can any one tell me how to solve this problem to start getting the right cut off frquency on the graph. find aattched my vi and the excel data from the vi that is in a different unit not in DB
Attachments:
GAIN BAND WIDTH PRODUCT.vi 116 KB
FREQUENCY VALUE .xls 26 KBAhhh.....
emeho wrote:
thanks Jeff Bohrer for your reply, what i mean is the y-axs of the plot is in DB aleady, but when i export the data to excel i will be seeing the gain in 0.8, 0.7,0.4 which is not normal, which will not give me the -3db point of the gainband width product of the circuit
What you want to do is plot the Log(10) of the frequency on a linear axis!!!!!!! The export - exports the values not the axis scale. exporting a log(10) of the Y axis will export the log of the axis- (of couse, you could change the graph axis scale in Excel too...... but)
Jeff -
How to Plot number and string in one row (data logger counter via MODBUS) ?
hi all i made data log quantity using Digital Counter via modbus (RS-485) to monitoring quantity and reject that has and Name Operator, Machine and Part Number.
i have problem about plot the number & string in one row, as shown on the picture below :
how to move that string on one row ? i attach my vi.
Thanks~
Solved!
Go to Solution.
Attachments:
MODBUS LIB Counter.vi 39 KBHi rhiesnand,
right now you add 2 new rows to your array.
The solution is to concatenate both row parts to one bigger 1D array before adding that array as new row to your 2D array!
Like this:
Best regards,
GerdW
CLAD, using 2009SP1 + LV2011SP1 + LV2014SP1 on WinXP+Win7+cRIO
Kudos are welcome -
How to Plot number and string in one row (data logger counter) ?
hi all i made data log quantity using Digital Counter via modbus to monitoring quantity and reject that has and Name Operator, Machine and Part Number.
i have problem about plot the number & string in one row, as shown on the picture below :
how to move that string on one row ? i attach my vi.
Thanks~
Attachments:
MODBUS LIB Counter.vi 39 KBDuplicate and answered - http://forums.ni.com/t5/LabVIEW/How-to-Plot-number-and-string-in-one-row-data-logger-counter-via/m-p...
-
How to let the user define the colors for each plots in the graph (I use LabVIEW 7)?
How to let the user define the colors for each plots in the graph (I
use LabVIEW 7)?Hi,
Take a look at this example, it uses property nodes to select tha
active plot and then changes the color of that plot.
If you want to make the number of plots dynamic you could use a for
loop and an array of color boxes.
I hope this helps.
Regards,
Juan Carlos
N.I.
Attachments:
Changing_plot_color.vi 38 KB -
Increase Performance and ROI for SQL Server Environments
May 2015
Explore
The Buzz from Microsoft Ignite 2015
NetApp was in full force at the recent Microsoft Ignite show in Chicago, talking about solutions for hybrid cloud, and our proven solutions for Microsoft SQL Server and other Microsoft applications.
Hot topics at the NetApp booth included:
OnCommand® Shift. A revolutionary technology that lets you move virtual machines back and forth between VMware and Hyper-V environments in minutes.
Azure Site Recovery to NetApp Private Storage. Replicate on-premises SAN-based applications to NPS for disaster recovery in the Azure cloud.
These tools give you greater flexibility for managing and protecting important business applications.
Chris Lemmons
Director, EIS Technical Marketing, NetApp
If your organization runs databases such as Microsoft SQL Server and Oracle DB, you probably know that these vendors primarily license their products on a "per-core" basis. Microsoft recently switched to "per-core" rather than "per-socket" licensing for SQL Server 2012 and 2014. This change can have a big impact on the total cost of operating a database, especially as core counts on new servers continue to climb. It turns out that the right storage infrastructure can drive down database costs, increase productivity, and put your infrastructure back in balance.
In many customer environments, NetApp has noticed that server CPU utilization is low—often on the order of just 20%. This is usually the result of I/O bottlenecks. Server cores have to sit and wait for I/O from hard disk drives (HDDs). We've been closely studying the impact of all-flash storage on SQL Server environments that use HDD-based storage systems. NetApp® All Flash FAS platform delivers world-class performance for SQL Server plus the storage efficiency, application integration, nondisruptive operations, and data protection of clustered Data ONTAP®, making it ideal for SQL Server environments.
Tests show that All Flash FAS can drive up IOPS and database server CPU utilization by as much as 4x. And with a 95% reduction in latency, you can achieve this level of performance with half as many servers. This reduces the number of servers you need and the number of cores you have to license, driving down costs by 50% or more and paying back your investment in flash in as little as six months.
Figure 1) NetApp All Flash FAS increases CPU utilization on your SQL Server database servers, lowering costs.
Source: NetApp, 2015
Whether you're running one of the newer versions of SQL Server or facing an upgrade of an earlier version, you can't afford not to take a second look at your storage environment.
End of Support for Microsoft SQL Server 2005 is Rapidly Approaching
Microsoft has set the end of extended support for SQL Server 2005 for April 2016—less than a year away. With support for Microsoft Windows 2003 ending in July 2015, time may already be running short.
If you're running Windows Server 2003, new server hardware is almost certainly needed when you upgrade SQL Server. Evaluate your server and storage options now to get costs under control.
Test Methodology
To test the impact of flash on SQL Server performance, we replaced a legacy HDD-based storage system with an All Flash FAS AFF8080 EX. The legacy system was configured with almost 150 HDDs, a typical configuration for HDD storage supporting SQL Server. The AFF8080 EX used just 48 SSDs.
Table 1) Components used in testing.
Test Configuration Components
Details
SQL Server 2014 servers
Fujitsu RX300
Server operating system
Microsoft Windows 2012 R2 Standard Edition
SQL Server database version
Microsoft SQL Server 2014 Enterprise Edition
Processors per server
2 6-core Xeon E5-2630 at 2.30 GHz
Fibre channel network
8Gb FC with multipathing
Storage controller
AFF8080 EX
Data ONTAP version
Clustered Data ONTAP® 8.3.1
Drive number and type
48 SSD
Source: NetApp, 2015
The test configuration consisted of 10 database servers connected through fibre channel to both the legacy storage system and the AFF8080 EX. Each of the 10 servers ran SQL Server 2014 Enterprise Edition.
The publicly available HammerDB workload generator was used to drive an OLTP-like workload simultaneously from each of the 10 database servers to storage. We first directed the workload to the legacy storage array to establish a baseline, increasing the load to the point where read latency consistently exceeded 20ms.
That workload was then directed at the AFF8080 EX. The change in storage resulted in an overall 20x reduction in read latency, a greater than 4x improvement in IOPS, and a greater than 4x improvement in database server CPU utilization.
Figure 2) NetApp All Flash FAS increases IOPS and server CPU utilization and lowers latency.
Source: NetApp, 2015
In other words, the database servers are able to process four times as many IOPS with dramatically lower latency. CPU utilization goes up accordingly because the servers are processing 4x the work per unit time.
The All Flash FAS system still had additional headroom under this load.
Calculating the Savings
Let's look at what this performance improvement means for the total cost of running SQL Server 2014 over a 3-year period. To do the analysis we used NetApp Realize, a storage modeling and financial analysis tool designed to help quantify the value of NetApp solutions and products. NetApp sales teams and partners use this tool to assist with return on investment (ROI) calculations.
The calculation includes the cost of the AFF8080 EX, eliminates the costs associated with the existing storage system, and cuts the total number of database servers from 10 to five. This reduces SQL Server licensing costs by 50%. The same workload was run with five servers and achieved the same results. ROI analysis is summarized in Table 2.
Table 2) ROI from replacing an HDD-based storage system with All Flash FAS, thereby cutting server and licensing costs in half.
Value
Analysis Results
ROI
65%
Net present value (NPV)
$950,000
Payback period
six months
Total cost reduction
More than $1 million saved over a 3-year analysis period compared to the legacy storage system
Savings on power, space, and administration
$40,000
Additional savings due to nondisruptive operations benefits (not included in ROI)
$90,000
Source: NetApp, 2015
The takeaway here is that you can replace your existing storage with All Flash FAS and get a big performance bump while substantially reducing your costs, with the majority of the savings derived from the reduction in SQL Server licensing costs.
Replace your existing storage with All Flash FAS and get a big performance bump while substantially reducing your costs.
Maximum SQL Server 2014 Performance
In addition to the ROI analysis, we also measured the maximum performance of the AFF8080 EX with SQL Server 2014. A load-generation tool was used to simulate an industry-standard TPC-E OLTP workload against an SQL Server 2014 test configuration.
A two-node AFF8080 EX achieved a maximum throughput of 322K IOPS at just over 1ms latency. For all points other than the maximum load point, latency was consistently under 1ms and remained under 0.8ms up to 180K IOPS.
Data Reduction and Storage Efficiency
In addition to performance testing, we looked at the overall storage efficiency savings of our SQL Server database implementation. The degree of compression that can be achieved is dependent on the actual data that is written and stored in the database. For this environment, inline compression was effective. Deduplication, as is often the case in database environments, provided little additional storage savings and was not enabled.
For the test data used in the maximum performance test, we measured a compression ratio of 1.5:1. We also tested inline compression on a production SQL Server 2014 data set to further validate these results and saw a 1.8:1 compression ratio.
Space-efficient NetApp Snapshot® copies provide additional storage efficiency benefits for database environments. Unlike snapshot methods that use copy-on-write, there is no performance penalty; unlike full mirror copies, NetApp Snapshot copies use storage space sparingly. Snapshot copies only consume a small amount of storage space for metadata and additional incremental space is consumed as block-level changes occur. In a typical real-world SQL Server deployment on NetApp storage, database volume Snapshot copies are made every two hours.
First introduced more than 10 years ago, NetApp FlexClone® technology also plays an important role in SQL Server environments. Clones are fully writable, and, similar to Snapshot copies, only consume incremental storage capacity. With FlexClone, you can create as many copies of production data as you need for development and test, reporting, and so on. Cloning is a great way to support the development and test work needed when upgrading from an earlier version of SQL Server. You'll sometimes see these types of capabilities referred to as "copy data management."
A Better Way to Run Enterprise Applications
The performance benefits that all-flash storage can deliver for database environments are significant: more IOPS, lower latency, and an end to near-constant performance tuning.
If you think the performance acceleration that comes with all-flash storage is cost prohibitive, think again. All Flash FAS doesn't just deliver a performance boost, it changes the economics of your operations, paying for itself with thousands in savings on licensing and server costs. In terms of dollars per IOPS, All Flash FAS is extremely economical relative to HDD.
And, because All Flash FAS runs NetApp clustered Data ONTAP, it delivers the most complete environment to support SQL Server and all your enterprise applications with capabilities that include comprehensive storage efficiency, integrated data protection, and deep integration for your applications.
For complete details on this testing look for NetApp TR-4303, which will be available in a few weeks. Stay tuned to Tech OnTap for more information as NetApp continues to run benchmarks with important server workloads including Oracle DB and server virtualization.
Learn more about NetApp solutions for SQL Server and NetApp All-flash solutions.
Quick Links
Tech OnTap Community
Archive
PDFMay 2015
Explore
The Buzz from Microsoft Ignite 2015
NetApp was in full force at the recent Microsoft Ignite show in Chicago, talking about solutions for hybrid cloud, and our proven solutions for Microsoft SQL Server and other Microsoft applications.
Hot topics at the NetApp booth included:
OnCommand® Shift. A revolutionary technology that lets you move virtual machines back and forth between VMware and Hyper-V environments in minutes.
Azure Site Recovery to NetApp Private Storage. Replicate on-premises SAN-based applications to NPS for disaster recovery in the Azure cloud.
These tools give you greater flexibility for managing and protecting important business applications.
Chris Lemmons
Director, EIS Technical Marketing, NetApp
If your organization runs databases such as Microsoft SQL Server and Oracle DB, you probably know that these vendors primarily license their products on a "per-core" basis. Microsoft recently switched to "per-core" rather than "per-socket" licensing for SQL Server 2012 and 2014. This change can have a big impact on the total cost of operating a database, especially as core counts on new servers continue to climb. It turns out that the right storage infrastructure can drive down database costs, increase productivity, and put your infrastructure back in balance.
In many customer environments, NetApp has noticed that server CPU utilization is low—often on the order of just 20%. This is usually the result of I/O bottlenecks. Server cores have to sit and wait for I/O from hard disk drives (HDDs). We've been closely studying the impact of all-flash storage on SQL Server environments that use HDD-based storage systems. NetApp® All Flash FAS platform delivers world-class performance for SQL Server plus the storage efficiency, application integration, nondisruptive operations, and data protection of clustered Data ONTAP®, making it ideal for SQL Server environments.
Tests show that All Flash FAS can drive up IOPS and database server CPU utilization by as much as 4x. And with a 95% reduction in latency, you can achieve this level of performance with half as many servers. This reduces the number of servers you need and the number of cores you have to license, driving down costs by 50% or more and paying back your investment in flash in as little as six months.
Figure 1) NetApp All Flash FAS increases CPU utilization on your SQL Server database servers, lowering costs.
Source: NetApp, 2015
Whether you're running one of the newer versions of SQL Server or facing an upgrade of an earlier version, you can't afford not to take a second look at your storage environment.
End of Support for Microsoft SQL Server 2005 is Rapidly Approaching
Microsoft has set the end of extended support for SQL Server 2005 for April 2016—less than a year away. With support for Microsoft Windows 2003 ending in July 2015, time may already be running short.
If you're running Windows Server 2003, new server hardware is almost certainly needed when you upgrade SQL Server. Evaluate your server and storage options now to get costs under control.
Test Methodology
To test the impact of flash on SQL Server performance, we replaced a legacy HDD-based storage system with an All Flash FAS AFF8080 EX. The legacy system was configured with almost 150 HDDs, a typical configuration for HDD storage supporting SQL Server. The AFF8080 EX used just 48 SSDs.
Table 1) Components used in testing.
Test Configuration Components
Details
SQL Server 2014 servers
Fujitsu RX300
Server operating system
Microsoft Windows 2012 R2 Standard Edition
SQL Server database version
Microsoft SQL Server 2014 Enterprise Edition
Processors per server
2 6-core Xeon E5-2630 at 2.30 GHz
Fibre channel network
8Gb FC with multipathing
Storage controller
AFF8080 EX
Data ONTAP version
Clustered Data ONTAP® 8.3.1
Drive number and type
48 SSD
Source: NetApp, 2015
The test configuration consisted of 10 database servers connected through fibre channel to both the legacy storage system and the AFF8080 EX. Each of the 10 servers ran SQL Server 2014 Enterprise Edition.
The publicly available HammerDB workload generator was used to drive an OLTP-like workload simultaneously from each of the 10 database servers to storage. We first directed the workload to the legacy storage array to establish a baseline, increasing the load to the point where read latency consistently exceeded 20ms.
That workload was then directed at the AFF8080 EX. The change in storage resulted in an overall 20x reduction in read latency, a greater than 4x improvement in IOPS, and a greater than 4x improvement in database server CPU utilization.
Figure 2) NetApp All Flash FAS increases IOPS and server CPU utilization and lowers latency.
Source: NetApp, 2015
In other words, the database servers are able to process four times as many IOPS with dramatically lower latency. CPU utilization goes up accordingly because the servers are processing 4x the work per unit time.
The All Flash FAS system still had additional headroom under this load.
Calculating the Savings
Let's look at what this performance improvement means for the total cost of running SQL Server 2014 over a 3-year period. To do the analysis we used NetApp Realize, a storage modeling and financial analysis tool designed to help quantify the value of NetApp solutions and products. NetApp sales teams and partners use this tool to assist with return on investment (ROI) calculations.
The calculation includes the cost of the AFF8080 EX, eliminates the costs associated with the existing storage system, and cuts the total number of database servers from 10 to five. This reduces SQL Server licensing costs by 50%. The same workload was run with five servers and achieved the same results. ROI analysis is summarized in Table 2.
Table 2) ROI from replacing an HDD-based storage system with All Flash FAS, thereby cutting server and licensing costs in half.
Value
Analysis Results
ROI
65%
Net present value (NPV)
$950,000
Payback period
six months
Total cost reduction
More than $1 million saved over a 3-year analysis period compared to the legacy storage system
Savings on power, space, and administration
$40,000
Additional savings due to nondisruptive operations benefits (not included in ROI)
$90,000
Source: NetApp, 2015
The takeaway here is that you can replace your existing storage with All Flash FAS and get a big performance bump while substantially reducing your costs, with the majority of the savings derived from the reduction in SQL Server licensing costs.
Replace your existing storage with All Flash FAS and get a big performance bump while substantially reducing your costs.
Maximum SQL Server 2014 Performance
In addition to the ROI analysis, we also measured the maximum performance of the AFF8080 EX with SQL Server 2014. A load-generation tool was used to simulate an industry-standard TPC-E OLTP workload against an SQL Server 2014 test configuration.
A two-node AFF8080 EX achieved a maximum throughput of 322K IOPS at just over 1ms latency. For all points other than the maximum load point, latency was consistently under 1ms and remained under 0.8ms up to 180K IOPS.
Data Reduction and Storage Efficiency
In addition to performance testing, we looked at the overall storage efficiency savings of our SQL Server database implementation. The degree of compression that can be achieved is dependent on the actual data that is written and stored in the database. For this environment, inline compression was effective. Deduplication, as is often the case in database environments, provided little additional storage savings and was not enabled.
For the test data used in the maximum performance test, we measured a compression ratio of 1.5:1. We also tested inline compression on a production SQL Server 2014 data set to further validate these results and saw a 1.8:1 compression ratio.
Space-efficient NetApp Snapshot® copies provide additional storage efficiency benefits for database environments. Unlike snapshot methods that use copy-on-write, there is no performance penalty; unlike full mirror copies, NetApp Snapshot copies use storage space sparingly. Snapshot copies only consume a small amount of storage space for metadata and additional incremental space is consumed as block-level changes occur. In a typical real-world SQL Server deployment on NetApp storage, database volume Snapshot copies are made every two hours.
First introduced more than 10 years ago, NetApp FlexClone® technology also plays an important role in SQL Server environments. Clones are fully writable, and, similar to Snapshot copies, only consume incremental storage capacity. With FlexClone, you can create as many copies of production data as you need for development and test, reporting, and so on. Cloning is a great way to support the development and test work needed when upgrading from an earlier version of SQL Server. You'll sometimes see these types of capabilities referred to as "copy data management."
A Better Way to Run Enterprise Applications
The performance benefits that all-flash storage can deliver for database environments are significant: more IOPS, lower latency, and an end to near-constant performance tuning.
If you think the performance acceleration that comes with all-flash storage is cost prohibitive, think again. All Flash FAS doesn't just deliver a performance boost, it changes the economics of your operations, paying for itself with thousands in savings on licensing and server costs. In terms of dollars per IOPS, All Flash FAS is extremely economical relative to HDD.
And, because All Flash FAS runs NetApp clustered Data ONTAP, it delivers the most complete environment to support SQL Server and all your enterprise applications with capabilities that include comprehensive storage efficiency, integrated data protection, and deep integration for your applications.
For complete details on this testing look for NetApp TR-4303, which will be available in a few weeks. Stay tuned to Tech OnTap for more information as NetApp continues to run benchmarks with important server workloads including Oracle DB and server virtualization.
Learn more about NetApp solutions for SQL Server and NetApp All-flash solutions.
Quick Links
Tech OnTap Community
Archive
PDF -
Plot a chart dynamically based on the values selected
Hi All,
I have some requirement like this i want to plot a chart . The chart should change dynamically based on target_name and date. What type of UI should I use ? I tried using multiselect or shuttle for choosing the target_name and date picker tool for date once i choose all this the chart should appear. Can I have a custom button called submit so once all the values are entered it plots chart ? Please help me out with our ideas.
Thanks in AdvanceHi,
Using the dependent value sets you can govern the values which can be selected based on a specific value selected in a particular segment. Example if Country name is selected in segment 1 then specific states names as per the country selected can be displayed in segment 2.
As per the requirement described you want to enable different fields based on the value selected in segment1, currently there is no standard mechanism available to enable/disable fields based on a value and you will have to do an extension/customization to meet this requirement.
Thanks,
Sanjay -
Lenovo worst ROI, worst service: keep your word please
Complaints case #01040045, opened 2014 August 19th - No response from them and no update from support.
Please excuse any formatting errors, as I am entering this post via my tablet since my W520 'super laptop' has been dead in the water since June when the runaround with Lenovo began. Technically, I no longer have any coverage left, but based on the fact that this machine has been a constant fiasco since purchased, I would think Lenovo might be inclined to take some very inexpensive corrective action to ensure that I do not repeat the story of the worst purchase / investment I have ever made every chance I get for as long as I can keep it up, to as many as I possibly can. It seems not though, it seems Lenovo would prefer to continue to demonstrate a total lack of ability to know what each part of the company is doing, a total lack of interest in anything but keeping every dime in its grip, and an apparent inability to make a quality product, let alone provide decent technical support or customer service.
I purchased this $3000 waste as I intended to use this 'powerful' laptop to do fast audio/video file conversion, video editing, music creation / recording, distributed computing (e.g. BOINC), some gaming... unfortunately, anything truly intense causes the laptop to generate incredible amounts of heat (especially BOINC, GAMES). The initial laptop I was sent had to be completely replaced do to this issue. It basically always overheated, the replacement laptop is better, but still can't run BOINC or even a game like Age of Empires without burning through my desk. This, I decided to live with...
Then the motherboard failed.... twice, oh, now three times! I have to admit to being a little vague on all the problems as they took place over two years. I can say for certain however that IBM support NEVER diagnoses anything, they just replace parts until the problem goes away for a while. If I ever get the board replaced again, we'll see if the issue with the expensive wifi card is resolved and how many hard drives were fried in the motherboard implosion (I'm always on UPS/surge protection, by the way).
So, after motherboard #2 was installed, things seemed stable for a while... so, I come to early 2014, I call sales the day before my extended support plan runs out to ask about extending it, "yes, you can extend it anytime. no, you don't have to do it before it runs out.". Ok, YES I AM AN IDIOT.... I didn't confirm whether or not I could extend (or 're-up') the coverage only if there were no problems at that time, and perhaps I wanted to think that... which, yes, sounds silly.... but the sales rep didn't make that clear and I took what they said literally, "you can extend coverage at any time". Of course, once the motherboard failed again, I found out that was not true.
I have the laptop at an authorized Lenovo repair center and the problem is indeed the motherboard again.... but do you think I got what I paid for? do you think a customer is happy with a $3000 laptop, that doesn't perform, is constantly problematic, and now after 2.5 years is dead yet again?
To top it all off, before taking it to the repair shop I opened the bottom to make sure that the hard drive hadn't come unseated or something... what did I see? I see that one of the IBM techs has swapped out my 16gb of ram (2x8) for 8gb (2x4)!!!
So,
Once the shop diagnosed the issue, I called Lenovo support and explained my situation, experience and request to Emmanuel... I asked that to save my customer experience that Lenovo send the repair shop a 'free' motherboard and the correct RAM. Lo and behold, he said he understood, agreed and would get this done... then the rest of the company got involved...
1) (per Emmanuel in support) About 2 months after my purchase (see invoice excerpts below), Lenovo upgraded its sales / customer info 'database' to a new system... apparently all of my personal data including what I purchased was THROWN AWAY BY LENOVO! so, this is the first reason I was then given as to why I could not be helped. Emmanuel said I should try to call IBM and try to get them to cross reference x to y in their system to prove to lenovo I was a customer... which of course they could not do and in generally they had no interest in helping in any way.
This never was resolved. Shows a lot of disrespect and incompetence that Lenovo doesn't know I gave them $3000 just two years ago.
2) relay above to Emmanuel, who sends me to customer service or something to try to get any info that I was ever a customer (a customer in Feb 2012!!! like its 30 years ago or something.). They simply tell me to have Emmanuel talk to Katlyn Oneal, a systems analyst, "she can answer everything". Did so; Emmanuel comes back and tells me "Katlyn says it's not possible to help you because of the 30 day limit" on questioning service/repairs done... I guess specifically in relation perhaps to the THEFT of my purchased RAM. Do SYSTEMS ANALYSTS run Lenovo, make business decisions? what are these people thinking? I told E. this was unacceptable.
Emmanuel then opens a case with 'Customer Relations' (case #01040045), was told it could take up to 10 days for a response... nothing... called the number for CR which E. gave to me (919 257-4981)... two hours on hold before I gave up. every call to that number is the same... forever hold. Emmanuel opened this case on 2014 August 8th, never been a response. I called E. on August 19th, he then moved the case to Complaints... today is Aug 29th, still no response from Customer Relations or Complaints. At this point Emmanuel is not calling me back or answering my calls either.
Lenovo can throw technicalities of my warranty, 30 day limits etc forever.... but can anyone say I got what I paid for? Why can't lenovo keep track of what it sells, who to, why can't they communicate even internally? Lenovo should do what EMMANUEL / LENOVO stated to me that Lenovo would do on my first call to him: make me whole (though I have no real faith the thing won't self immolate again). How valuable can 16gb of ram and one or two trashy motherboards sitting around in a warehouse from 2+ years ago ($50 I'm guessing, if that). Is that really not worth making me happy? I'm already resolved to paying labor to the repair shop. so far Lenovo is the worst ROI ever for me, on anything I think you should help me out to keep me quiet, and just do what you said you would do, which will be the right thing to do.
Again, please just do what Emmanuel (I.e. Lenovo) said Lenovo would do.
----- Forwarded Message -----
To:
Sent: Monday, February 20, 2012 10:57 PM
Subject: Details Fw: LENOVO Order 2J9641
Customer number: 6081625
Order number: 2J9641
Placed: 2/20/12
Thank you again for your order.
Intel Core i7-2860QM Processor (2.50 GHz, 8MB L3)
OperaGenuine Windows 7 Professional 64
Genuine Windows 7 Professional 64 English
15.6" FHD (1920 x 1080) LED Backlit Anti-Glare Display, Mobile Broadband Ready
NVIDIA Quadro 2000M Graphics with 2GB DDR3 Memory
16 GB PC3-10600 DDR3 SDRAM 1333MHz SODIMM Memory (4 DIMM)
Intel 160 GB Solid State Drive, Serial ATA
Intel Centrino Ultimate-N 6300 (3x3 AGN)
4270CTO ThinkPad W520 - 1 Yr Depot Topseller Warranty
41C9337 2YR Onsite + 2YR ThinkPad Protection $111.30
41U5008 ThinkPad Bluetooth Laser Mouse $49.95
73P2582 Kensington MicroSaver Security Cable Lock from Lenovo $31.20
Subtotal: $4,187.95
Sale price: $2,881.45
[PRESIDENT] -$403.35
Shipping and handling: $0.00
Estimated tax: $204.44
Estimated total: $2,682.54*
Thanks...
Chris H.
Solved!
Go to Solution.Chris,
I wanted to reply here on your original thread . I appreciate your noting your prior case 10140045 - this appears not to have been routed correctly and was closed out. We will escalate this situation and ensure follow up.
I appreciate your speaking up, and your patience. I really hope we can restore your confidence in Lenovo.
Mark
ThinkPads: S30, T43, X60t, X1, W700ds, IdeaPad Y710, IdeaCentre: A300, IdeaPad K1
Mark Hopkins
Program Manager, Lenovo Social Media (Services)
twitter @lenovoforums
English Community Deutsche Community Comunidad en Español Русскоязычное Сообщество -
Line width on plot and on plot legend not matching
Hello,
I wrote a program that "highlights" (changes the linewidth to 4) one of two plots using a boolean switch. However, the corresponding linewidth in the legend does not always show the same width as the plots value. For example, if plot 0 is thick, and its legend is thick, and plot 1 and its legend are thin, then I select plot 1 to become the highlighted one, plot 1 in the graph will become thick, but either its legend will not become thick, or plot 0s will remain thick, while plot 0 on the actual graph will be switched to thin.
Thank you for any help you may be able to provide.
Attachments:
Testing LineWidth.vi 16 KBHi M.Bobby,
I can see the same behavior on my machine as well. This was reported to R&D (238303 CAR ID) for further investigation. R&D is currently investigating this issue. A possible workaround is to hover over the legend to make it update. We are sorry for the inconvenience, and appreciate your feedback!
Thanks and have a great day.
Esmail Hamdan | Applications Engineering | National Instruments -
Display real time data on a plot in a sub VI and main VI
I am building a program to measure and plot real time data. Program has several steps so I build few Sub VIs to make it simple. My problem is I am plotting real time data in my SUB VI(it works fine), but in my main program when I try to get the same plot its not real time data plot. Plots appear at the end of the program. All tips and help would be greatly appreciated. Thanks
I have attached my main VI and Sub VI
Solved!
Go to Solution.
Attachments:
main VI.jpg 116 KB
Sub VI.jpg 242 KBLabVIEW program is based on DATA FLOW, now, until the subVI will finish execution (while loop will be stopped), the execution in Main VI will not proceed any further.
If you can pass the reference of 'XY Graph' inside the subVI, you'll be able to update the plot (placed on MAIN VI) from within subVI.
Find attached example for your reference.
I am not allergic to Kudos, in fact I love Kudos.
Make your LabVIEW experience more CONVENIENT.
Attachments:
Example [LV 90].zip 26 KB
Maybe you are looking for
-
I just down loaded my software for the vz usb 720 modem on a new windows 8.1 computer and it says it is connected but the internet won't come on. It says firewall settings my have to be changed (921) Has anyone had this problem and is there a softwar
-
/pls/admin_/gateway.htm - No DAD configuration Found ?
Hi All ! For some reason I messed up my configuration and now I can't retrive the page http://myhost/pls/admin_/gateway.htm I realize that the forum may not be for PORTAL configuration but is imperative for me to fix this issue as I am testing and ge
-
Is it possible to have a second bluetooth adapter?
Hi I've a new mac mini, with integrated bluetooth, but when I try to use de wireless keyboard on the next room, i can't get any signal. The walls have a lot of concrete in this zone. So I'm wondering if is it possible to add an usb extension with sec
-
The update is not applicable to your computer
Hey, I am currently running Windows Server 2008 R2 (SP1) 64-bit and I want to install the Windows Media Service (KB963697). However I get the following error when I try to run it: The update is not applicable to your computer. I have no idea why thi
-
BASIC set up choices...
Hi, I'm looking for the most BASIC of instructions on set up..... I think I know the answer and there seems to be posts 'about' this but I want clarity. I have iPhoto '11 and PSE 10. I want a way to organize my photo's within iPhoto. The main reason