Storing a lot of data in an indexed data structure for quick access.

I'm designing an app. which will need to store a large amount of data in memory. Records will be flowing into the app. via a socket. The app will receive about 30 records/second which is about 108,000 records/hour and about 600,000 records/day. I need to store the records in an indexed data structure so that I can access them quickly. For example, at 9:00am I will need to access records received at 8:30am, 8:35am, 8:40am, etc. This program will be multithreaded and as I understand Vector is the only data structure that is thread safe. Is Vector my only choice? How do I access objects in a Vector using an index? Is there something better that I can use?

Is Vector my only choice?If you want to access the objects by key then you should use something like a HashMap. But if you want to access them by an array index then an ArrayList would be more appropriate.
as I understand Vector is the only data structure that is thread safeYou can get a thread-safe version of any Collection object by using the Collection.synchronizedCollection method.
How do I access objects in a Vector using an index? I'd suggest you read the API documentation. And probably the Sun tutorial on Collections at http://java.sun.com/docs/books/tutorial/collections/index.html
600,000 records/day. Unless you plan to dump old data after a short period of time, you may want to consider using a database to avoid running out of memory.

Similar Messages

  • How is index data managed within the cluster?

    Hello
    We are in the process of evaluating Coherence.
    With regard to indexes, am I correct in thinking that the data for the index is stored in an (internally managed) cache on the same node as the attendant indexed values? I'm not interested in getting at the index data, but rather just understanding how the index data itself is treated/stored within the cluster.
    So in a 2 node cluster where an index is applied to a distributed cache that only has 2 entries, will there be an index cache on each node that has 1 {Binary,key} entry where the key points to the value that is stored on that same node? That is, I trust that the index data is spread out across the cluster in the case of a partitioned topology?
    Regards
    Peter

    user11279467 wrote:
    Hello
    We are in the process of evaluating Coherence.
    With regard to indexes, am I correct in thinking that the data for the index is stored in an (internally managed) cache on the same node as the attendant indexed values? I'm not interested in getting at the index data, but rather just understanding how the index data itself is treated/stored within the cluster.
    So in a 2 node cluster where an index is applied to a distributed cache that only has 2 entries, will there be an index cache on each node that has 1 {Binary,key} entry where the key points to the value that is stored on that same node? That is, I trust that the index data is spread out across the cluster in the case of a partitioned topology?
    Regards
    PeterHi Peter,
    up to 3.4.x indexes were supported only on partitioned topology, and yes, indexes on each node contain only data corresponding to entries which have their primary copy on that node (referred to as local entries from now on).
    The indexes are not stored in a cache but they are managed as part of the information Coherence maintains about the backing map (the map which contains local entries).
    The indexes are made of 2 parts:
    - forward index: this is a mapping from the cache key in an internal representation (backing map keys from now on) to the value extracted with the extractor used to create the index from the entry belonging to the cache key (extracted value from now on)
    - reverse index (aka. reverse map): this is a mapping from the extracted value to a set of backing map keys of entries from which the reverse index key was extracted with the extractor used to create the index
    The index can be sorted which means that the reverse index will be a SortedMap (so sorting order is the ordering of extracted values)
    Let's see an example. Assuming you have the following cache content within a particular storage-enabled node :
    A --> Object (getX=5 ,...)
    B --> Object (getA=3 ,...)
    C --> Object (getA=3 ,...)
    D --> Object (getA=4 ,...)
    The forward index in that node will contain:
    Binary(A) --> 5
    Binary(B) --> 3
    Binary(C) --> 3
    Binary(D) --> 4
    The reverse index will contain:
    3 --> { Binary(B), Binary(C) }
    4 --> { Binary(D) }
    5 --> { Binary(A) }
    Where Binary(...) means the internal (binary) representation of the ... object.
    If the index is not ordered, then the order of iteration on entries in the reverse index are not deterministic.
    If the index is ordered, then the iteration of entries in the reverse index will be as shown above. Also, you can cast the reverse index to SortedMap so you have the very useful headMap and tailMap and firstKey and lastKey methods.
    Hope this helps.
    Best regards,
    Robert

  • Does FF 19 for Windows XP keep a history of browsed sites in an index.dat file or similar?

    I normally keep the "clear history when FF closes" option, checked. I had one window open with 10-15 tabs & accidentally clicked "close group" which closed the entire window & all tabs & because of the aforementioned option setting, wiped my sessionstore.js file. I looked for a sessionstore.bak file but didn't find one. I want to restore these tabs & since I recently discovered, some software on Windows computers use hidden 'index.dat' files to retain info even though the user deleted personal info in a normal way, want to know if FF 19 (version I had when this happened late yesterday) keeps browsing history in some type of hidden file I can access to retrieve the web sites info I accidentally lost. I searched my 'Documents and Settings' folder for any FF-related files that were modified at or near the time this event took place & found several & copied them to another folder in case one of them might have the info I want. In perusing this forum for answers, I found out about the add-on 'session manager' & installed it immediately, so this won't ever happen again. I also tried an 'undelete' program I have, hoping to find a retrievable copy of 'sessionstore' - nothing was found. I appreciate any assistance one can give regarding knowledge of any hidden file(s) FF keeps in case of emergencies, like this.

    Only IE uses index.dat files to store such data.
    Firefox stores the bookmarks and the browser history in an SQLite database file named places.sqlite.<br />
    App (pinned) tabs and Tab Groups (Panorama) are stored as part of the session data in the sessionstore.js file in the Firefox profile folder.
    You would need a backup of the involved file(s) to restore data that you have deleted by accident.<br />
    Unfortunately Windows XP don't have a way to restore previous versions of files like more recent Windows (Vista and later) versions have.
    *http://kb.mozillazine.org/Session_Restore
    *http://kb.mozillazine.org/sessionstore.js

  • Can I select the data of the indexes?

    Hi everybody,
    Oracle storages indexes in index type segments as I know.
    Is it possible to see the data of these index segments like a table or view?
    So I would like to see not only the structue of it with:
    select * from dba_segments SG where SG.segment_name = ’index_name’
    I think something like this:
    For example if I have a table named Table1.
    (please don’t see the format of the rowid):
    Rowid....field1
    1_1.......AA
    1_2.......AB
    1_3.......BB
    and I have an index on field1 named ndx_t1_f1.
    Create index ndx_t1_f1 on Table1(field1);
    I would like to see something like this
    (if it is a simple Btree index like the ndx_t1_f1):
    Select * from some_schema.???ndx_t1_f1???
    Rowid..........ParentRowid..........ValuePrefix..........SolutionRowid
    2_1
    2_11............2_1.......................A
    2_12............2_1.......................B
    2_111..........2_11.....................AA......................1_1
    2_112..........2_11.....................AB......................1_2
    2_121..........2_12.....................BB......................1_3
    And if i run:
    select field1 from table1 where filed1 like 'B%'
    oracle can use ndx_t1_f1 index like this:
    2_1 -> 2_12 -> 2_121 -> BB
    Yes, I know, there are some promlems with this imagine, but is it possible, or is it a silly question?
    Thanx: lados.

    Hi,
    You asked: „Why do you want to do that?”
    Well, I have a table T with fields F1, F2, F3 ...
    If I run:
    select F2, T.* from T where F1=12345;
    the result is one record and the value of F2 is ‘A’.
    But if I run:
    select F2, F1 from T where F1=12345;
    the result is one record and the value of F2 is ‘B’.
    And this is the same record. Oppps!!!!!
    I think the cause of the problem is the next:
    I have an index on F1, F2 named ndx_T_F1_F2
    In the second case: oracle uses only the index blocks and no table blocks, because all asked data exists in the index blocks.
    In the first case: oracle uses the table blocks too, because I asked all field.
    And I think there is a corrupted data on the index.
    I created a new index on (F1,F2,F3), and I suggest to use this.
    select /*+index(T, ndx_T_F1_F2_F3)*/ T.F2 from T where F1=12345;
    the result is one record and the value of F2 is ‘A’.
    But what is strange, oracle didn’t realise this inconsistent situation.
    (It could be an earlier crash, I don’t know, I’m new at this workplace)
    I think, the problem can solve with recreating the index ndx_T_F1_F2.
    But it’s a very special situation for me, and I would like to see the corrupted data concretly with my eyes.
    I think, that
    Select * from some_schema.???ndx_t1_f1???
    would I see like a view, but it would based on procedures and not tables.
    It would be enough to me, because I only could see the data in the index.
    But it is impossible as you wrote, isn’t it?
    Thanx: lados.

  • Error message: User data is not indexed, yet. Index user data first

    Greeting All,
    Each time I try to index a 'Prepared' searchObjectConnector in the cockpit.. I get a message <
    User data is not indexed, yet. Index user data first>. even that I ran the z_ESH_AU_UPLOAD_AUTH_RFC_720 report in R/3 system.. and checked the auth /user data in the admin cockpit.. and it was indexed..
    1.any idea why I keep getting this error
    2.any idea how can I clean the buffer or the message Queu.. my guess this might  be not error but a q message..
    3. any suggestion please
    Thanks

    Hi Areege,
      I noticed that you created an OSS message on this issue. That was a good idea.
    There is an answer for you in OSS from yesterday.
    Kind regards, Klaus

  • If i associate my apple id with another email will i lose my icloud data or i will still be able to access all my stored data with the new linked to my apple id email address?

    hi there
    if i associate my apple id with another email will i lose my icloud data or i will still be able to access all my stored data with the new linked to my apple id email address?
    i mean i am not signing up for a new account, just changing my old id primary email which is my apple id login into account.
    in other words, www.icloud.com will recognize that it is still me if i login on the site? will i be able to see there all my stored information?
    and if i change my password, does it automatically changes the @icloud.com password which should be the same as my apple id pass?
    thanks

    After opening the email it shoud of had you enter the Apple ID and password. Using certian web browser's can cause errors. You can adjust securty settings (big pain) or you use another browser. Using Firefox or Safari should do the trick.
    Let me know if using Firefox or Safari resolved it.

  • Unix Executable Files and VLC index.dat file -Samsung Digimax S800

    Hi and thanks for any enlightenment in advance .
    I got my new iMac in January and it's great . I'm using it mostly for games iWeb and pro apps like Logic . I continue to use my trusty old eMac for email and internet chores .
    I was preparing to install Finale today and noticed the installation DVD had Adobe Reader 7.0.8 this led me to check "Adobe" with spotlight to make sure I already had it (I do) and I discovered a folder for Photoshop 7 settings so I looked to see if I had Photoshop (I don't:( ) , but I did find a folder titled Photoshop7 containing three files 2 Unix Executable Files titled AAAAAAAA2 and AAAAAAAA2M and a VLC index.dat file .
    "Command I" tells me they are all 4KB and were created March 4 2007 and are located at Library/Application Support/Adobe/Filebrowser .
    I think this was the time I was trying to get my new camera (Samsung Digimax S800) to download a movie . It didn't work and I have given up trying .
    So my question is , " Can I delete these "
    iMac 2.33 GHz- Powerbook - eMac   Mac OS X (10.4.8)  

    Hi terence
    Would I have any other adobe apps that came with my iMac besides Reader 7.0 ?
    I appear to have opened a can off worms trying to open Adobe for the first time .
    http://discussions.apple.com/thread.jspa?threadID=978019
    iMac 2.33 GHz- Powerbook - eMac   Mac OS X (10.4.8)  

  • How to fetch data only from index

    Hi,
    I'm using below query which fetches arount 1,00,000 records & then perform group operations on them.
    <pre>
    SELECT Record_Type,Country_Product_Id,Channel_Id,SUM(Items)
    FROM t_Utr
    WHERE Four_Eyes_Status='A'
    AND(
    Booking_Date >= To_Date(v_Period_Start_Date, 'DD/MM/YYYY')
    AND Booking_Date <= To_Date(v_Period_End_Date , 'DD/MM/YYYY')
    AND Invoice_Id IS NULL
    AND Link_Id=p_Link_Id
    AND Billing_Indicator = 'L'
    GROUP BY Record_Type, Country_Product_Id, Channel_Id
    </pre>
    I'm having an index on all the columns being searched and all the values being fetched.
    Here I want to know if there is some procedure where we can fetch all the data from index itself, & we need not to switch again & again between table & index data.
    Thanks
    Deepak

    That's the kind of thing you want to leave to the optimizer.
    Provided you supply it with the information needed, most of the time it will make a better decision than you will on speculation.
    You want to avoid "hard coding" execution plans since this is contrary to the principles of the CBO and the "what" vs "where" philosophy underlying declarative programming.
    A few thoughts:
    1) Possibly the "AND Invoice_Id IS NULL" gets in the way of that of index only lookup
    2) To raise an optimizer bug/change request you will need to prove that your suggested plan is (a) possible (b) superior to the optimizer's choice (c) the optimizer choice is based on erroneous logic (possibly via 10053 trace)

  • Separate table and index data in RAC database

    Hi Experts,
    Our database is Oracle11g RAC database. I need your expertise on this
    Do we need to retain the table and index data in two different tablespaces for performance perspective in RAC database too?
    Please share your practical experience…Thanks in advance.
    Regards
    Richard

    g777 wrote:
    In my opinion, if there is striping implemented then performance shouldn't degrade even if the index and table blocks are in one tablespace. Exactly.. striping is NOT a good idea at tablespace level as a tablespace is a logical storage device. It is very difficult to stripe comprehensively/correctly at that level, if not impossible.
    Striping is a function of the actual storage system and need to happen at physical level. A proper RAID0 implementation.
    So the question about multiple tablespaces for a performance increase should not be about striping - but about issues such as data management, block sizes, transportable tablespaces and so on.
    Thus my question (at the OP) - what performance problems are expected and are these relevant to the number of tablespaces?

  • HT4910 sold my ipad today. the concern is how to access all info stored in cloud and if possible eventualy merge data into new andriod tablet. Thanks all of you who respond.

    sold my ipad today. the concern is how to access all info stored in cloud and if possible eventualy merge data into new andriod tablet. Thanks all of you who respond.

    >
    <IfModule mod_weblogic.c>
    WebLogicCluster 127.0.0.1:7005,127.0.0.1:7007,127.0.0.1:7003,127.0.0.1:7103,127.0.0.1:7104
    MatchExpression /app1
    </IfModule>
    <Location /weblogic>
    SetHandler weblogic-handler
    WebLogicCluster 127.0.0.1:7003,127.0.0.1:7005,127.0.0.1:7007,127.0.0.1:7103,127.0.0.1:7104
    DebugConfigInfo ON
    PathTrim /weblogic
    </Location>
    <IfModule mod_weblogic.c>
    WebLogicCluster 127.0.0.1:7003,127.0.0.1:7005,127.0.0.1:7007
    MatchExpression /app2
    </IfModule>
    <Location /weblogic>
    SetHandler weblogic-handler
    WebLogicCluster 127.0.0.1:7003,127.0.0.1:7005,127.0.0.1:7007
    DebugConfigInfo ON
    PathTrim /weblogic
    </Location>
    >
    This configuration is weird little bit. There is MatchExpression /app1 and MatchExpression /app2 and at the same time two <Location /weblogic> sections. Are you sure you understand what that configuration stands for?
    Try something like this ...
    <Location /app1>
    SetHandler weblogic-handler
    WebLogicCluster 127.0.0.1:7003,127.0.0.1:7005,127.0.0.1:7007,127.0.0.1:7103,127.0.0.1:7104
    DebugConfigInfo ON
    </Location>
    <Location /app2>
    SetHandler weblogic-handler
    WebLogicCluster 127.0.0.1:7003,127.0.0.1:7005,127.0.0.1:7007
    DebugConfigInfo ON
    </Location>
    where /app1 and /app2 are contexts of your weblogic applications.
    http://download.oracle.com/docs/cd/E11035_01/wls100/plugins/apache.html
    http://httpd.apache.org/docs/2.0/mod/core.html#location

  • Indexing data from Access data base in DIAdem 10

    I have some data (some is free format text, some will be numbers) that will be entered by hand either in Access or Excel (not sure which is best yet - see below). This data relates to devices that are in development and will continually be updated as long as we're working on the devices. I have other data generated by automated tests that is relatively easy to index using the DIAdem 10 datafinder. There may be times when we'll want to use some of the hand entered data as part of the search criteria when searching the automated test data.
    It somehow seems odd to enter the data in an Access database (I guess the same thing applies to having the data in a spreadsheet) only to have DIAdem's datafinder add it to its own database. Or maybe it's not odd, I don't know. Which would be the preferred method for entering this extra data?
    George

    Hi George,
    Myrle is right that the only way to harmonize the data in your Access/Excel file with the other data you have indexed in the DataFinder is to have a DataPlugin which reads the Access/Excel file.  The posted DataPlugin she references is good for reading entire columns from eithe Access or Excel files (the DataPlugin sees them as the same).  So if the values entered by hand are entire columns of values, then this would be the proper approach.  If instead the values entered are isolated cells, then you should use a different DataPlugin approach, which I think I've already sent you (?).
    I either case, you would ideally want to integrate this Access/Excel lookup functionality into the DataPlugin that is indexing the rest of your data.  But I seem to remember that you are using TDM files, and you don't have the option to edit the TDM DataPlugin.  It would help to know more about the relationship between this Access/Excel data and the other data you have indexed.
    In direct answer to your question, with all other issues being equal, I would tend toward Excel because more people have it and more people are comfortable with it.
    Regards,
    Brad Turpin
    DIAdem Product Support Engineer
    National Instruments

  • Is there any way to recover history that has been accidently deleted? do android devices have a index.dat files?

    ok so ive delete my history on my phone i have a HTC one S and all my history form firefox has gone is there any way i can recover it? I know on PCs you get the Index.dat recovery option is this possible on mobiles?

    No. The files are gone.

  • Importing data tables into data tablespace and indexes into tablespaces

    Hi
    I want to import data into new schema and i want to store tables into data tablespaces and index into index tablespace ...can anyone tell me how it will possible...

    I want to import data into new schema and i want to store tables into data tablespaces and index into index tablespace ...can anyone tell me how it will possible...
    imp userid=/user/passwd show=y indexfile=import.sql indexes=n full=y
    imp userid=/user/passwd show=y indexfile=import2.sql full=y
    Edit the import.sql and import2.sql to modify the tables' tablespace and indexes tablespace.
    execute import.sql the script in the database. this will create the tables in their respective tablespace.
    imp userid=/user/passwd full=y ignore=y indexes=n constraints=y - to import just the data since the tables have already been created.
    imp userid=/user/passwd full=y ignore=y rows=n  - to import just the indexes since the tables and data have already been imported.

  • Interpreting an index data block dump

    I have seen a few postings about reading index data blocks, mine doesnt quite look like those.
    Ok: 11Gr1 (linux)
    Tracing down a hot block issue with an index, I performed
    alter system dump datafile 11 block 4030208;
    Looking at the Web page "Index Block Dump: Index Only Section Part II (Station To Station)" and others they show a dump like this:
    row#0[8021] flag: ——, lock: 0, len=15
    col 0; len 5; (5): 42 4f 57 49 45
    col 1; len 6; (6): 02 01 48 8a 00 00
    row#1[8002] flag: ——, lock: 0, len=19
    col 0; len 9; (9): 4d 41 4a 4f 52 20 54 4f 4d
    col 1; len 6; (6): 02 01 48 8a 00 02
    row#2[7987] flag: ——, lock: 0, len=15
    col 0; len 5; (5): 5a 49 47 47 59
    col 1; len 6; (6): 02 01 48 8a 00 01
    —– end of leaf block dump —–
    End dump data blocks tsn: 8 file#: 8 minblk 84234 maxblk 84234
    I dont see anything that "obvious" in my dump. Am I looking at something other then an leaf block perhaps?
    I am expecting/hoping to see some sort of pairs for an index like X(y number, z number)
    Block dump from cache:
    Dump of buffer cache at level 4 for tsn=6, rdba=50167552
    BH (0x275f2aec8) file#: 11 rdba: 0x02fd7f00 (11/4030208) class: 4 ba: 0x274992000
      set: 111 bsz: 8192 bsi: 0 sflg: 0 pwc: 0, 25 lid: 0x00000000,0x00000000
      dbwrid: 2 obj: 127499 objn: 77784 tsn: 6 afn: 11
      hash: [0x403d34650,0x403d34650] lru: [0x333f32878,0x209f4ea88]
      lru-flags: hot_buffer
      ckptq: [NULL] fileq: [NULL] objq: [0x22dede3f8,0x30ff9c3f8]
      st: XCURRENT md: NULL tch: 2
      flags: block_written_once redo_since_read gotten_in_current_mode
      LRBA: [0x0.0.0] LSCN: [0x0.0] HSCN: [0xffff.ffffffff] HSUB: [34]
      cr pin refcnt: 0 sh pin refcnt: 0
      buffer tsn: 6 rdba: 0x02fd7f00 (11/4030208)
      scn: 0x0001.19bccf84 seq: 0x02 flg: 0x04 tail: 0xcf841002
      frmt: 0x02 chkval: 0x987f type: 0x10=DATA SEGMENT HEADER - UNLIMITED
    Hex dump of block: st=0, typ_found=1
    Dump of memory from 0x0000000274992000 to 0x0000000274994000
    274992000 0000A210 02FD7F00 19BCCF84 04020001  [................]
    274993FF0 00000000 00000000 00000000 CF841002  [................]
      Extent Control Header
      Extent Header:: spare1: 0      spare2: 0      #extents: 66     #blocks: 10239
                      last map  0x00000000  #maps: 0      offset: 4128
          Highwater::  0x047feb5b  ext#: 65     blk#: 731    ext size: 1024
      #blocks in seg. hdr's freelists: 0
      #blocks below: 9946
      mapblk  0x00000000  offset: 65
                       Unlocked
         Map Header:: next  0x00000000  #extents: 66   obj#: 127499 flag: 0x40000000
      Extent Map
       0x02fd7f01  length: 127
       0x0339ea80  length: 128
    ...

    Some time ago, I wrote a python script to print decimal form integer values from an index block dump. I don't know if it will help you, but it may be a start. It only prints the integer equivalent of the first column in the index, as that is what I needed at the time.
    It is called as...
    18:55:31 oracle@oh1xcwcdb01 /u02/admin/wcperf/udump >./blockdump.py wcperf1_ora_21618.trc
    col  0: [ 4]  c4 48 2a 53 converts to 71418200 on line #526 in the block dump.
    col  0: [ 5]  c4 48 2a 53 1d converts to 71418228 on line #640 in the block dump.
    col  0: [ 6]  c5 08 02 20 61 3f converts to 701319662 on line #648 in the block dump.
    col  0: [ 6]  c5 08 03 2f 33 17 converts to 702465022 on line #785 in the block dump.
    col  0: [ 6]  c5 08 03 2f 33 5f converts to 702465094 on line #793 in the block dump.
    col  0: [ 6]  c5 08 03 2f 40 38 converts to 702466355 on line #801 in the block dump.
    col  0: [ 6]  c5 08 03 30 09 5c converts to 702470891 on line #809 in the block dump.
    col  0: [ 6]  c5 08 03 32 61 05 converts to 702499604 on line #817 in the block dump.
    col  0: [ 6]  c5 08 03 33 0b 06 converts to 702501005 on line #827 in the block dump.
    col  0: [ 6]  c5 08 03 33 19 4b converts to 702502474 on line #835 in the block dump.
    col  0: [ 6]  c5 08 03 33 44 3d converts to 702506760 on line #843 in the block dump.
    col  0: [ 6]  c5 08 03 33 45 08 converts to 702506807 on line #851 in the block dump.
    col  0: [ 6]  c5 08 03 33 4e 5a converts to 702507789 on line #859 in the block dump.
    col  0: [ 6]  c5 08 03 33 5f 3b converts to 702509458 on line #867 in the block dump.
    col  0: [ 6]  c5 09 01 01 21 64 converts to 800003299 on line #875 in the block dump.
    col  0: [ 6]  c5 09 01 01 22 3b converts to 800003358 on line #883 in the block dump.
    18:55:41 oracle@oh1xcwcdb01 /u02/admin/wcperf/udump >...and the script itself is below...
    #!/usr/bin/python
    #Author:        Steve Howard
    #Date:          March 23, 2009
    #Organization:  AppCrawler
    #Purpose:       Simple script to print integer equivalents of block dump values in index.
    import fileinput
    import string
    import sys
    import re
    #boo=1
    boo=0
    j=0
    for line in fileinput.input([sys.argv[1:][0]]):
      j=j+1
      if re.match('^col  0:', line):
        #print line
        dep=int(string.replace(string.split(string.split(line,"]")[1])[0],"c","")) - 1
        #print dep
        i=0
        tot=0
        exp=dep
        for col in string.split(string.split(line,"]")[1]):
          if i > 0:
            tot = tot + ((int(col, 16) - 1) * (100**exp))
            exp = exp - 1
          i = i + 1
        print line.rstrip("\n") + " converts to " + str(tot) + " on line #" + str(j) + " in the block dump."

  • Save only part of my indexed data

    Hi Folks! I'm having some trouble saving only part of my streaming daqmx data to disk. I've attached a gauss meter to a Zaber stepper motor, and have it moving from a home position to an absolute position. at the same time, my gauss meter is mesuring data via daqmx while stepping. when i get to the end of the line, the stepper motor returns to home...data is recorded in both directions (forward and backward). I only want the forward data to collect. reverse data is not needed. this is especially important when i want to run more than one scan (move forward and backward n times.) I have a while loop gathering data (see attached.) Any ideas on how i can only record/index partial data coming in? Thanks in advance!
    Attachments:
    saving data.png ‏138 KB

    Hi Debrosse
    Thanks for sending the VI. 
    I've attached an updated version. This one uses a while loop checking the 'status' of the stage to determine if the movement has completed. A value of 0 means the stage is idle and the next movement command can happen. Along with this, the 'Request' vis are replaced with 'Write' vis. 
    I've also added a conditional on the indexing of the Measurement File loop, which polls the current position and compares it to the previous one. This should ensure that data is only recorded when the new position is larger than the last.
    The movement commands will still be sending responses when they complete. This version of the VI doesn't rely on these, and they may complicate the communication of other commands. I would recommend turning these movement responses off by setting bit_0 of the Device Mode setting (cmd # 40) to 1 (in other words, read the previous value, and write back the same value +1). This will set it so that only commands with 'Return' in the name, such as 'Return Status' or 'Return Current Position' will send a response.
    Please let me know if this has the desired effect! 
    Mike
    Attachments:
    IronMan V86_updated.vi ‏163 KB

