You have to collocate Persons with their organizations, so that all
the Persons for any given Organization reside on the same node
with that Organization.
Read more here: https://apacheignite.readme.io/docs/affinity-collocation
Sergi
2015-10-27 18:29 GMT+03:00 iceguo :
> I had
pong
Sergi
2015-10-15 18:53 GMT+03:00 :
>
>
>
>
> *Jaroslav Saxa*
>
> *Accenture – Technology Architecture*
>
> Plynarenska 7/C, 829 01 Bratislava
>
> Mobile: +421-904-706113
>
> Email: jaroslav.s...@accenture.com
>
>
>
> --
>
> This
This issue is already fixed in the latest H2 database engine, I hope we
will be able to upgrade in 1.5
Sergi
2015-11-11 0:48 GMT+03:00 vkulichenko :
> Hi,
>
> I reproduced the issue and created a ticket [1]. Someone in the community
> will take a look shortly and
First of all it makes sense to run your test in the same conditions,
I mean you have to start 2 nodes with the same config as for your web app
(for simplicity you can do that in a single JVM) and run your operations
from the same number of threads.
Another idea came to my mind is that your query
Hi,
Actually this is more about whether H2 database engine will support them or
not.
We do contribute to H2 database project, but usually not that big
improvements.
I suggest to send this question to
https://groups.google.com/forum/#!forum/h2-database
Sergi
2015-08-26 23:25 GMT+03:00 ubethke
By the way you can also use field id (just number your fields from 0 to 27)
instead of storing field names in counter keys, it will give some
serialization speedup and better memory utilization.
Sergi
2015-09-01 19:10 GMT+03:00 Sergi Vladykin <sergi.vlady...@gmail.com>:
> As I see you
As I see you have your field names as keys, you can think of them as locks.
I mean that your scalability is limited by these 27 locks and you are
acquiring them all for each cache update.
How many threads do you use for your latency test?
I'd suggest to use something like tuple (fieldName,
Regardless of whether it is off-heap or on-heap, performance of indexes
*will* degrade with cache growth and this is unavoidable.
For better understanding: cache is basically a hash map with O(1) operation
complexity, SQL index is basically an AVL tree which has O(log(N))
operation complexity.
Another option is to put Ignite in some common module for all the
applications that require Ignite. This way Ignite
classes must be loaded only once.
See https://docs.jboss.org/author/display/WFLY9/Class+Loading+in+WildFly
Sergi
2015-09-17 2:27 GMT+03:00 vkulichenko
Ok, I see. Yes, I can name at least few things in off-heap
sql indexes that make things slower and less scalable
than on-heap ones, but I'm not sure when we will be
able to improve them.
Sergi
2015-09-16 21:35 GMT+03:00 javadevmtl :
> Sergy, point taken, but what i'm
I've submitted the fix.
Sergi
2015-09-26 2:33 GMT+03:00 vkulichenko :
> Hi Kevin,
>
> I reproduced the issue and created a ticket [1]. I think it will be fixed
> in
> the next release.
>
> [1] https://issues.apache.org/jira/browse/IGNITE-1552
>
> -Val
>
>
>
> --
>
No, pull request on GitHub. The link is in Jira issue.
Sergi
2015-09-28 13:21 GMT+03:00 Yakov Zhdanov <yzhda...@apache.org>:
> Sergi, is it in master?
>
> --Yakov
>
> 2015-09-27 23:31 GMT+03:00 Sergi Vladykin <sergi.vlady...@gmail.com>:
>
>> I've submitted t
Hi,
Yes, you can annotate `identifiers` with @QuerySqlField.
To search within the contents you can use User defined functions (see
https://ignite.apache.org/releases/1.3.0/javadoc/org/apache/ignite/cache/query/annotations/QuerySqlFunction.html
)
For example create function `get` like below and
Hi,
ALTER TABLE ADD COLUMN will not work because it copies the whole table with
new column in H2.
I think you are right, we need to modify GridH2Table in place, though we
need to make sure that
dynamic indexes will be consistent with other existing indexes and no
concurrent updates are lost.
https://issues.apache.org/jira/browse/IGNITE-2177
Sergi
2015-12-16 12:16 GMT+03:00 Yakov Zhdanov :
> I see your point Andrey, and I agree that having an opportunity not to
> bring results back, but process them in place is cool.
>
> Sergi, can you please file a ticket and
Welly,
Alexey is right, you have to use ORDER BY clause to make sure that result
is sorted the way you need.
If it is possible query optimizer will try to use existing sorted index to
avoid manual sorting.
Sergi
2015-12-23 14:14 GMT+03:00 Welly Tambunan :
> Hi Alexey,
>
> So
No, this is impossible. Also keep in mind, that H2 debug console runs
queries locally without any distributive capabilities. To do the same you
can send closures to your cluster nodes and run local SQL queries.
But may be it is a good idea to be able to start the console on all the
nodes. This
Andrey,
Did you try these "tricks" with Ignite? I think not, because they will not
work.
Please stop suggesting to our users anything that you did not prove
yourself to be a correct solution.
Sergi
On Sun, Jun 26, 2016 at 11:14 AM, AndreyVel wrote:
> H2 engine chooses
you will have the same query semantics but use index sort.
Sergi
On Sun, Jun 26, 2016 at 12:43 PM, Sergi Vladykin <sergi.vlady...@gmail.com>
wrote:
> Andrey,
>
> Did you try these "tricks" with Ignite? I think not, because they will not
> work.
> Please stop s
Hi Syed,
I'm not sure I understand you data model, but the problem here is that
Ignite supports distributive aggregate functions in SQL only at the top
level query. I mean *sum(bal)* will work correctly always, but *min(balance)
*will run on each node separately (in general all the sub-queries
gest how to setup the data model to make such
> queries work.
> 2. As per Ignite documentation
> <https://apacheignite.readme.io/docs/sql-queries> , there is virtually no
> limitation on queries. I would like to know if there are more such
> scenarios so that I could verify my product
Yes, this is exactly to be able to store multiple types in the same cache.
Though it is not a recommended way, usually it is preferable to store one
type per cache.
Sergi
2016-01-28 21:02 GMT+03:00 vinshar :
> Hi,
>
> We can specify multiple QueryEntity for each
Collocation exactly means "to have all the joined entries on the same
node". So basically you are right, for cross join it implies having all the
data in replicated caches except one partitioned cache.
Sergi
2016-01-25 18:08 GMT+03:00 Andrey Nestrogaev :
> Hi Alexey,
Hi,
It looks like a bug, we'll try to fix it asap.
Here is Jira issue to track:
https://issues.apache.org/jira/browse/IGNITE-2913
Sergi
2016-03-30 5:34 GMT+03:00 minisoft_rm :
> dear experts, still no response for this question. So I guess ignite
> currently doesn't
There is no limitation (other than java heap size) but it must be some sane
number if you want to have sane performance.
BTW, you can find these docs helpful:
https://apacheignite.readme.io/docs/sql-queries#performance-and-usability-considerations
Sergi
2016-05-17 2:45 GMT+03:00 diopek
Hi,
In CacheConfiguration you can set setLongQueryWarningTimeout property to 0
and see in logs how long does it take to execute each query part.
Most probably this slowdown is because of restriction in our SQL engine,
which has to generate the whole result set before starting to send it back
to
I don't think that enterprise edition will help much here. I hope soon we
will be releasing 1.7, there we made some improvements in this area, you
can try it when it will be out.
Sergi
2016-07-25 11:20 GMT+03:00 November :
> Hi Sergi,
>
> I have tried try setting
I believe you already have some logic to parse this file and put all the
entries to cache. To test overhead you can store all your entries in simple
HashMap instead of Ignite cache and see the difference in memory
consumption.
Sergi
2016-07-25 9:09 GMT+03:00 November :
>
Yes, it looks like Ignite introduces the most of overhead here.
Did you try setting setMemoryMode to OFFHEAP_TIERED on CacheConfiguration?
I think it may help a bit.
Sergi
2016-07-25 10:37 GMT+03:00 November :
> Hi Sergi
>
> Thanks for reply.
>
> I have tried to store them
It looks like an issue in H2 database engine, but it was fixed in newest
versions.
In Ignite-1.7.0 (which is on the vote right now) we upgraded H2, so it must
be ok.
Sergi
2016-08-04 11:19 GMT+03:00 Zhengqingzheng :
> Hi there,
>
> When we using ignite sql query, we
Actually we never test this to work and it was never meant to be a
"supported feature". Why do you need to access H2 information schema?
Sergi
2016-08-15 1:00 GMT+03:00 zshamrock :
> Me too +1
>
>
>
> --
> View this message in context: http://apache-ignite-users.
>
Ok, now I see. We will fix it.
https://issues.apache.org/jira/browse/IGNITE-3685
Sergi
2016-08-15 1:34 GMT+03:00 zshamrock :
> It is not about INFORMATION_SCHEMA, but just simply no tables are displayed
> there and this error instead.
>
> Why it can be useful? To
Yes, this is not supported, use separate caches for separate types.
Sergi
2016-08-15 1:29 GMT+03:00 zshamrock :
> I have a simple hierarchy: Location abstract class, and PlayerLocation and
> BallLocation extensions of the parent abstract class Location.
>
> If I do
Subquery in FROM clause should work with distributed joins enabled.
Subquery expressions (in SELECT, WHERE, etc...) must always be collocated.
Sergi
On Mon, Jul 18, 2016 at 7:09 PM, Cristi C wrote:
> Thanks for your reply, Alexei.
>
> So, considering users will be able
I'm afraid we don't have a separate Jira ticket for this issue. Basically
because this memory overhead consists of two parts:
1. Object serialization protocol.
2. Cache and index data structures.
The first one is compact enough and usually should not be a problem, the
second is almost impossible
There is no way to control these things now. The debug console was aimed
for local debug purposes only.
Sergi
On Sun, Jul 3, 2016 at 8:58 PM, pragmaticbigdata wrote:
> I am running ignite 1.6 on Oracle Linux Server Release 6.4 (RHEL). I did
> set
>
Fixed in master. Thanks for reporting!
Sergi
2016-08-15 10:38 GMT+03:00 Sergi Vladykin <sergi.vlady...@gmail.com>:
> Ok, now I see. We will fix it.
>
> https://issues.apache.org/jira/browse/IGNITE-3685
>
> Sergi
>
> 2016-08-15 1:34 GMT+03:00 zshamrock &
Hi,
Run two queries: one for counts, another one for results. Or fetch the
result and count the rows along the way.
Sergi
2017-02-03 13:40 GMT+03:00 Anil :
> Hi,
>
> is there any way to get total count along with paginated results in ignite
> ?
>
> I see no way in H2 db.
Actually we allow to enforce join order in SQL (see [1]). I hope in the
next release we will support index hints as well (they are already merged
to H2 master).
[1]
http://ignite.apache.org/releases/1.8.0/javadoc/org/apache/ignite/cache/query/SqlFieldsQuery.html#setEnforceJoinOrder(boolean)
Hi,
The only way to perform effective search with spatial index is searching
for intersection of bounding boxes. Thus most probably you will need to
apply a two step approach:
1. Find everything by bounding box intersection for a fast rough search
over index.
2. Filter the result with exact
There are no exact plans when we will have H2 released, now we work on some
other important improvements there. Anyway this is negotiable.
Sergi
2017-01-28 1:26 GMT+03:00 Denis Magda :
> The sql hints are planned for 2.0 at the moment. You can keep an eye on
> this ticket:
>
I don't see any right now. Patches are welcome!
Sergi
2017-02-22 2:32 GMT+03:00 Denis Magda :
> Sergi,
>
> Is there any technical reason that prevents us supporting GROUP_CONCAT?
>
> —
> Denis
>
> > On Feb 21, 2017, at 2:46 AM, zaid wrote:
> >
> >
Yes, this stuff is not implemented right now. Patches are welcome!
Sergi
2017-02-22 8:39 GMT+03:00 zaid :
> Related to the question:
>
> http://apache-ignite-users.70518.x6.nabble.com/List-of-
> supported-SQL-functions-same-as-H2-td10722.html
>
>
>
> --
> View this
You can write to supp...@gridgain.com if you have any questions about
GridGain.
Sergi
2017-02-09 12:34 GMT+03:00 Andrey Mashenkov :
> Hi,
>
> You wrote on Apache Ignite community user mail list.
> Ignite is free product and have no trial verions and have no time
If you are going to store this stuff in cache like
cache.put(myPersonPK, myPerson)
then storing PersonPK inside of Person is bad idea, because PK will be
stored twice in cache.
I'm not sure I understand your question, but it seems to me that you don't
need to do anything here because cache key
It is a known problem which is already fixed in master.
Sergi
2016-08-22 15:33 GMT+03:00 mzingman :
> ignite debug web console comes up with exception on the left hand side
> pane:
>
> General error: "java.lang.UnsupportedOperationException"; SQL statement:
> SELECT
Sorry, right now Ignite uses an older H2 version. I hope we will be able to
upgrade it soon, but for now you can go with user defined functions [1].
[1]
https://ignite.apache.org/releases/1.8.0/javadoc/org/apache/ignite/cache/query/annotations/QuerySqlFunction.html
Sergi
2017-02-28 15:13
Currently you have to write your SQL functions in Java.
Sergi
2017-02-28 19:51 GMT+03:00 mrinalkamboj :
> Thanks @Sergi, this is Java code, will it work in a similar way for .Net
> too
>
>
>
> --
> View this message in context: http://apache-ignite-users.
>
Hi!
The name `TODAY` is problematic because there is a function with the same
name.
Sergi
2016-09-06 12:40 GMT+03:00 chevy :
> Hi,
>
> I am getting "Caused by: org.h2.jdbc.JdbcSQLException: Syntax error in SQL
> statement "CREATE TABLE ""salesCache"".SALESMODEL
Not sure why this is happening. Is there any other
> place that maven saves class files? I am running using eclipse.
> --
> Regards,
> Chetan.
>
> From: "Sergi Vladykin [via Apache Ignite Users]" <[hidden email]
> <http:///user/SendEmail.jtp?type=node=7554=0>>
> Date: T
> I changed the variable to “todayData" from “today” in SalesModel but
> still getting same error.
>
> /** TdyFeedModel: todayData (not-indexed). */
>
> @QuerySqlField
>
> public TdyFeedModel todayData;
> --
> Regards,
> Chetan.
>
> From: Sergi Vladykin <se
atement.java:168)
>
> at org.h2.jdbc.JdbcStatement.execute(JdbcStatement.java:156)
>
> at org.apache.ignite.internal.processors.query.h2.opt.GridH2Table$Engine.
> createTable(GridH2Table.java:699)
>
> at org.apache.ignite.internal.processors.query.h2.
> IgniteH2Indexing.
Hi,
You may need to hit `refresh` button, because Console may start before
initialization of caches.
Sergi
2016-09-14 8:52 GMT+03:00 :
> Hi All,
>
>
>
> After enabled H2 web console, I can’t see the tables like guide, anything
> I missed in CacheConfiguration, but I
Guang,
Yes, we did not release the fix yet.
Also you can easily build master yourself:
https://ignite.apache.org/download.cgi#build-source
Sergi
2016-09-26 1:56 GMT+03:00 zhaogxd :
> I am using apache-ignite-fabric-1.7.0-bin which was downloaded a week ago
> and
> this
>
>
> cache.put(department.getKey(), department);
> cache.put(person.getKey(), person);
>
>
As a side note: it is actually a bad practice to have a key as a field in a
value, because this way it will be stored in cache twice.
Sergi
> Thanks,
> Sergej
>
>
>
>
> --
> View this message in
t; On Nov 21, 2016, at 4:28 AM, Sergi Vladykin <sergi.vlady...@gmail.com>
> wrote:
>
> Right now all the results will be loaded to the client (the reducer node)
> and will be resorted. We already working on this issue and hopefully it
> will be resolved soon.
>
> Sergi
>
All we can do here is to propagate error message from H2. Probably it will
give more details.
Sergi
2016-11-18 13:31 GMT+03:00 Alexey Kuznetsov :
> Vasiliy, Pavel.
>
> I think it is a usability issue.
> Not always user has a full stack trace.
> For example, if I execute
Right now all the results will be loaded to the client (the reducer node)
and will be resorted. We already working on this issue and hopefully it
will be resolved soon.
Sergi
2016-11-17 16:40 GMT+03:00 vdpyatkov :
> Hi,
>
> Lock at the method
The problem here is that you have a wrong H2 version in classpath. Most
probably this wrong transitive dependency comes from Spring Boot, you need
to exclude it.
Sergi
2016-11-02 20:35 GMT+03:00 chevy :
> It works perfectly without spring-boot (previously tested) but
> Regards,
>
> Chetan.
>
>
>
> *From: *"Sergi Vladykin [via Apache Ignite Users]" <ml-node+[hidden email]
> <http:///user/SendEmail.jtp?type=node=8675=0>>
> *Date: *Thursday, November 3, 2016 at 12:50 AM
> *To: *"Chetan.V.Yadav" <[hi
Yes, this is possible.
If you have QuerySqlField annotation on Employee.address and the same
annotation on Address.city, then the field CITY must be available for SQL
queries.
Sergi
2016-12-07 11:04 GMT+03:00 Gaurav Bajaj :
> Hi,
>
> Is is possible to query (Scan, Sql
> value="Address"/>
> value="java.lang.String"/> //Is this the way?
>
>
>
>
> On Wed, Dec 7, 2016 at 10:12 AM
se index anyways.
Sergi
> On 4 January 2017 at 17:06, Sergi Vladykin <sergi.vlady...@gmail.com>
> wrote:
>
>> Your query is wrong:
>>
>> Joined rows will produce a cartesian product of all the row pairs, thus
>> you will have a row Person[100, 'Name100'] tha
Hi,
We actually have C++ bindings for Ignite API, so it must be possible to use
it from Go with cgo and SWIG. Though it may require some additional manual
work and testing.
I welcome you to join Apache Ignite community, contribute this integration
and become its maintainer! :)
Sergi
2017-01-08
If you know that you are going to scan the whole cache anyways, then
probably SCAN queries will perform better. SQL allows you to index fields
or even groups of fields and do lookups much faster.
Sergi
2016-12-29 10:22 GMT+03:00 rishi007bansod :
> From performance
Hi,
The query should work because everything is colocated. If not, then it
would be nice to have a self contained test case.
Sergi
2017-01-04 14:08 GMT+03:00 Anil :
> Hi Sergi,
>
> Did you get a chance to look into it ? Thanks.
>
Your query is wrong:
Joined rows will produce a cartesian product of all the row pairs, thus you
will have a row Person[100, 'Name100'] that correctly passed the first join
and paired with n['Name200'] in the second join. Since 'Name100' <>
'Name200', it will be correctly returned in the result
/wiki/Join_(SQL)#CROSS_JOIN)
>
> --
> Best Regards,
> Mikhail Fokanov
>
> Вторник, 27 декабря 2016, 15:13 +03:00 от Sergi Vladykin <
> sergi.vlady...@gmail.com>:
>
>
> Hi,
>
> Right now I see only one way to store different value types in the same
>
Hi,
What are you trying to achieve? This URL is not a public API or something
you can use in your app.
Sergi
2017-03-16 17:13 GMT+03:00 mhergul :
> Hi,
> I'm using Apache Ignite 1.9 C++ api. I want to get h2 jdbc url (like:
>
If you know exactly what ThreadLocal causes a leak, you can try to just
clean it with reflection at the end of your Callable.
Sergi
2017-03-15 10:10 GMT+03:00 Isaeed Mohanna :
> Hi
> As i have mentioned before its not me that is using the ThreadLocal but a
> 3rd party library
es*
>
> From your pattern I suspect that you output the result set into some UI
> table with sortable columns, am I right?
> - *Yes* :)
>
> Thanks
>
> On 4 April 2017 at 16:45, Sergi Vladykin <sergi.vlady...@gmail.com> wrote:
>
>> Alexey,
>>
>> Definite
You should create a group index on (A, B) and rewrite the query the
following way:
select * from Test where A = '' order by A, B
Semantically it will be the same, but it will use index (A, B) for search
and sorting.
Sergi
2017-04-04 12:18 GMT+03:00 Anil :
> HI,
>
> i have
s
> the response time.
>
> Thanks
>
>
> On 4 April 2017 at 15:28, Sergi Vladykin <sergi.vlady...@gmail.com> wrote:
>
>> You should create a group index on (A, B) and rewrite the query the
>> following way:
>>
>> select * from Test where A = '
;:
>>>
>>>> I'm not able to reproduce the timings you specified. Probably I do
>>>> something wrong.
>>>> Could you please provide a log for that case?
>>>> Also, it would be of great help if you provide the reproducer sources.
>>>>
I think 13s is still too much. Can you share a reproducer?
Sergi
2017-04-10 9:51 GMT+03:00 afedotov :
> Hello,
>
> That is an expected behavior. On the first run a query is parsed and
> metadata is built for it what takes some additional time compared to the
>
=node=11925=0>> написал:
>>>
>>> I found that this time can be reduced to a value below 100ms if I
>>> already selected some data from join query related table.
>>> For example,
>>> if I run 2 query "select * from Quote where stock_id = xxx" &
Looks pretty strange to me. Could you please share a simple reproducer with
us?
Sergi
2017-03-03 12:51 GMT+03:00 zaid :
> Hi,
>
> I am running a query using MySQL DB and Ignite SQL Grid. MySQL takes *56
> millisecons* to execute the query whereas SQL grid takes *7220
You can use any client you want. You just have to implement your SQL
function in Java and deploy it on each Ignite node (add jar with your Java
class with SQL function to Ignite node classpath).
Sergi
2017-03-01 11:20 GMT+03:00 mrinalkamboj :
> @Sergi does it mean
Hi,
No, do integrity checks at the application level.
Sergi
2017-03-01 14:18 GMT+03:00 zaid :
> Hi,
>
> We can create Foreign Key Constraint in H2 between two tables. Ignite
> generates H2 DB schema automatically and we don't have much control on it
> (yes, we can
Hi,
Moreover distributed joins can be executed only between caches with the
same affinity (same partitions on the same nodes).
Keep in mind that distributed join is already a "last resort" thing and you
have to prefer collocated joins as much as possible, if you want to achieve
good performance.
This is not supported because in general case the result will be completely
wrong.
Probably you can achieve something like this manually with IgniteCompute
and local SQL queries.
Sergi
2017-04-18 10:31 GMT+03:00 neerajbhatt :
> Hello All
>
> While querying to ignite
No, readFromBackup does not affect SQL in any way.
Sergi
2017-04-27 12:52 GMT+03:00 neerajbhatt :
> Hi All
>
> We are looking to scale our sql query read operation, can we read from
> backup partitions instead of primary partitions ?
>
> There is something called
Hi,
Look here
http://h2database.com/html/grammar.html#time
Sergi
2017-04-24 21:28 GMT+03:00 javastuff@gmail.com
:
> It would be helpful to understand how the date and timestamp are stored
> with
> writeDate and writeTimestamp specifically for the format
Yes, you have to go with JOIN and create better index for your query.
Sergi
2017-05-03 16:27 GMT+03:00 kmandalas :
> @Andrey: there is reason that I have selected REPLICATED over PARTITIONED
> cache due to my business case. Custom Affinity is under
Andrey,
In 2.0 queries over replicated cache still work in a single thread.
Kyriakos,
I see that only index on TYPE is used which is not the most selective
obviously.
I suggest to create a group index on (TYPE, CATEGORYID, GEOCHANNELID, WEEK)
and make sure it is used in query plan.
Sergi
According to our benchmarks Ignite 2.0 is not slower for get operation. I
think we need some minimal reproducer that shows the performance
degradation before making any conclusions.
Sergi
2017-05-12 1:10 GMT+03:00 Yakov Zhdanov :
> Cross-posting to devlist.
>
> --Yakov
>
Actually in java you can close the cursor from another thread.
https://ignite.apache.org/releases/latest/javadoc/org/apache/ignite/cache/query/QueryCursor.html#close()
Sergi
2017-05-22 14:10 GMT+03:00 Igor Sapego :
> Well, there is no public API for this even in Java.
1. Looks like you are measuring something wrong. Most probably query
execution takes longer than 1 ms.
2. I guess in your case it is better to have a descending index on field1.
Sergi
2017-06-02 15:49 GMT+03:00 Pratham Joshi :
>
> In some cases its 100K or it
Actually H2 can use index for IN operator, but using JOIN instead of IN may
be still useful.
Sergi
2017-05-01 12:40 GMT+03:00 Nikolai Tikhonov :
> Hi,
>
> The page [1] contains also workaround for IN operation. You can use JOIN
> instead of IN.
>
> Sergi,
>
> Will this tip
89 matches
Mail list logo