You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@phoenix.apache.org by Frederick Haebin Na <ha...@gmail.com> on 2014/02/25 03:34:27 UTC
Hi, can Phoenix be used to substitute for RDBMS?
Hello all and James,
I found the similar question [1] in the old mailing threads.
The answer seems to be yes but I am not quite sure on one thing due to the
answer you gave in [2] and [3].
Typically, web services expects parallel requests, so there needs to be a
pool to handle these parallel requests since JDBC connections are not
thread safe. So, for this case, don't we have to use connection pool?
Best,
Haebin
[1]
https://groups.google.com/forum/#!searchin/phoenix-hbase-user/connection$20pool/phoenix-hbase-user/wD0kk8E9JPo/Vb9PVtxDTR0J
[2]
https://groups.google.com/forum/#!searchin/phoenix-hbase-user/connection$20pool/phoenix-hbase-user/U3hCUhRTZV8/YBgY6g9bVdsJ
[3]
https://groups.google.com/forum/#!searchin/phoenix-hbase-user/$20thread$20safe/phoenix-hbase-user/lL-SVFeFpNg/gBkBCXELaHIJ
--
*Frederick Haebin Na*
Change, Really
mobile: +82-10-6540-5679
Re: Hi, can Phoenix be used to substitute for RDBMS?
Posted by Frederick Haebin Na <ha...@gmail.com>.
Thank you very much, James!
2014-02-25 12:18 GMT+09:00 James Taylor <ja...@apache.org>:
> Hi Haebin,
> Yes, it should be fine to pool Phoenix connections. Make sure you're good
> about closing ResultSets and Statements so you're not holding on to
> resources longer than necessary (as this is one thing that happens when you
> close a connection).
> Thanks,
> James
>
>
> On Mon, Feb 24, 2014 at 7:04 PM, Frederick Haebin Na <ha...@gmail.com>wrote:
>
>> Hi James,
>>
>> Thank you for the fast reply.
>>
>> Ah, what I am trying to do is that I am trying to move from sharded MySQL
>> cluster to Phoenix.
>> Phoenix was the least intrusive way to move from SQL to NoSQL (with SQL).
>> So, I am somewhat reluctant to change the legacy setups and codes which
>> include connection pooling mechanism.
>> If I could pool Phoenix connection as typical JDBC connection then I
>> don't really have to change anything but some configuration. Can I just
>> think of Phoenix connection pool as an object pool since you mentioned that
>> it is harmless to have Phoenix connections pooled?
>>
>> Cheers,
>> Haebin
>>
>>
>>
>> 2014-02-25 11:42 GMT+09:00 James Taylor <ja...@apache.org>:
>>
>> Hello Haebin,
>>> Each web service request should open a new connection through
>>> DriverManager.getConnection(url, props) and then close the connection when
>>> the request has been completed. There's no need to pool these connections,
>>> as Phoenix is already managing that for you.
>>> Thanks,
>>> James
>>>
>>>
>>> On Mon, Feb 24, 2014 at 6:34 PM, Frederick Haebin Na <
>>> haebin.na@gmail.com> wrote:
>>>
>>>> Hello all and James,
>>>>
>>>> I found the similar question [1] in the old mailing threads.
>>>> The answer seems to be yes but I am not quite sure on one thing due to
>>>> the answer you gave in [2] and [3].
>>>>
>>>> Typically, web services expects parallel requests, so there needs to be
>>>> a pool to handle these parallel requests since JDBC connections are not
>>>> thread safe. So, for this case, don't we have to use connection pool?
>>>>
>>>> Best,
>>>> Haebin
>>>>
>>>> [1]
>>>> https://groups.google.com/forum/#!searchin/phoenix-hbase-user/connection$20pool/phoenix-hbase-user/wD0kk8E9JPo/Vb9PVtxDTR0J
>>>> [2]
>>>> https://groups.google.com/forum/#!searchin/phoenix-hbase-user/connection$20pool/phoenix-hbase-user/U3hCUhRTZV8/YBgY6g9bVdsJ
>>>> [3]
>>>> https://groups.google.com/forum/#!searchin/phoenix-hbase-user/$20thread$20safe/phoenix-hbase-user/lL-SVFeFpNg/gBkBCXELaHIJ
>>>>
>>>>
>>>> --
>>>> *Frederick Haebin Na*
>>>> Change, Really
>>>> mobile: +82-10-6540-5679
>>>>
>>>
>>>
>>
>>
>> --
>> *Frederick Haebin Na*
>> Change, Really
>> mobile: +82-10-6540-5679
>>
>
>
--
*Frederick Haebin Na*
Change, Really
mobile: +82-10-6540-5679
Re: Hi, can Phoenix be used to substitute for RDBMS?
Posted by James Taylor <ja...@apache.org>.
Hi Haebin,
Yes, it should be fine to pool Phoenix connections. Make sure you're good
about closing ResultSets and Statements so you're not holding on to
resources longer than necessary (as this is one thing that happens when you
close a connection).
Thanks,
James
On Mon, Feb 24, 2014 at 7:04 PM, Frederick Haebin Na <ha...@gmail.com>wrote:
> Hi James,
>
> Thank you for the fast reply.
>
> Ah, what I am trying to do is that I am trying to move from sharded MySQL
> cluster to Phoenix.
> Phoenix was the least intrusive way to move from SQL to NoSQL (with SQL).
> So, I am somewhat reluctant to change the legacy setups and codes which
> include connection pooling mechanism.
> If I could pool Phoenix connection as typical JDBC connection then I don't
> really have to change anything but some configuration. Can I just think of
> Phoenix connection pool as an object pool since you mentioned that it is
> harmless to have Phoenix connections pooled?
>
> Cheers,
> Haebin
>
>
>
> 2014-02-25 11:42 GMT+09:00 James Taylor <ja...@apache.org>:
>
> Hello Haebin,
>> Each web service request should open a new connection through
>> DriverManager.getConnection(url, props) and then close the connection when
>> the request has been completed. There's no need to pool these connections,
>> as Phoenix is already managing that for you.
>> Thanks,
>> James
>>
>>
>> On Mon, Feb 24, 2014 at 6:34 PM, Frederick Haebin Na <haebin.na@gmail.com
>> > wrote:
>>
>>> Hello all and James,
>>>
>>> I found the similar question [1] in the old mailing threads.
>>> The answer seems to be yes but I am not quite sure on one thing due to
>>> the answer you gave in [2] and [3].
>>>
>>> Typically, web services expects parallel requests, so there needs to be
>>> a pool to handle these parallel requests since JDBC connections are not
>>> thread safe. So, for this case, don't we have to use connection pool?
>>>
>>> Best,
>>> Haebin
>>>
>>> [1]
>>> https://groups.google.com/forum/#!searchin/phoenix-hbase-user/connection$20pool/phoenix-hbase-user/wD0kk8E9JPo/Vb9PVtxDTR0J
>>> [2]
>>> https://groups.google.com/forum/#!searchin/phoenix-hbase-user/connection$20pool/phoenix-hbase-user/U3hCUhRTZV8/YBgY6g9bVdsJ
>>> [3]
>>> https://groups.google.com/forum/#!searchin/phoenix-hbase-user/$20thread$20safe/phoenix-hbase-user/lL-SVFeFpNg/gBkBCXELaHIJ
>>>
>>>
>>> --
>>> *Frederick Haebin Na*
>>> Change, Really
>>> mobile: +82-10-6540-5679
>>>
>>
>>
>
>
> --
> *Frederick Haebin Na*
> Change, Really
> mobile: +82-10-6540-5679
>
Re: Hi, can Phoenix be used to substitute for RDBMS?
Posted by Frederick Haebin Na <ha...@gmail.com>.
Hi James,
Thank you for the fast reply.
Ah, what I am trying to do is that I am trying to move from sharded MySQL
cluster to Phoenix.
Phoenix was the least intrusive way to move from SQL to NoSQL (with SQL).
So, I am somewhat reluctant to change the legacy setups and codes which
include connection pooling mechanism.
If I could pool Phoenix connection as typical JDBC connection then I don't
really have to change anything but some configuration. Can I just think of
Phoenix connection pool as an object pool since you mentioned that it is
harmless to have Phoenix connections pooled?
Cheers,
Haebin
2014-02-25 11:42 GMT+09:00 James Taylor <ja...@apache.org>:
> Hello Haebin,
> Each web service request should open a new connection through
> DriverManager.getConnection(url, props) and then close the connection when
> the request has been completed. There's no need to pool these connections,
> as Phoenix is already managing that for you.
> Thanks,
> James
>
>
> On Mon, Feb 24, 2014 at 6:34 PM, Frederick Haebin Na <ha...@gmail.com>wrote:
>
>> Hello all and James,
>>
>> I found the similar question [1] in the old mailing threads.
>> The answer seems to be yes but I am not quite sure on one thing due to
>> the answer you gave in [2] and [3].
>>
>> Typically, web services expects parallel requests, so there needs to be a
>> pool to handle these parallel requests since JDBC connections are not
>> thread safe. So, for this case, don't we have to use connection pool?
>>
>> Best,
>> Haebin
>>
>> [1]
>> https://groups.google.com/forum/#!searchin/phoenix-hbase-user/connection$20pool/phoenix-hbase-user/wD0kk8E9JPo/Vb9PVtxDTR0J
>> [2]
>> https://groups.google.com/forum/#!searchin/phoenix-hbase-user/connection$20pool/phoenix-hbase-user/U3hCUhRTZV8/YBgY6g9bVdsJ
>> [3]
>> https://groups.google.com/forum/#!searchin/phoenix-hbase-user/$20thread$20safe/phoenix-hbase-user/lL-SVFeFpNg/gBkBCXELaHIJ
>>
>>
>> --
>> *Frederick Haebin Na*
>> Change, Really
>> mobile: +82-10-6540-5679
>>
>
>
--
*Frederick Haebin Na*
Change, Really
mobile: +82-10-6540-5679
Re: Hi, can Phoenix be used to substitute for RDBMS?
Posted by James Taylor <ja...@apache.org>.
Hello Haebin,
Each web service request should open a new connection through
DriverManager.getConnection(url, props) and then close the connection when
the request has been completed. There's no need to pool these connections,
as Phoenix is already managing that for you.
Thanks,
James
On Mon, Feb 24, 2014 at 6:34 PM, Frederick Haebin Na <ha...@gmail.com>wrote:
> Hello all and James,
>
> I found the similar question [1] in the old mailing threads.
> The answer seems to be yes but I am not quite sure on one thing due to the
> answer you gave in [2] and [3].
>
> Typically, web services expects parallel requests, so there needs to be a
> pool to handle these parallel requests since JDBC connections are not
> thread safe. So, for this case, don't we have to use connection pool?
>
> Best,
> Haebin
>
> [1]
> https://groups.google.com/forum/#!searchin/phoenix-hbase-user/connection$20pool/phoenix-hbase-user/wD0kk8E9JPo/Vb9PVtxDTR0J
> [2]
> https://groups.google.com/forum/#!searchin/phoenix-hbase-user/connection$20pool/phoenix-hbase-user/U3hCUhRTZV8/YBgY6g9bVdsJ
> [3]
> https://groups.google.com/forum/#!searchin/phoenix-hbase-user/$20thread$20safe/phoenix-hbase-user/lL-SVFeFpNg/gBkBCXELaHIJ
>
>
> --
> *Frederick Haebin Na*
> Change, Really
> mobile: +82-10-6540-5679
>