Maybe you are looking for

  • Plug-Ins for Logic Express 9

    Does anyone know of any sites where one can download plug-ins for Logic Express 9 (either for free or for purchase)? Also, I know that one can use sound fonts (.au) with GarageBand --do these also work in Logic Express 9 and, if so, do they need to b

  • How to insert pages

    Hello, I have been searching on the internet for a solution to my problem, however I have come up empty handed and am hoping someone here can help me. I have pdf file (it is essentially an application, lots of fillable fields) and I have one page whi

  • Which version of Adobe Acrobat is needed to read .pdf files on the iPhone?

    I have Blackbaud's iBBDemo4.exe iPhone simulator for Windows XP. I'm trying to view/read various .pdf files with it. I received an error message that says, "file uses a new format that is not supported by the current version of Acrobat." Does anyone

  • When my MX882 prints at standard or fast settings, I get 1/4 inch striping (left to right).

    The stripes appear to be caused by extra blue ink in the darker bands.  The head-test looked great with one possible clue that is not described in the manuals or forums (so far).  The top color block (C) is two tone blue, 50/50.  No known changes wer

  • Upset after Adobe flash player download

    After installing adobe flash player in my laptop, my temporary folder is flooded with files "videoplayback?algorithm=throttle-factor&burst=40&den=....." as below whenever I play youtube..  Why and how to resolve this? I can no longer copy the youtube